├── .github
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ └── feature_request.md
└── workflows
│ ├── ci.yml
│ ├── dependent-issues.yml
│ ├── rebase-default-branch.yml
│ ├── semantic-commit.yml
│ ├── swiftformat.yml
│ └── swiftlint.yml
├── .gitignore
├── .mise.toml
├── .sonarcloud.properties
├── .swiftformat
├── .swiftlint-ci.yml
├── .swiftlint.yml
├── Docs
└── test_booklet.MD
├── LICENSE
├── Project.swift
├── README.md
├── TestFlight
├── WhatToTest.en-GB.txt
└── WhatToTest.fr-FR.txt
├── Tuist
├── Package.resolved
├── Package.swift
└── ProjectDescriptionHelpers
│ ├── Constants.swift
│ ├── ExtensionTarget.swift
│ └── SettingsDictionary+Extension.swift
├── ci_scripts
├── check_preconditions.sh
├── ci_post_clone.sh
└── ci_post_xcodebuild.sh
├── file-header-template.txt
├── kDrive
├── AppDelegate+BGNSURLSession.swift
├── AppDelegate+Scene.swift
├── AppDelegate.swift
├── AppRestorationService.swift
├── AppRouter.swift
├── IAP
│ ├── ProductIdentifiers.swift
│ ├── ProductIds.plist
│ ├── SKProduct+Extension.swift
│ ├── StoreManager.swift
│ ├── StoreObserver.swift
│ ├── StoreRequest.swift
│ └── StoreResponse.swift
├── OpenMediaHelper.swift
├── Resources
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ ├── Contents.json
│ │ │ ├── kDrive-Dark.png
│ │ │ ├── kDrive-Light.png
│ │ │ └── kDrive-Tinted.png
│ │ ├── Colors
│ │ │ ├── BorderColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── Contents.json
│ │ │ ├── backgroundCardViewColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── backgroundCardViewSelectedColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── backgroundColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── binColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── blueFolderColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── buttonDisabledBackgroundColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── buttonDisabledTitleColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── darkBlueColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── disconnectColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── favoriteColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── grayBackgroundChipColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── greenColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── headerTitleColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── iconColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── infomaniakColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── loaderDarkerDefaultColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── loaderDefaultColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── onlyOfficeBackgroundColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── previewBackgroundColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── primaryTextColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── secondaryTextColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── separatorColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── titleColor.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── warningColor.colorset
│ │ │ │ └── Contents.json
│ │ │ └── whiteBackgroundChipColor.colorset
│ │ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ ├── UFO.imageset
│ │ │ ├── Contents.json
│ │ │ └── abducted_files.svg
│ │ ├── add.imageset
│ │ │ ├── Contents.json
│ │ │ └── add.svg
│ │ ├── add_user.imageset
│ │ │ ├── Contents.json
│ │ │ └── add_user.pdf
│ │ ├── arrow-right.imageset
│ │ │ ├── Contents.json
│ │ │ └── arrow-right.svg
│ │ ├── available-offline.imageset
│ │ │ ├── Contents.json
│ │ │ └── offline.svg
│ │ ├── background-1.imageset
│ │ │ ├── Contents.json
│ │ │ └── background-1.svg
│ │ ├── background-2.imageset
│ │ │ ├── Contents.json
│ │ │ └── background-2.svg
│ │ ├── background-3.imageset
│ │ │ ├── Contents.json
│ │ │ └── background-3.svg
│ │ ├── big-check.imageset
│ │ │ ├── Contents.json
│ │ │ └── big-check.svg
│ │ ├── calendar.imageset
│ │ │ ├── Contents.json
│ │ │ └── calendar.svg
│ │ ├── camera.imageset
│ │ │ ├── Contents.json
│ │ │ └── camera.svg
│ │ ├── categories.imageset
│ │ │ ├── Contents.json
│ │ │ └── categories.svg
│ │ ├── check.imageset
│ │ │ ├── Contents.json
│ │ │ └── check.svg
│ │ ├── chevron-down.imageset
│ │ │ ├── Contents.json
│ │ │ └── chevron-down.svg
│ │ ├── chevron-left.imageset
│ │ │ ├── Contents.json
│ │ │ └── chevron-left.svg
│ │ ├── chevron-right.imageset
│ │ │ ├── Contents.json
│ │ │ └── chevron-right.svg
│ │ ├── chevron.imageset
│ │ │ ├── Contents.json
│ │ │ └── chevron.pdf
│ │ ├── circle-drive.imageset
│ │ │ ├── Contents.json
│ │ │ └── circle-drive.svg
│ │ ├── circle-pro.imageset
│ │ │ ├── Contents.json
│ │ │ └── pro.svg
│ │ ├── circle-send.imageset
│ │ │ ├── Contents.json
│ │ │ └── circle-send.svg
│ │ ├── circle-solo.imageset
│ │ │ ├── Contents.json
│ │ │ └── solo.svg
│ │ ├── circle-tag.imageset
│ │ │ ├── Contents.json
│ │ │ └── circle-tag.svg
│ │ ├── circle-team.imageset
│ │ │ ├── Contents.json
│ │ │ └── team.svg
│ │ ├── clock.imageset
│ │ │ ├── Contents.json
│ │ │ └── clock.svg
│ │ ├── close.imageset
│ │ │ ├── Contents.json
│ │ │ └── close.svg
│ │ ├── color-bucket.imageset
│ │ │ ├── Contents.json
│ │ │ └── color-bucket.svg
│ │ ├── comment.imageset
│ │ │ ├── Contents.json
│ │ │ └── comment.svg
│ │ ├── copy.imageset
│ │ │ ├── Contents.json
│ │ │ └── copy.svg
│ │ ├── crown.imageset
│ │ │ ├── Contents.json
│ │ │ └── crown.svg
│ │ ├── delete.imageset
│ │ │ ├── Contents.json
│ │ │ └── delete.svg
│ │ ├── document-signature-pencil-bulb.imageset
│ │ │ ├── Contents.json
│ │ │ └── document-signature-pencil-bulb.svg
│ │ ├── download.imageset
│ │ │ ├── Contents.json
│ │ │ └── download.svg
│ │ ├── drive-blocked.imageset
│ │ │ ├── Contents.json
│ │ │ └── drive-blocked.svg
│ │ ├── drive-switch.imageset
│ │ │ ├── Contents.json
│ │ │ └── drive-switch.svg
│ │ ├── drive.cloud.imageset
│ │ │ ├── Contents.json
│ │ │ └── drive.svg
│ │ ├── drive.imageset
│ │ │ ├── Contents.json
│ │ │ └── drive.svg
│ │ ├── duplicate.imageset
│ │ │ ├── Contents.json
│ │ │ └── duplicate.svg
│ │ ├── edit-document.imageset
│ │ │ ├── Contents.json
│ │ │ └── edit-document.svg
│ │ ├── edit.imageset
│ │ │ ├── Contents.json
│ │ │ └── edit.svg
│ │ ├── export-ios.imageset
│ │ │ ├── Contents.json
│ │ │ └── export-ios.svg
│ │ ├── face_id_edit.imageset
│ │ │ ├── Contents.json
│ │ │ ├── face_id_edit.svg
│ │ │ └── face_id_edit_dark.svg
│ │ ├── favorite.imageset
│ │ │ ├── Contents.json
│ │ │ └── favorite.svg
│ │ ├── file-3dmodel.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-3dmodel.svg
│ │ ├── file-audio.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-audio.svg
│ │ ├── file-code.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-code.svg
│ │ ├── file-default.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-default.svg
│ │ ├── file-email.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-email.svg
│ │ ├── file-font.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-font.svg
│ │ ├── file-form.imageset
│ │ │ ├── Contents.json
│ │ │ └── form.svg
│ │ ├── file-image-small.imageset
│ │ │ ├── Contents.json
│ │ │ ├── true 350 - circle.svg
│ │ │ └── true 350 – dark - circle.svg
│ │ ├── file-image.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-image.svg
│ │ ├── file-pdf.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-pdf.svg
│ │ ├── file-presentation.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-presentation.svg
│ │ ├── file-sheets.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-sheets.svg
│ │ ├── file-text.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-text.svg
│ │ ├── file-video.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-video.svg
│ │ ├── file-zip.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-zip.svg
│ │ ├── filter.imageset
│ │ │ ├── Contents.json
│ │ │ └── filter.svg
│ │ ├── folder-add.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder-add.svg
│ │ ├── folder-common-documents.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder-common-documents.svg
│ │ ├── folder-disable.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder-disable.svg
│ │ ├── folder-drop-box.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder-drop-box.svg
│ │ ├── folder-filled-tab.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder-fill.svg
│ │ ├── folder-filled.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder.svg
│ │ ├── folder-select-2.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder-select-2.svg
│ │ ├── folder-select.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder-select.svg
│ │ ├── folder-shared.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder-shared.svg
│ │ ├── folder.arrow.up.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder.arrow.up.svg
│ │ ├── folder.imageset
│ │ │ ├── Contents.json
│ │ │ └── folder.svg
│ │ ├── gallery.fill.imageset
│ │ │ ├── Contents.json
│ │ │ └── gallery.fill.svg
│ │ ├── gallery.imageset
│ │ │ ├── Contents.json
│ │ │ └── gallery.svg
│ │ ├── grid.imageset
│ │ │ ├── Contents.json
│ │ │ └── grid.svg
│ │ ├── house-fill.imageset
│ │ │ ├── Contents.json
│ │ │ └── house-fill.svg
│ │ ├── house.imageset
│ │ │ ├── Contents.json
│ │ │ └── house.svg
│ │ ├── illu-categories.imageset
│ │ │ ├── Contents.json
│ │ │ ├── EN-categories.svg
│ │ │ └── FR-categories.svg
│ │ ├── illu-collab.imageset
│ │ │ ├── Contents.json
│ │ │ └── illu-collab.svg
│ │ ├── illu-devices.imageset
│ │ │ ├── Contents.json
│ │ │ └── illu-devices.svg
│ │ ├── illu-drop-box.imageset
│ │ │ ├── Contents.json
│ │ │ └── illu-drop-box.svg
│ │ ├── illu-photos.imageset
│ │ │ ├── Contents.json
│ │ │ └── illu-photos.svg
│ │ ├── illu-upgrade.imageset
│ │ │ ├── Contents.json
│ │ │ └── illu-upgrade.svg
│ │ ├── image.imageset
│ │ │ ├── Contents.json
│ │ │ └── file-image.svg
│ │ ├── images.imageset
│ │ │ ├── Contents.json
│ │ │ └── images.svg
│ │ ├── info-filled.imageset
│ │ │ ├── Contents.json
│ │ │ └── info-filled.svg
│ │ ├── info.imageset
│ │ │ ├── Contents.json
│ │ │ └── info.svg
│ │ ├── largelist.imageset
│ │ │ ├── Contents.json
│ │ │ └── largelist.svg
│ │ ├── link-broken.imageset
│ │ │ ├── Contents.json
│ │ │ └── link-broken.svg
│ │ ├── link.imageset
│ │ │ ├── Contents.json
│ │ │ └── link.svg
│ │ ├── list.imageset
│ │ │ ├── Contents.json
│ │ │ └── list.svg
│ │ ├── lock.imageset
│ │ │ ├── Contents.json
│ │ │ └── lock.svg
│ │ ├── lock_external.imageset
│ │ │ ├── Contents.json
│ │ │ ├── lock-clear.svg
│ │ │ └── lock-dark.svg
│ │ ├── lock_infomaniak.imageset
│ │ │ ├── Contents.json
│ │ │ ├── lock-dark.svg
│ │ │ └── lock_infomaniak.svg
│ │ ├── logo-kdrive-beta.imageset
│ │ │ ├── Contents.json
│ │ │ ├── logo-kdrive-beta-light.svg
│ │ │ └── logo-kdrive-beta.svg
│ │ ├── logo.imageset
│ │ │ ├── Contents.json
│ │ │ ├── logo-dark.svg
│ │ │ └── logo-white.svg
│ │ ├── logout.imageset
│ │ │ ├── Contents.json
│ │ │ └── logout.svg
│ │ ├── maintenance.imageset
│ │ │ ├── Contents.json
│ │ │ └── maintenance.svg
│ │ ├── media-bold.imageset
│ │ │ ├── Contents.json
│ │ │ └── media-bold.svg
│ │ ├── media-inline.imageset
│ │ │ ├── Contents.json
│ │ │ └── media-inline.svg
│ │ ├── menu.imageset
│ │ │ ├── Contents.json
│ │ │ └── menu.svg
│ │ ├── music.imageset
│ │ │ ├── Contents.json
│ │ │ └── music.svg
│ │ ├── myKSuitePlus.logo.imageset
│ │ │ ├── Contents.json
│ │ │ ├── Logo kSuite.svg
│ │ │ └── myKSuitePlus.logo.svg
│ │ ├── no-drive.imageset
│ │ │ ├── Contents.json
│ │ │ └── no-drive.svg
│ │ ├── offline.imageset
│ │ │ ├── Contents.json
│ │ │ └── ofline.svg
│ │ ├── open-with.imageset
│ │ │ ├── Contents.json
│ │ │ └── open-with.svg
│ │ ├── order-success.imageset
│ │ │ ├── Contents.json
│ │ │ └── order-success.svg
│ │ ├── parameters.imageset
│ │ │ ├── Contents.json
│ │ │ └── parameters.svg
│ │ ├── pause.imageset
│ │ │ ├── Contents.json
│ │ │ └── pause.svg
│ │ ├── placeholder_avatar.imageset
│ │ │ ├── Contents.json
│ │ │ └── placeholder_avatar.pdf
│ │ ├── play-thumbnail.imageset
│ │ │ ├── Contents.json
│ │ │ └── play-thumbnail.svg
│ │ ├── play.imageset
│ │ │ ├── Contents.json
│ │ │ └── play.svg
│ │ ├── plus.imageset
│ │ │ ├── Contents.json
│ │ │ └── plus.svg
│ │ ├── refresh.imageset
│ │ │ ├── Contents.json
│ │ │ └── refresh.svg
│ │ ├── remove.imageset
│ │ │ ├── Contents.json
│ │ │ └── remove.svg
│ │ ├── reply.imageset
│ │ │ ├── Contents.json
│ │ │ └── reply.svg
│ │ ├── retry.imageset
│ │ │ ├── Contents.json
│ │ │ └── retry.svg
│ │ ├── scan.imageset
│ │ │ ├── Contents.json
│ │ │ └── scan.svg
│ │ ├── search.imageset
│ │ │ ├── Contents.json
│ │ │ └── search.svg
│ │ ├── select.imageset
│ │ │ ├── Contents.json
│ │ │ └── select.svg
│ │ ├── share.imageset
│ │ │ ├── Contents.json
│ │ │ └── share.svg
│ │ ├── shortcut-scan.imageset
│ │ │ ├── Contents.json
│ │ │ └── shortcut-scan.svg
│ │ ├── shortcut-search.imageset
│ │ │ ├── Contents.json
│ │ │ └── shortcut-search.svg
│ │ ├── shortcut-support.imageset
│ │ │ ├── Contents.json
│ │ │ └── shortcut-support.svg
│ │ ├── shortcut-upload.imageset
│ │ │ ├── Contents.json
│ │ │ └── shortcut-upload.svg
│ │ ├── small-check.imageset
│ │ │ ├── Contents.json
│ │ │ └── small-check.svg
│ │ ├── splashscreen-infomaniak.imageset
│ │ │ ├── Contents.json
│ │ │ ├── splashscreen-infomaniak-dark.svg
│ │ │ └── splashscreen-infomaniak-light.svg
│ │ ├── splashscreen-kdrive.imageset
│ │ │ ├── Contents.json
│ │ │ ├── splashscreen-kdrive-dark.svg
│ │ │ └── splashscreen-kdrive-light.svg
│ │ ├── star-fill.imageset
│ │ │ ├── Contents.json
│ │ │ └── star-fill.svg
│ │ ├── star.imageset
│ │ │ ├── Contents.json
│ │ │ └── star.svg
│ │ ├── stop.imageset
│ │ │ ├── Contents.json
│ │ │ └── stop.svg
│ │ ├── support_link.imageset
│ │ │ ├── Contents.json
│ │ │ └── support_link.svg
│ │ ├── switch_user.imageset
│ │ │ ├── Contents.json
│ │ │ ├── switch_user.pdf
│ │ │ └── switch_user_dark.pdf
│ │ ├── tag.imageset
│ │ │ ├── Contents.json
│ │ │ └── tag.svg
│ │ ├── team.imageset
│ │ │ ├── Contents.json
│ │ │ └── picto_team.svg
│ │ ├── test-image.imageset
│ │ │ ├── Contents.json
│ │ │ └── improve_landscape_photography.jpg
│ │ ├── unlock.imageset
│ │ │ ├── Contents.json
│ │ │ └── unlock.svg
│ │ ├── update-required.imageset
│ │ │ ├── Contents.json
│ │ │ ├── update-required-dark.svg
│ │ │ └── update-required-light.svg
│ │ ├── upgrade-kdrive.imageset
│ │ │ ├── Contents.json
│ │ │ └── upgrade-kdrive.svg
│ │ ├── upload.imageset
│ │ │ ├── Contents.json
│ │ │ └── upload.svg
│ │ ├── upsale-header-noDrive.imageset
│ │ │ ├── Contents.json
│ │ │ └── img-kDrive.svg
│ │ ├── upsale-header.imageset
│ │ │ ├── Contents.json
│ │ │ └── drive-rocket.svg
│ │ ├── url.imageset
│ │ │ ├── Contents.json
│ │ │ └── url.svg
│ │ ├── user-switch.imageset
│ │ │ ├── Contents.json
│ │ │ └── user-switch.svg
│ │ ├── user_logout.imageset
│ │ │ ├── Contents.json
│ │ │ └── user_logout.pdf
│ │ ├── users.imageset
│ │ │ ├── Contents.json
│ │ │ └── users.svg
│ │ ├── view.imageset
│ │ │ ├── Contents.json
│ │ │ └── view.svg
│ │ └── warning.imageset
│ │ │ ├── Contents.json
│ │ │ └── warning.svg
│ ├── Info.plist
│ ├── LaunchScreen.storyboard
│ ├── PrivacyInfo.xcprivacy
│ ├── de.lproj
│ │ ├── InfoPlist.strings
│ │ ├── Localizable.strings
│ │ └── Localizable.stringsdict
│ ├── en.lproj
│ │ ├── InfoPlist.strings
│ │ ├── Localizable.strings
│ │ └── Localizable.stringsdict
│ ├── es.lproj
│ │ ├── InfoPlist.strings
│ │ ├── Localizable.strings
│ │ └── Localizable.stringsdict
│ ├── fr.lproj
│ │ ├── InfoPlist.strings
│ │ ├── Localizable.strings
│ │ └── Localizable.stringsdict
│ ├── illu-maj.json
│ ├── illu_collab.json
│ ├── illu_devices.json
│ ├── illu_drop_box.json
│ ├── illu_photos.json
│ ├── illu_upgrade.json
│ ├── it.lproj
│ │ ├── InfoPlist.strings
│ │ ├── Localizable.strings
│ │ └── Localizable.stringsdict
│ └── kDrive.entitlements
├── SceneDelegate.swift
├── UI
│ ├── Controller
│ │ ├── Alert
│ │ │ └── AlertDocViewController.swift
│ │ ├── Base.lproj
│ │ │ └── Main.storyboard
│ │ ├── Create File
│ │ │ ├── DriveImportDocumentPickerViewController.swift
│ │ │ ├── FloatingPanelLayouts.swift
│ │ │ ├── FloatingPanelUtils.swift
│ │ │ └── PlusButtonFloatingPanelViewController.swift
│ │ ├── DriveErrorViewController.swift
│ │ ├── DriveUpdateRequiredViewController.swift
│ │ ├── Favorite
│ │ │ └── FavoritesViewModel.swift
│ │ ├── Files
│ │ │ ├── Categories
│ │ │ │ ├── EditCategoryViewController.swift
│ │ │ │ ├── ManageCategoriesViewController.swift
│ │ │ │ └── ManageCategoryFloatingPanelViewController.swift
│ │ │ ├── ColorSelectionFloatingPanelViewController.swift
│ │ │ ├── DropBox
│ │ │ │ └── ManageDropBoxViewController.swift
│ │ │ ├── External
│ │ │ │ ├── BaseInfoViewController.swift
│ │ │ │ ├── LockedFolderViewController.swift
│ │ │ │ └── UnavaillableFolderViewController.swift
│ │ │ ├── File List
│ │ │ │ ├── ConcreteFileListViewModel.swift
│ │ │ │ ├── DragAndDropFileListViewModel.swift
│ │ │ │ ├── FileListViewController.swift
│ │ │ │ ├── FileListViewModel.swift
│ │ │ │ ├── InMemoryFileListViewModel+Matomo.swift
│ │ │ │ ├── InMemoryFileListViewModel.swift
│ │ │ │ ├── MultipleSelectionFileListViewModel.swift
│ │ │ │ ├── RoundedCornersList.swift
│ │ │ │ └── UploadCardViewModel.swift
│ │ │ ├── FileActionsFloatingPanelViewController+Actions.swift
│ │ │ ├── FileActionsFloatingPanelViewController+Matomo.swift
│ │ │ ├── FileActionsFloatingPanelViewController.swift
│ │ │ ├── FileDetailViewController.swift
│ │ │ ├── FilePresenter.swift
│ │ │ ├── Files.storyboard
│ │ │ ├── FloatingPanelAction.swift
│ │ │ ├── MultipleSelectionFloatingPanelViewController+Actions.swift
│ │ │ ├── MultipleSelectionFloatingPanelViewController+Matomo.swift
│ │ │ ├── MultipleSelectionFloatingPanelViewController.swift
│ │ │ ├── OnlyOfficeViewController.swift
│ │ │ ├── Preview
│ │ │ │ ├── PreviewError.swift
│ │ │ │ └── PreviewViewController.swift
│ │ │ ├── PublicShareAction.swift
│ │ │ ├── RecentActivityFilesViewController.swift
│ │ │ ├── Rights and Share
│ │ │ │ ├── InviteUserViewController.swift
│ │ │ │ ├── MykSuiteRestrictions.swift
│ │ │ │ ├── RightsSelectionViewController+Matomo.swift
│ │ │ │ ├── RightsSelectionViewController.swift
│ │ │ │ ├── ShareAndRightsViewController.swift
│ │ │ │ ├── ShareLinkSettingsViewController+Matomo.swift
│ │ │ │ └── ShareLinkSettingsViewController.swift
│ │ │ ├── Save File
│ │ │ │ ├── LocationFolderViewController.swift
│ │ │ │ ├── SaveFile.storyboard
│ │ │ │ ├── SaveFileViewController+FooterButtonDelegate.swift
│ │ │ │ ├── SaveFileViewController+SelectDriveDelegate.swift
│ │ │ │ ├── SaveFileViewController+SelectFolderDelegate.swift
│ │ │ │ ├── SaveFileViewController+SelectPhotoFormatDelegate.swift
│ │ │ │ ├── SaveFileViewController+UITableViewDataSource.swift
│ │ │ │ ├── SaveFileViewController+UITableViewDelegate.swift
│ │ │ │ ├── SaveFileViewController.swift
│ │ │ │ ├── SelectDriveViewController.swift
│ │ │ │ ├── SelectFolderViewController.swift
│ │ │ │ ├── SelectPhotoFormatFooterView.swift
│ │ │ │ ├── SelectPhotoFormatFooterView.xib
│ │ │ │ └── SelectPhotoFormatViewController.swift
│ │ │ ├── Search
│ │ │ │ ├── DateRangePickerViewController.swift
│ │ │ │ ├── Filters.swift
│ │ │ │ ├── Search.storyboard
│ │ │ │ ├── SearchFilesViewModel.swift
│ │ │ │ ├── SearchFiltersViewController.swift
│ │ │ │ └── SearchViewController.swift
│ │ │ ├── SidebarViewController.swift
│ │ │ └── Upload
│ │ │ │ ├── UploadQueueFoldersViewController.swift
│ │ │ │ └── UploadQueueViewController.swift
│ │ ├── Floating Panel Information
│ │ │ ├── AccessFileFloatingPanelViewController.swift
│ │ │ ├── BetaInviteFloatingPanelViewController.swift
│ │ │ ├── DriveMaintenanceFloatingPanelViewController.swift
│ │ │ ├── DropBoxFloatingPanelViewController.swift
│ │ │ ├── FolderColorFloatingPanelViewController.swift
│ │ │ ├── InformationFloatingPanel.storyboard
│ │ │ ├── InformationFloatingPanelViewController.swift
│ │ │ ├── NoAccessFloatingPanelViewController.swift
│ │ │ ├── SavePhotosFloatingPanelViewController.swift
│ │ │ ├── ShareFloatingPanelViewController.swift
│ │ │ └── UnsupportedExtensionFloatingPanelViewController.swift
│ │ ├── FloatingPanelSelectOptionViewController.swift
│ │ ├── Home
│ │ │ ├── Home.storyboard
│ │ │ ├── HomeLargeTitleHeaderView.swift
│ │ │ ├── HomeLargeTitleHeaderView.xib
│ │ │ ├── HomeRecentActivitiesController.swift
│ │ │ ├── HomeViewController.swift
│ │ │ ├── RootMenuHeaderView.swift
│ │ │ ├── RootMenuHeaderView.xib
│ │ │ └── SelectSwitchDriveDelegate.swift
│ │ ├── LaunchPanelsController.swift
│ │ ├── LockedAppViewController.swift
│ │ ├── LoginDelegateHandler.swift
│ │ ├── MainTabViewController+LegacyTabBar.swift
│ │ ├── MainTabViewController.swift
│ │ ├── Menu
│ │ │ ├── AboutTableViewController.swift
│ │ │ ├── AppLockSettingsViewController.swift
│ │ │ ├── BaseGroupedTableViewController.swift
│ │ │ ├── LastModificationsViewModel.swift
│ │ │ ├── Menu.storyboard
│ │ │ ├── MenuViewController.swift
│ │ │ ├── MySharesViewModel.swift
│ │ │ ├── NotificationsSettingsTableViewController.swift
│ │ │ ├── OfflineFilesViewModel.swift
│ │ │ ├── ParameterTableViewController.swift
│ │ │ ├── PhotoList
│ │ │ │ ├── PhotoListViewController.swift
│ │ │ │ └── PhotoListViewModel.swift
│ │ │ ├── PhotoSyncSettingsViewController+Matomo.swift
│ │ │ ├── PhotoSyncSettingsViewController.swift
│ │ │ ├── SecurityTableViewController.swift
│ │ │ ├── SelectThemeTableViewController.swift
│ │ │ ├── Share
│ │ │ │ ├── PublicShareSingleFileViewModel.swift
│ │ │ │ ├── PublicShareViewModel.swift
│ │ │ │ └── SharedWithMeViewModel.swift
│ │ │ ├── StorageTableViewController.swift
│ │ │ ├── StoreSuccessViewController.swift
│ │ │ ├── StoreViewController.swift
│ │ │ ├── SwitchUserViewController.swift
│ │ │ ├── Trash
│ │ │ │ ├── TrashFloatingPanelTableViewController.swift
│ │ │ │ └── TrashListViewModel.swift
│ │ │ └── WifiSyncSettingsViewController.swift
│ │ ├── NewFolder
│ │ │ ├── NewFolder.storyboard
│ │ │ ├── NewFolderTypeTableViewController.swift
│ │ │ └── NewFolderViewController.swift
│ │ ├── OnboardingBottomViewController.swift
│ │ ├── Photo
│ │ │ ├── Photo.storyboard
│ │ │ ├── PhotoPickerDelegate.swift
│ │ │ └── SavePhotoViewController.swift
│ │ ├── PreloadingViewController.swift
│ │ ├── RegisterViewController.swift
│ │ ├── Scan
│ │ │ ├── SaveScanViewController.swift
│ │ │ ├── Scan.storyboard
│ │ │ └── ScanNavigationViewController.swift
│ │ ├── Storyboard.swift
│ │ ├── SwiftUI
│ │ │ ├── AboutPrivacyViewBridgeController.swift
│ │ │ ├── AsyncImageView.swift
│ │ │ ├── MyKSuiteDashboardViewBridgeController.swift
│ │ │ └── MyKSuiteFloatingPanelBridgeController.swift
│ │ └── WaveViewController.swift
│ └── View
│ │ ├── EmptyTableView
│ │ ├── EmptyTableView.swift
│ │ ├── EmptyTableView.xib
│ │ ├── EmptyTableViewCell.swift
│ │ └── EmptyTableViewCell.xib
│ │ ├── Files
│ │ ├── Categories
│ │ │ ├── CategoryBadgeCollectionViewCell.swift
│ │ │ ├── CategoryBadgeCollectionViewCell.xib
│ │ │ ├── CategoryCollectionViewCell.swift
│ │ │ ├── CategoryCollectionViewCell.xib
│ │ │ ├── CategoryTableViewCell.swift
│ │ │ ├── CategoryTableViewCell.xib
│ │ │ ├── ColorSelectionCollectionViewCell.swift
│ │ │ ├── ColorSelectionCollectionViewCell.xib
│ │ │ ├── ColorSelectionTableViewCell.swift
│ │ │ ├── ColorSelectionTableViewCell.xib
│ │ │ ├── ManageCategoriesTableViewCell.swift
│ │ │ └── ManageCategoriesTableViewCell.xib
│ │ ├── DropBox
│ │ │ ├── DropBoxDisableTableViewCell.swift
│ │ │ ├── DropBoxDisableTableViewCell.xib
│ │ │ ├── DropBoxLinkTableViewCell.swift
│ │ │ └── DropBoxLinkTableViewCell.xib
│ │ ├── FileCollectionViewCell.swift
│ │ ├── FileCollectionViewCell.xib
│ │ ├── FileDetail
│ │ │ ├── FileDetailActivitySeparatorTableViewCell.swift
│ │ │ ├── FileDetailActivitySeparatorTableViewCell.xib
│ │ │ ├── FileDetailActivityTableViewCell.swift
│ │ │ ├── FileDetailActivityTableViewCell.xib
│ │ │ ├── FileDetailCommentListTableViewCell.swift
│ │ │ ├── FileDetailCommentListTableViewCell.xib
│ │ │ ├── FileDetailCommentPopover.swift
│ │ │ ├── FileDetailCommentPopover.xib
│ │ │ ├── FileDetailCommentTableViewCell.swift
│ │ │ ├── FileDetailCommentTableViewCell.xib
│ │ │ ├── FileDetailHeaderAltTableViewCell.swift
│ │ │ ├── FileDetailHeaderAltTableViewCell.xib
│ │ │ ├── FileDetailHeaderTableViewCell.swift
│ │ │ ├── FileDetailHeaderTableViewCell.xib
│ │ │ ├── FileDetailInformationUserCollectionViewCell.swift
│ │ │ ├── FileDetailInformationUserCollectionViewCell.xib
│ │ │ ├── FileDetailInformationUserLayout.swift
│ │ │ ├── FileInformation
│ │ │ │ ├── FileInformationCreationTableViewCell.swift
│ │ │ │ ├── FileInformationCreationTableViewCell.xib
│ │ │ │ ├── FileInformationLocationTableViewCell.swift
│ │ │ │ ├── FileInformationLocationTableViewCell.xib
│ │ │ │ ├── FileInformationOwnerTableViewCell.swift
│ │ │ │ ├── FileInformationOwnerTableViewCell.xib
│ │ │ │ ├── FileInformationSizeTableViewCell.swift
│ │ │ │ ├── FileInformationSizeTableViewCell.xib
│ │ │ │ ├── FileInformationUsersTableViewCell.swift
│ │ │ │ └── FileInformationUsersTableViewCell.xib
│ │ │ ├── InfoTableViewCell.swift
│ │ │ ├── InfoTableViewCell.xib
│ │ │ ├── PopoverBackground.swift
│ │ │ └── ShareLink
│ │ │ │ ├── InviteUserTableViewCell.swift
│ │ │ │ ├── InviteUserTableViewCell.xib
│ │ │ │ ├── InvitedUserCollectionViewCell.swift
│ │ │ │ ├── InvitedUserCollectionViewCell.xib
│ │ │ │ ├── InvitedUserTableViewCell.swift
│ │ │ │ ├── InvitedUserTableViewCell.xib
│ │ │ │ ├── MessageTableViewCell.swift
│ │ │ │ ├── MessageTableViewCell.xib
│ │ │ │ ├── RightsSelectionTableViewCell.swift
│ │ │ │ ├── RightsSelectionTableViewCell.xib
│ │ │ │ ├── ShareLinkAccessRightTableViewCell.swift
│ │ │ │ ├── ShareLinkAccessRightTableViewCell.xib
│ │ │ │ ├── ShareLinkSettingTableViewCell.swift
│ │ │ │ ├── ShareLinkSettingTableViewCell.xib
│ │ │ │ ├── ShareLinkTableViewCell.swift
│ │ │ │ ├── ShareLinkTableViewCell.xib
│ │ │ │ ├── UsersAccessTableViewCell.swift
│ │ │ │ └── UsersAccessTableViewCell.xib
│ │ ├── FileGridCollectionViewCell.swift
│ │ ├── FileGridCollectionViewCell.xib
│ │ ├── FileListBarButton.swift
│ │ ├── FloatingPanel
│ │ │ ├── FloatingPanelActionCollectionViewCell.swift
│ │ │ ├── FloatingPanelActionCollectionViewCell.xib
│ │ │ ├── FloatingPanelQuickActionCollectionViewCell.swift
│ │ │ ├── FloatingPanelQuickActionCollectionViewCell.xib
│ │ │ ├── FloatingPanelSortOptionTableViewCell.swift
│ │ │ ├── FloatingPanelSortOptionTableViewCell.xib
│ │ │ ├── FloatingPanelTableViewCell.swift
│ │ │ └── FloatingPanelTableViewCell.xib
│ │ ├── Preview
│ │ │ ├── AudioCollectionViewCell.swift
│ │ │ ├── AudioCollectionViewCell.xib
│ │ │ ├── CodePreviewCollectionViewCell.swift
│ │ │ ├── CodePreviewCollectionViewCell.xib
│ │ │ ├── DownloadingPreviewCollectionViewCell.swift
│ │ │ ├── DownloadingPreviewCollectionViewCell.xib
│ │ │ ├── ImagePreviewCollectionViewCell.swift
│ │ │ ├── ImagePreviewCollectionViewCell.xib
│ │ │ ├── NoPreviewCollectionViewCell.swift
│ │ │ ├── NoPreviewCollectionViewCell.xib
│ │ │ ├── OfficePreviewCollectionViewCell.swift
│ │ │ ├── OfficePreviewCollectionViewCell.xib
│ │ │ ├── PdfPreviewCollectionViewCell.swift
│ │ │ ├── PdfPreviewCollectionViewCell.xib
│ │ │ ├── PreviewCollectionViewCell.swift
│ │ │ ├── VideoCollectionViewCell.swift
│ │ │ └── VideoCollectionViewCell.xib
│ │ ├── SaveFile
│ │ │ ├── DriveSwitchTableViewCell.swift
│ │ │ ├── DriveSwitchTableViewCell.xib
│ │ │ ├── FileNameTableViewCell.swift
│ │ │ ├── FileNameTableViewCell.xib
│ │ │ ├── ImportingTableViewCell.swift
│ │ │ ├── ImportingTableViewCell.xib
│ │ │ ├── LocationTableViewCell.swift
│ │ │ ├── LocationTableViewCell.xib
│ │ │ ├── PhotoFormatTableViewCell.swift
│ │ │ ├── PhotoFormatTableViewCell.xib
│ │ │ ├── ScanTypeTableViewCell.swift
│ │ │ └── ScanTypeTableViewCell.xib
│ │ ├── Search
│ │ │ ├── BasicTitleCollectionReusableView.swift
│ │ │ ├── BasicTitleCollectionReusableView.xib
│ │ │ ├── DayRangeIndicatorView.swift
│ │ │ ├── FileExtensionTextInputTableViewCell.swift
│ │ │ ├── FiltersFooterView.swift
│ │ │ ├── FiltersFooterView.xib
│ │ │ ├── RecentSearchCollectionViewCell.swift
│ │ │ ├── RecentSearchCollectionViewCell.xib
│ │ │ ├── SearchFilterCollectionViewCell.swift
│ │ │ ├── SearchFilterCollectionViewCell.xib
│ │ │ ├── SelectTableViewCell.swift
│ │ │ ├── SelectTableViewCell.xib
│ │ │ └── TextInputTableViewCell.swift
│ │ ├── SwipableCell.swift
│ │ ├── SwipableCollectionView.swift
│ │ └── Upload
│ │ │ ├── ErrorUploadTableViewCell.swift
│ │ │ ├── ErrorUploadTableViewCell.xib
│ │ │ ├── RPCircularProgress.swift
│ │ │ ├── UploadCardView.swift
│ │ │ ├── UploadFolderTableViewCell.swift
│ │ │ ├── UploadFolderTableViewCell.xib
│ │ │ ├── UploadTableViewCell.swift
│ │ │ └── UploadTableViewCell.xib
│ │ ├── Footer view
│ │ ├── FooterButtonView.swift
│ │ └── FooterButtonView.xib
│ │ ├── Generic
│ │ ├── AlertTableViewCell.swift
│ │ ├── AlertTableViewCell.xib
│ │ ├── SelectionTableViewCell.swift
│ │ └── SelectionTableViewCell.xib
│ │ ├── Header view
│ │ ├── FilesHeaderView.swift
│ │ ├── FilesHeaderView.xib
│ │ ├── FilterView.swift
│ │ ├── HomeRecentFilesHeaderView.swift
│ │ ├── HomeRecentFilesHeaderView.xib
│ │ ├── HomeTitleView.swift
│ │ ├── HomeTitleView.xib
│ │ ├── SelectView.swift
│ │ └── SelectView.xib
│ │ ├── Home
│ │ ├── HomeEmptyFilesCollectionViewCell.swift
│ │ ├── HomeEmptyFilesCollectionViewCell.xib
│ │ ├── HomeLastPicCollectionViewCell.swift
│ │ ├── HomeLastPicCollectionViewCell.xib
│ │ ├── InsufficientStorageCollectionViewCell.swift
│ │ ├── InsufficientStorageCollectionViewCell.xib
│ │ ├── RecentActivityBottomTableViewCell.swift
│ │ ├── RecentActivityBottomTableViewCell.xib
│ │ ├── RecentActivityCollectionViewCell.swift
│ │ ├── RecentActivityCollectionViewCell.xib
│ │ ├── RecentActivityPreviewCollectionViewCell.swift
│ │ ├── RecentActivityPreviewCollectionViewCell.xib
│ │ ├── UploadsInProgressTableViewCell.swift
│ │ ├── UploadsInProgressTableViewCell.xib
│ │ ├── UploadsPausedTableViewCell.swift
│ │ └── UploadsPausedTableViewCell.xib
│ │ ├── Menu
│ │ ├── DriveTitleTableViewCell.swift
│ │ ├── DriveTitleTableViewCell.xib
│ │ ├── MainTabBar.swift
│ │ ├── MenuTableViewCell.swift
│ │ ├── MenuTableViewCell.xib
│ │ ├── MenuTopTableViewCell.swift
│ │ ├── MenuTopTableViewCell.xib
│ │ ├── Parameters
│ │ │ ├── AboutDetailTableViewCell.swift
│ │ │ ├── AboutDetailTableViewCell.xib
│ │ │ ├── ParameterAboutTableViewCell.swift
│ │ │ ├── ParameterAboutTableViewCell.xib
│ │ │ ├── ParameterAccessDeniedTableViewCell.swift
│ │ │ ├── ParameterAccessDeniedTableViewCell.xib
│ │ │ ├── ParameterSwitchTableViewCell.swift
│ │ │ ├── ParameterSwitchTableViewCell.xib
│ │ │ ├── ParameterSyncTableViewCell.swift
│ │ │ ├── ParameterSyncTableViewCell.xib
│ │ │ ├── ParameterTableViewCell.swift
│ │ │ ├── ParameterTableViewCell.xib
│ │ │ ├── ParameterWifiTableViewCell.swift
│ │ │ └── ParameterWifiTableViewCell.xib
│ │ ├── PhotoList
│ │ │ ├── PhotoCollectionViewCell.swift
│ │ │ ├── PhotoCollectionViewCell.xib
│ │ │ ├── ReusableHeaderView.swift
│ │ │ └── ReusableHeaderView.xib
│ │ ├── PhotoSyncSettings
│ │ │ ├── PhotoAccessDeniedTableViewCell.swift
│ │ │ ├── PhotoAccessDeniedTableViewCell.xib
│ │ │ ├── PhotoSyncSettingsTableViewCell.swift
│ │ │ └── PhotoSyncSettingsTableViewCell.xib
│ │ ├── RootMenuCell.swift
│ │ ├── Store
│ │ │ ├── StoreCollectionViewCell.swift
│ │ │ ├── StoreCollectionViewCell.xib
│ │ │ ├── StoreControlCollectionReusableView.swift
│ │ │ ├── StoreControlCollectionReusableView.xib
│ │ │ ├── StoreFeatureTableViewCell.swift
│ │ │ ├── StoreFeatureTableViewCell.xib
│ │ │ ├── StoreHelpFooter.swift
│ │ │ ├── StoreHelpFooter.xib
│ │ │ ├── StoreNextCollectionViewCell.swift
│ │ │ ├── StoreNextCollectionViewCell.xib
│ │ │ ├── StoreStorageTableViewCell.swift
│ │ │ └── StoreStorageTableViewCell.xib
│ │ └── SwitchUser
│ │ │ ├── NoAccountTableViewCell.swift
│ │ │ ├── NoAccountTableViewCell.xib
│ │ │ ├── UserAccountTableViewCell.swift
│ │ │ ├── UserAccountTableViewCell.xib
│ │ │ ├── UsersDropDownTableViewCell.swift
│ │ │ └── UsersDropDownTableViewCell.xib
│ │ ├── NewFolder
│ │ ├── FolderTypeTableViewCell.swift
│ │ ├── FolderTypeTableViewCell.xib
│ │ ├── NewFolderHeaderTableViewCell.swift
│ │ ├── NewFolderHeaderTableViewCell.xib
│ │ ├── NewFolderLocationCollectionViewCell.swift
│ │ ├── NewFolderLocationCollectionViewCell.xib
│ │ ├── NewFolderLocationTableViewCell.swift
│ │ ├── NewFolderLocationTableViewCell.xib
│ │ ├── NewFolderSectionHeaderView.swift
│ │ ├── NewFolderSectionHeaderView.xib
│ │ ├── NewFolderSettingsTableViewCell.swift
│ │ ├── NewFolderSettingsTableViewCell.xib
│ │ ├── NewFolderSettingsTitleTableViewCell.swift
│ │ ├── NewFolderSettingsTitleTableViewCell.xib
│ │ ├── NewFolderShareRuleTableViewCell.swift
│ │ ├── NewFolderShareRuleTableViewCell.xib
│ │ ├── NewFolderShareRuleUserCollectionViewCell.swift
│ │ ├── NewFolderShareRuleUserCollectionViewCell.xib
│ │ └── NewFolderShareRuleUserLayout.swift
│ │ ├── Onboarding
│ │ └── OnboardingTextView.swift
│ │ └── Upsale
│ │ ├── NoDriveUpsaleViewController.swift
│ │ ├── UpsaleFloatingPanelController.swift
│ │ ├── UpsaleViewController+Matomo.swift
│ │ └── UpsaleViewController.swift
└── Utils
│ ├── AlignedCollectionViewFlowLayout.swift
│ ├── AppExtensionRouter.swift
│ ├── AppFactoryService.swift
│ ├── CustomLargeTitleCollectionViewController.swift
│ ├── DropPosition.swift
│ ├── FileActionsHelper.swift
│ ├── InteractivePopRecognizer.swift
│ ├── MyKSuiteChip.swift
│ ├── SceneStateRestorable.swift
│ ├── TopScrollable.swift
│ ├── UINavigationController+Extension.swift
│ ├── UINavigationItem+Extension.swift
│ ├── UIScrollView+Extension.swift
│ └── UploadCountManager.swift
├── kDriveAPITests
└── kDriveCore
│ ├── DriveApiTests.swift
│ └── DriveFileManagerTests.swift
├── kDriveActionExtension
├── ActionExtension.entitlements
├── ActionNavigationController.swift
├── Base.lproj
│ └── MainInterface.storyboard
├── Info.plist
├── Media.xcassets
│ ├── Contents.json
│ ├── ExtensionIcon.appiconset
│ │ ├── Contents.json
│ │ ├── Icon-120.png
│ │ ├── Icon-121.png
│ │ ├── Icon-180.png
│ │ └── Icon-60.png
│ └── TouchBarBezel.colorset
│ │ └── Contents.json
├── de.lproj
│ └── InfoPlist.strings
├── en.lproj
│ └── InfoPlist.strings
├── es.lproj
│ └── InfoPlist.strings
├── fr.lproj
│ └── InfoPlist.strings
└── it.lproj
│ └── InfoPlist.strings
├── kDriveCore
├── AudioPlayer
│ ├── MediaMetadata.swift
│ ├── MediaPlayerOrchestrator.swift
│ ├── NowPlayableCommand.swift
│ ├── SingleTrackPlayer+RemoteControl.swift
│ └── SingleTrackPlayer.swift
├── DI
│ └── FactoryService.swift
├── Data
│ ├── Api
│ │ ├── ApiRoutes.swift
│ │ ├── DriveApiFetcher+Listing.swift
│ │ ├── DriveApiFetcher+Upload.swift
│ │ ├── DriveApiFetcher.swift
│ │ ├── DriveInitWith.swift
│ │ ├── Endpoint+Files.swift
│ │ ├── Endpoint+Share.swift
│ │ ├── Endpoint+Trash.swift
│ │ ├── Endpoint.swift
│ │ ├── FileWith.swift
│ │ ├── PublicShareApiFetcher.swift
│ │ └── PublicShareMetadata.swift
│ ├── Cache
│ │ ├── AccountManager.swift
│ │ ├── AvailableOfflineManager.swift
│ │ ├── DriveFileManager
│ │ │ ├── DriveFileManager+AvailableOffline.swift
│ │ │ ├── DriveFileManager+Listing.swift
│ │ │ ├── DriveFileManager+Query.swift
│ │ │ ├── DriveFileManager+Transactionable.swift
│ │ │ ├── DriveFileManager.swift
│ │ │ └── DriveFileManagerConstants.swift
│ │ ├── DriveInfosManager
│ │ │ ├── DriveInfosManager+FileProvider.swift
│ │ │ ├── DriveInfosManager+Query.swift
│ │ │ └── DriveInfosManager.swift
│ │ ├── FileListOptions.swift
│ │ ├── PdfPreviewCache.swift
│ │ └── PhotoSyncSettings.swift
│ ├── Database
│ │ └── RealmAccessor.swift
│ ├── DownloadQueue
│ │ ├── BackgroundDownloadSessionManager.swift
│ │ ├── DownloadOperation
│ │ │ ├── DownloadArchiveOperation.swift
│ │ │ ├── DownloadAuthenticatedOperation.swift
│ │ │ ├── DownloadOperation.swift
│ │ │ ├── DownloadPublicShareArchiveOperation.swift
│ │ │ └── DownloadPublicShareOperation.swift
│ │ ├── DownloadQueue.swift
│ │ └── DownloadQueueable.swift
│ ├── MQService
│ │ ├── ActionNotification.swift
│ │ ├── ActionProgress.swift
│ │ ├── ActionProgressNotification.swift
│ │ ├── ActionType.swift
│ │ ├── BulkAction.swift
│ │ ├── IPSToken.swift
│ │ └── MQService.swift
│ ├── Models
│ │ ├── ArchiveBody.swift
│ │ ├── CancelableResponse.swift
│ │ ├── Category.swift
│ │ ├── CategoryResponse.swift
│ │ ├── CategoryRights.swift
│ │ ├── Comment.swift
│ │ ├── DownloadArchiveResponse.swift
│ │ ├── DragAndDropFile.swift
│ │ ├── Drive
│ │ │ ├── Drive+Quota.swift
│ │ │ ├── Drive.swift
│ │ │ ├── DriveAccount.swift
│ │ │ ├── DriveCapabilities.swift
│ │ │ ├── DrivePack.swift
│ │ │ ├── DrivePackCapabilities.swift
│ │ │ └── DriveRights.swift
│ │ ├── DriveError.swift
│ │ ├── DriveUser.swift
│ │ ├── DropBox.swift
│ │ ├── File+Image.swift
│ │ ├── File+URL.swift
│ │ ├── File.swift
│ │ ├── FileAccess.swift
│ │ ├── FileAction.swift
│ │ ├── FileActionBody.swift
│ │ ├── FileActivity.swift
│ │ ├── FileCategory.swift
│ │ ├── FileCount.swift
│ │ ├── FileType.swift
│ │ ├── ListStyle.swift
│ │ ├── ListingResult.swift
│ │ ├── PartialListingResult.swift
│ │ ├── PhotoSortMode.swift
│ │ ├── Rights.swift
│ │ ├── ShareLink.swift
│ │ ├── Shareable.swift
│ │ ├── Tag.swift
│ │ ├── Team.swift
│ │ └── Upload
│ │ │ ├── CornerCellContainer.swift
│ │ │ ├── DirectUploadToken.swift
│ │ │ ├── UploadFile.swift
│ │ │ ├── UploadLiveSession.swift
│ │ │ ├── UploadSession.swift
│ │ │ ├── UploadedChunk.swift
│ │ │ ├── UploadedFile.swift
│ │ │ ├── UploadingChunkTask.swift
│ │ │ └── UploadingSessionTask.swift
│ ├── Restoration
│ │ └── SceneRestorationKeys.swift
│ └── Upload
│ │ ├── Servicies
│ │ ├── BackgroundUploadSessionManager.swift
│ │ ├── FreeSpace
│ │ │ ├── CacheModel.swift
│ │ │ └── FreeSpaceService.swift
│ │ ├── PhotoLibraryUploader
│ │ │ ├── PhotoLibraryCleanerService.swift
│ │ │ ├── PhotoLibraryUploader+Query.swift
│ │ │ ├── PhotoLibraryUploader+Scan.swift
│ │ │ ├── PhotoLibraryUploader+Sync.swift
│ │ │ └── PhotoLibraryUploader.swift
│ │ └── UploadService
│ │ │ ├── Parallelism
│ │ │ ├── UploadParallelismOrchestrator.swift
│ │ │ └── WorkloadParallelismHeuristic.swift
│ │ │ ├── UploadService+Datasource.swift
│ │ │ ├── UploadService+Notifications.swift
│ │ │ ├── UploadService+Observation.swift
│ │ │ ├── UploadService+Publish.swift
│ │ │ ├── UploadService.swift
│ │ │ └── UploadServiceable.swift
│ │ └── UploadQueue
│ │ ├── Chunk
│ │ ├── ChunkProvider.swift
│ │ ├── FileHandlable.swift
│ │ ├── RangeProvider.swift
│ │ └── RangeProviderGuts.swift
│ │ ├── Operation
│ │ ├── UploadOperation+Database.swift
│ │ ├── UploadOperation+Datasource.swift
│ │ ├── UploadOperation+Error.swift
│ │ ├── UploadOperation+ExpiringActivityDelegate.swift
│ │ ├── UploadOperation+PHAsset.swift
│ │ ├── UploadOperation+Request.swift
│ │ ├── UploadOperation+UploadChunk.swift
│ │ ├── UploadOperation+UploadSession.swift
│ │ ├── UploadOperation.swift
│ │ └── UploadOperationable.swift
│ │ └── Queue
│ │ ├── KeyedUploadOperationable.swift
│ │ ├── PhotoUploadQueue.swift
│ │ ├── UploadQueue+Queue.swift
│ │ ├── UploadQueue.swift
│ │ ├── UploadQueueObserver.swift
│ │ └── UploadQueueable.swift
├── FileProvider
│ ├── FileProviderItem.swift
│ ├── FileProviderItemProvider.swift
│ ├── FileProviderService.swift
│ └── UploadFileProviderItem.swift
├── GoogleService-Info.plist
├── Info.plist
├── Services
│ ├── AppContextService.swift
│ ├── AppRestorationServiceable.swift
│ └── BackgroundTasksService.swift
├── UI
│ ├── Alert
│ │ ├── AlertChoiceViewController.swift
│ │ ├── AlertFieldViewController.swift
│ │ ├── AlertTextViewController.swift
│ │ └── AlertViewController.swift
│ ├── IKButton.swift
│ ├── IKLargeButton.swift
│ ├── IKLargeIconButton.swift
│ ├── IKRoundButton.swift
│ ├── MaterialOutlinedTextField+Extension.swift
│ ├── Restorable.swift
│ ├── Scan
│ │ ├── SaveScanWorker.swift
│ │ └── SaveScanWorkerDelegate.swift
│ ├── UIConstants.swift
│ └── UIViewControllerExtension.swift
├── Utils
│ ├── AbstractLog+Category.swift
│ ├── AbstractLog.swift
│ ├── AppNavigable.swift
│ ├── AttributedString+Extension.swift
│ ├── Constants.swift
│ ├── DeeplinkParser.swift
│ ├── Deeplinks
│ │ ├── DeeplinkService.swift
│ │ ├── PublicShareLink.swift
│ │ └── UniversalLinksHelper.swift
│ ├── DispatchGroup+Extension.swift
│ ├── DriveUserDefaults+Extension.swift
│ ├── FileProvider
│ │ └── FileProviderDomain+Identifier.swift
│ ├── Files
│ │ ├── FileImportHelper+Upload.swift
│ │ ├── FileImportHelper.swift
│ │ ├── FileManager+Extension.swift
│ │ ├── FilePreviewHelper.swift
│ │ ├── ImportedFile.swift
│ │ ├── PhotoFileFormat.swift
│ │ └── ScanFileFormat.swift
│ ├── IKSegmentedControl.swift
│ ├── IKSelectButton.swift
│ ├── IKSlider.swift
│ ├── InExtensionRouter.swift
│ ├── LocalizedFilenameFormatter.swift
│ ├── Logging.swift
│ ├── MatomoUtils+Extension.swift
│ ├── NotificationName+Extension.swift
│ ├── NotificationsHelper.swift
│ ├── OperationQueueHelper.swift
│ ├── PHAsset
│ │ ├── PHAsset+Exension.swift
│ │ ├── PHAssetIdentifier.swift
│ │ └── PHAssetNameProvider.swift
│ ├── PhotoLibrarySaver.swift
│ ├── PlusButtonObserver.swift
│ ├── PresentationOrigin.swift
│ ├── RootViewControllerState.swift
│ ├── Routable.swift
│ ├── Sentry
│ │ ├── ApiToken+Sentry.swift
│ │ ├── SentryDebug+Misc.swift
│ │ ├── SentryDebug+Realm.swift
│ │ ├── SentryDebug+Upload.swift
│ │ └── SentryDebug.swift
│ ├── String+Extension.swift
│ ├── SyncMode.swift
│ ├── TextFieldConfiguration.swift
│ ├── Theme.swift
│ └── UIImage+HEIF.swift
├── VideoPlayer
│ └── VideoPlayer.swift
└── kDriveCore.h
├── kDriveFileProvider
├── Enumerators
│ ├── DirectoryEnumerator.swift
│ ├── RootEnumerator.swift
│ └── WorkingSetEnumerator.swift
├── FileProvider.entitlements
├── FileProviderExtension+Actions.swift
├── FileProviderExtension+Thumbnail.swift
├── FileProviderExtension.swift
├── Info.plist
├── NSFileProviderPage+Extension.swift
├── NSFileProviderSyncAnchor+Extension.swift
└── Validation
│ ├── FileProviderValidationServiceSource.h
│ ├── FileProviderValidationServiceSource.m
│ └── kDriveFileProvider-Bridging-Header.h
├── kDriveShareExtension
├── Base.lproj
│ └── MainInterface.storyboard
├── Info.plist
├── ShareExtension.entitlements
└── ShareNavigationViewController.swift
├── kDriveTestShared
├── Env.sample.swift
├── JSONHelper.swift
├── MCKAvailableOfflineManager.swift
├── MCKPhotoLibraryQueryable.swift
├── MCKPhotoLibraryScanable.swift
├── MCKPhotoLibrarySyncable.swift
├── MCKPhotoLibraryUploadable.swift
├── MCKRouter.swift
├── MCKTokenDelegate.swift
├── MockingHelper.swift
└── TestsMessages.swift
├── kDriveTests
├── StateRestoration
│ └── UTSceneRestorationMetadata.swift
├── UTNavigationManager.swift
├── kDrive
│ └── Launch
│ │ ├── ITAppLaunchTest.swift
│ │ ├── MockAccountManager.swift
│ │ └── UTRootViewControllerState.swift
└── kDriveCore
│ ├── BinaryDisplaySizeBinaryDisplaySize.swift
│ ├── Drive
│ ├── ITDrive.swift
│ └── JSON
│ │ ├── free_drive.json
│ │ └── paid_drive.json
│ ├── Files
│ └── UTPHAssetNameProvider.swift
│ ├── MenuViewControllerTests.swift
│ ├── UTAppContextServiceable.swift
│ ├── UTPersistableEnumDecoding.swift
│ └── UploadChunks
│ ├── ITChunkProvider.swift
│ ├── ITRangeProvider.swift
│ ├── ITRangeProviderGuts.swift
│ ├── Matterhorn_as_seen_from_Zermatt,_Wallis,_Switzerland,_2012_August,Wikimedia_Commons.jpg
│ ├── Mocks
│ ├── MCKChunkProvidable.swift
│ ├── MCKFileHandlable.swift
│ ├── MCKRangeProvidable.swift
│ └── MCKRangeProviderGuts.swift
│ ├── UTChunkProvider.swift
│ ├── UTRangeProvider.swift
│ └── UTRangeProviderGuts.swift
├── kDriveUITests
└── DriveUITest.swift
└── scripts
└── lint.sh
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report to help us improve
4 | title: ''
5 | labels: bug
6 | assignees: ''
7 |
8 | ---
9 |
10 |
12 |
13 | **Description**
14 | A clear and concise description of what the bug is.
15 |
16 | **Steps to reproduce**
17 | Steps to reproduce the behavior:
18 | 1. Go to '...'
19 | 2. Click on '....'
20 | 3. Scroll down to '....'
21 | 4. See error
22 |
23 | **Expected behavior**
24 | A clear and concise description of what you expected to happen.
25 |
26 | **Screenshots**
27 | If applicable, add screenshots to help explain your problem.
28 |
29 | **Smartphone (please complete the following information):**
30 | - Device: [e.g. iPhone 12]
31 | - iOS version: [e.g. iOS 14.0]
32 | - App version: [e.g. 4.0.1]
33 |
34 | **Additional context**
35 | Add any other context about the problem here.
36 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 | title: ''
5 | labels: enhancement
6 | assignees: ''
7 |
8 | ---
9 |
10 |
12 |
13 | **Is your feature request related to a problem? Please describe.**
14 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
15 |
16 | **Describe the solution you'd like**
17 | A clear and concise description of what you want to happen.
18 |
19 | **Describe alternatives you've considered**
20 | A clear and concise description of any alternative solutions or features you've considered.
21 |
22 | **Additional context**
23 | Add any other context or screenshots about the feature request here.
24 |
--------------------------------------------------------------------------------
/.github/workflows/dependent-issues.yml:
--------------------------------------------------------------------------------
1 | name: Dependent Issues
2 |
3 | on:
4 | issues:
5 | types:
6 | - opened
7 | - edited
8 | - closed
9 | - reopened
10 | pull_request_target:
11 | types:
12 | - opened
13 | - edited
14 | - closed
15 | - reopened
16 | # Makes sure we always add status check for PRs. Useful only if
17 | # this action is required to pass before merging. Otherwise, it
18 | # can be removed.
19 | - synchronize
20 |
21 | jobs:
22 | check:
23 | runs-on: ubuntu-latest
24 | steps:
25 | - uses: z0al/dependent-issues@v1
26 | env:
27 | # (Required) The token to use to make API calls to GitHub.
28 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
29 |
--------------------------------------------------------------------------------
/.github/workflows/semantic-commit.yml:
--------------------------------------------------------------------------------
1 | name: 'PR and Commit Message Check'
2 | on:
3 | pull_request_target:
4 | types:
5 | - opened
6 | - edited
7 | - reopened
8 | - synchronize
9 |
10 | jobs:
11 | check-commit-message:
12 | name: Check Commit Message
13 | runs-on: ubuntu-latest
14 | steps:
15 | - name: Check Commit Message
16 | uses: gsactions/commit-message-checker@v2
17 | with:
18 | pattern: '^(Merge .+|((feat|fix|chore|docs|style|refactor|perf|ci|test)(\(.+\))?: [A-Z0-9].+[^.\s])$)'
19 | error: 'Commit messages and PR title should match conventional commit convention and start with an uppercase.'
20 | excludeDescription: 'true'
21 | excludeTitle: 'false'
22 | checkAllCommitMessages: 'true'
23 | accessToken: ${{ secrets.GITHUB_TOKEN }}
24 |
--------------------------------------------------------------------------------
/.github/workflows/swiftformat.yml:
--------------------------------------------------------------------------------
1 | name: SwiftFormat
2 |
3 | on:
4 | pull_request:
5 | branches: [ master ]
6 |
7 | jobs:
8 | build:
9 | name: SwiftFormat
10 | runs-on: [ self-hosted, iOS ]
11 |
12 | steps:
13 | - name: Cancel Previous Runs
14 | uses: styfle/cancel-workflow-action@0.12.1
15 | with:
16 | access_token: ${{ github.token }}
17 | - uses: jdx/mise-action@v2
18 | with:
19 | cache: false
20 | - name: Checkout
21 | uses: actions/checkout@v4
22 | with:
23 | fetch-depth: 0
24 | - name: SwiftFormat
25 | run: swiftformat --lint . --reporter github-actions-log
26 |
--------------------------------------------------------------------------------
/.github/workflows/swiftlint.yml:
--------------------------------------------------------------------------------
1 | name: SwiftLint
2 |
3 | on:
4 | pull_request:
5 | branches: [ master ]
6 |
7 | jobs:
8 | build:
9 | name: SwiftLint
10 | runs-on: [ self-hosted, iOS ]
11 |
12 | steps:
13 | - name: Cancel Previous Runs
14 | uses: styfle/cancel-workflow-action@0.12.1
15 | with:
16 | access_token: ${{ github.token }}
17 | - uses: jdx/mise-action@v2
18 | with:
19 | cache: false
20 | - name: Checkout
21 | uses: actions/checkout@v4
22 | with:
23 | fetch-depth: 0
24 | - name: SwiftLint
25 | run: swiftlint --config .swiftlint.yml --config .swiftlint-ci.yml --reporter github-actions-logging .
26 |
--------------------------------------------------------------------------------
/.mise.toml:
--------------------------------------------------------------------------------
1 | [tools]
2 | tuist = '4.45.1'
3 | periphery = '2.21.1'
4 | swiftformat = '0.54.5'
5 | swiftlint = '0.57.0'
6 | sentry-cli = "latest"
7 |
8 |
--------------------------------------------------------------------------------
/.sonarcloud.properties:
--------------------------------------------------------------------------------
1 | ## Path to sources
2 | sonar.sources=kDrive, kDriveActionExtension, kDriveCore, kDriveFileProvider, kDriveShareExtension, Tuist
3 | sonar.exclusions=scripts
4 | # sonar.inclusions=
5 |
6 | ## Path to tests
7 | sonar.tests=kDriveTests, kDriveUITests
8 | # sonar.test.exclusions=
9 | # sonar.test.inclusions=
10 |
11 | ## Source encoding
12 | # sonar.sourceEncoding=
13 |
14 | # Exclusions for copy-paste detection
15 | # sonar.cpd.exclusions=
16 |
--------------------------------------------------------------------------------
/.swiftlint-ci.yml:
--------------------------------------------------------------------------------
1 | disabled_rules:
2 | - todo
3 | strict: true
4 |
--------------------------------------------------------------------------------
/.swiftlint.yml:
--------------------------------------------------------------------------------
1 | disabled_rules:
2 | - line_length
3 | - identifier_name
4 | - type_body_length
5 | - function_body_length
6 | - file_length
7 | - type_name
8 | - force_cast
9 | - cyclomatic_complexity
10 | - closure_parameter_position
11 | - inclusive_language
12 | - for_where
13 | - optional_data_string_conversion
14 | opt_in_rules:
15 | - strong_iboutlet
16 | - closure_end_indentation
17 | - closure_spacing
18 | - collection_alignment
19 | - contains_over_filter_count
20 | - contains_over_first_not_nil
21 | - contains_over_range_nil_comparison
22 | - empty_collection_literal
23 | - empty_count
24 | - empty_string
25 | - first_where
26 | - identical_operands
27 | - last_where
28 | - operator_usage_whitespace
29 | - overridden_super_call
30 | - prefer_zero_over_explicit_init
31 | - prohibited_super_call
32 | - redundant_type_annotation
33 | - toggle_bool
34 | - trailing_closure
35 | - unneeded_parentheses_in_closure_argument
36 | analyzer_rules:
37 | - unused_import
38 | excluded:
39 | - .tuist-bin/*
40 | - Derived/Sources/*
41 | - DerivedData/
42 | - Derived/
43 | - Tuist/.build/
44 | function_parameter_count: 7
45 |
--------------------------------------------------------------------------------
/TestFlight/WhatToTest.en-GB.txt:
--------------------------------------------------------------------------------
1 | - Fix folder selection.
--------------------------------------------------------------------------------
/TestFlight/WhatToTest.fr-FR.txt:
--------------------------------------------------------------------------------
1 | - Correction de la sélection d'un dossier.
--------------------------------------------------------------------------------
/ci_scripts/ci_post_clone.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | set -e
3 |
4 | ./check_preconditions.sh
5 |
6 | cd ..
7 |
8 | curl https://mise.run | sh
9 | export PATH="$HOME/.local/bin:$PATH"
10 |
11 | mise install
12 | eval "$(mise activate bash --shims)"
13 |
14 | tuist install
15 | tuist generate --no-open
16 |
--------------------------------------------------------------------------------
/ci_scripts/ci_post_xcodebuild.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | set -e
3 |
4 | ./check_preconditions.sh
5 |
6 | cd ..
7 |
8 | curl https://mise.run | sh
9 | export PATH="$HOME/.local/bin:$PATH"
10 |
11 | mise install
12 | eval "$(mise activate bash --shims)"
13 |
14 |
15 | if [[ -n $CI_ARCHIVE_PATH ]];
16 | then
17 | # Upload dSYMs
18 | sentry-cli --url $SENTRY_URL --auth-token $SENTRY_AUTH_TOKEN upload-dif --org sentry --project $SENTRY_PROJECT --include-sources $CI_DERIVED_DATA_PATH
19 | else
20 | echo "Archive path isn't available. Unable to run dSYMs uploading script."
21 | fi
22 |
--------------------------------------------------------------------------------
/file-header-template.txt:
--------------------------------------------------------------------------------
1 |
2 | /*
3 | Infomaniak kDrive - iOS App
4 | Copyright (C) 2025 Infomaniak Network SA
5 |
6 | This program is free software: you can redistribute it and/or modify
7 | it under the terms of the GNU General Public License as published by
8 | the Free Software Foundation, either version 3 of the License, or
9 | (at your option) any later version.
10 |
11 | This program is distributed in the hope that it will be useful,
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 | GNU General Public License for more details.
15 |
16 | You should have received a copy of the GNU General Public License
17 | along with this program. If not, see .
18 | */
--------------------------------------------------------------------------------
/kDrive/IAP/ProductIds.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.infomaniak.drive.iap.solo.yearly
6 | com.infomaniak.drive.iap.solo.monthly
7 | com.infomaniak.drive.iap.team.monthly
8 | com.infomaniak.drive.iap.team.yearly
9 |
10 |
11 |
--------------------------------------------------------------------------------
/kDrive/IAP/SKProduct+Extension.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 | import StoreKit
21 |
22 | extension SKProduct {
23 | /// The cost of the product formatted in the local currency.
24 | var regularPrice: String? {
25 | let formatter = NumberFormatter()
26 | formatter.numberStyle = .currency
27 | formatter.locale = priceLocale
28 | return formatter.string(from: price)
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "kDrive-Light.png",
5 | "idiom" : "universal",
6 | "platform" : "ios",
7 | "size" : "1024x1024"
8 | },
9 | {
10 | "appearances" : [
11 | {
12 | "appearance" : "luminosity",
13 | "value" : "dark"
14 | }
15 | ],
16 | "filename" : "kDrive-Dark.png",
17 | "idiom" : "universal",
18 | "platform" : "ios",
19 | "size" : "1024x1024"
20 | },
21 | {
22 | "appearances" : [
23 | {
24 | "appearance" : "luminosity",
25 | "value" : "tinted"
26 | }
27 | ],
28 | "filename" : "kDrive-Tinted.png",
29 | "idiom" : "universal",
30 | "platform" : "ios",
31 | "size" : "1024x1024"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/AppIcon.appiconset/kDrive-Dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/AppIcon.appiconset/kDrive-Dark.png
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/AppIcon.appiconset/kDrive-Light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/AppIcon.appiconset/kDrive-Light.png
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/AppIcon.appiconset/kDrive-Tinted.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/AppIcon.appiconset/kDrive-Tinted.png
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/BorderColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xE0",
9 | "green" : "0xE0",
10 | "red" : "0xE0"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x71",
27 | "green" : "0x70",
28 | "red" : "0x6F"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "author" : "xcode",
4 | "version" : 1
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/backgroundCardViewColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xFF",
9 | "green" : "0xFF",
10 | "red" : "0xFF"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x30",
27 | "green" : "0x2E",
28 | "red" : "0x2C"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/backgroundCardViewSelectedColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xD0",
9 | "green" : "0xC9",
10 | "red" : "0xC9"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0xD0",
27 | "green" : "0xCA",
28 | "red" : "0xCA"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/backgroundColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xFD",
9 | "green" : "0xF6",
10 | "red" : "0xF4"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x15",
27 | "green" : "0x14",
28 | "red" : "0x13"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/binColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0x2E",
9 | "green" : "0x47",
10 | "red" : "0xFB"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/blueFolderColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xFF",
9 | "green" : "0x87",
10 | "red" : "0x52"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/buttonDisabledBackgroundColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "0.120",
8 | "blue" : "0x00",
9 | "green" : "0x00",
10 | "red" : "0x00"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "0.600",
26 | "blue" : "0x00",
27 | "green" : "0x00",
28 | "red" : "0x00"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/buttonDisabledTitleColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "0.370",
8 | "blue" : "0x00",
9 | "green" : "0x00",
10 | "red" : "0x00"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "0.600",
26 | "blue" : "0xFF",
27 | "green" : "0xFF",
28 | "red" : "0xFF"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/darkBlueColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xD8",
9 | "green" : "0x81",
10 | "red" : "0x00"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/disconnectColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors": [
3 | {
4 | "color": {
5 | "color-space": "srgb",
6 | "components": {
7 | "alpha": "1.000",
8 | "blue": "0x88",
9 | "green": "0x88",
10 | "red": "0x88"
11 | }
12 | },
13 | "idiom": "universal"
14 | }
15 | ],
16 | "info": {
17 | "author": "xcode",
18 | "version": 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/favoriteColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0x0A",
9 | "green" : "0xC1",
10 | "red" : "0xFF"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/grayBackgroundChipColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xF1",
9 | "green" : "0xF1",
10 | "red" : "0xF1"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x1A",
27 | "green" : "0x1A",
28 | "red" : "0x1A"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/greenColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors": [
3 | {
4 | "color": {
5 | "color-space": "srgb",
6 | "components": {
7 | "alpha": "1.000",
8 | "blue": "0.302",
9 | "green": "0.749",
10 | "red": "0.243"
11 | }
12 | },
13 | "idiom": "universal"
14 | }
15 | ],
16 | "info": {
17 | "author": "xcode",
18 | "version": 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/headerTitleColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0x72",
9 | "green" : "0x67",
10 | "red" : "0x55"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/iconColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xB6",
9 | "green" : "0xA2",
10 | "red" : "0x85"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x9F",
27 | "green" : "0x96",
28 | "red" : "0x88"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/infomaniakColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xFF",
9 | "green" : "0x98",
10 | "red" : "0x00"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/loaderDarkerDefaultColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xB4",
9 | "green" : "0xB4",
10 | "red" : "0xB4"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x77",
27 | "green" : "0x77",
28 | "red" : "0x77"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/loaderDefaultColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xD7",
9 | "green" : "0xD7",
10 | "red" : "0xD7"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x66",
27 | "green" : "0x66",
28 | "red" : "0x66"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/onlyOfficeBackgroundColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xFF",
9 | "green" : "0xFF",
10 | "red" : "0xFF"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x23",
27 | "green" : "0x23",
28 | "red" : "0x23"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/previewBackgroundColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0x28",
9 | "green" : "0x1C",
10 | "red" : "0x11"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/primaryTextColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0x66",
9 | "green" : "0x66",
10 | "red" : "0x66"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x9E",
27 | "green" : "0x9E",
28 | "red" : "0x9E"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/secondaryTextColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0x9F",
9 | "green" : "0x9F",
10 | "red" : "0x9F"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/separatorColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xF7",
9 | "green" : "0xF7",
10 | "red" : "0xF7"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x24",
27 | "green" : "0x23",
28 | "red" : "0x22"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/titleColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors": [
3 | {
4 | "color": {
5 | "color-space": "srgb",
6 | "components": {
7 | "alpha": "1.000",
8 | "blue": "0x33",
9 | "green": "0x33",
10 | "red": "0x33"
11 | }
12 | },
13 | "idiom": "universal"
14 | },
15 | {
16 | "appearances": [
17 | {
18 | "appearance": "luminosity",
19 | "value": "dark"
20 | }
21 | ],
22 | "color": {
23 | "color-space": "srgb",
24 | "components": {
25 | "alpha": "1.000",
26 | "blue": "1.000",
27 | "green": "1.000",
28 | "red": "1.000"
29 | }
30 | },
31 | "idiom": "universal"
32 | }
33 | ],
34 | "info": {
35 | "author": "xcode",
36 | "version": 1
37 | },
38 | "properties": {
39 | "localizable": true
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/warningColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0.000",
9 | "green" : "0.522",
10 | "red" : "1.000"
11 | }
12 | },
13 | "idiom" : "universal"
14 | }
15 | ],
16 | "info" : {
17 | "author" : "xcode",
18 | "version" : 1
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Colors/whiteBackgroundChipColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "0xFF",
9 | "green" : "0xFF",
10 | "red" : "0xFF"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0x33",
27 | "green" : "0x33",
28 | "red" : "0x33"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "author" : "xcode",
4 | "version" : 1
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/UFO.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "abducted_files.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "idiom" : "universal"
15 | }
16 | ],
17 | "info" : {
18 | "author" : "xcode",
19 | "version" : 1
20 | },
21 | "properties" : {
22 | "preserves-vector-representation" : true
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/add.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "add.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/add_user.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "add_user.pdf",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/add_user.imageset/add_user.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/add_user.imageset/add_user.pdf
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/arrow-right.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "arrow-right.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/available-offline.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "offline.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/background-1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "background-1.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/background-1.imageset/background-1.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/background-2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "background-2.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/background-2.imageset/background-2.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/background-3.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "background-3.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/background-3.imageset/background-3.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/big-check.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "big-check.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/calendar.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "calendar.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "template-rendering-intent" : "template"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/camera.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "camera.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/categories.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "categories.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/check.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "check.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/check.imageset/check.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/chevron-down.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "chevron-down.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/chevron-left.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "chevron-left.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/chevron-left.imageset/chevron-left.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/chevron-right.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "chevron-right.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/chevron-right.imageset/chevron-right.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/chevron.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "chevron.pdf",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/chevron.imageset/chevron.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/chevron.imageset/chevron.pdf
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/circle-drive.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "circle-drive.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/circle-pro.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "pro.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/circle-send.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "circle-send.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/circle-solo.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "solo.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/circle-tag.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "circle-tag.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/circle-team.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "team.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/clock.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "clock.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/clock.imageset/clock.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/close.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "close.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/color-bucket.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "color-bucket.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/comment.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "comment.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/copy.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "copy.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/crown.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "crown.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/delete.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "delete.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/document-signature-pencil-bulb.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "document-signature-pencil-bulb.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/download.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "download.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/download.imageset/download.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/drive-blocked.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "drive-blocked.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/drive-switch.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "drive-switch.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/drive.cloud.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "drive.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/drive.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "drive.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/drive.imageset/drive.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/duplicate.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "duplicate.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/edit-document.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "edit-document.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/edit.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "edit.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/edit.imageset/edit.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/export-ios.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "export-ios.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/face_id_edit.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "face_id_edit.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "face_id_edit_dark.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | },
22 | "properties" : {
23 | "preserves-vector-representation" : true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/favorite.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "favorite.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/favorite.imageset/favorite.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-3dmodel.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "file-3dmodel.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-audio.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "file-audio.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-audio.imageset/file-audio.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-code.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "file-code.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-default.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "file-default.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-default.imageset/file-default.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-email.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "file-email.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-email.imageset/file-email.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-font.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "file-font.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-font.imageset/file-font.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-form.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "alignment-insets" : {
5 | "bottom" : 0,
6 | "left" : 0,
7 | "right" : 4,
8 | "top" : 0
9 | },
10 | "filename" : "form.svg",
11 | "idiom" : "universal"
12 | }
13 | ],
14 | "info" : {
15 | "author" : "xcode",
16 | "version" : 1
17 | },
18 | "properties" : {
19 | "preserves-vector-representation" : true
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-image-small.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "true 350 - circle.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "true 350 – dark - circle.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | },
22 | "properties" : {
23 | "preserves-vector-representation" : true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-image.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "file-image.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-image.imageset/file-image.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-pdf.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "file-pdf.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-presentation.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "file-presentation.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-presentation.imageset/file-presentation.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-sheets.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "file-sheets.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-text.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "file-text.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-text.imageset/file-text.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-video.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "file-video.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-video.imageset/file-video.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/file-zip.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "file-zip.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/filter.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "filter.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-add.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "folder-add.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-common-documents.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "folder-common-documents.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-disable.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "folder-disable.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-drop-box.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "folder-drop-box.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-filled-tab.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "folder-fill.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-filled-tab.imageset/folder-fill.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-filled.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "folder.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-select-2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "folder-select-2.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-select.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "folder-select.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-select.imageset/folder-select.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder-shared.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "folder-shared.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder.arrow.up.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "folder.arrow.up.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "folder.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/folder.imageset/folder.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/gallery.fill.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "gallery.fill.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/gallery.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "gallery.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/grid.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "grid.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/house-fill.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "house-fill.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/house-fill.imageset/house-fill.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/house.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "house.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/illu-categories.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "EN-categories.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "filename" : "FR-categories.svg",
9 | "idiom" : "universal",
10 | "locale" : "fr"
11 | }
12 | ],
13 | "info" : {
14 | "author" : "xcode",
15 | "version" : 1
16 | },
17 | "properties" : {
18 | "localizable" : true,
19 | "preserves-vector-representation" : true
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/illu-collab.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "illu-collab.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/illu-devices.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "illu-devices.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/illu-drop-box.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "illu-drop-box.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/illu-photos.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "illu-photos.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/illu-upgrade.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "illu-upgrade.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/image.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "file-image.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/image.imageset/file-image.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/images.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "images.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/images.imageset/images.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/info-filled.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "info-filled.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/info.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "info.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/largelist.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "largelist.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/largelist.imageset/largelist.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/link-broken.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "link-broken.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/link.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "link.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/list.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "list.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/lock.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "lock.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/lock_external.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "lock-clear.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "lock-dark.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | },
22 | "properties" : {
23 | "preserves-vector-representation" : true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/lock_external.imageset/lock-clear.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/lock_external.imageset/lock-dark.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/lock_infomaniak.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "lock_infomaniak.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "lock-dark.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | },
22 | "properties" : {
23 | "preserves-vector-representation" : true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/logo-kdrive-beta.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "logo-kdrive-beta.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "logo-kdrive-beta-light.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | },
22 | "properties" : {
23 | "preserves-vector-representation" : true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/logo.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "logo-white.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "logo-dark.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | },
22 | "properties" : {
23 | "preserves-vector-representation" : true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/logout.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "logout.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/maintenance.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "maintenance.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/media-bold.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "media-bold.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/media-bold.imageset/media-bold.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/media-inline.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "media-inline.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/menu.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "menu.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/menu.imageset/menu.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/music.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "music.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/myKSuitePlus.logo.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "myKSuitePlus.logo.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "Logo kSuite.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/no-drive.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "no-drive.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/offline.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "ofline.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/open-with.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "open-with.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/order-success.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "order-success.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/parameters.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "parameters.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/pause.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "pause.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/placeholder_avatar.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "placeholder_avatar.pdf",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/placeholder_avatar.imageset/placeholder_avatar.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/placeholder_avatar.imageset/placeholder_avatar.pdf
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/play-thumbnail.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "play-thumbnail.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/play.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "play.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/plus.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "plus.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/plus.imageset/plus.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/refresh.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "refresh.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/remove.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "remove.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "template-rendering-intent" : "template"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/reply.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "reply.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/retry.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "retry.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/scan.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "scan.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/search.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "search.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/select.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "select.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/select.imageset/select.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/share.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "share.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/shortcut-scan.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "shortcut-scan.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/shortcut-search.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "shortcut-search.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/shortcut-search.imageset/shortcut-search.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/shortcut-support.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "shortcut-support.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/shortcut-upload.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "shortcut-upload.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/small-check.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "small-check.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/splashscreen-infomaniak.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "splashscreen-infomaniak-light.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "splashscreen-infomaniak-dark.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/splashscreen-kdrive.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "splashscreen-kdrive-light.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "splashscreen-kdrive-dark.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/star-fill.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "star-fill.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/star-fill.imageset/star-fill.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/star.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "star.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/stop.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "stop.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/support_link.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "support_link.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/switch_user.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "switch_user.pdf",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "switch_user_dark.pdf",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | },
22 | "properties" : {
23 | "preserves-vector-representation" : true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/switch_user.imageset/switch_user.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/switch_user.imageset/switch_user.pdf
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/switch_user.imageset/switch_user_dark.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/switch_user.imageset/switch_user_dark.pdf
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/tag.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "tag.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/team.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "picto_team.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "template-rendering-intent" : "template"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/test-image.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "improve_landscape_photography.jpg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/test-image.imageset/improve_landscape_photography.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/test-image.imageset/improve_landscape_photography.jpg
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/unlock.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "unlock.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/update-required.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "update-required-light.svg",
5 | "idiom" : "universal"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "filename" : "update-required-dark.svg",
15 | "idiom" : "universal"
16 | }
17 | ],
18 | "info" : {
19 | "author" : "xcode",
20 | "version" : 1
21 | },
22 | "properties" : {
23 | "preserves-vector-representation" : true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/upgrade-kdrive.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "upgrade-kdrive.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/upload.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "upload.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/upsale-header-noDrive.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "img-kDrive.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "original"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/upsale-header.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "drive-rocket.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "original"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/url.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "url.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/user-switch.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "user-switch.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/user_logout.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "user_logout.pdf",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/user_logout.imageset/user_logout.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDrive/Resources/Assets.xcassets/user_logout.imageset/user_logout.pdf
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/users.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "users.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/users.imageset/users.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/view.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images": [
3 | {
4 | "filename": "view.svg",
5 | "idiom": "universal"
6 | }
7 | ],
8 | "info": {
9 | "author": "xcode",
10 | "version": 1
11 | },
12 | "properties": {
13 | "preserves-vector-representation": true,
14 | "template-rendering-intent": "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/Assets.xcassets/warning.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "warning.svg",
5 | "idiom" : "universal"
6 | }
7 | ],
8 | "info" : {
9 | "author" : "xcode",
10 | "version" : 1
11 | },
12 | "properties" : {
13 | "preserves-vector-representation" : true,
14 | "template-rendering-intent" : "template"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/kDrive/Resources/PrivacyInfo.xcprivacy:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | NSPrivacyAccessedAPITypes
6 |
7 |
8 | NSPrivacyAccessedAPIType
9 | NSPrivacyAccessedAPICategoryFileTimestamp
10 | NSPrivacyAccessedAPITypeReasons
11 |
12 | C617.1
13 |
14 |
15 |
16 | NSPrivacyAccessedAPITypeReasons
17 |
18 | 1C8F.1
19 |
20 | NSPrivacyAccessedAPIType
21 | NSPrivacyAccessedAPICategoryUserDefaults
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/kDrive/Resources/kDrive.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | aps-environment
6 | development
7 | com.apple.developer.associated-domains
8 |
9 | applinks:drive.infomaniak.com
10 | applinks:kdrive.infomaniak.com
11 | activitycontinuation:drive.infomaniak.com
12 |
13 | com.apple.security.application-groups
14 |
15 | group.com.infomaniak.drive
16 | group.com.infomaniak
17 |
18 | keychain-access-groups
19 |
20 | $(AppIdentifierPrefix)com.infomaniak.drive
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/kDrive/UI/Controller/Create File/DriveImportDocumentPickerViewController.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import kDriveCore
20 | import UIKit
21 |
22 | class DriveImportDocumentPickerViewController: UIDocumentPickerViewController {
23 | var importDrive: Drive!
24 | var importDriveDirectory: File!
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/UI/Controller/Files/Save File/SelectPhotoFormatFooterView.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class SelectPhotoFormatFooterView: UIView {
22 | class func instantiate() -> SelectPhotoFormatFooterView {
23 | return Bundle.main
24 | .loadNibNamed("SelectPhotoFormatFooterView", owner: nil, options: nil)![0] as! SelectPhotoFormatFooterView
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/DropBox/DropBoxDisableTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import UIKit
21 |
22 | class DropBoxDisableTableViewCell: InsetTableViewCell {
23 | override func awakeFromNib() {
24 | super.awakeFromNib()
25 | accessibilityTraits = .button
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/FileDetail/FileDetailCommentListTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class FileDetailCommentListTableViewCell: UITableViewCell {
22 | @IBOutlet var userLabel: UILabel!
23 | }
24 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/FileDetail/FileInformation/FileInformationCreationTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class FileInformationCreationTableViewCell: UITableViewCell {
22 | @IBOutlet var titleLabel: UILabel!
23 | @IBOutlet var creationLabel: UILabel!
24 | }
25 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/FileDetail/FileInformation/FileInformationSizeTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class FileInformationSizeTableViewCell: UITableViewCell {
22 | @IBOutlet var titleLabel: UILabel!
23 | @IBOutlet var sizeLabel: UILabel!
24 | }
25 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/FileDetail/InfoTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class InfoTableViewCell: UITableViewCell {
22 | var actionHandler: ((UIButton) -> Void)?
23 |
24 | @IBAction func buttonPressed(_ sender: UIButton) {
25 | actionHandler?(sender)
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/FloatingPanel/FloatingPanelTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import kDriveCore
21 | import UIKit
22 |
23 | class FloatingPanelTableViewCell: InsetTableViewCell {}
24 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/SaveFile/ImportingTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class ImportingTableViewCell: UITableViewCell {
22 | @IBOutlet var importationProgressView: UIProgressView!
23 | }
24 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/SaveFile/PhotoFormatTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import kDriveCore
21 | import UIKit
22 |
23 | class PhotoFormatTableViewCell: InsetTableViewCell {
24 | func configure(with photoFileFormat: PhotoFileFormat) {
25 | titleLabel.text = photoFileFormat.title
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Files/Search/BasicTitleCollectionReusableView.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class BasicTitleCollectionReusableView: UICollectionReusableView {
22 | @IBOutlet var titleLabel: UILabel!
23 | }
24 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Header view/HomeRecentFilesHeaderView.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import kDriveCore
21 | import UIKit
22 |
23 | class HomeRecentFilesHeaderView: UICollectionReusableView {
24 | @IBOutlet var titleLabel: IKLabel!
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Header view/HomeTitleView.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class HomeTitleView: UIView {
22 | @IBOutlet var titleLabel: UILabel!
23 |
24 | class func instantiate(title: String) -> HomeTitleView {
25 | let view = Bundle.main.loadNibNamed("HomeTitleView", owner: nil, options: nil)![0] as! HomeTitleView
26 | view.titleLabel.text = title
27 | return view
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Home/UploadsPausedTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2024 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import kDriveCore
21 | import kDriveResources
22 | import UIKit
23 |
24 | class UploadsPausedTableViewCell: InsetTableViewCell {
25 | @IBOutlet var subtitleLabel: IKLabel!
26 |
27 | func setUploadCount(_ count: Int) {
28 | subtitleLabel.text = KDriveResourcesStrings.Localizable.uploadInProgressNumberFile(count)
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/DriveTitleTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import UIKit
21 |
22 | class DriveTitleTableViewCell: InsetTableViewCell {}
23 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/MenuTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import UIKit
21 |
22 | class MenuTableViewCell: InsetTableViewCell {
23 | @IBOutlet var logoImage: UIImageView!
24 | }
25 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/Parameters/AboutDetailTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import UIKit
21 |
22 | class AboutDetailTableViewCell: InsetTableViewCell {
23 | @IBOutlet var detailLabel: UILabel!
24 | }
25 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/Parameters/ParameterAboutTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import UIKit
21 |
22 | class ParameterAboutTableViewCell: InsetTableViewCell {}
23 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/Parameters/ParameterAccessDeniedTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import kDriveCore
21 | import UIKit
22 |
23 | class ParameterAccessDeniedTableViewCell: UITableViewCell {
24 | @IBOutlet var descriptionLabel: IKLabel!
25 |
26 | @IBAction func goToSettingsButtonPressed(_ sender: Any) {
27 | Constants.openSettings()
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/PhotoSyncSettings/PhotoAccessDeniedTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import kDriveCore
20 | import UIKit
21 |
22 | class PhotoAccessDeniedTableViewCell: UITableViewCell {
23 | @IBAction func goToSettingsButtonPressed(_ sender: Any) {
24 | Constants.openSettings()
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/Store/StoreFeatureTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import kDriveCore
21 | import UIKit
22 |
23 | class StoreFeatureTableViewCell: UITableViewCell {
24 | @IBOutlet var label: IKLabel!
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/Store/StoreHelpFooter.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | protocol StoreHelpFooterDelegate: AnyObject {
22 | func helpButtonTapped()
23 | }
24 |
25 | class StoreHelpFooter: UICollectionReusableView {
26 | weak var delegate: StoreHelpFooterDelegate?
27 |
28 | @IBAction func helpButtonTapped(_ sender: Any) {
29 | delegate?.helpButtonTapped()
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Menu/SwitchUser/NoAccountTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class NoAccountTableViewCell: UITableViewCell {}
22 |
--------------------------------------------------------------------------------
/kDrive/UI/View/NewFolder/NewFolderLocationCollectionViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | class NewFolderLocationCollectionViewCell: UICollectionViewCell {
22 | @IBOutlet var accessoryImage: UIImageView!
23 | @IBOutlet var titleLabel: UILabel!
24 | @IBOutlet var chevronImage: UIImageView!
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/UI/View/NewFolder/NewFolderSettingsTitleTableViewCell.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreUIKit
20 | import UIKit
21 |
22 | class NewFolderSettingsTitleTableViewCell: InsetTableViewCell {}
23 |
--------------------------------------------------------------------------------
/kDrive/UI/View/Upsale/UpsaleViewController+Matomo.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2025 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import InfomaniakCoreCommonUI
20 | import InfomaniakDI
21 | import kDriveCore
22 |
23 | extension UpsaleViewController {
24 | // MARK: - Public Share
25 |
26 | func trackUpsalePresented() {
27 | @InjectService var matomo: MatomoUtils
28 | matomo.track(eventWithCategory: .publicShareAction, name: "adBottomSheet")
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/kDrive/Utils/DropPosition.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 | import UIKit
21 |
22 | struct DropPosition {
23 | let indexPath: IndexPath
24 | let time = Date()
25 | }
26 |
--------------------------------------------------------------------------------
/kDrive/Utils/TopScrollable.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | protocol TopScrollable {
22 | func scrollToTop()
23 | }
24 |
--------------------------------------------------------------------------------
/kDrive/Utils/UINavigationItem+Extension.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | extension UINavigationItem {
22 | func hideBackButtonText() {
23 | backButtonDisplayMode = .minimal
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/kDriveActionExtension/ActionExtension.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.application-groups
6 |
7 | group.com.infomaniak.drive
8 |
9 | keychain-access-groups
10 |
11 | $(AppIdentifierPrefix)com.infomaniak.drive
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/kDriveActionExtension/Media.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "author" : "xcode",
4 | "version" : 1
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/kDriveActionExtension/Media.xcassets/ExtensionIcon.appiconset/Icon-120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/Media.xcassets/ExtensionIcon.appiconset/Icon-120.png
--------------------------------------------------------------------------------
/kDriveActionExtension/Media.xcassets/ExtensionIcon.appiconset/Icon-121.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/Media.xcassets/ExtensionIcon.appiconset/Icon-121.png
--------------------------------------------------------------------------------
/kDriveActionExtension/Media.xcassets/ExtensionIcon.appiconset/Icon-180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/Media.xcassets/ExtensionIcon.appiconset/Icon-180.png
--------------------------------------------------------------------------------
/kDriveActionExtension/Media.xcassets/ExtensionIcon.appiconset/Icon-60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/Media.xcassets/ExtensionIcon.appiconset/Icon-60.png
--------------------------------------------------------------------------------
/kDriveActionExtension/Media.xcassets/TouchBarBezel.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | },
6 | "colors" : [
7 | {
8 | "idiom" : "mac",
9 | "color" : {
10 | "reference" : "systemPurpleColor"
11 | }
12 | }
13 | ]
14 | }
--------------------------------------------------------------------------------
/kDriveActionExtension/de.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/de.lproj/InfoPlist.strings
--------------------------------------------------------------------------------
/kDriveActionExtension/en.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/en.lproj/InfoPlist.strings
--------------------------------------------------------------------------------
/kDriveActionExtension/es.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/es.lproj/InfoPlist.strings
--------------------------------------------------------------------------------
/kDriveActionExtension/fr.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/fr.lproj/InfoPlist.strings
--------------------------------------------------------------------------------
/kDriveActionExtension/it.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveActionExtension/it.lproj/InfoPlist.strings
--------------------------------------------------------------------------------
/kDriveCore/Data/MQService/ActionProgressNotification.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public class ActionProgressNotification: Codable {
22 | public let uid: String
23 | public let driveId: Int
24 | public let action: String
25 | public let actionUuid: String
26 | public let progress: ActionProgress
27 | }
28 |
--------------------------------------------------------------------------------
/kDriveCore/Data/MQService/IPSToken.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | @frozen public struct IPSToken: Codable {
22 | let uuid: String
23 | let validUntil: Int
24 | }
25 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/CategoryResponse.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public class CategoryResponse: Codable {
22 | public var id: Int
23 | public var result: Bool
24 | public var message: String?
25 |
26 | public var querySucceeded: Bool {
27 | return result || message == "category_error"
28 | }
29 |
30 | init() {
31 | id = 0
32 | result = true
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/CategoryRights.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 | import RealmSwift
21 |
22 | public class CategoryRights: EmbeddedObject, Codable {
23 | @Persisted public var canCreate: Bool
24 | @Persisted public var canEdit: Bool
25 | @Persisted public var canDelete: Bool
26 | @Persisted public var canReadOnFile: Bool
27 | @Persisted public var canPutOnFile: Bool
28 | }
29 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/DownloadArchiveResponse.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public class DownloadArchiveResponse: Codable {
22 | public let uuid: String
23 | }
24 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/Drive/DriveRights.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 | import RealmSwift
21 |
22 | public class DriveRights: EmbeddedObject, Codable {
23 | @Persisted public var technical: Bool
24 | }
25 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/FileAction.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | @frozen public struct FileAction: Codable {
22 | public let action: FileActivityType
23 | public let fileId: Int
24 | }
25 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/FileCount.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public class FileCount: Codable {
22 | public let count: Int
23 | public let files: Int
24 | public let directories: Int
25 | }
26 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/FileType.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public enum FileType: String {
22 | case file, dir
23 | }
24 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/ListStyle.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import kDriveResources
20 | import UIKit
21 |
22 | public enum ListStyle: String {
23 | case list
24 | case grid
25 |
26 | public var icon: UIImage {
27 | switch self {
28 | case .list:
29 | return KDriveResourcesAsset.list.image
30 | case .grid:
31 | return KDriveResourcesAsset.grid.image
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/ListingResult.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | @frozen public struct ListingResult: Codable {
22 | public let actions: [FileAction]
23 | public let files: [File]
24 | public let actionsFiles: [File]
25 | }
26 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/PartialListingResult.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2024 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | @frozen public struct PartialFileActivity: Codable {
22 | let lastAction: FileActivityType?
23 | let fileId: Int
24 | let lastActionAt: Int?
25 | let file: File?
26 | }
27 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/Upload/DirectUploadToken.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | /// Token used by the direct upload API
22 | public class DirectUploadToken: Codable {
23 | public let token: String
24 | public let expiration: Date
25 |
26 | public var isNearlyExpired: Bool {
27 | let twoHours = 60 * 60 * 2
28 | return Date(timeIntervalSinceNow: TimeInterval(twoHours)) > expiration
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/kDriveCore/Data/Models/Upload/UploadedFile.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | /// When upload APIV2 returns back with success
22 | public struct UploadedFile: Decodable {
23 | var token: String
24 | var file: File
25 | }
26 |
--------------------------------------------------------------------------------
/kDriveCore/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | $(PRODUCT_BUNDLE_PACKAGE_TYPE)
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleVersion
20 | $(CURRENT_PROJECT_VERSION)
21 |
22 |
23 |
--------------------------------------------------------------------------------
/kDriveCore/UI/Restorable.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public protocol Restorable {
22 | var defaultRestorationIdentifier: String { get }
23 | }
24 |
25 | public extension Restorable {
26 | var defaultRestorationIdentifier: String {
27 | return String(describing: Self.self)
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/kDriveCore/UI/Scan/SaveScanWorkerDelegate.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | /// Something to callback when document scan in finished
22 | @MainActor public protocol SaveScanWorkerDelegate: AnyObject {
23 | /// Callback with the processed strings found in content
24 | func recognizedStrings(_ strings: [String])
25 |
26 | /// Error Callback
27 | func errorWhileProcessing(_ error: Error?)
28 | }
29 |
--------------------------------------------------------------------------------
/kDriveCore/Utils/DispatchGroup+Extension.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | extension DispatchGroup {
22 | func performLocked(block: () -> Void) {
23 | wait()
24 | enter()
25 | block()
26 | leave()
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/kDriveCore/Utils/NotificationName+Extension.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public extension Notification.Name {
22 | static let locateUploadActionTapped = Notification.Name(rawValue: "kDriveLocateUploadActionTapped")
23 | static let reloadDrive = Notification.Name(rawValue: "kDriveReloadDrive")
24 | static let reloadWifiView = Notification.Name(rawValue: "kDriveReloadWifiView")
25 | }
26 |
--------------------------------------------------------------------------------
/kDriveCore/Utils/PlusButtonObserver.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2023 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public protocol PlusButtonObserver {
22 | func updateCenterButton()
23 | }
24 |
--------------------------------------------------------------------------------
/kDriveCore/Utils/PresentationOrigin.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2024 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public enum PresentationOrigin: String, Equatable {
22 | case fileList
23 | case activities
24 | case photoList
25 | }
26 |
--------------------------------------------------------------------------------
/kDriveCore/Utils/Sentry/SentryDebug+Misc.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2024 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 |
21 | public extension SentryDebug {
22 | // MARK: - Space usage
23 |
24 | static func appSizeUsage(_ metadata: [String: Any] = [:]) {
25 | SentryDebug.capture(message: EventNames.appSizeUsage, extras: metadata)
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/kDriveCore/Utils/String+Extension.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2021 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import UIKit
20 |
21 | public extension String {
22 | var isBlank: Bool {
23 | return trimmingCharacters(in: .whitespaces).isEmpty
24 | }
25 |
26 | func addingExtension(_ ext: String) -> String {
27 | return hasSuffix(".\(ext)") ? self : "\(self).\(ext)"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/kDriveCore/kDriveCore.h:
--------------------------------------------------------------------------------
1 | //
2 | // kDriveCore.h
3 | // kDriveCore
4 | //
5 | // Created by Philippe Weidmann on 11.12.20.
6 | //
7 |
8 | #import
9 |
10 | //! Project version number for kDriveCore.
11 | FOUNDATION_EXPORT double kDriveCoreVersionNumber;
12 |
13 | //! Project version string for kDriveCore.
14 | FOUNDATION_EXPORT const unsigned char kDriveCoreVersionString[];
15 |
16 | // In this header, you should import all the public headers of your framework using statements like #import
17 |
18 |
19 |
--------------------------------------------------------------------------------
/kDriveFileProvider/FileProvider.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.application-groups
6 |
7 | group.com.infomaniak.drive
8 |
9 | keychain-access-groups
10 |
11 | $(AppIdentifierPrefix)com.infomaniak.drive
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/kDriveFileProvider/Validation/FileProviderValidationServiceSource.h:
--------------------------------------------------------------------------------
1 | //
2 | // FileProviderValidationServiceSource.h
3 | //
4 | // Copyright © 2018 Apple. All rights reserved.
5 | //
6 |
7 | #import
8 | #import
9 |
10 | @interface FileProviderValidationServiceSource : NSObject
11 |
12 | - (instancetype)initWithFileProviderExtension:(NSFileProviderExtension *)fileProviderExtension
13 | itemIdentifier:(NSFileProviderItemIdentifier)itemIdentifier;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/kDriveFileProvider/Validation/kDriveFileProvider-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | //
2 | // Use this file to import your target's public headers that you would like to expose to Swift.
3 | //
4 |
5 | #import "FileProviderValidationServiceSource.h"
6 |
--------------------------------------------------------------------------------
/kDriveShareExtension/ShareExtension.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.application-groups
6 |
7 | group.com.infomaniak.drive
8 |
9 | keychain-access-groups
10 |
11 | $(AppIdentifierPrefix)com.infomaniak.drive
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/kDriveTestShared/MCKPhotoLibraryQueryable.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2025 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 | import kDriveCore
21 |
22 | struct MCKPhotoLibraryQueryable: PhotoLibraryQueryable {
23 | func getDatePredicate(with settings: PhotoSyncSettings) -> NSPredicate { NSPredicate(value: true) }
24 |
25 | func getAssetPredicates(forSettings settings: PhotoSyncSettings) -> [NSPredicate] { [NSPredicate]() }
26 | }
27 |
--------------------------------------------------------------------------------
/kDriveTestShared/MCKPhotoLibraryScanable.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2025 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 | import kDriveCore
21 |
22 | struct MCKPhotoLibraryScanable: PhotoLibraryScanable {
23 | @discardableResult func scheduleNewPicturesForUpload() -> Int { 0 }
24 | }
25 |
--------------------------------------------------------------------------------
/kDriveTestShared/MCKPhotoLibrarySyncable.swift:
--------------------------------------------------------------------------------
1 | /*
2 | Infomaniak kDrive - iOS App
3 | Copyright (C) 2025 Infomaniak Network SA
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | import Foundation
20 | import kDriveCore
21 |
22 | struct MCKPhotoLibrarySyncable: PhotoLibrarySyncable {
23 | @MainActor func enableSync(_ liveNewSyncSettings: PhotoSyncSettings) {}
24 |
25 | func disableSync() {}
26 | }
27 |
--------------------------------------------------------------------------------
/kDriveTests/kDriveCore/UploadChunks/Matterhorn_as_seen_from_Zermatt,_Wallis,_Switzerland,_2012_August,Wikimedia_Commons.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Infomaniak/ios-kDrive/27a93158fb3af3f31facf99afc4625c0b4dd342e/kDriveTests/kDriveCore/UploadChunks/Matterhorn_as_seen_from_Zermatt,_Wallis,_Switzerland,_2012_August,Wikimedia_Commons.jpg
--------------------------------------------------------------------------------
/scripts/lint.sh:
--------------------------------------------------------------------------------
1 | eval "$($HOME/.local/bin/mise activate -C $SRCROOT bash --shims)"
2 |
3 | if which swiftlint >/dev/null; then
4 | swiftlint --config "$SRCROOT/.swiftlint.yml"
5 | else
6 | echo "warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint"
7 | fi
8 |
--------------------------------------------------------------------------------