Update iconography visible in launch video (#1762)
@ -12,7 +12,7 @@ let package = Package(
|
||||
.library(name: "DesignKit", targets: ["DesignKit"])
|
||||
],
|
||||
dependencies: [
|
||||
.package(url: "https://github.com/vector-im/compound-ios", revision: "562988911c79e81c70ecc40ceb469b65e46e82dc"),
|
||||
.package(url: "https://github.com/vector-im/compound-ios", revision: "e8c097e545a06a2ef3036af33192a07c58fafd1b"),
|
||||
.package(url: "https://github.com/vector-im/element-design-tokens", exact: "0.0.3"),
|
||||
.package(url: "https://github.com/siteline/SwiftUI-Introspect", from: "0.9.0")
|
||||
],
|
||||
|
@ -155,7 +155,6 @@
|
||||
3116693C5EB476E028990416 /* XCTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74611A4182DCF5F4D42696EC /* XCTestCase.swift */; };
|
||||
32B7891D937377A59606EDFC /* UserFlowTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21DD8599815136EFF5B73F38 /* UserFlowTests.swift */; };
|
||||
339BC18777912E1989F2F17D /* Section.swift in Sources */ = {isa = PBXBuildFile; fileRef = 584A61D9C459FAFEF038A7C0 /* Section.swift */; };
|
||||
339D847497C51F2B36E3666B /* FixedIconSizeLabelStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3518637393394901BF5BFAC3 /* FixedIconSizeLabelStyle.swift */; };
|
||||
33CAC1226DFB8B5D8447D286 /* GZIP in Frameworks */ = {isa = PBXBuildFile; productRef = 1BCD21310B997A6837B854D6 /* GZIP */; };
|
||||
340D39DB87F3800D53A6A621 /* EmojiPickerScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00245D40CD90FD71D6A05239 /* EmojiPickerScreen.swift */; };
|
||||
34357B287357BC0B9715DD51 /* UserAgentBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2529D434C750ED78ADF1ED /* UserAgentBuilder.swift */; };
|
||||
@ -304,6 +303,7 @@
|
||||
642DF13C49ED4121C148230E /* TestablePreview.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1E227F34BE43B08E098796E /* TestablePreview.swift */; };
|
||||
6448F8D1D3CA4CD27BB4CADD /* RoomMemberProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F36C5D9B37E50915ECBD3EE /* RoomMemberProxy.swift */; };
|
||||
644AA5001BCC58D7732EB772 /* MigrationScreenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12EDAFB64FA5F6812D54F39A /* MigrationScreenViewModel.swift */; };
|
||||
64AB99285DC4437C0DDE9585 /* MenuSheetLabelStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49ABAB186CF00B15C5521D04 /* MenuSheetLabelStyle.swift */; };
|
||||
64C373ACCFA26D42BA45CFAD /* HomeScreenInvitesButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24227FF9A2797F6EA7F69CDD /* HomeScreenInvitesButton.swift */; };
|
||||
64D05250CEDE8B604119F6E6 /* Alert.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981663D961C94270FA035FD0 /* Alert.swift */; };
|
||||
64F43D7390DA2A0AFD6BA911 /* VideoRoomTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1941C8817E6B6971BA4415F5 /* VideoRoomTimelineView.swift */; };
|
||||
@ -696,6 +696,7 @@
|
||||
D4ACF3276F5D0DA28D4028C9 /* AnalyticsPromptScreenViewModelProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8196D64EB9CF2AF1F43E4ED1 /* AnalyticsPromptScreenViewModelProtocol.swift */; };
|
||||
D53B80EF02C1062E68659EDD /* ReportContentViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 086C19086DD16E9B38E25954 /* ReportContentViewModelTests.swift */; };
|
||||
D55AF9B5B55FEED04771A461 /* RoomFlowCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A008E57D52B07B78DFAD1BB /* RoomFlowCoordinator.swift */; };
|
||||
D5681C80D8281560AACE0035 /* Label.swift in Sources */ = {isa = PBXBuildFile; fileRef = 045253F9967A535EE5B16691 /* Label.swift */; };
|
||||
D5C805F49B2C75DC3793E780 /* EmojiItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37A243E04B58DC6E41FDCD82 /* EmojiItem.swift */; };
|
||||
D5E771132BB36240DE38102F /* RoomMessageEventStringBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80E815FF3CC5E5A355E3A25E /* RoomMessageEventStringBuilder.swift */; };
|
||||
D5EA4C6C80579279770D5804 /* ImageRoomTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A45283CF1DB96E583BECA6 /* ImageRoomTimelineView.swift */; };
|
||||
@ -888,6 +889,7 @@
|
||||
0376C429FAB1687C3D905F3E /* MockCoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockCoder.swift; sourceTree = "<group>"; };
|
||||
03DD998E523D4EC93C7ED703 /* RoomNotificationSettingsScreenViewModelProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomNotificationSettingsScreenViewModelProtocol.swift; sourceTree = "<group>"; };
|
||||
03FABD73FD8086EFAB699F42 /* MediaUploadPreviewScreenViewModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaUploadPreviewScreenViewModelTests.swift; sourceTree = "<group>"; };
|
||||
045253F9967A535EE5B16691 /* Label.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Label.swift; sourceTree = "<group>"; };
|
||||
04BB8DDE245ED86C489BA983 /* AccessibilityIdentifiers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccessibilityIdentifiers.swift; sourceTree = "<group>"; };
|
||||
04DF593C3F7AF4B2FBAEB05D /* FileManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileManager.swift; sourceTree = "<group>"; };
|
||||
052B2F924572AFD70B5F500E /* StartChatScreenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StartChatScreenViewModel.swift; sourceTree = "<group>"; };
|
||||
@ -1029,7 +1031,6 @@
|
||||
33E49C5C6F802B4D94CA78D1 /* ro */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ro; path = ro.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
340179A0FC1AD4AEDA7FC134 /* CreateRoomViewModelProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CreateRoomViewModelProtocol.swift; sourceTree = "<group>"; };
|
||||
342BEBC3C5FC3F9943C41C4C /* TemplateScreenViewModelProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TemplateScreenViewModelProtocol.swift; sourceTree = "<group>"; };
|
||||
3518637393394901BF5BFAC3 /* FixedIconSizeLabelStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FixedIconSizeLabelStyle.swift; sourceTree = "<group>"; };
|
||||
351E89CE2ED9B73C5CC47955 /* TimelineReactionsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimelineReactionsView.swift; sourceTree = "<group>"; };
|
||||
3558A15CFB934F9229301527 /* RestorationToken.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RestorationToken.swift; sourceTree = "<group>"; };
|
||||
35AFCF4C05DEED04E3DB1A16 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
@ -1094,6 +1095,7 @@
|
||||
47F29139BC2A804CE5E0757E /* MediaUploadPreviewScreenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaUploadPreviewScreenViewModel.swift; sourceTree = "<group>"; };
|
||||
4959CECEC984B3995616F427 /* DataProtectionManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataProtectionManager.swift; sourceTree = "<group>"; };
|
||||
4999B5FD50AED7CB0F590FF8 /* AdvancedSettingsScreenModels.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdvancedSettingsScreenModels.swift; sourceTree = "<group>"; };
|
||||
49ABAB186CF00B15C5521D04 /* MenuSheetLabelStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MenuSheetLabelStyle.swift; sourceTree = "<group>"; };
|
||||
49D2C8E66E83EA578A7F318A /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
49E45C3DC740D3AB9A47FD32 /* SwipeToReplyView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwipeToReplyView.swift; sourceTree = "<group>"; };
|
||||
49E6066092ED45E36BB306F7 /* zh-Hant-TW */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "zh-Hant-TW"; path = "zh-Hant-TW.lproj/Localizable.stringsdict"; sourceTree = "<group>"; };
|
||||
@ -2276,6 +2278,7 @@
|
||||
04DF593C3F7AF4B2FBAEB05D /* FileManager.swift */,
|
||||
E26747B3154A5DBC3A7E24A5 /* Image.swift */,
|
||||
4E2245243369B99216C7D84E /* ImageCache.swift */,
|
||||
045253F9967A535EE5B16691 /* Label.swift */,
|
||||
C14D83B2B7CD5501A0089EFC /* LayoutDirection.swift */,
|
||||
23AA3F4B285570805CB0CCDD /* MapTiler.swift */,
|
||||
4151163F666ED94FD959475A /* NotificationName.swift */,
|
||||
@ -3629,9 +3632,9 @@
|
||||
children = (
|
||||
8872E9C5E91E9F2BFC4EBCCA /* AlignedScrollView.swift */,
|
||||
42236480CF0431535EBE8387 /* CustomLayoutLabelStyle.swift */,
|
||||
3518637393394901BF5BFAC3 /* FixedIconSizeLabelStyle.swift */,
|
||||
4798B3B7A1E8AE3901CEE8C6 /* FramePreferenceKey.swift */,
|
||||
565F1B2B300597C616B37888 /* FullscreenDialog.swift */,
|
||||
49ABAB186CF00B15C5521D04 /* MenuSheetLabelStyle.swift */,
|
||||
398817652FA8ABAE0A31AC6D /* ReadableFrameModifier.swift */,
|
||||
933B074F006F8E930DB98B4E /* TimelineMediaFrame.swift */,
|
||||
EFF7BF82A950B91BC5469E91 /* ViewFrameReader.swift */,
|
||||
@ -4655,7 +4658,6 @@
|
||||
D33AC79A50DFC26D2498DD28 /* FileRoomTimelineItem.swift in Sources */,
|
||||
37D789F24199B32E3FD1AA7B /* FileRoomTimelineItemContent.swift in Sources */,
|
||||
1F04C63D4FA95948E3F52147 /* FileRoomTimelineView.swift in Sources */,
|
||||
339D847497C51F2B36E3666B /* FixedIconSizeLabelStyle.swift in Sources */,
|
||||
F5D2270B5021D521C0D22E11 /* FlowCoordinatorProtocol.swift in Sources */,
|
||||
B3EDDEC1839BB5A3747624BB /* FormButtonStyles.swift in Sources */,
|
||||
5CE74302A0725F56F1E9D2A0 /* FormRow.swift in Sources */,
|
||||
@ -4700,6 +4702,7 @@
|
||||
E3CA565A4B9704F191B191F0 /* JoinedRoomSize+MemberCount.swift in Sources */,
|
||||
1FE593ECEC40A43789105D80 /* KeychainController.swift in Sources */,
|
||||
CB99B0FA38A4AC596F38CC13 /* KeychainControllerProtocol.swift in Sources */,
|
||||
D5681C80D8281560AACE0035 /* Label.swift in Sources */,
|
||||
EEAE954289DE813A61656AE0 /* LayoutDirection.swift in Sources */,
|
||||
42B084FDE621FBEE433AF444 /* LegalInformationScreen.swift in Sources */,
|
||||
9EBDC79CAC9B63A0D626E333 /* LegalInformationScreenCoordinator.swift in Sources */,
|
||||
@ -4751,6 +4754,7 @@
|
||||
A969147E0EEE0E27EE226570 /* MediaUploadPreviewScreenViewModel.swift in Sources */,
|
||||
9B872FF37DBE6BE054903831 /* MediaUploadPreviewScreenViewModelProtocol.swift in Sources */,
|
||||
8A0BD60CA4A6004DB06B5403 /* MediaUploadingPreprocessor.swift in Sources */,
|
||||
64AB99285DC4437C0DDE9585 /* MenuSheetLabelStyle.swift in Sources */,
|
||||
858B0A45257174AAFD448EA0 /* MessageComposer.swift in Sources */,
|
||||
C8E0FA0FF2CD6613264FA6B9 /* MessageForwardingScreen.swift in Sources */,
|
||||
2BBA132149DEBED6624084A8 /* MessageForwardingScreenCoordinator.swift in Sources */,
|
||||
@ -5766,7 +5770,7 @@
|
||||
repositoryURL = "https://github.com/vector-im/compound-ios";
|
||||
requirement = {
|
||||
kind = revision;
|
||||
revision = 562988911c79e81c70ecc40ceb469b65e46e82dc;
|
||||
revision = e8c097e545a06a2ef3036af33192a07c58fafd1b;
|
||||
};
|
||||
};
|
||||
9A472EE0218FE7DCF5283429 /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */ = {
|
||||
|
@ -13,7 +13,7 @@
|
||||
"kind" : "remoteSourceControl",
|
||||
"location" : "https://github.com/vector-im/compound-ios",
|
||||
"state" : {
|
||||
"revision" : "562988911c79e81c70ecc40ceb469b65e46e82dc"
|
||||
"revision" : "e8c097e545a06a2ef3036af33192a07c58fafd1b"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -235,7 +235,7 @@
|
||||
{
|
||||
"identity" : "swiftui-introspect",
|
||||
"kind" : "remoteSourceControl",
|
||||
"location" : "https://github.com/siteline/SwiftUI-Introspect.git",
|
||||
"location" : "https://github.com/siteline/SwiftUI-Introspect",
|
||||
"state" : {
|
||||
"revision" : "b94da693e57eaf79d16464b8b7c90d09cba4e290",
|
||||
"version" : "0.9.2"
|
||||
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "timeline-reaction-add-more.pdf",
|
||||
"filename" : "location.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.0001 19.35C14.0335 17.4833 15.5418 15.7875 16.5251 14.2625C17.5085 12.7375 18.0001 11.3833 18.0001 10.2C18.0001 8.38333 17.421 6.89583 16.2626 5.7375C15.1043 4.57917 13.6835 4 12.0001 4C10.3168 4 8.89596 4.57917 7.73762 5.7375C6.57929 6.89583 6.00012 8.38333 6.00012 10.2C6.00012 11.3833 6.49179 12.7375 7.47512 14.2625C8.45846 15.7875 9.96679 17.4833 12.0001 19.35ZM12.0001 21.325C11.7668 21.325 11.5335 21.2833 11.3001 21.2C11.0668 21.1167 10.8585 20.9917 10.6751 20.825C9.59179 19.825 8.63346 18.85 7.80012 17.9C6.96679 16.95 6.27096 16.0292 5.71262 15.1375C5.15429 14.2458 4.72929 13.3875 4.43762 12.5625C4.14596 11.7375 4.00012 10.95 4.00012 10.2C4.00012 7.7 4.80429 5.70833 6.41262 4.225C8.02096 2.74167 9.88346 2 12.0001 2C14.1168 2 15.9793 2.74167 17.5876 4.225C19.196 5.70833 20.0001 7.7 20.0001 10.2C20.0001 10.95 19.8543 11.7375 19.5626 12.5625C19.271 13.3875 18.846 14.2458 18.2876 15.1375C17.7293 16.0292 17.0335 16.95 16.2001 17.9C15.3668 18.85 14.4085 19.825 13.3251 20.825C13.1418 20.9917 12.9335 21.1167 12.7001 21.2C12.4668 21.2833 12.2335 21.325 12.0001 21.325ZM12.0001 12C12.5501 12 13.021 11.8042 13.4126 11.4125C13.8043 11.0208 14.0001 10.55 14.0001 10C14.0001 9.45 13.8043 8.97917 13.4126 8.5875C13.021 8.19583 12.5501 8 12.0001 8C11.4501 8 10.9793 8.19583 10.5876 8.5875C10.196 8.97917 10.0001 9.45 10.0001 10C10.0001 10.55 10.196 11.0208 10.5876 11.4125C10.9793 11.8042 11.4501 12 12.0001 12Z" fill="black"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.5 KiB |
16
ElementX/Resources/Assets.xcassets/images/composer/attachments/attachment.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "attachment.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M11.5 22C9.96667 22 8.66667 21.4667 7.6 20.4C6.53333 19.3333 6 18.0333 6 16.5V6C6 4.9 6.39167 3.95833 7.175 3.175C7.95833 2.39167 8.9 2 10 2C11.1 2 12.0417 2.39167 12.825 3.175C13.6083 3.95833 14 4.9 14 6V15.5C14 16.2 13.7583 16.7917 13.275 17.275C12.7917 17.7583 12.2 18 11.5 18C10.8 18 10.2083 17.7583 9.725 17.275C9.24167 16.7917 9 16.2 9 15.5V6.75C9 6.53333 9.07083 6.35417 9.2125 6.2125C9.35417 6.07083 9.53333 6 9.75 6C9.96667 6 10.1458 6.07083 10.2875 6.2125C10.4292 6.35417 10.5 6.53333 10.5 6.75V15.5C10.5 15.7833 10.5958 16.0208 10.7875 16.2125C10.9792 16.4042 11.2167 16.5 11.5 16.5C11.7833 16.5 12.0208 16.4042 12.2125 16.2125C12.4042 16.0208 12.5 15.7833 12.5 15.5V6C12.5 5.3 12.2583 4.70833 11.775 4.225C11.2917 3.74167 10.7 3.5 10 3.5C9.3 3.5 8.70833 3.74167 8.225 4.225C7.74167 4.70833 7.5 5.3 7.5 6V16.5C7.5 17.6 7.89167 18.5417 8.675 19.325C9.45833 20.1083 10.4 20.5 11.5 20.5C12.6 20.5 13.5417 20.1083 14.325 19.325C15.1083 18.5417 15.5 17.6 15.5 16.5V6.75C15.5 6.53333 15.5708 6.35417 15.7125 6.2125C15.8542 6.07083 16.0333 6 16.25 6C16.4667 6 16.6458 6.07083 16.7875 6.2125C16.9292 6.35417 17 6.53333 17 6.75V16.5C17 18.0333 16.4667 19.3333 15.4 20.4C14.3333 21.4667 13.0333 22 11.5 22Z" fill="black"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.3 KiB |
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "photos-library.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M5 21C4.45 21 3.97917 20.8042 3.5875 20.4125C3.19583 20.0208 3 19.55 3 19V5C3 4.45 3.19583 3.97917 3.5875 3.5875C3.97917 3.19583 4.45 3 5 3H19C19.55 3 20.0208 3.19583 20.4125 3.5875C20.8042 3.97917 21 4.45 21 5V19C21 19.55 20.8042 20.0208 20.4125 20.4125C20.0208 20.8042 19.55 21 19 21H5ZM5 19H19V5H5V19ZM7 17H17C17.2 17 17.35 16.9083 17.45 16.725C17.55 16.5417 17.5333 16.3667 17.4 16.2L14.65 12.525C14.55 12.3917 14.4167 12.325 14.25 12.325C14.0833 12.325 13.95 12.3917 13.85 12.525L11.25 16L9.4 13.525C9.3 13.3917 9.16667 13.325 9 13.325C8.83333 13.325 8.7 13.3917 8.6 13.525L6.6 16.2C6.46667 16.3667 6.45 16.5417 6.55 16.725C6.65 16.9083 6.8 17 7 17Z" fill="black"/>
|
||||
</svg>
|
After Width: | Height: | Size: 783 B |
16
ElementX/Resources/Assets.xcassets/images/composer/attachments/take-photo.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "take-photo.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.0001 17.5C13.2501 17.5 14.3126 17.0625 15.1876 16.1875C16.0626 15.3125 16.5001 14.25 16.5001 13C16.5001 11.75 16.0626 10.6875 15.1876 9.8125C14.3126 8.9375 13.2501 8.5 12.0001 8.5C10.7501 8.5 9.68762 8.9375 8.81262 9.8125C7.93762 10.6875 7.50012 11.75 7.50012 13C7.50012 14.25 7.93762 15.3125 8.81262 16.1875C9.68762 17.0625 10.7501 17.5 12.0001 17.5ZM12.0001 15.5C11.3001 15.5 10.7085 15.2583 10.2251 14.775C9.74179 14.2917 9.50012 13.7 9.50012 13C9.50012 12.3 9.74179 11.7083 10.2251 11.225C10.7085 10.7417 11.3001 10.5 12.0001 10.5C12.7001 10.5 13.2918 10.7417 13.7751 11.225C14.2585 11.7083 14.5001 12.3 14.5001 13C14.5001 13.7 14.2585 14.2917 13.7751 14.775C13.2918 15.2583 12.7001 15.5 12.0001 15.5ZM4.00012 21C3.45012 21 2.97929 20.8042 2.58762 20.4125C2.19596 20.0208 2.00012 19.55 2.00012 19V7C2.00012 6.45 2.19596 5.97917 2.58762 5.5875C2.97929 5.19583 3.45012 5 4.00012 5H7.15012L8.40012 3.65C8.58346 3.45 8.80429 3.29167 9.06262 3.175C9.32096 3.05833 9.59179 3 9.87512 3H14.1251C14.4085 3 14.6793 3.05833 14.9376 3.175C15.196 3.29167 15.4168 3.45 15.6001 3.65L16.8501 5H20.0001C20.5501 5 21.021 5.19583 21.4126 5.5875C21.8043 5.97917 22.0001 6.45 22.0001 7V19C22.0001 19.55 21.8043 20.0208 21.4126 20.4125C21.021 20.8042 20.5501 21 20.0001 21H4.00012ZM4.00012 19H20.0001V7H15.9501L14.1251 5H9.87512L8.05012 7H4.00012V19Z" fill="black"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.4 KiB |
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "text-formatting.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M6 19C5.71667 19 5.47917 18.9042 5.2875 18.7125C5.09583 18.5208 5 18.2833 5 18C5 17.7167 5.09583 17.4792 5.2875 17.2875C5.47917 17.0958 5.71667 17 6 17H18C18.2833 17 18.5208 17.0958 18.7125 17.2875C18.9042 17.4792 19 17.7167 19 18C19 18.2833 18.9042 18.5208 18.7125 18.7125C18.5208 18.9042 18.2833 19 18 19H6ZM7.35 13.8L10.775 4.6C10.8417 4.41667 10.9542 4.27083 11.1125 4.1625C11.2708 4.05417 11.45 4 11.65 4H12.35C12.55 4 12.7292 4.05417 12.8875 4.1625C13.0458 4.27083 13.1583 4.41667 13.225 4.6L16.65 13.825C16.75 14.1083 16.7167 14.375 16.55 14.625C16.3833 14.875 16.15 15 15.85 15C15.6667 15 15.4958 14.9458 15.3375 14.8375C15.1792 14.7292 15.0667 14.5833 15 14.4L14.25 12.2H9.8L9 14.425C8.93333 14.6083 8.825 14.75 8.675 14.85C8.525 14.95 8.35833 15 8.175 15C7.85833 15 7.6125 14.8708 7.4375 14.6125C7.2625 14.3542 7.23333 14.0833 7.35 13.8ZM10.35 10.6H13.65L12.05 6.05H11.95L10.35 10.6Z" fill="black"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1022 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 914 B After Width: | Height: | Size: 914 B |
Before Width: | Height: | Size: 914 B After Width: | Height: | Size: 914 B |
16
ElementX/Resources/Assets.xcassets/images/composer/editing.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "edit-solid-16.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
3
ElementX/Resources/Assets.xcassets/images/composer/editing.imageset/edit-solid-16.svg
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.8666 5.94995L10.0333 3.14997L10.9666 2.21664C11.2222 1.96109 11.536 1.83331 11.9083 1.83331C12.2805 1.83331 12.5944 1.96109 12.8499 2.21664L13.7832 3.14997C14.0388 3.40552 14.1721 3.71385 14.1832 4.07496C14.1944 4.43607 14.0721 4.7444 13.8166 4.99996L12.8666 5.94995ZM2.66666 13.9999C2.47777 13.9999 2.31944 13.936 2.19167 13.8082C2.06389 13.6804 2 13.5221 2 13.3332V11.4499C2 11.361 2.01667 11.2749 2.05 11.1916C2.08333 11.1082 2.13333 11.0332 2.2 10.9666L9.06661 4.09996L11.8999 6.93327L5.03331 13.7999C4.96664 13.8666 4.89164 13.9166 4.80831 13.9499C4.72498 13.9832 4.63887 13.9999 4.54998 13.9999H2.66666Z" fill="#1B1D22"/>
|
||||
</svg>
|
After Width: | Height: | Size: 744 B |
3
ElementX/Resources/Assets.xcassets/images/composer/send-message.imageset/send.svg
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M23.1059 13.4469L2.34497 23.8224C0.945941 24.5218 -0.509566 23.0216 0.174203 21.653C0.174203 21.653 2.74733 16.4567 3.45509 15.0956C4.16285 13.7345 4.97307 13.4989 12.497 12.5265C12.7754 12.4904 13.0034 12.2804 13.0034 11.9997C13.0034 11.7196 12.7754 11.5095 12.497 11.4735C4.97307 10.5011 4.16285 10.2655 3.45509 8.90437C2.74733 7.54377 0.174203 2.34697 0.174203 2.34697C-0.509566 0.978869 0.945941 -0.521793 2.34497 0.177516L23.1059 10.5536C24.298 11.1489 24.298 12.8511 23.1059 13.4469Z" fill="#1B1D22"/>
|
||||
</svg>
|
After Width: | Height: | Size: 620 B |
16
ElementX/Resources/Assets.xcassets/images/encryption/decryption-error.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "decryption-error.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.125 21.8999C12.0083 21.8999 11.9 21.8874 11.8 21.8624C11.7 21.8374 11.6 21.8082 11.5 21.7749C9.25 21.0249 7.45417 19.6416 6.1125 17.6249C4.77083 15.6082 4.06667 13.4332 4 11.0999V6.3749C4 5.95824 4.12083 5.58324 4.3625 5.2499C4.60417 4.91657 4.91667 4.6749 5.3 4.5249L11.3 2.2749C11.5333 2.19157 11.7667 2.1499 12 2.1499C12.2333 2.1499 12.4667 2.19157 12.7 2.2749L18.7 4.5249C19.0833 4.6749 19.3958 4.91657 19.6375 5.2499C19.8792 5.58324 20 5.95824 20 6.3749V11.0999C20 11.2666 19.9958 11.4332 19.9875 11.5999C19.9792 11.7666 19.9667 11.9332 19.95 12.0999C19.8 12.0666 19.6458 12.0416 19.4875 12.0249C19.3292 12.0082 19.1667 11.9999 19 11.9999C18.8167 11.9999 18.6417 12.0082 18.475 12.0249C18.3083 12.0416 18.1333 12.0666 17.95 12.0999C17.9667 11.9332 17.9792 11.7707 17.9875 11.6124C17.9958 11.4541 18 11.2832 18 11.0999V6.3749L12 4.1249L6 6.3749V11.0999C6 13.1166 6.56667 14.9499 7.7 16.5999C8.83333 18.2499 10.2667 19.3499 12 19.8999C12.35 19.7832 12.6917 19.6416 13.025 19.4749C13.3583 19.3082 13.6833 19.1166 14 18.8999V21.2499C13.8333 21.3332 13.6625 21.4082 13.4875 21.4749C13.3125 21.5416 13.075 21.6416 12.775 21.7749C12.675 21.8082 12.5708 21.8374 12.4625 21.8624C12.3542 21.8874 12.2417 21.8999 12.125 21.8999ZM16.85 21.9999C16.6167 21.9999 16.4167 21.9166 16.25 21.7499C16.0833 21.5832 16 21.3832 16 21.1499V17.8499C16 17.6166 16.0833 17.4166 16.25 17.2499C16.4167 17.0832 16.6167 16.9999 16.85 16.9999H17V15.9999C17 15.4499 17.1958 14.9791 17.5875 14.5874C17.9792 14.1957 18.45 13.9999 19 13.9999C19.55 13.9999 20.0208 14.1957 20.4125 14.5874C20.8042 14.9791 21 15.4499 21 15.9999V16.9999H21.15C21.3833 16.9999 21.5833 17.0832 21.75 17.2499C21.9167 17.4166 22 17.6166 22 17.8499V21.1499C22 21.3832 21.9167 21.5832 21.75 21.7499C21.5833 21.9166 21.3833 21.9999 21.15 21.9999H16.85ZM18 16.9999H20V15.9999C20 15.7166 19.9042 15.4791 19.7125 15.2874C19.5208 15.0957 19.2833 14.9999 19 14.9999C18.7167 14.9999 18.4792 15.0957 18.2875 15.2874C18.0958 15.4791 18 15.7166 18 15.9999V16.9999Z" fill="#1B1D22"/>
|
||||
</svg>
|
After Width: | Height: | Size: 2.1 KiB |
@ -1,12 +0,0 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "encryption_normal.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
@ -1,3 +0,0 @@
|
||||
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M6.09949 11.4627C6.06108 11.4727 6.02775 11.481 6 11.4876C5.97225 11.481 5.93892 11.4727 5.90051 11.4627C5.76801 11.4282 5.57572 11.3731 5.34366 11.2926C4.87791 11.1309 4.2608 10.8694 3.64749 10.4708C2.42721 9.67759 1.25 8.3665 1.25 6.2025V1.91207L6 0.521L10.75 1.91207V6.2025C10.75 8.3665 9.57279 9.67759 8.35251 10.4708C7.7392 10.8694 7.12209 11.1309 6.65634 11.2926C6.42428 11.3731 6.23199 11.4282 6.09949 11.4627Z" fill="#17191C" stroke="white"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 563 B |
@ -1,12 +0,0 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "encryption_trusted.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M6.09949 11.4627C6.06108 11.4727 6.02775 11.481 6 11.4876C5.97225 11.481 5.93892 11.4727 5.90051 11.4627C5.76801 11.4282 5.57572 11.3731 5.34366 11.2926C4.87791 11.1309 4.2608 10.8694 3.64749 10.4708C2.42721 9.67759 1.25 8.3665 1.25 6.2025V1.91207L6 0.521L10.75 1.91207V6.2025C10.75 8.3665 9.57279 9.67759 8.35251 10.4708C7.7392 10.8694 7.12209 11.1309 6.65634 11.2926C6.42428 11.3731 6.23199 11.4282 6.09949 11.4627Z" fill="#0DBD8B" stroke="white"/>
|
||||
<path d="M8.70785 3.4047C8.57285 3.2622 8.34785 3.2547 8.20535 3.3897L5.00285 6.3897L3.82535 5.5647C3.66785 5.4597 3.45035 5.4597 3.30035 5.5947C3.12035 5.7447 3.10535 6.0147 3.25535 6.1947L4.61285 7.7547C4.63535 7.7772 4.65785 7.8072 4.68785 7.8222C4.94285 8.0322 5.32535 7.9947 5.53535 7.7397L5.55785 7.7097L8.72285 3.8772C8.82785 3.7422 8.82785 3.5397 8.70785 3.4047Z" fill="white"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 950 B |
@ -1,12 +0,0 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "encryption_warning.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M6.09949 11.4627C6.06108 11.4727 6.02775 11.481 6 11.4876C5.97225 11.481 5.93892 11.4727 5.90051 11.4627C5.76801 11.4282 5.57572 11.3731 5.34366 11.2926C4.87791 11.1309 4.2608 10.8694 3.64749 10.4708C2.42721 9.67759 1.25 8.3665 1.25 6.2025V1.91207L6 0.521L10.75 1.91207V6.2025C10.75 8.3665 9.57279 9.67759 8.35251 10.4708C7.7392 10.8694 7.12209 11.1309 6.65634 11.2926C6.42428 11.3731 6.23199 11.4282 6.09949 11.4627Z" fill="#FF4B55" stroke="white"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M5.42634 4.03626C5.39822 3.71563 5.63447 3.43438 5.95509 3.41188C6.27009 3.38938 6.55134 3.62563 6.58509 3.94626V4.03626L6.40509 6.28626C6.38822 6.49438 6.21384 6.65188 6.00572 6.65188H5.97197C5.77509 6.63501 5.62322 6.48313 5.60634 6.28626L5.42634 4.03626ZM6.49439 7.75379C6.49439 8.02717 6.27278 8.24879 5.99939 8.24879C5.72601 8.24879 5.50439 8.02717 5.50439 7.75379C5.50439 7.48041 5.72601 7.25879 5.99939 7.25879C6.27278 7.25879 6.49439 7.48041 6.49439 7.75379Z" fill="white"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.1 KiB |
@ -10,6 +10,7 @@
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
16
ElementX/Resources/Assets.xcassets/images/home/compose.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "compose.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
3
ElementX/Resources/Assets.xcassets/images/home/compose.imageset/compose.svg
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M5 21.025C4.45 21.025 3.97917 20.8292 3.5875 20.4375C3.19583 20.0458 3 19.575 3 19.025V5.025C3 4.475 3.19583 4.00417 3.5875 3.6125C3.97917 3.22083 4.45 3.025 5 3.025H13.925L11.925 5.025H5V19.025H19V12.075L21 10.075V19.025C21 19.575 20.8042 20.0458 20.4125 20.4375C20.0208 20.8292 19.55 21.025 19 21.025H5ZM16.175 3.6L17.6 5L11 11.6V13.025H12.4L19.025 6.4L20.45 7.8L13.825 14.425C13.6417 14.6083 13.4292 14.7542 13.1875 14.8625C12.9458 14.9708 12.6917 15.025 12.425 15.025H10C9.71667 15.025 9.47917 14.9292 9.2875 14.7375C9.09583 14.5458 9 14.3083 9 14.025V11.6C9 11.3333 9.05 11.0792 9.15 10.8375C9.25 10.5958 9.39167 10.3833 9.575 10.2L16.175 3.6ZM20.45 7.8L16.175 3.6L18.675 1.1C19.075 0.7 19.5542 0.5 20.1125 0.5C20.6708 0.5 21.1417 0.7 21.525 1.1L22.925 2.525C23.3083 2.90833 23.5 3.375 23.5 3.925C23.5 4.475 23.3083 4.94167 22.925 5.325L20.45 7.8Z" fill="#1B1D22"/>
|
||||
</svg>
|
After Width: | Height: | Size: 983 B |
@ -0,0 +1,6 @@
|
||||
{
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
16
ElementX/Resources/Assets.xcassets/images/timeline/actions/add-reaction.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "add-reaction.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2C12.7167 2 13.4083 2.07083 14.075 2.2125C14.7417 2.35417 15.3833 2.55833 16 2.825V5.075C15.4167 4.74167 14.7875 4.47917 14.1125 4.2875C13.4375 4.09583 12.7333 4 12 4C9.78333 4 7.89583 4.77917 6.3375 6.3375C4.77917 7.89583 4 9.78333 4 12C4 14.2167 4.77917 16.1042 6.3375 17.6625C7.89583 19.2208 9.78333 20 12 20C14.2167 20 16.1042 19.2208 17.6625 17.6625C19.2208 16.1042 20 14.2167 20 12C20 11.4667 19.9458 10.95 19.8375 10.45C19.7292 9.95 19.5833 9.46667 19.4 9H21.55C21.7 9.48333 21.8125 9.97083 21.8875 10.4625C21.9625 10.9542 22 11.4667 22 12C22 13.3833 21.7375 14.6833 21.2125 15.9C20.6875 17.1167 19.975 18.175 19.075 19.075C18.175 19.975 17.1167 20.6875 15.9 21.2125C14.6833 21.7375 13.3833 22 12 22ZM20 5H19C18.7167 5 18.4792 4.90417 18.2875 4.7125C18.0958 4.52083 18 4.28333 18 4C18 3.71667 18.0958 3.47917 18.2875 3.2875C18.4792 3.09583 18.7167 3 19 3H20V2C20 1.71667 20.0958 1.47917 20.2875 1.2875C20.4792 1.09583 20.7167 1 21 1C21.2833 1 21.5208 1.09583 21.7125 1.2875C21.9042 1.47917 22 1.71667 22 2V3H23C23.2833 3 23.5208 3.09583 23.7125 3.2875C23.9042 3.47917 24 3.71667 24 4C24 4.28333 23.9042 4.52083 23.7125 4.7125C23.5208 4.90417 23.2833 5 23 5H22V6C22 6.28333 21.9042 6.52083 21.7125 6.7125C21.5208 6.90417 21.2833 7 21 7C20.7167 7 20.4792 6.90417 20.2875 6.7125C20.0958 6.52083 20 6.28333 20 6V5ZM15.5 11C15.9167 11 16.2708 10.8542 16.5625 10.5625C16.8542 10.2708 17 9.91667 17 9.5C17 9.08333 16.8542 8.72917 16.5625 8.4375C16.2708 8.14583 15.9167 8 15.5 8C15.0833 8 14.7292 8.14583 14.4375 8.4375C14.1458 8.72917 14 9.08333 14 9.5C14 9.91667 14.1458 10.2708 14.4375 10.5625C14.7292 10.8542 15.0833 11 15.5 11ZM8.5 11C8.91667 11 9.27083 10.8542 9.5625 10.5625C9.85417 10.2708 10 9.91667 10 9.5C10 9.08333 9.85417 8.72917 9.5625 8.4375C9.27083 8.14583 8.91667 8 8.5 8C8.08333 8 7.72917 8.14583 7.4375 8.4375C7.14583 8.72917 7 9.08333 7 9.5C7 9.91667 7.14583 10.2708 7.4375 10.5625C7.72917 10.8542 8.08333 11 8.5 11ZM12 17.5C12.9667 17.5 13.8583 17.2667 14.675 16.8C15.4917 16.3333 16.15 15.7 16.65 14.9C16.75 14.7 16.7417 14.5 16.625 14.3C16.5083 14.1 16.3333 14 16.1 14H7.9C7.66667 14 7.49167 14.1 7.375 14.3C7.25833 14.5 7.25 14.7 7.35 14.9C7.85 15.7 8.5125 16.3333 9.3375 16.8C10.1625 17.2667 11.05 17.5 12 17.5Z" fill="black"/>
|
||||
</svg>
|
After Width: | Height: | Size: 2.6 KiB |
16
ElementX/Resources/Assets.xcassets/images/timeline/actions/copy.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "copy.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
3
ElementX/Resources/Assets.xcassets/images/timeline/actions/copy.imageset/copy.svg
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M9.00012 18C8.45012 18 7.97929 17.8042 7.58762 17.4125C7.19596 17.0208 7.00012 16.55 7.00012 16V4C7.00012 3.45 7.19596 2.97917 7.58762 2.5875C7.97929 2.19583 8.45012 2 9.00012 2H18.0001C18.5501 2 19.021 2.19583 19.4126 2.5875C19.8043 2.97917 20.0001 3.45 20.0001 4V16C20.0001 16.55 19.8043 17.0208 19.4126 17.4125C19.021 17.8042 18.5501 18 18.0001 18H9.00012ZM9.00012 16H18.0001V4H9.00012V16ZM5.00012 22C4.45012 22 3.97929 21.8042 3.58762 21.4125C3.19596 21.0208 3.00012 20.55 3.00012 20V7C3.00012 6.71667 3.09596 6.47917 3.28762 6.2875C3.47929 6.09583 3.71679 6 4.00012 6C4.28346 6 4.52096 6.09583 4.71262 6.2875C4.90429 6.47917 5.00012 6.71667 5.00012 7V20H15.0001C15.2835 20 15.521 20.0958 15.7126 20.2875C15.9043 20.4792 16.0001 20.7167 16.0001 21C16.0001 21.2833 15.9043 21.5208 15.7126 21.7125C15.521 21.9042 15.2835 22 15.0001 22H5.00012Z" fill="black"/>
|
||||
</svg>
|
After Width: | Height: | Size: 974 B |
16
ElementX/Resources/Assets.xcassets/images/timeline/actions/edit-outline.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "edit-outline.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M5 19H6.4L15.025 10.375L13.625 8.975L5 17.6V19ZM19.3 8.925L15.05 4.725L16.45 3.325C16.8333 2.94167 17.3042 2.75 17.8625 2.75C18.4208 2.75 18.8917 2.94167 19.275 3.325L20.675 4.725C21.0583 5.10833 21.2583 5.57083 21.275 6.1125C21.2917 6.65417 21.1083 7.11667 20.725 7.5L19.3 8.925ZM4 21C3.71667 21 3.47917 20.9042 3.2875 20.7125C3.09583 20.5208 3 20.2833 3 20V17.175C3 17.0417 3.025 16.9125 3.075 16.7875C3.125 16.6625 3.2 16.55 3.3 16.45L13.6 6.15L17.85 10.4L7.55 20.7C7.45 20.8 7.3375 20.875 7.2125 20.925C7.0875 20.975 6.95833 21 6.825 21H4ZM14.325 9.675L13.625 8.975L15.025 10.375L14.325 9.675Z" fill="#1B1D22"/>
|
||||
</svg>
|
After Width: | Height: | Size: 728 B |
16
ElementX/Resources/Assets.xcassets/images/timeline/actions/forward.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "forward.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
3
ElementX/Resources/Assets.xcassets/images/timeline/actions/forward.imageset/forward.svg
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M4 19C3.71667 19 3.47917 18.9042 3.2875 18.7125C3.09583 18.5209 3 18.2834 3 18V15C3 13.6167 3.4875 12.4375 4.4625 11.4625C5.4375 10.4875 6.61667 10 8 10H17.2L14.275 7.07505C14.0917 6.89172 14 6.66672 14 6.40005C14 6.13338 14.1 5.90005 14.3 5.70005C14.4833 5.51672 14.7167 5.42505 15 5.42505C15.2833 5.42505 15.5167 5.51672 15.7 5.70005L20.3 10.3C20.4 10.4 20.4708 10.5084 20.5125 10.625C20.5542 10.7417 20.575 10.8667 20.575 11C20.575 11.1334 20.5542 11.2584 20.5125 11.375C20.4708 11.4917 20.4 11.6 20.3 11.7L15.675 16.325C15.4917 16.5084 15.2667 16.6 15 16.6C14.7333 16.6 14.5 16.5 14.3 16.3C14.1167 16.1167 14.025 15.8834 14.025 15.6C14.025 15.3167 14.1167 15.0834 14.3 14.9L17.2 12H8C7.16667 12 6.45833 12.2917 5.875 12.875C5.29167 13.4584 5 14.1667 5 15V18C5 18.2834 4.90417 18.5209 4.7125 18.7125C4.52083 18.9042 4.28333 19 4 19Z" fill="black"/>
|
||||
</svg>
|
After Width: | Height: | Size: 964 B |
16
ElementX/Resources/Assets.xcassets/images/timeline/actions/reply.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "reply.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
3
ElementX/Resources/Assets.xcassets/images/timeline/actions/reply.imageset/reply.svg
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20 19C19.7167 19 19.4794 18.904 19.288 18.712C19.096 18.5207 19 18.2834 19 18V15C19 14.1667 18.7084 13.4584 18.125 12.875C17.5417 12.2917 16.8334 12 16 12H6.80005L9.72505 14.925C9.90838 15.1084 10 15.3334 10 15.6C10 15.8667 9.90005 16.1 9.70005 16.3C9.51672 16.4834 9.28338 16.575 9.00005 16.575C8.71672 16.575 8.48338 16.4834 8.30005 16.3L3.70005 11.7C3.60005 11.6 3.52938 11.4917 3.48805 11.375C3.44605 11.2584 3.42505 11.1334 3.42505 11C3.42505 10.8667 3.44605 10.7417 3.48805 10.625C3.52938 10.5084 3.60005 10.4 3.70005 10.3L8.32505 5.67502C8.50838 5.49169 8.73338 5.40002 9.00005 5.40002C9.26672 5.40002 9.50005 5.50002 9.70005 5.70002C9.88338 5.88336 9.97505 6.11669 9.97505 6.40002C9.97505 6.68336 9.88338 6.91669 9.70005 7.10002L6.80005 10H16C17.3834 10 18.5627 10.4874 19.538 11.462C20.5127 12.4374 21 13.6167 21 15V18C21 18.2834 20.904 18.5207 20.712 18.712C20.5207 18.904 20.2834 19 20 19Z" fill="#1B1D22"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.0 KiB |
16
ElementX/Resources/Assets.xcassets/images/timeline/actions/view-source.imageset/Contents.json
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "view-source.svg",
|
||||
"idiom" : "universal"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
},
|
||||
"properties" : {
|
||||
"preserves-vector-representation" : true,
|
||||
"template-rendering-intent" : "template"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M8.825 12L10.3 10.525C10.5 10.325 10.6 10.0917 10.6 9.825C10.6 9.55833 10.5 9.325 10.3 9.125C10.1 8.925 9.8625 8.825 9.5875 8.825C9.3125 8.825 9.075 8.925 8.875 9.125L6.7 11.3C6.6 11.4 6.52917 11.5083 6.4875 11.625C6.44583 11.7417 6.425 11.8667 6.425 12C6.425 12.1333 6.44583 12.2583 6.4875 12.375C6.52917 12.4917 6.6 12.6 6.7 12.7L8.875 14.875C9.075 15.075 9.3125 15.175 9.5875 15.175C9.8625 15.175 10.1 15.075 10.3 14.875C10.5 14.675 10.6 14.4417 10.6 14.175C10.6 13.9083 10.5 13.675 10.3 13.475L8.825 12ZM15.175 12L13.7 13.475C13.5 13.675 13.4 13.9083 13.4 14.175C13.4 14.4417 13.5 14.675 13.7 14.875C13.9 15.075 14.1375 15.175 14.4125 15.175C14.6875 15.175 14.925 15.075 15.125 14.875L17.3 12.7C17.4 12.6 17.4708 12.4917 17.5125 12.375C17.5542 12.2583 17.575 12.1333 17.575 12C17.575 11.8667 17.5542 11.7417 17.5125 11.625C17.4708 11.5083 17.4 11.4 17.3 11.3L15.125 9.125C15.025 9.025 14.9125 8.95 14.7875 8.9C14.6625 8.85 14.5375 8.825 14.4125 8.825C14.2875 8.825 14.1625 8.85 14.0375 8.9C13.9125 8.95 13.8 9.025 13.7 9.125C13.5 9.325 13.4 9.55833 13.4 9.825C13.4 10.0917 13.5 10.325 13.7 10.525L15.175 12ZM5 21C4.45 21 3.97917 20.8042 3.5875 20.4125C3.19583 20.0208 3 19.55 3 19V5C3 4.45 3.19583 3.97917 3.5875 3.5875C3.97917 3.19583 4.45 3 5 3H19C19.55 3 20.0208 3.19583 20.4125 3.5875C20.8042 3.97917 21 4.45 21 5V19C21 19.55 20.8042 20.0208 20.4125 20.4125C20.0208 20.8042 19.55 21 19 21H5ZM5 19H19V5H5V19Z" fill="#1B1D22"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.5 KiB |
@ -1,3 +0,0 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M15.404 8.96458L1.56331 15.8816C0.630627 16.3478 -0.33971 15.3477 0.116135 14.4353C0.116135 14.4353 1.83155 10.9711 2.30339 10.0637C2.77523 9.15633 3.31538 8.99926 8.33135 8.35098C8.51695 8.32697 8.6689 8.1869 8.6689 7.99982C8.6689 7.81307 8.51695 7.67301 8.33135 7.649C3.31538 7.00071 2.77523 6.84364 2.30339 5.93624C1.83155 5.02918 0.116135 1.56465 0.116135 1.56465C-0.33971 0.65258 0.630627 -0.347862 1.56331 0.118344L15.404 7.03573C16.1987 7.43257 16.1987 8.5674 15.404 8.96458Z" fill="white"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 611 B |
@ -1,116 +0,0 @@
|
||||
%PDF-1.7
|
||||
|
||||
1 0 obj
|
||||
<< >>
|
||||
endobj
|
||||
|
||||
2 0 obj
|
||||
<< /Length 3 0 R >>
|
||||
stream
|
||||
/DeviceRGB CS
|
||||
/DeviceRGB cs
|
||||
q
|
||||
1.000000 0.000000 -0.000000 1.000000 1.333252 1.333374 cm
|
||||
0.396078 0.427451 0.466667 scn
|
||||
12.000000 14.000000 m
|
||||
11.631810 14.000000 11.333334 13.701523 11.333334 13.333333 c
|
||||
11.333334 12.000000 l
|
||||
10.000000 12.000000 l
|
||||
9.631810 12.000000 9.333334 11.701523 9.333334 11.333334 c
|
||||
9.333334 10.965144 9.631811 10.666667 10.000001 10.666667 c
|
||||
11.333334 10.666667 l
|
||||
11.333334 9.333332 l
|
||||
11.333334 8.965143 11.631810 8.666666 12.000000 8.666666 c
|
||||
12.368190 8.666666 12.666666 8.965143 12.666666 9.333333 c
|
||||
12.666666 10.666667 l
|
||||
14.000000 10.666667 l
|
||||
14.368190 10.666667 14.666666 10.965143 14.666666 11.333334 c
|
||||
14.666666 11.701523 14.368189 12.000000 13.999999 12.000000 c
|
||||
12.666666 12.000000 l
|
||||
12.666666 13.333334 l
|
||||
12.666666 13.701524 12.368190 14.000000 12.000000 14.000000 c
|
||||
h
|
||||
3.333333 8.333333 m
|
||||
3.333333 8.886666 3.780000 9.333333 4.333333 9.333333 c
|
||||
4.886666 9.333333 5.333333 8.886666 5.333333 8.333333 c
|
||||
5.333333 7.780000 4.886666 7.333333 4.333333 7.333333 c
|
||||
3.780000 7.333333 3.333333 7.780000 3.333333 8.333333 c
|
||||
h
|
||||
9.000000 7.333333 m
|
||||
9.553333 7.333333 9.999999 7.780000 9.999999 8.333333 c
|
||||
9.999999 8.886666 9.553333 9.333333 9.000000 9.333333 c
|
||||
8.446667 9.333333 8.000000 8.886666 8.000000 8.333333 c
|
||||
8.000000 7.780000 8.446667 7.333333 9.000000 7.333333 c
|
||||
h
|
||||
6.666677 3.000000 m
|
||||
8.220009 3.000000 9.540010 3.973333 10.073343 5.333334 c
|
||||
3.260010 5.333334 l
|
||||
3.793343 3.973333 5.113343 3.000000 6.666677 3.000000 c
|
||||
h
|
||||
1.333333 6.666667 m
|
||||
1.333333 9.612185 3.721148 12.000000 6.666667 12.000000 c
|
||||
7.073877 12.000000 7.469647 11.954485 7.849466 11.868532 c
|
||||
8.208576 11.787266 8.565571 12.012502 8.646837 12.371612 c
|
||||
8.728104 12.730721 8.502867 13.087715 8.143758 13.168982 c
|
||||
7.668022 13.276641 7.173560 13.333333 6.666667 13.333333 c
|
||||
2.984768 13.333333 0.000000 10.348565 0.000000 6.666667 c
|
||||
0.000000 2.984768 2.984768 0.000000 6.666667 0.000000 c
|
||||
10.348566 0.000000 13.333334 2.984768 13.333334 6.666667 c
|
||||
13.333334 6.808108 13.328918 6.948606 13.320211 7.088020 c
|
||||
13.297259 7.455494 12.980757 7.734784 12.613283 7.711831 c
|
||||
12.245810 7.688879 11.966518 7.372376 11.989471 7.004903 c
|
||||
11.996452 6.893137 12.000000 6.780360 12.000000 6.666667 c
|
||||
12.000000 3.721148 9.612185 1.333333 6.666667 1.333333 c
|
||||
3.721148 1.333333 1.333333 3.721148 1.333333 6.666667 c
|
||||
h
|
||||
f*
|
||||
n
|
||||
Q
|
||||
|
||||
endstream
|
||||
endobj
|
||||
|
||||
3 0 obj
|
||||
2295
|
||||
endobj
|
||||
|
||||
4 0 obj
|
||||
<< /Annots []
|
||||
/Type /Page
|
||||
/MediaBox [ 0.000000 0.000000 16.000000 16.000000 ]
|
||||
/Resources 1 0 R
|
||||
/Contents 2 0 R
|
||||
/Parent 5 0 R
|
||||
>>
|
||||
endobj
|
||||
|
||||
5 0 obj
|
||||
<< /Kids [ 4 0 R ]
|
||||
/Count 1
|
||||
/Type /Pages
|
||||
>>
|
||||
endobj
|
||||
|
||||
6 0 obj
|
||||
<< /Pages 5 0 R
|
||||
/Type /Catalog
|
||||
>>
|
||||
endobj
|
||||
|
||||
xref
|
||||
0 7
|
||||
0000000000 65535 f
|
||||
0000000010 00000 n
|
||||
0000000034 00000 n
|
||||
0000002385 00000 n
|
||||
0000002408 00000 n
|
||||
0000002581 00000 n
|
||||
0000002655 00000 n
|
||||
trailer
|
||||
<< /ID [ (some) (id) ]
|
||||
/Root 6 0 R
|
||||
/Size 7
|
||||
>>
|
||||
startxref
|
||||
2714
|
||||
%%EOF
|
@ -33,35 +33,45 @@ internal enum Asset {
|
||||
internal static let appLogo = ImageAsset(name: "images/app-logo")
|
||||
internal static let serverSelectionIcon = ImageAsset(name: "images/server-selection-icon")
|
||||
internal static let closeCircle = ImageAsset(name: "images/close-circle")
|
||||
internal static let addLocation = ImageAsset(name: "images/add-location")
|
||||
internal static let attachment = ImageAsset(name: "images/attachment")
|
||||
internal static let photosLibrary = ImageAsset(name: "images/photos-library")
|
||||
internal static let takePhoto = ImageAsset(name: "images/take-photo")
|
||||
internal static let textFormatting = ImageAsset(name: "images/text-formatting")
|
||||
internal static let bold = ImageAsset(name: "images/bold")
|
||||
internal static let bulletList = ImageAsset(name: "images/bullet-list")
|
||||
internal static let closeRte = ImageAsset(name: "images/close-rte")
|
||||
internal static let codeBlock = ImageAsset(name: "images/code-block")
|
||||
internal static let composerAttachment = ImageAsset(name: "images/composer-attachment")
|
||||
internal static let editing = ImageAsset(name: "images/editing")
|
||||
internal static let indent = ImageAsset(name: "images/indent")
|
||||
internal static let inlineCode = ImageAsset(name: "images/inline-code")
|
||||
internal static let italic = ImageAsset(name: "images/italic")
|
||||
internal static let link = ImageAsset(name: "images/link")
|
||||
internal static let numberedList = ImageAsset(name: "images/numbered-list")
|
||||
internal static let quote = ImageAsset(name: "images/quote")
|
||||
internal static let sendMessage = ImageAsset(name: "images/send-message")
|
||||
internal static let strikethrough = ImageAsset(name: "images/strikethrough")
|
||||
internal static let textFormat = ImageAsset(name: "images/text-format")
|
||||
internal static let underline = ImageAsset(name: "images/underline")
|
||||
internal static let unindent = ImageAsset(name: "images/unindent")
|
||||
internal static let encryptionNormal = ImageAsset(name: "images/encryption-normal")
|
||||
internal static let encryptionTrusted = ImageAsset(name: "images/encryption-trusted")
|
||||
internal static let encryptionWarning = ImageAsset(name: "images/encryption-warning")
|
||||
internal static let decryptionError = ImageAsset(name: "images/decryption-error")
|
||||
internal static let endedPoll = ImageAsset(name: "images/ended-poll")
|
||||
internal static let compose = ImageAsset(name: "images/compose")
|
||||
internal static let launchBackground = ImageAsset(name: "images/launch-background")
|
||||
internal static let locationMarker = ImageAsset(name: "images/location-marker")
|
||||
internal static let locationPin = ImageAsset(name: "images/location-pin")
|
||||
internal static let locationPointerFull = ImageAsset(name: "images/location-pointer-full")
|
||||
internal static let locationPointer = ImageAsset(name: "images/location-pointer")
|
||||
internal static let closeRte = ImageAsset(name: "images/close-rte")
|
||||
internal static let composerAttachment = ImageAsset(name: "images/composer-attachment")
|
||||
internal static let timelineComposerSendMessage = ImageAsset(name: "images/timeline-composer-send-message")
|
||||
internal static let addReaction = ImageAsset(name: "images/add-reaction")
|
||||
internal static let copy = ImageAsset(name: "images/copy")
|
||||
internal static let editOutline = ImageAsset(name: "images/edit-outline")
|
||||
internal static let forward = ImageAsset(name: "images/forward")
|
||||
internal static let reply = ImageAsset(name: "images/reply")
|
||||
internal static let viewSource = ImageAsset(name: "images/view-source")
|
||||
internal static let timelineEndedPoll = ImageAsset(name: "images/timeline-ended-poll")
|
||||
internal static let timelinePollAttachment = ImageAsset(name: "images/timeline-poll-attachment")
|
||||
internal static let timelinePoll = ImageAsset(name: "images/timeline-poll")
|
||||
internal static let timelineReactionAddMore = ImageAsset(name: "images/timeline-reaction-add-more")
|
||||
internal static let waitingGradient = ImageAsset(name: "images/waiting-gradient")
|
||||
}
|
||||
}
|
||||
|
54
ElementX/Sources/Other/Extensions/Label.swift
Normal file
@ -0,0 +1,54 @@
|
||||
//
|
||||
// Copyright 2022 New Vector Ltd
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
import Compound
|
||||
import SwiftUI
|
||||
|
||||
extension Label {
|
||||
/// Creates a label using a local asset as a Compound icon and a title generated from a string.
|
||||
/// The icon size will be 24pt, scaling relative to the `bodyLG` with Dynamic Type.
|
||||
/// - Parameters:
|
||||
/// - title: A string used as the label’s title.
|
||||
/// - iconAsset: The asset to use as the custom Compound icon.
|
||||
///
|
||||
/// The supplied asset should have a square frame or it may end up distorted.
|
||||
init(_ title: some StringProtocol, iconAsset: ImageAsset) where Title == Text, Icon == CompoundIcon {
|
||||
self.init {
|
||||
Text(title)
|
||||
} icon: {
|
||||
CompoundIcon(customImage: iconAsset.swiftUIImage)
|
||||
}
|
||||
}
|
||||
|
||||
/// Creates a label using a local asset as a Compound icon and a title generated from a string.
|
||||
/// - Parameters:
|
||||
/// - title: A string used as the label’s title.
|
||||
/// - iconAsset: The asset to use as the custom Compound icon.
|
||||
/// - size: The size of the icon.
|
||||
/// - font: The font that the icon will scale relative to for Dynamic Type.
|
||||
///
|
||||
/// The supplied asset should have a square frame or it may end up distorted.
|
||||
init(_ title: some StringProtocol,
|
||||
iconAsset: ImageAsset,
|
||||
iconSize: CompoundIcon.Size,
|
||||
relativeTo font: Font) where Title == Text, Icon == CompoundIcon {
|
||||
self.init {
|
||||
Text(title)
|
||||
} icon: {
|
||||
CompoundIcon(customImage: iconAsset.swiftUIImage, size: iconSize, relativeTo: font)
|
||||
}
|
||||
}
|
||||
}
|
@ -16,21 +16,23 @@
|
||||
|
||||
import SwiftUI
|
||||
|
||||
struct FixedIconSizeLabelStyle: LabelStyle {
|
||||
@ScaledMetric private var iconSize: CGFloat
|
||||
extension LabelStyle where Self == MenuSheetLabelStyle {
|
||||
/// A label style for labels that are within a menu that is being presented as a sheet.
|
||||
static var menuSheet: Self { MenuSheetLabelStyle() }
|
||||
}
|
||||
|
||||
init(iconSize: Double = 24.0) {
|
||||
_iconSize = .init(wrappedValue: iconSize)
|
||||
}
|
||||
|
||||
/// The style used for labels that are part of a menu that's presented as
|
||||
/// a sheet as `TimelineItemMenu` and `RoomAttachmentPicker`.
|
||||
struct MenuSheetLabelStyle: LabelStyle {
|
||||
var spacing: CGFloat = 16
|
||||
|
||||
func makeBody(configuration: Configuration) -> some View {
|
||||
HStack(spacing: spacing) {
|
||||
configuration
|
||||
.icon
|
||||
.frame(width: iconSize, height: iconSize)
|
||||
configuration.icon
|
||||
configuration.title
|
||||
}
|
||||
.multilineTextAlignment(.leading)
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.padding(16)
|
||||
}
|
||||
}
|
@ -14,6 +14,7 @@
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
import Compound
|
||||
import SwiftUI
|
||||
import WysiwygComposer
|
||||
|
||||
@ -82,6 +83,7 @@ struct ComposerToolbar: View {
|
||||
.frame(width: closeRTEButtonSize, height: closeRTEButtonSize)
|
||||
.padding(7)
|
||||
}
|
||||
.accessibilityLabel(L10n.actionClose)
|
||||
.accessibilityIdentifier(A11yIdentifiers.roomScreen.composerToolbar.closeFormattingOptions)
|
||||
}
|
||||
|
||||
@ -152,12 +154,11 @@ struct ComposerToolbar: View {
|
||||
private var submitButtonImage: some View {
|
||||
// ZStack with opacity so the button size is consistent.
|
||||
ZStack {
|
||||
Image(systemName: "checkmark")
|
||||
CompoundIcon(\.check)
|
||||
.opacity(context.viewState.composerMode.isEdit ? 1 : 0)
|
||||
.fontWeight(.medium)
|
||||
.accessibilityLabel(L10n.actionConfirm)
|
||||
.accessibilityHidden(!context.viewState.composerMode.isEdit)
|
||||
Image(asset: Asset.Images.timelineComposerSendMessage)
|
||||
Image(asset: Asset.Images.sendMessage)
|
||||
.resizable()
|
||||
.frame(width: sendButtonIconSize, height: sendButtonIconSize)
|
||||
.padding(EdgeInsets(top: 10, leading: 11, bottom: 10, trailing: 9))
|
||||
|
@ -14,6 +14,7 @@
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
import Compound
|
||||
import SwiftUI
|
||||
import WysiwygComposer
|
||||
|
||||
@ -132,11 +133,11 @@ private struct MessageComposerReplyHeader: View {
|
||||
.cornerRadius(13.0)
|
||||
.overlay(alignment: .topTrailing) {
|
||||
Button(action: action) {
|
||||
Image(systemName: "xmark")
|
||||
.font(.compound.bodySM.weight(.medium))
|
||||
CompoundIcon(\.close, size: .small, relativeTo: .compound.bodySMSemibold)
|
||||
.foregroundColor(.compound.iconTertiary)
|
||||
.padding(8.0)
|
||||
.padding(4.0)
|
||||
}
|
||||
.accessibilityLabel(L10n.actionClose)
|
||||
}
|
||||
.padding(.vertical, 8.0)
|
||||
.padding(.horizontal, -4.0)
|
||||
@ -148,26 +149,29 @@ private struct MessageComposerEditHeader: View {
|
||||
|
||||
var body: some View {
|
||||
HStack(alignment: .center) {
|
||||
Label(L10n.commonEditing, systemImage: "pencil.line")
|
||||
Label(L10n.commonEditing,
|
||||
iconAsset: Asset.Images.editing,
|
||||
iconSize: .xSmall,
|
||||
relativeTo: .compound.bodySMSemibold)
|
||||
.labelStyle(MessageComposerHeaderLabelStyle())
|
||||
Spacer()
|
||||
Button(action: action) {
|
||||
Image(systemName: "xmark")
|
||||
.font(.compound.bodySM.weight(.medium))
|
||||
CompoundIcon(\.close, size: .small, relativeTo: .compound.bodySMSemibold)
|
||||
.foregroundColor(.compound.iconTertiary)
|
||||
.padding(EdgeInsets(top: 10, leading: 12, bottom: 12, trailing: 14))
|
||||
.padding([.leading, .vertical], 6.0)
|
||||
}
|
||||
.accessibilityLabel(L10n.actionClose)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private struct MessageComposerHeaderLabelStyle: LabelStyle {
|
||||
func makeBody(configuration: Configuration) -> some View {
|
||||
HStack(alignment: .firstTextBaseline, spacing: 5) {
|
||||
HStack(alignment: .center, spacing: 4) {
|
||||
configuration.icon
|
||||
configuration.title
|
||||
}
|
||||
.font(.compound.bodySM)
|
||||
.font(.compound.bodySMSemibold)
|
||||
.foregroundColor(.compound.textSecondary)
|
||||
.lineLimit(1)
|
||||
}
|
||||
|
@ -14,6 +14,7 @@
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
import Compound
|
||||
import SwiftUI
|
||||
import WysiwygComposer
|
||||
|
||||
@ -35,6 +36,7 @@ struct RoomAttachmentPicker: View {
|
||||
.foregroundColor(.compound.textActionPrimary)
|
||||
.padding(7)
|
||||
}
|
||||
.accessibilityLabel(L10n.actionAddToTimeline)
|
||||
.accessibilityIdentifier(A11yIdentifiers.roomScreen.composerToolbar.openComposeOptions)
|
||||
.popover(isPresented: $context.showAttachmentPopover) {
|
||||
VStack(alignment: .leading, spacing: 0.0) {
|
||||
@ -42,7 +44,8 @@ struct RoomAttachmentPicker: View {
|
||||
context.showAttachmentPopover = false
|
||||
context.send(viewAction: .displayMediaPicker)
|
||||
} label: {
|
||||
PickerLabel(title: L10n.screenRoomAttachmentSourceGallery, icon: Image(systemName: "photo.fill"))
|
||||
Label(L10n.screenRoomAttachmentSourceGallery, iconAsset: Asset.Images.photosLibrary)
|
||||
.labelStyle(.menuSheet)
|
||||
}
|
||||
.accessibilityIdentifier(A11yIdentifiers.roomScreen.attachmentPickerPhotoLibrary)
|
||||
|
||||
@ -50,7 +53,8 @@ struct RoomAttachmentPicker: View {
|
||||
context.showAttachmentPopover = false
|
||||
context.send(viewAction: .displayDocumentPicker)
|
||||
} label: {
|
||||
PickerLabel(title: L10n.screenRoomAttachmentSourceFiles, icon: Image(systemName: "paperclip"))
|
||||
Label(L10n.screenRoomAttachmentSourceFiles, iconAsset: Asset.Images.attachment)
|
||||
.labelStyle(.menuSheet)
|
||||
}
|
||||
.accessibilityIdentifier(A11yIdentifiers.roomScreen.attachmentPickerDocuments)
|
||||
|
||||
@ -58,7 +62,8 @@ struct RoomAttachmentPicker: View {
|
||||
context.showAttachmentPopover = false
|
||||
context.send(viewAction: .displayCameraPicker)
|
||||
} label: {
|
||||
PickerLabel(title: L10n.screenRoomAttachmentSourceCamera, icon: Image(systemName: "camera.fill"))
|
||||
Label(L10n.screenRoomAttachmentSourceCamera, iconAsset: Asset.Images.takePhoto)
|
||||
.labelStyle(.menuSheet)
|
||||
}
|
||||
.accessibilityIdentifier(A11yIdentifiers.roomScreen.attachmentPickerCamera)
|
||||
|
||||
@ -66,7 +71,8 @@ struct RoomAttachmentPicker: View {
|
||||
context.showAttachmentPopover = false
|
||||
context.send(viewAction: .displayLocationPicker)
|
||||
} label: {
|
||||
PickerLabel(title: L10n.screenRoomAttachmentSourceLocation, icon: Image(asset: Asset.Images.locationPin))
|
||||
Label(L10n.screenRoomAttachmentSourceLocation, iconAsset: Asset.Images.addLocation)
|
||||
.labelStyle(.menuSheet)
|
||||
}
|
||||
.accessibilityIdentifier(A11yIdentifiers.roomScreen.attachmentPickerLocation)
|
||||
|
||||
@ -74,7 +80,8 @@ struct RoomAttachmentPicker: View {
|
||||
context.showAttachmentPopover = false
|
||||
context.send(viewAction: .displayPollForm)
|
||||
} label: {
|
||||
PickerLabel(title: L10n.screenRoomAttachmentSourcePoll, icon: Image(asset: Asset.Images.timelinePollAttachment))
|
||||
Label(L10n.screenRoomAttachmentSourcePoll, icon: \.polls)
|
||||
.labelStyle(.menuSheet)
|
||||
}
|
||||
.accessibilityIdentifier(A11yIdentifiers.roomScreen.attachmentPickerPoll)
|
||||
|
||||
@ -83,7 +90,8 @@ struct RoomAttachmentPicker: View {
|
||||
context.showAttachmentPopover = false
|
||||
context.send(viewAction: .enableTextFormatting)
|
||||
} label: {
|
||||
PickerLabel(title: L10n.screenRoomAttachmentTextFormatting, icon: Image(asset: Asset.Images.textFormat))
|
||||
Label(L10n.screenRoomAttachmentTextFormatting, iconAsset: Asset.Images.textFormat)
|
||||
.labelStyle(.menuSheet)
|
||||
}
|
||||
.accessibilityIdentifier(A11yIdentifiers.roomScreen.attachmentPickerTextFormatting)
|
||||
}
|
||||
@ -104,30 +112,6 @@ struct RoomAttachmentPicker: View {
|
||||
.presentationDragIndicator(.visible)
|
||||
}
|
||||
}
|
||||
|
||||
private struct PickerLabel: View {
|
||||
let title: String
|
||||
let icon: Image
|
||||
|
||||
init(title: String, icon: Image) {
|
||||
self.title = title
|
||||
self.icon = icon
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
Label {
|
||||
Text(title)
|
||||
} icon: {
|
||||
icon
|
||||
.resizable()
|
||||
.scaledToFit()
|
||||
}
|
||||
.labelStyle(FixedIconSizeLabelStyle(iconSize: 20))
|
||||
.multilineTextAlignment(.leading)
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.padding(16)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct RoomAttachmentPicker_Previews: PreviewProvider, TestablePreview {
|
||||
|
@ -141,11 +141,11 @@ private struct CreatePollOptionView: View {
|
||||
if editMode?.wrappedValue == .active {
|
||||
Button(action: deleteAction) {
|
||||
CompoundIcon(\.delete)
|
||||
.font(.system(size: 24))
|
||||
.foregroundColor(.compound.iconCriticalPrimary)
|
||||
}
|
||||
.disabled(!canDeleteItem)
|
||||
.buttonStyle(PlainButtonStyle())
|
||||
.accessibilityLabel(L10n.actionRemove)
|
||||
}
|
||||
TextField(text: $text) {
|
||||
Text(placeholder)
|
||||
|
@ -261,9 +261,9 @@ struct HomeScreen: View {
|
||||
Button {
|
||||
context.send(viewAction: .startChat)
|
||||
} label: {
|
||||
Image(systemName: "square.and.pencil")
|
||||
.fontWeight(.semibold)
|
||||
CompoundIcon(customImage: Asset.Images.compose.swiftUIImage)
|
||||
}
|
||||
.accessibilityLabel(L10n.actionStartChat)
|
||||
.accessibilityIdentifier(A11yIdentifiers.homeScreen.startChat)
|
||||
}
|
||||
|
||||
|
@ -36,7 +36,7 @@ struct HomeScreenEmptyStateView: View {
|
||||
.padding(.bottom, 12)
|
||||
|
||||
Button { context.send(viewAction: .startChat) } label: {
|
||||
Label(L10n.actionStartChat, systemImage: "square.and.pencil")
|
||||
Label(L10n.actionStartChat, iconAsset: Asset.Images.compose)
|
||||
.font(.compound.bodyLGSemibold)
|
||||
.foregroundColor(.compound.textOnSolidPrimary)
|
||||
.padding(.vertical, 6)
|
||||
|
@ -143,12 +143,10 @@ struct HomeScreenRoomCell: View {
|
||||
case .none, .allMessages:
|
||||
EmptyView()
|
||||
case .mentionsAndKeywordsOnly:
|
||||
CompoundIcon(\.mention)
|
||||
.font(.system(size: 15))
|
||||
CompoundIcon(\.mention, size: .custom(15), relativeTo: .compound.bodyMD)
|
||||
.accessibilityLabel(L10n.a11yNotificationsMentionsOnly)
|
||||
case .mute:
|
||||
CompoundIcon(\.notificationsSolidOff)
|
||||
.font(.system(size: 15))
|
||||
CompoundIcon(\.notificationsSolidOff, size: .custom(15), relativeTo: .compound.bodyMD)
|
||||
.accessibilityLabel(L10n.a11yNotificationsMuted)
|
||||
}
|
||||
}
|
||||
|
@ -25,8 +25,7 @@ struct ThreadDecorator: View {
|
||||
.foregroundColor(.compound.textPrimary)
|
||||
.font(.compound.bodyXS)
|
||||
} icon: {
|
||||
CompoundIcon(\.threads)
|
||||
.font(.system(size: 16))
|
||||
CompoundIcon(\.threads, size: .xSmall, relativeTo: .compound.bodyXS)
|
||||
.foregroundColor(.compound.iconSecondary)
|
||||
}
|
||||
.labelStyle(.custom(spacing: 4))
|
||||
|
@ -209,7 +209,7 @@ struct TimelineItemBubbledStylerView<Content: View>: View {
|
||||
}
|
||||
|
||||
if timelineItem.hasFailedToSend {
|
||||
Image(systemName: "exclamationmark.circle.fill")
|
||||
CompoundIcon(\.error, size: .xSmall, relativeTo: .compound.bodyXS)
|
||||
}
|
||||
}
|
||||
.font(.compound.bodyXS)
|
||||
|
@ -14,6 +14,7 @@
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
import Compound
|
||||
import SwiftUI
|
||||
|
||||
struct TimelineItemStatusView: View {
|
||||
@ -50,12 +51,10 @@ struct TimelineItemStatusView: View {
|
||||
TimelineDeliveryStatusView(deliveryStatus: .sent)
|
||||
}
|
||||
case .sendingFailed:
|
||||
// The bubbles handle the failure internally
|
||||
// Bubbles handle the failure internally, but plain items don't.
|
||||
if style == .plain {
|
||||
Image(systemName: "exclamationmark.circle.fill")
|
||||
.resizable()
|
||||
CompoundIcon(\.error, size: .xSmall, relativeTo: .compound.bodyMD)
|
||||
.foregroundColor(.compound.iconCriticalPrimary)
|
||||
.frame(width: 16, height: 16)
|
||||
.onTapGesture {
|
||||
context.sendFailedConfirmationDialogInfo = .init(itemID: timelineItem.id)
|
||||
}
|
||||
|
@ -156,7 +156,7 @@ struct TimelineReactionAddMoreButtonLabel: View {
|
||||
|
||||
var body: some View {
|
||||
TimelineReactionButtonLabel {
|
||||
Image(asset: Asset.Images.timelineReactionAddMore)
|
||||
Image(asset: Asset.Images.addReaction)
|
||||
.resizable()
|
||||
.frame(width: addMoreButtonIconSize, height: addMoreButtonIconSize)
|
||||
// Vertical sizing is done by the layout so that the add more button
|
||||
|
@ -14,6 +14,7 @@
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
import Compound
|
||||
import SwiftUI
|
||||
|
||||
/// The item shown when all previous items are un-decryptable due to
|
||||
@ -27,7 +28,7 @@ struct EncryptedHistoryRoomTimelineView: View {
|
||||
.font(.compound.bodyMDSemibold)
|
||||
.foregroundColor(.compound.textInfoPrimary)
|
||||
} icon: {
|
||||
Image(systemName: "info.circle.fill")
|
||||
CompoundIcon(\.info, size: .small, relativeTo: .compound.bodyMDSemibold)
|
||||
.foregroundColor(.compound.iconInfoPrimary)
|
||||
}
|
||||
.labelStyle(EncryptedHistoryLabelStyle())
|
||||
@ -46,7 +47,7 @@ struct EncryptedHistoryRoomTimelineView: View {
|
||||
|
||||
private struct EncryptedHistoryLabelStyle: LabelStyle {
|
||||
func makeBody(configuration: Configuration) -> some View {
|
||||
HStack(alignment: .firstTextBaseline, spacing: 16) {
|
||||
HStack(alignment: .top, spacing: 16) {
|
||||
configuration.icon
|
||||
configuration.title
|
||||
}
|
||||
|
@ -21,8 +21,9 @@ struct EncryptedRoomTimelineView: View {
|
||||
|
||||
var body: some View {
|
||||
TimelineStyler(timelineItem: timelineItem) {
|
||||
Label(timelineItem.body, systemImage: "lock.shield")
|
||||
Label(timelineItem.body, iconAsset: Asset.Images.decryptionError, iconSize: .small, relativeTo: .compound.bodyLG)
|
||||
.labelStyle(RoomTimelineViewLabelStyle())
|
||||
.font(.compound.bodyLG)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -31,11 +32,10 @@ struct RoomTimelineViewLabelStyle: LabelStyle {
|
||||
@Environment(\.timelineStyle) private var timelineStyle
|
||||
|
||||
func makeBody(configuration: Configuration) -> some View {
|
||||
HStack(alignment: .firstTextBaseline, spacing: 8) {
|
||||
HStack(alignment: .center, spacing: 8) {
|
||||
configuration.icon
|
||||
.foregroundColor(.compound.iconSecondary)
|
||||
configuration.title
|
||||
.font(.body)
|
||||
.foregroundColor(.compound.textPrimary)
|
||||
}
|
||||
.padding(.horizontal, timelineStyle == .bubbles ? 4 : 0)
|
||||
@ -63,6 +63,11 @@ struct EncryptedRoomTimelineView_Previews: PreviewProvider, TestablePreview {
|
||||
timestamp: "Later",
|
||||
isOutgoing: true,
|
||||
senderId: "Anne"))
|
||||
|
||||
EncryptedRoomTimelineView(timelineItem: itemWith(text: "Some other text that is very long and will wrap onto multiple lines.",
|
||||
timestamp: "Later",
|
||||
isOutgoing: true,
|
||||
senderId: "Anne"))
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -101,27 +101,27 @@ enum TimelineItemMenuAction: Identifiable, Hashable {
|
||||
var label: some View {
|
||||
switch self {
|
||||
case .copy:
|
||||
Label(L10n.actionCopy, systemImage: "doc.on.doc")
|
||||
Label(L10n.actionCopy, iconAsset: Asset.Images.copy)
|
||||
case .edit:
|
||||
Label(L10n.actionEdit, systemImage: "pencil.line")
|
||||
Label(L10n.actionEdit, iconAsset: Asset.Images.editOutline)
|
||||
case .copyPermalink:
|
||||
Label(L10n.actionCopyLinkToMessage, systemImage: "link")
|
||||
Label(L10n.actionCopyLinkToMessage, icon: \.link)
|
||||
case .reply(let isThread):
|
||||
Label(isThread ? L10n.actionReplyInThread : L10n.actionReply, systemImage: "arrowshape.turn.up.left")
|
||||
Label(isThread ? L10n.actionReplyInThread : L10n.actionReply, iconAsset: Asset.Images.reply)
|
||||
case .forward:
|
||||
Label(L10n.actionForward, systemImage: "arrowshape.turn.up.right")
|
||||
Label(L10n.actionForward, iconAsset: Asset.Images.forward)
|
||||
case .redact:
|
||||
Label(L10n.actionRemove, systemImage: "trash")
|
||||
Label(L10n.actionRemove, icon: \.delete)
|
||||
case .viewSource:
|
||||
Label(L10n.actionViewSource, systemImage: "doc.text.below.ecg")
|
||||
Label(L10n.actionViewSource, iconAsset: Asset.Images.viewSource)
|
||||
case .retryDecryption:
|
||||
Label(L10n.actionRetryDecryption, systemImage: "arrow.down.message")
|
||||
case .report:
|
||||
Label(L10n.actionReportContent, systemImage: "exclamationmark.bubble")
|
||||
Label(L10n.actionReportContent, icon: \.chatProblem)
|
||||
case .react:
|
||||
Label(L10n.actionReact, systemImage: "hand.thumbsup")
|
||||
Label(L10n.actionReact, iconAsset: Asset.Images.addReaction)
|
||||
case .endPoll:
|
||||
Label { Text(L10n.actionEndPoll) } icon: { CompoundIcon(customImage: Asset.Images.endedPoll.swiftUIImage) }
|
||||
Label(L10n.actionEndPoll, iconAsset: Asset.Images.endedPoll)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -227,13 +227,14 @@ public struct TimelineItemMenu: View {
|
||||
context.send(viewAction: .displayEmojiPicker(itemID: item.id))
|
||||
}
|
||||
} label: {
|
||||
Image(asset: Asset.Images.timelineReactionAddMore)
|
||||
Image(asset: Asset.Images.addReaction)
|
||||
.resizable()
|
||||
.frame(width: addMoreButtonIconSize, height: addMoreButtonIconSize)
|
||||
.frame(maxHeight: .infinity, alignment: .center)
|
||||
.foregroundColor(.compound.iconSecondary)
|
||||
.padding(10)
|
||||
}
|
||||
.accessibilityLabel(L10n.actionReact)
|
||||
}
|
||||
.padding(.horizontal)
|
||||
.frame(maxWidth: .infinity, alignment: .center)
|
||||
@ -269,10 +270,7 @@ public struct TimelineItemMenu: View {
|
||||
send(action)
|
||||
} label: {
|
||||
action.label
|
||||
.labelStyle(FixedIconSizeLabelStyle())
|
||||
.multilineTextAlignment(.leading)
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.padding()
|
||||
.labelStyle(.menuSheet)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -76,7 +76,6 @@ struct SettingsScreen: View {
|
||||
Spacer()
|
||||
|
||||
CompoundIcon(\.chevronRight)
|
||||
.font(.system(size: 24))
|
||||
.foregroundColor(.compound.iconTertiaryAlpha)
|
||||
.flipsForRightToLeftLayoutDirection(true)
|
||||
}
|
||||
|
@ -167,15 +167,6 @@ class RoomProxy: RoomProxyProtocol {
|
||||
roomListItem.avatarUrl().flatMap(URL.init(string:))
|
||||
}
|
||||
|
||||
var encryptionBadgeImage: UIImage? {
|
||||
guard isEncrypted else {
|
||||
return nil
|
||||
}
|
||||
|
||||
// return trusted image for now, should be updated after verification status known
|
||||
return Asset.Images.encryptionTrusted.image
|
||||
}
|
||||
|
||||
var invitedMembersCount: Int {
|
||||
Int(room.invitedMembersCount())
|
||||
}
|
||||
|