Signed-off-by: Marino Faggiana <marino@marinofaggiana.com>
This commit is contained in:
Marino Faggiana 2022-10-27 15:11:27 +02:00
Родитель db0b9b72a8
Коммит 06b447825a
55 изменённых файлов: 250 добавлений и 1108 удалений

Просмотреть файл

@ -241,9 +241,9 @@
F75B0ABD244C4DBB00E58DCA /* NCFunctionCenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = F75B0ABC244C4DBB00E58DCA /* NCFunctionCenter.swift */; };
F75C0C4823D1FAE300163CC8 /* NCRichWorkspaceCommon.swift in Sources */ = {isa = PBXBuildFile; fileRef = F75C0C4723D1FAE300163CC8 /* NCRichWorkspaceCommon.swift */; };
F75D19E325EFE09000D74598 /* NCTrash+Menu.swift in Sources */ = {isa = PBXBuildFile; fileRef = F75D19E225EFE09000D74598 /* NCTrash+Menu.swift */; };
F75DD75C290AAD5C002EB562 /* Lockscreen.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F75DD75B290AAD5C002EB562 /* Lockscreen.intentdefinition */; };
F75DD75D290AAD5F002EB562 /* Lockscreen.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F75DD75B290AAD5C002EB562 /* Lockscreen.intentdefinition */; };
F75DD75E290AAD60002EB562 /* Lockscreen.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F75DD75B290AAD5C002EB562 /* Lockscreen.intentdefinition */; };
F75DD761290AB35F002EB562 /* Intent.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F75DD760290AB35F002EB562 /* Intent.intentdefinition */; };
F75DD762290AB35F002EB562 /* Intent.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F75DD760290AB35F002EB562 /* Intent.intentdefinition */; };
F75DD763290AB35F002EB562 /* Intent.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F75DD760290AB35F002EB562 /* Intent.intentdefinition */; };
F75E57BD25BF0EC1002B72C2 /* SVGKit in Frameworks */ = {isa = PBXBuildFile; productRef = F75E57BC25BF0EC1002B72C2 /* SVGKit */; };
F75E57BF25BF0EC8002B72C2 /* SVGKit in Frameworks */ = {isa = PBXBuildFile; productRef = F75E57BE25BF0EC8002B72C2 /* SVGKit */; };
F75E57C125BF0ECD002B72C2 /* SVGKit in Frameworks */ = {isa = PBXBuildFile; productRef = F75E57C025BF0ECD002B72C2 /* SVGKit */; };
@ -442,7 +442,6 @@
F7C9739228F17131002C43E2 /* Intents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7C9739128F17131002C43E2 /* Intents.framework */; };
F7C9739528F17131002C43E2 /* IntentHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7C9739428F17131002C43E2 /* IntentHandler.swift */; };
F7C9739928F17131002C43E2 /* WidgetDashboardIntentHandler.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = F7C9739028F17131002C43E2 /* WidgetDashboardIntentHandler.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
F7C9739D28F1733B002C43E2 /* Dashboard.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F7FABE3928D1DAD00000A325 /* Dashboard.intentdefinition */; };
F7CA212D25F1333300826ABB /* NCAccountRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7CA212B25F1333200826ABB /* NCAccountRequest.swift */; };
F7CA212E25F1333300826ABB /* NCAccountRequest.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = F7CA212C25F1333200826ABB /* NCAccountRequest.storyboard */; };
F7CB689A2541676B0050EC94 /* NCMore.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = F7CB68992541676B0050EC94 /* NCMore.storyboard */; };
@ -502,8 +501,6 @@
F7F878AE1FB9E3B900599E4F /* NCEndToEndMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7F878AD1FB9E3B900599E4F /* NCEndToEndMetadata.swift */; };
F7F878AF1FB9E3B900599E4F /* NCEndToEndMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7F878AD1FB9E3B900599E4F /* NCEndToEndMetadata.swift */; };
F7F9D1BB25397CE000D9BFF5 /* NCViewer.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7F9D1BA25397CE000D9BFF5 /* NCViewer.swift */; };
F7FABE3628D1DAD00000A325 /* Dashboard.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F7FABE3928D1DAD00000A325 /* Dashboard.intentdefinition */; };
F7FABE3728D1DAD00000A325 /* Dashboard.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = F7FABE3928D1DAD00000A325 /* Dashboard.intentdefinition */; settings = {ATTRIBUTES = (codegen, ); }; };
F7FAFD3A28BFA948000777FE /* NCNotification+Menu.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7FAFD3928BFA947000777FE /* NCNotification+Menu.swift */; };
F7FF2CB12842159500EBB7A1 /* NCSectionHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = F7FF2CB02842159500EBB7A1 /* NCSectionHeader.xib */; };
/* End PBXBuildFile section */
@ -751,50 +748,6 @@
F7239876253D86D300257F49 /* NCEmptyView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NCEmptyView.xib; sourceTree = "<group>"; };
F723B3DC22FC6D1C00301EFE /* NCShareCommentsCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = NCShareCommentsCell.xib; sourceTree = "<group>"; };
F7245923289BB50B00474787 /* ThreadSafeDictionary.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThreadSafeDictionary.swift; sourceTree = "<group>"; };
F72653DA29097065001B9680 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653DC29097071001B9680 /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653DE29097072001B9680 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653E029097072001B9680 /* es-UY */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-UY"; path = "es-UY.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72653E229097073001B9680 /* es-PR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-PR"; path = "es-PR.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72653E429097076001B9680 /* eu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = eu; path = eu.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653E629097077001B9680 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653E829097078001B9680 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72653EA29097079001B9680 /* zh-Hant-TW */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant-TW"; path = "zh-Hant-TW.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72653EC29097079001B9680 /* cs-CZ */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "cs-CZ"; path = "cs-CZ.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72653EE2909707A001B9680 /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653F02909707B001B9680 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653F22909707C001B9680 /* en-GB */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "en-GB"; path = "en-GB.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72653F42909707E001B9680 /* es-CL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-CL"; path = "es-CL.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72653F62909707F001B9680 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653F829097080001B9680 /* gl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = gl; path = gl.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653FA29097081001B9680 /* ka-GE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ka-GE"; path = "ka-GE.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72653FC29097082001B9680 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72653FE29097083001B9680 /* hu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hu; path = hu.lproj/Dashboard.strings; sourceTree = "<group>"; };
F726540029097084001B9680 /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = is.lproj/Dashboard.strings; sourceTree = "<group>"; };
F726540229097084001B9680 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Dashboard.strings; sourceTree = "<group>"; };
F726540429097085001B9680 /* ja-JP */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ja-JP"; path = "ja-JP.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726540629097086001B9680 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/Dashboard.strings; sourceTree = "<group>"; };
F726540829097087001B9680 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "nb-NO.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726540A29097089001B9680 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "sk-SK.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726540C29097089001B9680 /* sr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sr; path = sr.lproj/Dashboard.strings; sourceTree = "<group>"; };
F726540E2909708A001B9680 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72654102909708B001B9680 /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72654122909708C001B9680 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72654142909708D001B9680 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/Dashboard.strings; sourceTree = "<group>"; };
F72654162909708E001B9680 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Dashboard.strings; sourceTree = "<group>"; };
F726541829097090001B9680 /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726541A29097091001B9680 /* es-HN */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-HN"; path = "es-HN.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726541C29097092001B9680 /* es-GT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-GT"; path = "es-GT.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726541E29097093001B9680 /* es-SV */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-SV"; path = "es-SV.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726542029097095001B9680 /* es-EC */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-EC"; path = "es-EC.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726542229097095001B9680 /* es-DO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-DO"; path = "es-DO.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726542429097096001B9680 /* es-CR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-CR"; path = "es-CR.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726542629097097001B9680 /* es-CO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-CO"; path = "es-CO.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726542829097098001B9680 /* es-PY */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-PY"; path = "es-PY.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726542A29097099001B9680 /* es-PA */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-PA"; path = "es-PA.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726542C2909709A001B9680 /* es-NI */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-NI"; path = "es-NI.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F726542E2909709B001B9680 /* es-MX */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-MX"; path = "es-MX.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F72654302909709C001B9680 /* es-PE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-PE"; path = "es-PE.lproj/Dashboard.strings"; sourceTree = "<group>"; };
F7267A81225DFCE100D6DB7D /* AFNetworking.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AFNetworking.framework; path = Carthage/Build/iOS/AFNetworking.framework; sourceTree = "<group>"; };
F72685E827C78E490019EF5E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
F726EEEB1FED1C820030B9C8 /* NCEndToEndInitialize.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NCEndToEndInitialize.swift; sourceTree = "<group>"; };
@ -874,7 +827,7 @@
F75B923D1ECAE55E00199C96 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = "<group>"; };
F75C0C4723D1FAE300163CC8 /* NCRichWorkspaceCommon.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NCRichWorkspaceCommon.swift; sourceTree = "<group>"; };
F75D19E225EFE09000D74598 /* NCTrash+Menu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "NCTrash+Menu.swift"; sourceTree = "<group>"; };
F75DD75B290AAD5C002EB562 /* Lockscreen.intentdefinition */ = {isa = PBXFileReference; lastKnownFileType = file.intentdefinition; path = Lockscreen.intentdefinition; sourceTree = "<group>"; };
F75DD760290AB35F002EB562 /* Intent.intentdefinition */ = {isa = PBXFileReference; lastKnownFileType = file.intentdefinition; path = Intent.intentdefinition; sourceTree = "<group>"; };
F75EDFBC1E8C112F00E6F369 /* libsqlite3.0.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libsqlite3.0.tbd; path = usr/lib/libsqlite3.0.tbd; sourceTree = SDKROOT; };
F75EDFBE1E8C116D00E6F369 /* libstdc++.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libstdc++.tbd"; path = "usr/lib/libstdc++.tbd"; sourceTree = SDKROOT; };
F760329D252F0F8E0015A421 /* NCTransferCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = NCTransferCell.swift; path = iOSClient/Transfers/NCTransferCell.swift; sourceTree = SOURCE_ROOT; };
@ -1128,7 +1081,6 @@
F7F67BB81A24D27800EE80DA /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
F7F878AD1FB9E3B900599E4F /* NCEndToEndMetadata.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NCEndToEndMetadata.swift; sourceTree = "<group>"; };
F7F9D1BA25397CE000D9BFF5 /* NCViewer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NCViewer.swift; sourceTree = "<group>"; };
F7FABE3828D1DAD00000A325 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.intentdefinition; name = Base; path = Base.lproj/Dashboard.intentdefinition; sourceTree = "<group>"; };
F7FAFD3928BFA947000777FE /* NCNotification+Menu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "NCNotification+Menu.swift"; sourceTree = "<group>"; };
F7FC7D551DC1F93800BB2C6A /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
F7FF2CB02842159500EBB7A1 /* NCSectionHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = NCSectionHeader.xib; sourceTree = "<group>"; };
@ -1362,14 +1314,6 @@
path = "Rename file";
sourceTree = "<group>";
};
F70EA92828D4B97C00920635 /* Intent */ = {
isa = PBXGroup;
children = (
F7FABE3928D1DAD00000A325 /* Dashboard.intentdefinition */,
);
path = Intent;
sourceTree = "<group>";
};
F710E80C1EF95C9C00DC2427 /* Intro */ = {
isa = PBXGroup;
children = (
@ -1470,7 +1414,6 @@
F72EA95528B7BAD100C88F0C /* Dashboard */ = {
isa = PBXGroup;
children = (
F70EA92828D4B97C00920635 /* Intent */,
F7E0710028B13BB00001B882 /* DashboardData.swift */,
F72EA95128B7BA2A00C88F0C /* DashboardWidgetProvider.swift */,
F72A17D728B221E300F3F159 /* DashboardWidgetView.swift */,
@ -1496,6 +1439,7 @@
F72EA95628B7BAE700C88F0C /* Files */,
F76DEE9A28F808BC0041B1C9 /* Lockscreen */,
F77ED59628C9CEEE00E24ED0 /* Toolbar */,
F75DD764290AB369002EB562 /* Intent */,
F7346E2028B0FA3A006CE2D2 /* Widget-Brinding-header.h */,
F7346E1528B0EF5C006CE2D2 /* Widget.swift */,
);
@ -1555,10 +1499,10 @@
path = ScanDocument;
sourceTree = "<group>";
};
F75DD75F290AAF6B002EB562 /* Intent */ = {
F75DD764290AB369002EB562 /* Intent */ = {
isa = PBXGroup;
children = (
F75DD75B290AAD5C002EB562 /* Lockscreen.intentdefinition */,
F75DD760290AB35F002EB562 /* Intent.intentdefinition */,
);
path = Intent;
sourceTree = "<group>";
@ -1599,7 +1543,6 @@
F76DEE9A28F808BC0041B1C9 /* Lockscreen */ = {
isa = PBXGroup;
children = (
F75DD75F290AAF6B002EB562 /* Intent */,
F76DEE9428F808AF0041B1C9 /* LockscreenData.swift */,
F76DEE9528F808AF0041B1C9 /* LockscreenWidgetProvider.swift */,
F76DEE9628F808AF0041B1C9 /* LockscreenWidgetView.swift */,
@ -2858,12 +2801,10 @@
F72EA95A28B7BD0D00C88F0C /* FilesWidgetView.swift in Sources */,
F78302FE28B4C44700B84583 /* NCBrand.swift in Sources */,
F793E5A028B7651B005E4B02 /* NCViewCertificateDetails.swift in Sources */,
F7FABE3728D1DAD00000A325 /* Dashboard.intentdefinition in Sources */,
F793E59F28B764F6005E4B02 /* NCContentPresenter.swift in Sources */,
F76DEE9828F808AF0041B1C9 /* LockscreenWidgetProvider.swift in Sources */,
F78302FA28B4C3EA00B84583 /* NCManageDatabase+Metadata.swift in Sources */,
F783030728B4C52800B84583 /* UIColor+Extensions.swift in Sources */,
F75DD75C290AAD5C002EB562 /* Lockscreen.intentdefinition in Sources */,
F783030028B4C45800B84583 /* NCGlobal.swift in Sources */,
F793E59D28B761E7005E4B02 /* NCNetworking.swift in Sources */,
F78302FC28B4C3F300B84583 /* NCElementsJSON.swift in Sources */,
@ -2878,6 +2819,7 @@
F72EA95828B7BC4F00C88F0C /* FilesData.swift in Sources */,
F793E59E28B763C2005E4B02 /* NCAskAuthorization.swift in Sources */,
F78302FF28B4C45000B84583 /* NCUtilityFileSystem.swift in Sources */,
F75DD762290AB35F002EB562 /* Intent.intentdefinition in Sources */,
F78302F628B4C3C500B84583 /* NCDatabase.swift in Sources */,
F7D68FCD28CB9051009139F3 /* NCManageDatabase+DashboardWidget.swift in Sources */,
F783030128B4C49700B84583 /* UIImage+Extensions.swift in Sources */,
@ -2944,7 +2886,6 @@
F702F2CD25EE5B4F008F8E80 /* AppDelegate.swift in Sources */,
F769454022E9F077000A798A /* NCSharePaging.swift in Sources */,
F78ACD4221903CE00088454D /* NCListCell.swift in Sources */,
F75DD75D290AAD5F002EB562 /* Lockscreen.intentdefinition in Sources */,
F76D3CF12428B40E005DFA87 /* NCViewerPDFSearch.swift in Sources */,
F7245924289BB50C00474787 /* ThreadSafeDictionary.swift in Sources */,
F73F537F1E929C8500F8678D /* NCMore.swift in Sources */,
@ -3008,6 +2949,7 @@
F7239871253D86B600257F49 /* NCEmptyDataSet.swift in Sources */,
AFCE353327E4ED1900FEA6C2 /* UIToolbar+Extension.swift in Sources */,
8491B1CD273BBA82001C8C5B /* UIViewController+Menu.swift in Sources */,
F75DD761290AB35F002EB562 /* Intent.intentdefinition in Sources */,
F702F2F725EE5CED008F8E80 /* NCLogin.swift in Sources */,
F7E98C1627E0D0FC001F9F19 /* NCManageDatabase+Video.swift in Sources */,
F7F4F11227ECDC52008676F9 /* UIFont+Extension.swift in Sources */,
@ -3084,7 +3026,6 @@
F7F4F11027ECDC4A008676F9 /* UIDevice+Extensions.swift in Sources */,
F77B0ED11D118A16002130FE /* Acknowledgements.m in Sources */,
F70D8D8124A4A9BF000A5756 /* NCNetworkingProcessUpload.swift in Sources */,
F7FABE3628D1DAD00000A325 /* Dashboard.intentdefinition in Sources */,
F7D96FCC246ED7E200536D73 /* NCNetworkingCheckRemoteUser.swift in Sources */,
F7E4D9C422ED929B003675FD /* NCShareCommentsCell.swift in Sources */,
F717402E24F699A5000C87D5 /* NCFavorite.swift in Sources */,
@ -3104,8 +3045,8 @@
F7A8D74428F1827B008BBE1C /* ThreadSafeDictionary.swift in Sources */,
F7C9739528F17131002C43E2 /* IntentHandler.swift in Sources */,
F7A8D73D28F181D3008BBE1C /* NCUtilityFileSystem.swift in Sources */,
F75DD75E290AAD60002EB562 /* Lockscreen.intentdefinition in Sources */,
F7A8D74528F1828E008BBE1C /* CCUtility.m in Sources */,
F75DD763290AB35F002EB562 /* Intent.intentdefinition in Sources */,
F7A8D73F28F181EF008BBE1C /* NCGlobal.swift in Sources */,
F7A8D74328F1826F008BBE1C /* String+Extensions.swift in Sources */,
F7A8D73728F17E1E008BBE1C /* NCManageDatabase+Account.swift in Sources */,
@ -3113,7 +3054,6 @@
F7A8D73C28F181BC008BBE1C /* NCBrand.swift in Sources */,
F7A8D74228F18261008BBE1C /* NCUtility.swift in Sources */,
F7A8D73A28F17E28008BBE1C /* NCManageDatabase+Video.swift in Sources */,
F7C9739D28F1733B002C43E2 /* Dashboard.intentdefinition in Sources */,
F7A8D73828F17E21008BBE1C /* NCManageDatabase+DashboardWidget.swift in Sources */,
F7A8D73928F17E25008BBE1C /* NCManageDatabase+Metadata.swift in Sources */,
F7A8D74128F18254008BBE1C /* UIColor+Extensions.swift in Sources */,
@ -3264,58 +3204,6 @@
path = "Supporting Files";
sourceTree = "<group>";
};
F7FABE3928D1DAD00000A325 /* Dashboard.intentdefinition */ = {
isa = PBXVariantGroup;
children = (
F7FABE3828D1DAD00000A325 /* Base */,
F72653DA29097065001B9680 /* en */,
F72653DC29097071001B9680 /* tr */,
F72653DE29097072001B9680 /* sv */,
F72653E029097072001B9680 /* es-UY */,
F72653E229097073001B9680 /* es-PR */,
F72653E429097076001B9680 /* eu */,
F72653E629097077001B9680 /* ca */,
F72653E829097078001B9680 /* zh-Hans */,
F72653EA29097079001B9680 /* zh-Hant-TW */,
F72653EC29097079001B9680 /* cs-CZ */,
F72653EE2909707A001B9680 /* da */,
F72653F02909707B001B9680 /* nl */,
F72653F22909707C001B9680 /* en-GB */,
F72653F42909707E001B9680 /* es-CL */,
F72653F62909707F001B9680 /* fr */,
F72653F829097080001B9680 /* gl */,
F72653FA29097081001B9680 /* ka-GE */,
F72653FC29097082001B9680 /* de */,
F72653FE29097083001B9680 /* hu */,
F726540029097084001B9680 /* is */,
F726540229097084001B9680 /* it */,
F726540429097085001B9680 /* ja-JP */,
F726540629097086001B9680 /* ko */,
F726540829097087001B9680 /* nb-NO */,
F726540A29097089001B9680 /* sk-SK */,
F726540C29097089001B9680 /* sr */,
F726540E2909708A001B9680 /* ru */,
F72654102909708B001B9680 /* pt-PT */,
F72654122909708C001B9680 /* pt-BR */,
F72654142909708D001B9680 /* pl */,
F72654162909708E001B9680 /* es */,
F726541829097090001B9680 /* es-419 */,
F726541A29097091001B9680 /* es-HN */,
F726541C29097092001B9680 /* es-GT */,
F726541E29097093001B9680 /* es-SV */,
F726542029097095001B9680 /* es-EC */,
F726542229097095001B9680 /* es-DO */,
F726542429097096001B9680 /* es-CR */,
F726542629097097001B9680 /* es-CO */,
F726542829097098001B9680 /* es-PY */,
F726542A29097099001B9680 /* es-PA */,
F726542C2909709A001B9680 /* es-NI */,
F726542E2909709B001B9680 /* es-MX */,
F72654302909709C001B9680 /* es-PE */,
);
name = Dashboard.intentdefinition;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -1,16 +0,0 @@
"TRaTZg" = "Widget";
"dLCeWT" = "Accounts";
"gJ9MnX" = "There are ${count} options matching ${Accounts}.";
"gpCwrM" = "Dashboard";
"jHO1Mn" = "Account";
"l090JH" = "Applications";
"tVvJ9c" = "Dashboard Widget";
"y95pmY" = "Just to confirm, you wanted ${Accounts}?";

Просмотреть файл

@ -22,6 +22,7 @@
//
import WidgetKit
import Intents
import NextcloudKit
struct FilesDataEntry: TimelineEntry {
@ -54,7 +55,7 @@ let filesDatasTest: [FilesData] = [
.init(id: "9", image: UIImage(named: "widget")!, title: "title4", subTitle: "subTitle-description4", url: URL(string: "https://nextcloud.com/")!)
]
func getTitleFilesWidget() -> String {
func getTitleFilesWidget(account: tableAccount?) -> String {
let hour = Calendar.current.component(.hour, from: Date())
var good = ""
@ -67,7 +68,7 @@ func getTitleFilesWidget() -> String {
default: good = NSLocalizedString("_good_night_", value: "Good night", comment: "")
}
if let account = NCManageDatabase.shared.getActiveAccount() {
if let account = account {
return good + ", " + account.displayName
} else {
return good
@ -80,19 +81,25 @@ func getFilesItems(displaySize: CGSize) -> Int {
return height
}
func getFilesDataEntry(isPreview: Bool, displaySize: CGSize, completion: @escaping (_ entry: FilesDataEntry) -> Void) {
func getFilesDataEntry(configuration: AccountIntent?, isPreview: Bool, displaySize: CGSize, completion: @escaping (_ entry: FilesDataEntry) -> Void) {
let filesItems = getFilesItems(displaySize: displaySize)
let datasPlaceholder = Array(filesDatasTest[0...filesItems - 1])
let title = getTitleFilesWidget()
var account: tableAccount?
if isPreview {
return completion(FilesDataEntry(date: Date(), datas: datasPlaceholder, isPlaceholder: true, tile: title, footerImage: "checkmark.icloud", footerText: NCBrandOptions.shared.brand + " files"))
return completion(FilesDataEntry(date: Date(), datas: datasPlaceholder, isPlaceholder: true, tile: getTitleFilesWidget(account: nil), footerImage: "checkmark.icloud", footerText: NCBrandOptions.shared.brand + " files"))
}
guard let account = NCManageDatabase.shared.getActiveAccount() else {
return completion(FilesDataEntry(date: Date(), datas: datasPlaceholder, isPlaceholder: true, tile: title, footerImage: "xmark.icloud", footerText: NSLocalizedString("_no_active_account_", value: "No account found", comment: "")))
let accountIdentifier: String = configuration?.Accounts?.identifier ?? "active"
if accountIdentifier == "active" {
account = NCManageDatabase.shared.getActiveAccount()
} else {
account = NCManageDatabase.shared.getAccount(predicate: NSPredicate(format: "account == %@", accountIdentifier))
}
guard let account = account else {
return completion(FilesDataEntry(date: Date(), datas: datasPlaceholder, isPlaceholder: true, tile: getTitleFilesWidget(account: nil), footerImage: "xmark.icloud", footerText: NSLocalizedString("_no_active_account_", value: "No account found", comment: "")))
}
@Sendable func isLive(file: NKFile, files: [NKFile]) -> Bool {
@ -204,6 +211,7 @@ func getFilesDataEntry(isPreview: Bool, displaySize: CGSize, completion: @escapi
Task {
var datas: [FilesData] = []
var imageRecent = UIImage(named: "file")!
let title = getTitleFilesWidget(account: account)
for file in files {
guard !file.directory else { continue }

Просмотреть файл

@ -22,27 +22,29 @@
//
import WidgetKit
import Intents
import SwiftUI
struct FilesWidgetProvider: TimelineProvider {
struct FilesWidgetProvider: IntentTimelineProvider {
typealias Entry = FilesDataEntry
typealias Intent = AccountIntent
func placeholder(in context: Context) -> Entry {
let filesItems = getFilesItems(displaySize: context.displaySize)
let datasPlaceholder = Array(filesDatasTest[0...filesItems - 1])
let title = getTitleFilesWidget()
let title = getTitleFilesWidget(account: nil)
return Entry(date: Date(), datas: datasPlaceholder, isPlaceholder: true, tile: title, footerImage: "checkmark.icloud", footerText: NCBrandOptions.shared.brand + " files")
}
func getSnapshot(in context: Context, completion: @escaping (Entry) -> Void) {
getFilesDataEntry(isPreview: false, displaySize: context.displaySize) { entry in
func getSnapshot(for configuration: AccountIntent, in context: Context, completion: @escaping (Entry) -> Void) {
getFilesDataEntry(configuration: configuration, isPreview: false, displaySize: context.displaySize) { entry in
completion(entry)
}
}
func getTimeline(in context: Context, completion: @escaping (Timeline<Entry>) -> Void) {
getFilesDataEntry(isPreview: context.isPreview, displaySize: context.displaySize) { entry in
func getTimeline(for configuration: AccountIntent, in context: Context, completion: @escaping (Timeline<Entry>) -> Void) {
getFilesDataEntry(configuration: configuration, isPreview: context.isPreview, displaySize: context.displaySize) { entry in
let timeLine = Timeline(entries: [entry], policy: .atEnd)
completion(timeLine)
}

Просмотреть файл

@ -7,7 +7,7 @@
<key>INIntentDefinitionModelVersion</key>
<string>1.2</string>
<key>INIntentDefinitionNamespace</key>
<string>88xZPY</string>
<string>4HSdD3</string>
<key>INIntentDefinitionSystemVersion</key>
<string>22A380</string>
<key>INIntentDefinitionToolsBuildVersion</key>
@ -20,17 +20,17 @@
<key>INIntentCategory</key>
<string>information</string>
<key>INIntentDescription</key>
<string>Dashboard Widget</string>
<string>Account</string>
<key>INIntentDescriptionID</key>
<string>tVvJ9c</string>
<string>VfbA9C</string>
<key>INIntentEligibleForWidgets</key>
<true/>
<key>INIntentIneligibleForSuggestions</key>
<true/>
<key>INIntentLastParameterTag</key>
<integer>9</integer>
<integer>2</integer>
<key>INIntentName</key>
<string>Dashboard</string>
<string>Account</string>
<key>INIntentParameters</key>
<array>
<dict>
@ -39,15 +39,15 @@
<key>INIntentParameterDisplayName</key>
<string>Account</string>
<key>INIntentParameterDisplayNameID</key>
<string>jHO1Mn</string>
<string>13zjVT</string>
<key>INIntentParameterDisplayPriority</key>
<integer>1</integer>
<key>INIntentParameterName</key>
<string>Accounts</string>
<key>INIntentParameterObjectType</key>
<string>AccountsDashboard</string>
<string>Accounts</string>
<key>INIntentParameterObjectTypeNamespace</key>
<string>88xZPY</string>
<string>4HSdD3</string>
<key>INIntentParameterPromptDialogs</key>
<array>
<dict>
@ -62,48 +62,31 @@
<key>INIntentParameterPromptDialogType</key>
<string>Primary</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogFormatString</key>
<string>There are ${count} options matching ${Accounts}.</string>
<key>INIntentParameterPromptDialogFormatStringID</key>
<string>ObH8NN</string>
<key>INIntentParameterPromptDialogType</key>
<string>DisambiguationIntroduction</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogFormatString</key>
<string>Just to confirm, you wanted ${Accounts}?</string>
<key>INIntentParameterPromptDialogFormatStringID</key>
<string>q5lvSu</string>
<key>INIntentParameterPromptDialogType</key>
<string>Confirmation</string>
</dict>
</array>
<key>INIntentParameterSupportsDynamicEnumeration</key>
<true/>
<key>INIntentParameterTag</key>
<integer>9</integer>
<key>INIntentParameterType</key>
<string>Object</string>
</dict>
<dict>
<key>INIntentParameterConfigurable</key>
<true/>
<key>INIntentParameterDisplayName</key>
<string>Widget</string>
<key>INIntentParameterDisplayNameID</key>
<string>TRaTZg</string>
<key>INIntentParameterDisplayPriority</key>
<integer>2</integer>
<key>INIntentParameterName</key>
<string>Applications</string>
<key>INIntentParameterObjectType</key>
<string>Applications</string>
<key>INIntentParameterObjectTypeNamespace</key>
<string>88xZPY</string>
<key>INIntentParameterPromptDialogs</key>
<array>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogType</key>
<string>Configuration</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogType</key>
<string>Primary</string>
</dict>
</array>
<key>INIntentParameterSupportsDynamicEnumeration</key>
<true/>
<key>INIntentParameterTag</key>
<integer>7</integer>
<key>INIntentParameterType</key>
<string>Object</string>
</dict>
@ -123,13 +106,168 @@
<string>failure</string>
</dict>
</array>
<key>INIntentResponseLastParameterTag</key>
<integer>1</integer>
</dict>
<key>INIntentTitle</key>
<string>Account</string>
<key>INIntentTitleID</key>
<string>V3exc2</string>
<key>INIntentType</key>
<string>Custom</string>
<key>INIntentVerb</key>
<string>View</string>
</dict>
<dict>
<key>INIntentCategory</key>
<string>information</string>
<key>INIntentDescription</key>
<string>Dashboard Widget</string>
<key>INIntentDescriptionID</key>
<string>ZgvlYN</string>
<key>INIntentEligibleForWidgets</key>
<true/>
<key>INIntentIneligibleForSuggestions</key>
<true/>
<key>INIntentLastParameterTag</key>
<integer>4</integer>
<key>INIntentName</key>
<string>Dashboard</string>
<key>INIntentParameters</key>
<array>
<dict>
<key>INIntentParameterConfigurable</key>
<true/>
<key>INIntentParameterDisplayName</key>
<string>Account</string>
<key>INIntentParameterDisplayNameID</key>
<string>DN8Bxl</string>
<key>INIntentParameterDisplayPriority</key>
<integer>1</integer>
<key>INIntentParameterName</key>
<string>Accounts</string>
<key>INIntentParameterObjectType</key>
<string>Accounts</string>
<key>INIntentParameterObjectTypeNamespace</key>
<string>4HSdD3</string>
<key>INIntentParameterPromptDialogs</key>
<array>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogType</key>
<string>Configuration</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogType</key>
<string>Primary</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogFormatString</key>
<string>There are ${count} options matching ${Accounts}.</string>
<key>INIntentParameterPromptDialogFormatStringID</key>
<string>296XDb</string>
<key>INIntentParameterPromptDialogType</key>
<string>DisambiguationIntroduction</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogFormatString</key>
<string>Just to confirm, you wanted ${Accounts}?</string>
<key>INIntentParameterPromptDialogFormatStringID</key>
<string>TVGjNQ</string>
<key>INIntentParameterPromptDialogType</key>
<string>Confirmation</string>
</dict>
</array>
<key>INIntentParameterSupportsDynamicEnumeration</key>
<true/>
<key>INIntentParameterTag</key>
<integer>2</integer>
<key>INIntentParameterType</key>
<string>Object</string>
</dict>
<dict>
<key>INIntentParameterConfigurable</key>
<true/>
<key>INIntentParameterDisplayName</key>
<string>Widget</string>
<key>INIntentParameterDisplayNameID</key>
<string>LIw8E9</string>
<key>INIntentParameterDisplayPriority</key>
<integer>2</integer>
<key>INIntentParameterName</key>
<string>Applications</string>
<key>INIntentParameterObjectType</key>
<string>Applications</string>
<key>INIntentParameterObjectTypeNamespace</key>
<string>4HSdD3</string>
<key>INIntentParameterPromptDialogs</key>
<array>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogType</key>
<string>Configuration</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogType</key>
<string>Primary</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogFormatString</key>
<string>There are ${count} options matching ${Applications}.</string>
<key>INIntentParameterPromptDialogFormatStringID</key>
<string>XjFf0X</string>
<key>INIntentParameterPromptDialogType</key>
<string>DisambiguationIntroduction</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogFormatString</key>
<string>Just to confirm, you wanted ${Applications}?</string>
<key>INIntentParameterPromptDialogFormatStringID</key>
<string>Am6y6p</string>
<key>INIntentParameterPromptDialogType</key>
<string>Confirmation</string>
</dict>
</array>
<key>INIntentParameterSupportsDynamicEnumeration</key>
<true/>
<key>INIntentParameterTag</key>
<integer>4</integer>
<key>INIntentParameterType</key>
<string>Object</string>
</dict>
</array>
<key>INIntentResponse</key>
<dict>
<key>INIntentResponseCodes</key>
<array>
<dict>
<key>INIntentResponseCodeName</key>
<string>success</string>
<key>INIntentResponseCodeSuccess</key>
<true/>
</dict>
<dict>
<key>INIntentResponseCodeName</key>
<string>failure</string>
</dict>
</array>
</dict>
<key>INIntentTitle</key>
<string>Dashboard</string>
<key>INIntentTitleID</key>
<string>gpCwrM</string>
<string>NO1rJU</string>
<key>INIntentType</key>
<string>Custom</string>
<key>INIntentVerb</key>
@ -140,13 +278,13 @@
<array>
<dict>
<key>INTypeDisplayName</key>
<string>Applications</string>
<string>Accounts</string>
<key>INTypeDisplayNameID</key>
<string>l090JH</string>
<string>tAlZ1R</string>
<key>INTypeLastPropertyTag</key>
<integer>99</integer>
<key>INTypeName</key>
<string>Applications</string>
<string>Accounts</string>
<key>INTypeProperties</key>
<array>
<dict>
@ -203,13 +341,13 @@
</dict>
<dict>
<key>INTypeDisplayName</key>
<string>Accounts</string>
<string>Applications</string>
<key>INTypeDisplayNameID</key>
<string>dLCeWT</string>
<string>CAIVXf</string>
<key>INTypeLastPropertyTag</key>
<integer>99</integer>
<key>INTypeName</key>
<string>AccountsDashboard</string>
<string>Applications</string>
<key>INTypeProperties</key>
<array>
<dict>

Просмотреть файл

@ -1,187 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>INEnums</key>
<array/>
<key>INIntentDefinitionModelVersion</key>
<string>1.2</string>
<key>INIntentDefinitionNamespace</key>
<string>PqCrom</string>
<key>INIntentDefinitionSystemVersion</key>
<string>22A380</string>
<key>INIntentDefinitionToolsBuildVersion</key>
<string>14A309</string>
<key>INIntentDefinitionToolsVersion</key>
<string>14.0</string>
<key>INIntents</key>
<array>
<dict>
<key>INIntentCategory</key>
<string>information</string>
<key>INIntentDescription</key>
<string>Lockscreen widget</string>
<key>INIntentDescriptionID</key>
<string>6G9C6n</string>
<key>INIntentEligibleForWidgets</key>
<true/>
<key>INIntentIneligibleForSuggestions</key>
<true/>
<key>INIntentLastParameterTag</key>
<integer>2</integer>
<key>INIntentName</key>
<string>Lockscreen</string>
<key>INIntentParameters</key>
<array>
<dict>
<key>INIntentParameterConfigurable</key>
<true/>
<key>INIntentParameterDisplayName</key>
<string>Accounts</string>
<key>INIntentParameterDisplayNameID</key>
<string>9wjBfU</string>
<key>INIntentParameterDisplayPriority</key>
<integer>1</integer>
<key>INIntentParameterName</key>
<string>Accounts</string>
<key>INIntentParameterObjectType</key>
<string>AccountsLockscreen</string>
<key>INIntentParameterObjectTypeNamespace</key>
<string>PqCrom</string>
<key>INIntentParameterPromptDialogs</key>
<array>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogType</key>
<string>Configuration</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogType</key>
<string>Primary</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogFormatString</key>
<string>There are ${count} options matching ${Accounts}.</string>
<key>INIntentParameterPromptDialogFormatStringID</key>
<string>UBB5e1</string>
<key>INIntentParameterPromptDialogType</key>
<string>DisambiguationIntroduction</string>
</dict>
<dict>
<key>INIntentParameterPromptDialogCustom</key>
<true/>
<key>INIntentParameterPromptDialogFormatString</key>
<string>Just to confirm, you wanted ${Accounts}?</string>
<key>INIntentParameterPromptDialogFormatStringID</key>
<string>EsGCp1</string>
<key>INIntentParameterPromptDialogType</key>
<string>Confirmation</string>
</dict>
</array>
<key>INIntentParameterSupportsDynamicEnumeration</key>
<true/>
<key>INIntentParameterTag</key>
<integer>2</integer>
<key>INIntentParameterType</key>
<string>Object</string>
</dict>
</array>
<key>INIntentResponse</key>
<dict>
<key>INIntentResponseCodes</key>
<array>
<dict>
<key>INIntentResponseCodeName</key>
<string>success</string>
<key>INIntentResponseCodeSuccess</key>
<true/>
</dict>
<dict>
<key>INIntentResponseCodeName</key>
<string>failure</string>
</dict>
</array>
</dict>
<key>INIntentTitle</key>
<string>Lockscreen</string>
<key>INIntentTitleID</key>
<string>UABqHX</string>
<key>INIntentType</key>
<string>Custom</string>
<key>INIntentVerb</key>
<string>View</string>
</dict>
</array>
<key>INTypes</key>
<array>
<dict>
<key>INTypeDisplayName</key>
<string>Accounts</string>
<key>INTypeDisplayNameID</key>
<string>wGuPt6</string>
<key>INTypeLastPropertyTag</key>
<integer>99</integer>
<key>INTypeName</key>
<string>AccountsLockscreen</string>
<key>INTypeProperties</key>
<array>
<dict>
<key>INTypePropertyDefault</key>
<true/>
<key>INTypePropertyDisplayPriority</key>
<integer>1</integer>
<key>INTypePropertyName</key>
<string>identifier</string>
<key>INTypePropertyTag</key>
<integer>1</integer>
<key>INTypePropertyType</key>
<string>String</string>
</dict>
<dict>
<key>INTypePropertyDefault</key>
<true/>
<key>INTypePropertyDisplayPriority</key>
<integer>2</integer>
<key>INTypePropertyName</key>
<string>displayString</string>
<key>INTypePropertyTag</key>
<integer>2</integer>
<key>INTypePropertyType</key>
<string>String</string>
</dict>
<dict>
<key>INTypePropertyDefault</key>
<true/>
<key>INTypePropertyDisplayPriority</key>
<integer>3</integer>
<key>INTypePropertyName</key>
<string>pronunciationHint</string>
<key>INTypePropertyTag</key>
<integer>3</integer>
<key>INTypePropertyType</key>
<string>String</string>
</dict>
<dict>
<key>INTypePropertyDefault</key>
<true/>
<key>INTypePropertyDisplayPriority</key>
<integer>4</integer>
<key>INTypePropertyName</key>
<string>alternativeSpeakableMatches</string>
<key>INTypePropertySupportsMultipleValues</key>
<true/>
<key>INTypePropertyTag</key>
<integer>4</integer>
<key>INTypePropertyType</key>
<string>SpeakableString</string>
</dict>
</array>
</dict>
</array>
</dict>
</plist>

Просмотреть файл

@ -34,7 +34,7 @@ struct LockscreenData: TimelineEntry {
let quotaTotal: String
}
func getLockscreenDataEntry(configuration: LockscreenIntent?, isPreview: Bool, completion: @escaping (_ entry: LockscreenData) -> Void) {
func getLockscreenDataEntry(configuration: AccountIntent?, isPreview: Bool, completion: @escaping (_ entry: LockscreenData) -> Void) {
var account: tableAccount?

Просмотреть файл

@ -22,26 +22,25 @@
//
import WidgetKit
import SwiftUI
import Intents
import SwiftUI
struct LockscreenWidgetProvider: IntentTimelineProvider {
typealias Entry = LockscreenData
typealias Intent = LockscreenIntent
typealias Intent = AccountIntent
func placeholder(in context: Context) -> Entry {
return Entry(date: Date(), isPlaceholder: true, activity: "", link: URL(string: "https://")!, quotaRelative: 0, quotaUsed: "", quotaTotal: "")
}
func getSnapshot(for configuration: LockscreenIntent, in context: Context, completion: @escaping (Entry) -> Void) {
func getSnapshot(for configuration: AccountIntent, in context: Context, completion: @escaping (Entry) -> Void) {
getLockscreenDataEntry(configuration: configuration, isPreview: false) { entry in
completion(entry)
}
}
func getTimeline(for configuration: LockscreenIntent, in context: Context, completion: @escaping (Timeline<Entry>) -> Void) {
func getTimeline(for configuration: AccountIntent, in context: Context, completion: @escaping (Timeline<Entry>) -> Void) {
getLockscreenDataEntry(configuration: configuration, isPreview: context.isPreview) { entry in
let timeLine = Timeline(entries: [entry], policy: .atEnd)
completion(timeLine)

Просмотреть файл

@ -54,7 +54,7 @@ struct FilesWidget: Widget {
let kind: String = "FilesWidget"
var body: some WidgetConfiguration {
StaticConfiguration(kind: kind, provider: FilesWidgetProvider()) { entry in
IntentConfiguration(kind: kind, intent: AccountIntent.self, provider: FilesWidgetProvider()) { entry in
FilesWidgetView(entry: entry)
}
.supportedFamilies([.systemLarge])
@ -81,7 +81,7 @@ struct LockscreenWidget: Widget {
var body: some WidgetConfiguration {
if #available(iOSApplicationExtension 16.0, *) {
return IntentConfiguration(kind: kind, intent: LockscreenIntent.self, provider: LockscreenWidgetProvider()) { entry in
return IntentConfiguration(kind: kind, intent: AccountIntent.self, provider: LockscreenWidgetProvider()) { entry in
LockscreenWidgetView(entry: entry)
}
.supportedFamilies([.accessoryRectangular, .accessoryCircular])

Просмотреть файл

@ -9,18 +9,18 @@
import Intents
import RealmSwift
class IntentHandler: INExtension, DashboardIntentHandling, LockscreenIntentHandling {
class IntentHandler: INExtension, DashboardIntentHandling, AccountIntentHandling {
// MARK: - Lockscreen
// MARK: - Account
// Account
func provideAccountsOptionsCollection(for intent: LockscreenIntent, with completion: @escaping (INObjectCollection<AccountsLockscreen>?, Error?) -> Void) {
func provideAccountsOptionsCollection(for intent: AccountIntent, with completion: @escaping (INObjectCollection<Accounts>?, Error?) -> Void) {
var accounts: [AccountsLockscreen] = []
var accounts: [Accounts] = []
let results = NCManageDatabase.shared.getAllAccount()
accounts.append(AccountsLockscreen(identifier: "active", display: NSLocalizedString("_account_active_", comment: "")))
accounts.append(Accounts(identifier: "active", display: NSLocalizedString("_account_active_", comment: "")))
if results.isEmpty {
return completion(nil, nil)
@ -29,19 +29,19 @@ class IntentHandler: INExtension, DashboardIntentHandling, LockscreenIntentHandl
}
for result in results {
let display = (result.alias.isEmpty) ? result.account : result.alias
let account = AccountsLockscreen(identifier: result.account, display: display)
let account = Accounts(identifier: result.account, display: display)
accounts.append(account)
}
completion(INObjectCollection(items: accounts), nil)
}
func defaultAccounts(for intent: LockscreenIntent) -> AccountsLockscreen? {
func defaultAccounts(for intent: AccountIntent) -> Accounts? {
if NCManageDatabase.shared.getActiveAccount() == nil {
return nil
} else {
return AccountsLockscreen(identifier: "active", display: NSLocalizedString("_account_active_", comment: ""))
return Accounts(identifier: "active", display: NSLocalizedString("_account_active_", comment: ""))
}
}
@ -79,12 +79,12 @@ class IntentHandler: INExtension, DashboardIntentHandling, LockscreenIntentHandl
// Account
func provideAccountsOptionsCollection(for intent: DashboardIntent, with completion: @escaping (INObjectCollection<AccountsDashboard>?, Error?) -> Void) {
func provideAccountsOptionsCollection(for intent: DashboardIntent, with completion: @escaping (INObjectCollection<Accounts>?, Error?) -> Void) {
var accounts: [AccountsDashboard] = []
var accounts: [Accounts] = []
let results = NCManageDatabase.shared.getAllAccount()
accounts.append(AccountsDashboard(identifier: "active", display: NSLocalizedString("_account_active_", comment: "")))
accounts.append(Accounts(identifier: "active", display: NSLocalizedString("_account_active_", comment: "")))
if results.isEmpty {
return completion(nil, nil)
@ -93,19 +93,19 @@ class IntentHandler: INExtension, DashboardIntentHandling, LockscreenIntentHandl
}
for result in results {
let display = (result.alias.isEmpty) ? result.account : result.alias
let account = AccountsDashboard(identifier: result.account, display: display)
let account = Accounts(identifier: result.account, display: display)
accounts.append(account)
}
completion(INObjectCollection(items: accounts), nil)
}
func defaultAccounts(for intent: DashboardIntent) -> AccountsDashboard? {
func defaultAccounts(for intent: DashboardIntent) -> Accounts? {
if NCManageDatabase.shared.getActiveAccount() == nil {
return nil
} else {
return AccountsDashboard(identifier: "active", display: NSLocalizedString("_account_active_", comment: ""))
return Accounts(identifier: "active", display: NSLocalizedString("_account_active_", comment: ""))
}
}
}

Просмотреть файл

@ -17,9 +17,8 @@
<array/>
<key>IntentsSupported</key>
<array>
<string>AccountIntent</string>
<string>DashboardIntent</string>
<string>IntentIntent</string>
<string>LockscreenIntent</string>
</array>
</dict>
<key>NSExtensionPointIdentifier</key>

Просмотреть файл

@ -77,9 +77,8 @@
<string>Photo library access is required to upload your photos and videos to your cloud.</string>
<key>NSUserActivityTypes</key>
<array>
<string>AccountIntent</string>
<string>DashboardIntent</string>
<string>IntentIntent</string>
<string>LockscreenIntent</string>
</array>
<key>PHPhotoLibraryPreventAutomaticLimitedAccessAlert</key>
<true/>