Source code for the WriteFreely SwiftUI app for iOS, iPadOS, and macOS
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 

1531 linhas
84 KiB

  1. // !$*UTF8*$!
  2. {
  3. archiveVersion = 1;
  4. classes = {
  5. };
  6. objectVersion = 54;
  7. objects = {
  8. /* Begin PBXBuildFile section */
  9. 17027E25286741B90062EB29 /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17027E24286741B80062EB29 /* Logging.swift */; };
  10. 17027E26286741B90062EB29 /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17027E24286741B80062EB29 /* Logging.swift */; };
  11. 17027E27286757650062EB29 /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17027E24286741B80062EB29 /* Logging.swift */; };
  12. 170DFA34251BBC44001D82A0 /* PostEditorModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 170DFA33251BBC44001D82A0 /* PostEditorModel.swift */; };
  13. 170DFA35251BBC44001D82A0 /* PostEditorModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 170DFA33251BBC44001D82A0 /* PostEditorModel.swift */; };
  14. 17120DA124E19839002B9F6C /* AccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A5388D24DDEC7400DEFF9A /* AccountView.swift */; };
  15. 17120DA224E1985C002B9F6C /* AccountModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A5388B24DDC83F00DEFF9A /* AccountModel.swift */; };
  16. 17120DA324E19A42002B9F6C /* PreferencesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A5389124DDED0000DEFF9A /* PreferencesView.swift */; };
  17. 17120DA724E19D11002B9F6C /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17120DA424E19CBF002B9F6C /* SettingsView.swift */; };
  18. 17120DA924E1B2F5002B9F6C /* AccountLogoutView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17120DA824E1B2F5002B9F6C /* AccountLogoutView.swift */; };
  19. 17120DAA24E1B2F5002B9F6C /* AccountLogoutView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17120DA824E1B2F5002B9F6C /* AccountLogoutView.swift */; };
  20. 17120DAC24E1B99F002B9F6C /* AccountLoginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17120DAB24E1B99F002B9F6C /* AccountLoginView.swift */; };
  21. 17120DAD24E1B99F002B9F6C /* AccountLoginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17120DAB24E1B99F002B9F6C /* AccountLoginView.swift */; };
  22. 17120DB224E1E19C002B9F6C /* SettingsHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17120DB124E1E19C002B9F6C /* SettingsHeaderView.swift */; };
  23. 171BFDFA24D4AF8300888236 /* CollectionListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 171BFDF924D4AF8300888236 /* CollectionListView.swift */; };
  24. 171BFDFB24D4AF8300888236 /* CollectionListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 171BFDF924D4AF8300888236 /* CollectionListView.swift */; };
  25. 171DC677272C7D0B002B9B8A /* UserDefaults+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 171DC676272C7D0B002B9B8A /* UserDefaults+Extensions.swift */; };
  26. 171DC678272C7D0B002B9B8A /* UserDefaults+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 171DC676272C7D0B002B9B8A /* UserDefaults+Extensions.swift */; };
  27. 1727526628099802003D0A6A /* ErrorConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1727526528099802003D0A6A /* ErrorConstants.swift */; };
  28. 1727526728099802003D0A6A /* ErrorConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1727526528099802003D0A6A /* ErrorConstants.swift */; };
  29. 1727526828099802003D0A6A /* ErrorConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1727526528099802003D0A6A /* ErrorConstants.swift */; };
  30. 1727526A2809991A003D0A6A /* ErrorHandling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 172752692809991A003D0A6A /* ErrorHandling.swift */; };
  31. 1727526B2809991A003D0A6A /* ErrorHandling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 172752692809991A003D0A6A /* ErrorHandling.swift */; };
  32. 1727526C2809991A003D0A6A /* ErrorHandling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 172752692809991A003D0A6A /* ErrorHandling.swift */; };
  33. 172C492E2593981900E20ADF /* MacUpdatesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 172C492D2593981900E20ADF /* MacUpdatesView.swift */; };
  34. 172E10012735B83E00061372 /* UniformTypeIdentifiers.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 172E10002735B83E00061372 /* UniformTypeIdentifiers.framework */; platformFilter = maccatalyst; };
  35. 172E10042735B83E00061372 /* Media.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 172E10032735B83E00061372 /* Media.xcassets */; };
  36. 172E10062735B83E00061372 /* ActionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 172E10052735B83E00061372 /* ActionViewController.swift */; };
  37. 172E100D2735B83E00061372 /* ActionExtension-iOS.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 172E0FFF2735B83E00061372 /* ActionExtension-iOS.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
  38. 172E10132735BB6200061372 /* Action.js in Resources */ = {isa = PBXBuildFile; fileRef = 172E10122735BB6200061372 /* Action.js */; };
  39. 172E10152735C2BD00061372 /* UIHostingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 172E10142735C2BD00061372 /* UIHostingView.swift */; };
  40. 172E10172735C2DF00061372 /* EnvironmentValues+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 172E10162735C2DF00061372 /* EnvironmentValues+Extensions.swift */; };
  41. 172E10192735C3DB00061372 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 172E10182735C3DB00061372 /* ContentView.swift */; };
  42. 172E101C2735C57400061372 /* LocalStorageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBB924FED45500207AB8 /* LocalStorageManager.swift */; };
  43. 172E101D2735C5AB00061372 /* LocalStorageModel.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBB524FED3A400207AB8 /* LocalStorageModel.xcdatamodeld */; };
  44. 172E101E2735C62F00061372 /* PostStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17C42E612507D8E600072984 /* PostStatus.swift */; };
  45. 172E101F2735C64600061372 /* WFAPost+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B996D62502D23E0017B536 /* WFAPost+CoreDataClass.swift */; };
  46. 172E10202735C64600061372 /* WFACollection+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBFF24FEE18400207AB8 /* WFACollection+CoreDataClass.swift */; };
  47. 172E10212735C64600061372 /* WFACollection+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DC0024FEE18400207AB8 /* WFACollection+CoreDataProperties.swift */; };
  48. 172E10222735C64600061372 /* WFAPost+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B996D72502D23E0017B536 /* WFAPost+CoreDataProperties.swift */; };
  49. 172E10232735C6FF00061372 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17C42E6F250AA12200072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift */; };
  50. 172E10242735C72500061372 /* PreferencesModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17D435E724E3128F0036B539 /* PreferencesModel.swift */; };
  51. 173E19D1254318F600440F0F /* RemoteChangePromptView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 173E19D0254318F600440F0F /* RemoteChangePromptView.swift */; };
  52. 173E19E3254329CC00440F0F /* PostTextEditingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 173E19E2254329CC00440F0F /* PostTextEditingView.swift */; };
  53. 17466626256C0D0600629997 /* MacEditorTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17466625256C0D0600629997 /* MacEditorTextView.swift */; };
  54. 17479F152583D8E40072B7FB /* PostEditorSharingPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17479F142583D8E40072B7FB /* PostEditorSharingPicker.swift */; };
  55. 17480CA5251272EE00EB7765 /* Bundle+AppVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17480CA4251272EE00EB7765 /* Bundle+AppVersion.swift */; };
  56. 17480CA6251272EE00EB7765 /* Bundle+AppVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17480CA4251272EE00EB7765 /* Bundle+AppVersion.swift */; };
  57. 174D313224EC2831006CA9EE /* WriteFreelyModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 174D313124EC2831006CA9EE /* WriteFreelyModel.swift */; };
  58. 174D313324EC2831006CA9EE /* WriteFreelyModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 174D313124EC2831006CA9EE /* WriteFreelyModel.swift */; };
  59. 1753F6AC24E431CC00309365 /* MacPreferencesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1753F6AB24E431CC00309365 /* MacPreferencesView.swift */; };
  60. 1756AE6E24CB255B00FD7257 /* PostListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756AE6D24CB255B00FD7257 /* PostListModel.swift */; };
  61. 1756AE6F24CB255B00FD7257 /* PostListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756AE6D24CB255B00FD7257 /* PostListModel.swift */; };
  62. 1756AE7424CB26FA00FD7257 /* PostCellView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756AE7324CB26FA00FD7257 /* PostCellView.swift */; };
  63. 1756AE7524CB26FA00FD7257 /* PostCellView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756AE7324CB26FA00FD7257 /* PostCellView.swift */; };
  64. 1756AE7724CB2EDD00FD7257 /* PostEditorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756AE7624CB2EDD00FD7257 /* PostEditorView.swift */; };
  65. 1756AE7A24CB65DF00FD7257 /* PostListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756AE7924CB65DF00FD7257 /* PostListView.swift */; };
  66. 1756AE7B24CB65DF00FD7257 /* PostListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756AE7924CB65DF00FD7257 /* PostListView.swift */; };
  67. 1756AE8124CB844500FD7257 /* View+Keyboard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756AE8024CB844500FD7257 /* View+Keyboard.swift */; };
  68. 1756DBB324FECDBB00207AB8 /* PostEditorStatusToolbarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBB224FECDBB00207AB8 /* PostEditorStatusToolbarView.swift */; };
  69. 1756DBB424FECDBB00207AB8 /* PostEditorStatusToolbarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBB224FECDBB00207AB8 /* PostEditorStatusToolbarView.swift */; };
  70. 1756DBB724FED3A400207AB8 /* LocalStorageModel.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBB524FED3A400207AB8 /* LocalStorageModel.xcdatamodeld */; };
  71. 1756DBB824FED3A400207AB8 /* LocalStorageModel.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBB524FED3A400207AB8 /* LocalStorageModel.xcdatamodeld */; };
  72. 1756DBBA24FED45500207AB8 /* LocalStorageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBB924FED45500207AB8 /* LocalStorageManager.swift */; };
  73. 1756DBBB24FED45500207AB8 /* LocalStorageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBB924FED45500207AB8 /* LocalStorageManager.swift */; };
  74. 1756DC0124FEE18400207AB8 /* WFACollection+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBFF24FEE18400207AB8 /* WFACollection+CoreDataClass.swift */; };
  75. 1756DC0224FEE18400207AB8 /* WFACollection+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DBFF24FEE18400207AB8 /* WFACollection+CoreDataClass.swift */; };
  76. 1756DC0324FEE18400207AB8 /* WFACollection+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DC0024FEE18400207AB8 /* WFACollection+CoreDataProperties.swift */; };
  77. 1756DC0424FEE18400207AB8 /* WFACollection+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1756DC0024FEE18400207AB8 /* WFACollection+CoreDataProperties.swift */; };
  78. 1780F6EF25895EDB00FE45FF /* PostCommands.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1780F6EE25895EDB00FE45FF /* PostCommands.swift */; };
  79. 17836C14273EFB870047AF61 /* UserDefaults+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 171DC676272C7D0B002B9B8A /* UserDefaults+Extensions.swift */; };
  80. 17836C15273F0FBB0047AF61 /* Hack-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F3A42514F1E900517CE6 /* Hack-Regular.ttf */; };
  81. 17836C16273F0FBB0047AF61 /* LoraGX.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F36B2514EE2F00517CE6 /* LoraGX.ttf */; };
  82. 17836C17273F0FBB0047AF61 /* OpenSans-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F39D2514F0E500517CE6 /* OpenSans-Regular.ttf */; };
  83. 1784D2ED27946D880033E72E /* WriteFreely in Frameworks */ = {isa = PBXBuildFile; productRef = 1784D2EC27946D880033E72E /* WriteFreely */; };
  84. 1784D2EF27946D9A0033E72E /* WriteFreely in Frameworks */ = {isa = PBXBuildFile; productRef = 1784D2EE27946D9A0033E72E /* WriteFreely */; };
  85. 1784D2F127946DA10033E72E /* WriteFreely in Frameworks */ = {isa = PBXBuildFile; productRef = 1784D2F027946DA10033E72E /* WriteFreely */; };
  86. 17A4FEED25927E730037E96B /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A4FEEC25927E730037E96B /* AppDelegate.swift */; };
  87. 17A5388824DDA31F00DEFF9A /* MacAccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A5388724DDA31F00DEFF9A /* MacAccountView.swift */; };
  88. 17A5388C24DDC83F00DEFF9A /* AccountModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A5388B24DDC83F00DEFF9A /* AccountModel.swift */; };
  89. 17A5388F24DDEC7400DEFF9A /* AccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A5388D24DDEC7400DEFF9A /* AccountView.swift */; };
  90. 17A5389324DDED0000DEFF9A /* PreferencesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A5389124DDED0000DEFF9A /* PreferencesView.swift */; };
  91. 17A67CAF251A5DD7002F163D /* PostEditorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A67CAE251A5DD7002F163D /* PostEditorView.swift */; };
  92. 17B37C4B25C8661300FE75E9 /* WriteFreelyModel+Keychain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B37C4A25C8661300FE75E9 /* WriteFreelyModel+Keychain.swift */; };
  93. 17B37C4C25C8661300FE75E9 /* WriteFreelyModel+Keychain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B37C4A25C8661300FE75E9 /* WriteFreelyModel+Keychain.swift */; };
  94. 17B37C5625C8679800FE75E9 /* WriteFreelyModel+API.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B37C5525C8679800FE75E9 /* WriteFreelyModel+API.swift */; };
  95. 17B37C5725C8679800FE75E9 /* WriteFreelyModel+API.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B37C5525C8679800FE75E9 /* WriteFreelyModel+API.swift */; };
  96. 17B37C5D25C8698900FE75E9 /* WriteFreelyModel+APIHandlers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B37C5C25C8698900FE75E9 /* WriteFreelyModel+APIHandlers.swift */; };
  97. 17B37C5E25C8698900FE75E9 /* WriteFreelyModel+APIHandlers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B37C5C25C8698900FE75E9 /* WriteFreelyModel+APIHandlers.swift */; };
  98. 17B3E965250FAA9000EE9748 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 17B3E964250FAA9000EE9748 /* LaunchScreen.storyboard */; };
  99. 17B5103B2515448D00E9631F /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 17B5103A2515448D00E9631F /* Credits.rtf */; };
  100. 17B996D82502D23E0017B536 /* WFAPost+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B996D62502D23E0017B536 /* WFAPost+CoreDataClass.swift */; };
  101. 17B996D92502D23E0017B536 /* WFAPost+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B996D62502D23E0017B536 /* WFAPost+CoreDataClass.swift */; };
  102. 17B996DA2502D23E0017B536 /* WFAPost+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B996D72502D23E0017B536 /* WFAPost+CoreDataProperties.swift */; };
  103. 17B996DB2502D23E0017B536 /* WFAPost+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B996D72502D23E0017B536 /* WFAPost+CoreDataProperties.swift */; };
  104. 17BC618A25715318003363CA /* ActivePostToolbarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17BC617825715068003363CA /* ActivePostToolbarView.swift */; };
  105. 17C42E622507D8E600072984 /* PostStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17C42E612507D8E600072984 /* PostStatus.swift */; };
  106. 17C42E632507D8E600072984 /* PostStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17C42E612507D8E600072984 /* PostStatus.swift */; };
  107. 17C42E652509237800072984 /* PostListFilteredView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17C42E642509237800072984 /* PostListFilteredView.swift */; };
  108. 17C42E662509237800072984 /* PostListFilteredView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17C42E642509237800072984 /* PostListFilteredView.swift */; };
  109. 17C42E70250AA12300072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17C42E6F250AA12200072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift */; };
  110. 17C42E71250AAFD500072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17C42E6F250AA12200072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift */; };
  111. 17D435E824E3128F0036B539 /* PreferencesModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17D435E724E3128F0036B539 /* PreferencesModel.swift */; };
  112. 17D435E924E3128F0036B539 /* PreferencesModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17D435E724E3128F0036B539 /* PreferencesModel.swift */; };
  113. 17D4926527947B4D0035BD7E /* Sparkle in Frameworks */ = {isa = PBXBuildFile; productRef = 17D4926427947B4D0035BD7E /* Sparkle */; };
  114. 17D4926727947D780035BD7E /* MacUpdatesViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17D4926627947D780035BD7E /* MacUpdatesViewModel.swift */; };
  115. 17D4F36C2514EE2F00517CE6 /* LoraGX.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F36B2514EE2F00517CE6 /* LoraGX.ttf */; };
  116. 17D4F36D2514EE2F00517CE6 /* LoraGX.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F36B2514EE2F00517CE6 /* LoraGX.ttf */; };
  117. 17D4F39E2514F0E500517CE6 /* OpenSans-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F39D2514F0E500517CE6 /* OpenSans-Regular.ttf */; };
  118. 17D4F39F2514F0E500517CE6 /* OpenSans-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F39D2514F0E500517CE6 /* OpenSans-Regular.ttf */; };
  119. 17D4F3A52514F1E900517CE6 /* Hack-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F3A42514F1E900517CE6 /* Hack-Regular.ttf */; };
  120. 17D4F3A62514F1E900517CE6 /* Hack-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 17D4F3A42514F1E900517CE6 /* Hack-Regular.ttf */; };
  121. 17DF329D24C87D3500BCE2E3 /* Tests_iOS.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DF329C24C87D3500BCE2E3 /* Tests_iOS.swift */; };
  122. 17DF32A824C87D3500BCE2E3 /* Tests_macOS.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DF32A724C87D3500BCE2E3 /* Tests_macOS.swift */; };
  123. 17DF32AA24C87D3500BCE2E3 /* WriteFreely_MultiPlatformApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DF328124C87D3300BCE2E3 /* WriteFreely_MultiPlatformApp.swift */; };
  124. 17DF32AB24C87D3500BCE2E3 /* WriteFreely_MultiPlatformApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DF328124C87D3300BCE2E3 /* WriteFreely_MultiPlatformApp.swift */; };
  125. 17DF32AC24C87D3500BCE2E3 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DF328224C87D3300BCE2E3 /* ContentView.swift */; };
  126. 17DF32AD24C87D3500BCE2E3 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DF328224C87D3300BCE2E3 /* ContentView.swift */; };
  127. 17DF32AE24C87D3500BCE2E3 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 17DF328324C87D3500BCE2E3 /* Assets.xcassets */; };
  128. 17DF32AF24C87D3500BCE2E3 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 17DF328324C87D3500BCE2E3 /* Assets.xcassets */; };
  129. 17DF32D524C8CA3400BCE2E3 /* PostStatusBadgeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DF32D424C8CA3400BCE2E3 /* PostStatusBadgeView.swift */; };
  130. 17DF32D624C8CA3400BCE2E3 /* PostStatusBadgeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DF32D424C8CA3400BCE2E3 /* PostStatusBadgeView.swift */; };
  131. 17DFDE87251D309400A25F31 /* Hack-License.txt in Resources */ = {isa = PBXBuildFile; fileRef = 17DFDE84251D309400A25F31 /* Hack-License.txt */; };
  132. 17DFDE88251D309400A25F31 /* Hack-License.txt in Resources */ = {isa = PBXBuildFile; fileRef = 17DFDE84251D309400A25F31 /* Hack-License.txt */; };
  133. 17DFDE89251D309400A25F31 /* Lora-Cyrillic-OFL.txt in Resources */ = {isa = PBXBuildFile; fileRef = 17DFDE85251D309400A25F31 /* Lora-Cyrillic-OFL.txt */; };
  134. 17DFDE8A251D309400A25F31 /* Lora-Cyrillic-OFL.txt in Resources */ = {isa = PBXBuildFile; fileRef = 17DFDE85251D309400A25F31 /* Lora-Cyrillic-OFL.txt */; };
  135. 17DFDE8B251D309400A25F31 /* OpenSans-License.txt in Resources */ = {isa = PBXBuildFile; fileRef = 17DFDE86251D309400A25F31 /* OpenSans-License.txt */; };
  136. 17DFDE8C251D309400A25F31 /* OpenSans-License.txt in Resources */ = {isa = PBXBuildFile; fileRef = 17DFDE86251D309400A25F31 /* OpenSans-License.txt */; };
  137. 17E5DF8A2543610700DCDC9B /* PostTextEditingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17E5DF892543610700DCDC9B /* PostTextEditingView.swift */; };
  138. 375A67E828FC555C007A1AC0 /* MultilineTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 375A67E728FC555C007A1AC0 /* MultilineTextView.swift */; };
  139. /* End PBXBuildFile section */
  140. /* Begin PBXContainerItemProxy section */
  141. 172E100B2735B83E00061372 /* PBXContainerItemProxy */ = {
  142. isa = PBXContainerItemProxy;
  143. containerPortal = 17DF327C24C87D3300BCE2E3 /* Project object */;
  144. proxyType = 1;
  145. remoteGlobalIDString = 172E0FFE2735B83E00061372;
  146. remoteInfo = "ActionExtension-iOS";
  147. };
  148. 17DF329924C87D3500BCE2E3 /* PBXContainerItemProxy */ = {
  149. isa = PBXContainerItemProxy;
  150. containerPortal = 17DF327C24C87D3300BCE2E3 /* Project object */;
  151. proxyType = 1;
  152. remoteGlobalIDString = 17DF328724C87D3500BCE2E3;
  153. remoteInfo = "WriteFreely-MultiPlatform (iOS)";
  154. };
  155. 17DF32A424C87D3500BCE2E3 /* PBXContainerItemProxy */ = {
  156. isa = PBXContainerItemProxy;
  157. containerPortal = 17DF327C24C87D3300BCE2E3 /* Project object */;
  158. proxyType = 1;
  159. remoteGlobalIDString = 17DF328F24C87D3500BCE2E3;
  160. remoteInfo = "WriteFreely-MultiPlatform (macOS)";
  161. };
  162. /* End PBXContainerItemProxy section */
  163. /* Begin PBXCopyFilesBuildPhase section */
  164. 172E100E2735B83E00061372 /* Embed App Extensions */ = {
  165. isa = PBXCopyFilesBuildPhase;
  166. buildActionMask = 2147483647;
  167. dstPath = "";
  168. dstSubfolderSpec = 13;
  169. files = (
  170. 172E100D2735B83E00061372 /* ActionExtension-iOS.appex in Embed App Extensions */,
  171. );
  172. name = "Embed App Extensions";
  173. runOnlyForDeploymentPostprocessing = 0;
  174. };
  175. /* End PBXCopyFilesBuildPhase section */
  176. /* Begin PBXFileReference section */
  177. 17027E24286741B80062EB29 /* Logging.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Logging.swift; sourceTree = "<group>"; };
  178. 1709ADDF251B9A110053AF79 /* EditorLaunchingPolicy.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = EditorLaunchingPolicy.md; sourceTree = "<group>"; };
  179. 170DFA33251BBC44001D82A0 /* PostEditorModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostEditorModel.swift; sourceTree = "<group>"; };
  180. 17120DA424E19CBF002B9F6C /* SettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = "<group>"; };
  181. 17120DA824E1B2F5002B9F6C /* AccountLogoutView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountLogoutView.swift; sourceTree = "<group>"; };
  182. 17120DAB24E1B99F002B9F6C /* AccountLoginView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountLoginView.swift; sourceTree = "<group>"; };
  183. 17120DB124E1E19C002B9F6C /* SettingsHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsHeaderView.swift; sourceTree = "<group>"; };
  184. 171BFDF924D4AF8300888236 /* CollectionListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CollectionListView.swift; sourceTree = "<group>"; };
  185. 171DC676272C7D0B002B9B8A /* UserDefaults+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserDefaults+Extensions.swift"; sourceTree = "<group>"; };
  186. 1727526528099802003D0A6A /* ErrorConstants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ErrorConstants.swift; sourceTree = "<group>"; };
  187. 172752692809991A003D0A6A /* ErrorHandling.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ErrorHandling.swift; sourceTree = "<group>"; };
  188. 172C492D2593981900E20ADF /* MacUpdatesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MacUpdatesView.swift; sourceTree = "<group>"; };
  189. 172E0FFF2735B83E00061372 /* ActionExtension-iOS.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = "ActionExtension-iOS.appex"; sourceTree = BUILT_PRODUCTS_DIR; };
  190. 172E10002735B83E00061372 /* UniformTypeIdentifiers.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UniformTypeIdentifiers.framework; path = System/Library/Frameworks/UniformTypeIdentifiers.framework; sourceTree = SDKROOT; };
  191. 172E10032735B83E00061372 /* Media.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Media.xcassets; sourceTree = "<group>"; };
  192. 172E10052735B83E00061372 /* ActionViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionViewController.swift; sourceTree = "<group>"; };
  193. 172E100A2735B83E00061372 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; usesTabs = 1; };
  194. 172E10122735BB6200061372 /* Action.js */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; path = Action.js; sourceTree = "<group>"; };
  195. 172E10142735C2BD00061372 /* UIHostingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIHostingView.swift; sourceTree = "<group>"; };
  196. 172E10162735C2DF00061372 /* EnvironmentValues+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "EnvironmentValues+Extensions.swift"; sourceTree = "<group>"; };
  197. 172E10182735C3DB00061372 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
  198. 173E19D0254318F600440F0F /* RemoteChangePromptView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RemoteChangePromptView.swift; sourceTree = "<group>"; };
  199. 173E19E2254329CC00440F0F /* PostTextEditingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostTextEditingView.swift; sourceTree = "<group>"; };
  200. 17466625256C0D0600629997 /* MacEditorTextView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MacEditorTextView.swift; sourceTree = "<group>"; };
  201. 17479F142583D8E40072B7FB /* PostEditorSharingPicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostEditorSharingPicker.swift; sourceTree = "<group>"; };
  202. 17480CA4251272EE00EB7765 /* Bundle+AppVersion.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Bundle+AppVersion.swift"; sourceTree = "<group>"; };
  203. 174D313124EC2831006CA9EE /* WriteFreelyModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WriteFreelyModel.swift; sourceTree = "<group>"; };
  204. 1753F6AB24E431CC00309365 /* MacPreferencesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MacPreferencesView.swift; sourceTree = "<group>"; };
  205. 1756AE6D24CB255B00FD7257 /* PostListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostListModel.swift; sourceTree = "<group>"; };
  206. 1756AE7324CB26FA00FD7257 /* PostCellView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostCellView.swift; sourceTree = "<group>"; };
  207. 1756AE7624CB2EDD00FD7257 /* PostEditorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostEditorView.swift; sourceTree = "<group>"; };
  208. 1756AE7924CB65DF00FD7257 /* PostListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostListView.swift; sourceTree = "<group>"; };
  209. 1756AE8024CB844500FD7257 /* View+Keyboard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "View+Keyboard.swift"; sourceTree = "<group>"; };
  210. 1756DBB224FECDBB00207AB8 /* PostEditorStatusToolbarView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostEditorStatusToolbarView.swift; sourceTree = "<group>"; };
  211. 1756DBB624FED3A400207AB8 /* LocalStorageModel.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = LocalStorageModel.xcdatamodel; sourceTree = "<group>"; };
  212. 1756DBB924FED45500207AB8 /* LocalStorageManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalStorageManager.swift; sourceTree = "<group>"; };
  213. 1756DBFF24FEE18400207AB8 /* WFACollection+CoreDataClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WFACollection+CoreDataClass.swift"; sourceTree = SOURCE_ROOT; };
  214. 1756DC0024FEE18400207AB8 /* WFACollection+CoreDataProperties.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WFACollection+CoreDataProperties.swift"; sourceTree = SOURCE_ROOT; };
  215. 1780F6EE25895EDB00FE45FF /* PostCommands.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostCommands.swift; sourceTree = "<group>"; };
  216. 17836C18273F10C40047AF61 /* ActionExtension-iOS.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "ActionExtension-iOS.entitlements"; sourceTree = "<group>"; };
  217. 17A355D3271A052C007C7A47 /* WriteFreely-MultiPlatform (iOS).entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "WriteFreely-MultiPlatform (iOS).entitlements"; sourceTree = "<group>"; };
  218. 17A4FEDF25924E810037E96B /* MacSoftwareUpdater.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = MacSoftwareUpdater.md; sourceTree = "<group>"; };
  219. 17A4FEEC25927E730037E96B /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
  220. 17A5388724DDA31F00DEFF9A /* MacAccountView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MacAccountView.swift; sourceTree = "<group>"; };
  221. 17A5388B24DDC83F00DEFF9A /* AccountModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountModel.swift; sourceTree = "<group>"; };
  222. 17A5388D24DDEC7400DEFF9A /* AccountView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountView.swift; sourceTree = "<group>"; };
  223. 17A5389124DDED0000DEFF9A /* PreferencesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreferencesView.swift; sourceTree = "<group>"; };
  224. 17A67CAE251A5DD7002F163D /* PostEditorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostEditorView.swift; sourceTree = "<group>"; };
  225. 17B37C4A25C8661300FE75E9 /* WriteFreelyModel+Keychain.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WriteFreelyModel+Keychain.swift"; sourceTree = "<group>"; };
  226. 17B37C5525C8679800FE75E9 /* WriteFreelyModel+API.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WriteFreelyModel+API.swift"; sourceTree = "<group>"; };
  227. 17B37C5C25C8698900FE75E9 /* WriteFreelyModel+APIHandlers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WriteFreelyModel+APIHandlers.swift"; sourceTree = "<group>"; };
  228. 17B3E964250FAA9000EE9748 /* LaunchScreen.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = LaunchScreen.storyboard; sourceTree = "<group>"; };
  229. 17B5103A2515448D00E9631F /* Credits.rtf */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; path = Credits.rtf; sourceTree = "<group>"; };
  230. 17B68D4F25A4FED2005ED37C /* Sparkle-License.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = "Sparkle-License.txt"; sourceTree = "<group>"; };
  231. 17B996D62502D23E0017B536 /* WFAPost+CoreDataClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WFAPost+CoreDataClass.swift"; sourceTree = SOURCE_ROOT; };
  232. 17B996D72502D23E0017B536 /* WFAPost+CoreDataProperties.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WFAPost+CoreDataProperties.swift"; sourceTree = SOURCE_ROOT; };
  233. 17BC617825715068003363CA /* ActivePostToolbarView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActivePostToolbarView.swift; sourceTree = "<group>"; };
  234. 17C42E612507D8E600072984 /* PostStatus.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostStatus.swift; sourceTree = "<group>"; };
  235. 17C42E642509237800072984 /* PostListFilteredView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostListFilteredView.swift; sourceTree = "<group>"; };
  236. 17C42E6F250AA12200072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NSManagedObjectContext+ExecuteAndMergeChanges.swift"; sourceTree = "<group>"; };
  237. 17D435E724E3128F0036B539 /* PreferencesModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreferencesModel.swift; sourceTree = "<group>"; };
  238. 17D4926627947D780035BD7E /* MacUpdatesViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MacUpdatesViewModel.swift; sourceTree = "<group>"; };
  239. 17D4F36B2514EE2F00517CE6 /* LoraGX.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = LoraGX.ttf; sourceTree = "<group>"; };
  240. 17D4F39D2514F0E500517CE6 /* OpenSans-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "OpenSans-Regular.ttf"; sourceTree = "<group>"; };
  241. 17D4F3A42514F1E900517CE6 /* Hack-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Hack-Regular.ttf"; sourceTree = "<group>"; };
  242. 17DF328124C87D3300BCE2E3 /* WriteFreely_MultiPlatformApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WriteFreely_MultiPlatformApp.swift; sourceTree = "<group>"; };
  243. 17DF328224C87D3300BCE2E3 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
  244. 17DF328324C87D3500BCE2E3 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
  245. 17DF328824C87D3500BCE2E3 /* WriteFreely-MultiPlatform.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "WriteFreely-MultiPlatform.app"; sourceTree = BUILT_PRODUCTS_DIR; };
  246. 17DF328B24C87D3500BCE2E3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
  247. 17DF329024C87D3500BCE2E3 /* WriteFreely for Mac.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "WriteFreely for Mac.app"; sourceTree = BUILT_PRODUCTS_DIR; };
  248. 17DF329224C87D3500BCE2E3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
  249. 17DF329324C87D3500BCE2E3 /* macOS.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = macOS.entitlements; sourceTree = "<group>"; };
  250. 17DF329824C87D3500BCE2E3 /* Tests iOS.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Tests iOS.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
  251. 17DF329C24C87D3500BCE2E3 /* Tests_iOS.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tests_iOS.swift; sourceTree = "<group>"; };
  252. 17DF329E24C87D3500BCE2E3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
  253. 17DF32A324C87D3500BCE2E3 /* Tests macOS.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Tests macOS.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
  254. 17DF32A724C87D3500BCE2E3 /* Tests_macOS.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tests_macOS.swift; sourceTree = "<group>"; };
  255. 17DF32A924C87D3500BCE2E3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
  256. 17DF32C624C884FF00BCE2E3 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
  257. 17DF32C724C8853700BCE2E3 /* CODE_OF_CONDUCT.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = CODE_OF_CONDUCT.md; sourceTree = "<group>"; };
  258. 17DF32C824C8854B00BCE2E3 /* CONTRIBUTING.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = CONTRIBUTING.md; sourceTree = "<group>"; };
  259. 17DF32C924C8855E00BCE2E3 /* LICENSE.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = LICENSE.md; sourceTree = "<group>"; };
  260. 17DF32CA24C8856C00BCE2E3 /* CHANGELOG.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = CHANGELOG.md; sourceTree = "<group>"; };
  261. 17DF32D424C8CA3400BCE2E3 /* PostStatusBadgeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostStatusBadgeView.swift; sourceTree = "<group>"; };
  262. 17DFDE84251D309400A25F31 /* Hack-License.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "Hack-License.txt"; sourceTree = "<group>"; };
  263. 17DFDE85251D309400A25F31 /* Lora-Cyrillic-OFL.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "Lora-Cyrillic-OFL.txt"; sourceTree = "<group>"; };
  264. 17DFDE86251D309400A25F31 /* OpenSans-License.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "OpenSans-License.txt"; sourceTree = "<group>"; };
  265. 17E5DF892543610700DCDC9B /* PostTextEditingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostTextEditingView.swift; sourceTree = "<group>"; };
  266. 375A67E728FC555C007A1AC0 /* MultilineTextView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MultilineTextView.swift; sourceTree = "<group>"; };
  267. /* End PBXFileReference section */
  268. /* Begin PBXFrameworksBuildPhase section */
  269. 172E0FFC2735B83E00061372 /* Frameworks */ = {
  270. isa = PBXFrameworksBuildPhase;
  271. buildActionMask = 2147483647;
  272. files = (
  273. 172E10012735B83E00061372 /* UniformTypeIdentifiers.framework in Frameworks */,
  274. 1784D2F127946DA10033E72E /* WriteFreely in Frameworks */,
  275. );
  276. runOnlyForDeploymentPostprocessing = 0;
  277. };
  278. 17DF328524C87D3500BCE2E3 /* Frameworks */ = {
  279. isa = PBXFrameworksBuildPhase;
  280. buildActionMask = 2147483647;
  281. files = (
  282. 1784D2ED27946D880033E72E /* WriteFreely in Frameworks */,
  283. );
  284. runOnlyForDeploymentPostprocessing = 0;
  285. };
  286. 17DF328D24C87D3500BCE2E3 /* Frameworks */ = {
  287. isa = PBXFrameworksBuildPhase;
  288. buildActionMask = 2147483647;
  289. files = (
  290. 1784D2EF27946D9A0033E72E /* WriteFreely in Frameworks */,
  291. 17D4926527947B4D0035BD7E /* Sparkle in Frameworks */,
  292. );
  293. runOnlyForDeploymentPostprocessing = 0;
  294. };
  295. 17DF329524C87D3500BCE2E3 /* Frameworks */ = {
  296. isa = PBXFrameworksBuildPhase;
  297. buildActionMask = 2147483647;
  298. files = (
  299. );
  300. runOnlyForDeploymentPostprocessing = 0;
  301. };
  302. 17DF32A024C87D3500BCE2E3 /* Frameworks */ = {
  303. isa = PBXFrameworksBuildPhase;
  304. buildActionMask = 2147483647;
  305. files = (
  306. );
  307. runOnlyForDeploymentPostprocessing = 0;
  308. };
  309. /* End PBXFrameworksBuildPhase section */
  310. /* Begin PBXGroup section */
  311. 17027E23286741910062EB29 /* Logging */ = {
  312. isa = PBXGroup;
  313. children = (
  314. 17027E24286741B80062EB29 /* Logging.swift */,
  315. );
  316. path = Logging;
  317. sourceTree = "<group>";
  318. };
  319. 1709ADDE251B99D40053AF79 /* Technotes */ = {
  320. isa = PBXGroup;
  321. children = (
  322. 1709ADDF251B9A110053AF79 /* EditorLaunchingPolicy.md */,
  323. 17A4FEDF25924E810037E96B /* MacSoftwareUpdater.md */,
  324. );
  325. path = Technotes;
  326. sourceTree = "<group>";
  327. };
  328. 17120DA624E19CE2002B9F6C /* Settings */ = {
  329. isa = PBXGroup;
  330. children = (
  331. 17120DB124E1E19C002B9F6C /* SettingsHeaderView.swift */,
  332. 17120DA424E19CBF002B9F6C /* SettingsView.swift */,
  333. );
  334. path = Settings;
  335. sourceTree = "<group>";
  336. };
  337. 17275264280997BF003D0A6A /* ErrorHandling */ = {
  338. isa = PBXGroup;
  339. children = (
  340. 1727526528099802003D0A6A /* ErrorConstants.swift */,
  341. 172752692809991A003D0A6A /* ErrorHandling.swift */,
  342. );
  343. path = ErrorHandling;
  344. sourceTree = "<group>";
  345. };
  346. 172E10022735B83E00061372 /* ActionExtension-iOS */ = {
  347. isa = PBXGroup;
  348. children = (
  349. 17836C18273F10C40047AF61 /* ActionExtension-iOS.entitlements */,
  350. 172E10032735B83E00061372 /* Media.xcassets */,
  351. 172E10182735C3DB00061372 /* ContentView.swift */,
  352. 172E10052735B83E00061372 /* ActionViewController.swift */,
  353. 172E100A2735B83E00061372 /* Info.plist */,
  354. 172E10122735BB6200061372 /* Action.js */,
  355. );
  356. path = "ActionExtension-iOS";
  357. sourceTree = "<group>";
  358. };
  359. 1739B8D324EAFAB700DA7421 /* PostEditor */ = {
  360. isa = PBXGroup;
  361. children = (
  362. 170DFA33251BBC44001D82A0 /* PostEditorModel.swift */,
  363. 1756DBB224FECDBB00207AB8 /* PostEditorStatusToolbarView.swift */,
  364. );
  365. path = PostEditor;
  366. sourceTree = "<group>";
  367. };
  368. 1756AE7F24CB841200FD7257 /* Extensions */ = {
  369. isa = PBXGroup;
  370. children = (
  371. 17480CA4251272EE00EB7765 /* Bundle+AppVersion.swift */,
  372. 17C42E6F250AA12200072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift */,
  373. 17B37C5525C8679800FE75E9 /* WriteFreelyModel+API.swift */,
  374. 17B37C5C25C8698900FE75E9 /* WriteFreelyModel+APIHandlers.swift */,
  375. 17B37C4A25C8661300FE75E9 /* WriteFreelyModel+Keychain.swift */,
  376. 171DC676272C7D0B002B9B8A /* UserDefaults+Extensions.swift */,
  377. );
  378. path = Extensions;
  379. sourceTree = "<group>";
  380. };
  381. 1762DCB124EB07680019C4EB /* Models */ = {
  382. isa = PBXGroup;
  383. children = (
  384. 1756DBFF24FEE18400207AB8 /* WFACollection+CoreDataClass.swift */,
  385. 1756DC0024FEE18400207AB8 /* WFACollection+CoreDataProperties.swift */,
  386. 17B996D62502D23E0017B536 /* WFAPost+CoreDataClass.swift */,
  387. 17B996D72502D23E0017B536 /* WFAPost+CoreDataProperties.swift */,
  388. 17C42E612507D8E600072984 /* PostStatus.swift */,
  389. 174D313124EC2831006CA9EE /* WriteFreelyModel.swift */,
  390. 1756DBB524FED3A400207AB8 /* LocalStorageModel.xcdatamodeld */,
  391. );
  392. path = Models;
  393. sourceTree = "<group>";
  394. };
  395. 1765F62C24E1924800C9EBF0 /* Preferences */ = {
  396. isa = PBXGroup;
  397. children = (
  398. 17D435E724E3128F0036B539 /* PreferencesModel.swift */,
  399. 17A5389124DDED0000DEFF9A /* PreferencesView.swift */,
  400. );
  401. path = Preferences;
  402. sourceTree = "<group>";
  403. };
  404. 17681E3F251940F200D394AE /* Extensions */ = {
  405. isa = PBXGroup;
  406. children = (
  407. 1756AE8024CB844500FD7257 /* View+Keyboard.swift */,
  408. 172E10142735C2BD00061372 /* UIHostingView.swift */,
  409. 172E10162735C2DF00061372 /* EnvironmentValues+Extensions.swift */,
  410. );
  411. path = Extensions;
  412. sourceTree = "<group>";
  413. };
  414. 17A5388924DDA50500DEFF9A /* Settings */ = {
  415. isa = PBXGroup;
  416. children = (
  417. 17A5388724DDA31F00DEFF9A /* MacAccountView.swift */,
  418. 1753F6AB24E431CC00309365 /* MacPreferencesView.swift */,
  419. 172C492D2593981900E20ADF /* MacUpdatesView.swift */,
  420. 17D4926627947D780035BD7E /* MacUpdatesViewModel.swift */,
  421. );
  422. path = Settings;
  423. sourceTree = "<group>";
  424. };
  425. 17A67CAB251A5D7E002F163D /* PostEditor */ = {
  426. isa = PBXGroup;
  427. children = (
  428. 1756AE7624CB2EDD00FD7257 /* PostEditorView.swift */,
  429. 173E19D0254318F600440F0F /* RemoteChangePromptView.swift */,
  430. 173E19E2254329CC00440F0F /* PostTextEditingView.swift */,
  431. 375A67E728FC555C007A1AC0 /* MultilineTextView.swift */,
  432. );
  433. path = PostEditor;
  434. sourceTree = "<group>";
  435. };
  436. 17A67CAC251A5D8D002F163D /* PostEditor */ = {
  437. isa = PBXGroup;
  438. children = (
  439. 17479F142583D8E40072B7FB /* PostEditorSharingPicker.swift */,
  440. 17A67CAE251A5DD7002F163D /* PostEditorView.swift */,
  441. 17E5DF892543610700DCDC9B /* PostTextEditingView.swift */,
  442. 17466625256C0D0600629997 /* MacEditorTextView.swift */,
  443. );
  444. path = PostEditor;
  445. sourceTree = "<group>";
  446. };
  447. 17BC617725715042003363CA /* Navigation */ = {
  448. isa = PBXGroup;
  449. children = (
  450. 17BC617825715068003363CA /* ActivePostToolbarView.swift */,
  451. 1780F6EE25895EDB00FE45FF /* PostCommands.swift */,
  452. );
  453. path = Navigation;
  454. sourceTree = "<group>";
  455. };
  456. 17D4F3722514EE4400517CE6 /* Resources */ = {
  457. isa = PBXGroup;
  458. children = (
  459. 17DFDE83251D309400A25F31 /* Licenses */,
  460. 17D4F3A42514F1E900517CE6 /* Hack-Regular.ttf */,
  461. 17D4F39D2514F0E500517CE6 /* OpenSans-Regular.ttf */,
  462. 17D4F36B2514EE2F00517CE6 /* LoraGX.ttf */,
  463. );
  464. path = Resources;
  465. sourceTree = "<group>";
  466. };
  467. 17DF327B24C87D3300BCE2E3 = {
  468. isa = PBXGroup;
  469. children = (
  470. 17A355D3271A052C007C7A47 /* WriteFreely-MultiPlatform (iOS).entitlements */,
  471. 17DF32C624C884FF00BCE2E3 /* README.md */,
  472. 17DF32C924C8855E00BCE2E3 /* LICENSE.md */,
  473. 17DF32CA24C8856C00BCE2E3 /* CHANGELOG.md */,
  474. 17DF32C724C8853700BCE2E3 /* CODE_OF_CONDUCT.md */,
  475. 17DF32C824C8854B00BCE2E3 /* CONTRIBUTING.md */,
  476. 1709ADDE251B99D40053AF79 /* Technotes */,
  477. 17DF328024C87D3300BCE2E3 /* Shared */,
  478. 17DF328A24C87D3500BCE2E3 /* iOS */,
  479. 17DF329124C87D3500BCE2E3 /* macOS */,
  480. 17DF329B24C87D3500BCE2E3 /* Tests iOS */,
  481. 17DF32A624C87D3500BCE2E3 /* Tests macOS */,
  482. 172E10022735B83E00061372 /* ActionExtension-iOS */,
  483. 17DF328924C87D3500BCE2E3 /* Products */,
  484. 17DF32C124C87D8D00BCE2E3 /* Frameworks */,
  485. );
  486. sourceTree = "<group>";
  487. };
  488. 17DF328024C87D3300BCE2E3 /* Shared */ = {
  489. isa = PBXGroup;
  490. children = (
  491. 17DF328124C87D3300BCE2E3 /* WriteFreely_MultiPlatformApp.swift */,
  492. 1756DBB924FED45500207AB8 /* LocalStorageManager.swift */,
  493. 17DF328324C87D3500BCE2E3 /* Assets.xcassets */,
  494. 17DF32D024C8B75C00BCE2E3 /* Account */,
  495. 1756AE7F24CB841200FD7257 /* Extensions */,
  496. 17275264280997BF003D0A6A /* ErrorHandling */,
  497. 17027E23286741910062EB29 /* Logging */,
  498. 1762DCB124EB07680019C4EB /* Models */,
  499. 17DF32CC24C8B72300BCE2E3 /* Navigation */,
  500. 1739B8D324EAFAB700DA7421 /* PostEditor */,
  501. 17DF32D124C8B78500BCE2E3 /* PostList */,
  502. 17DF32D224C8B78D00BCE2E3 /* PostCollection */,
  503. 1765F62C24E1924800C9EBF0 /* Preferences */,
  504. 17D4F3722514EE4400517CE6 /* Resources */,
  505. );
  506. path = Shared;
  507. sourceTree = "<group>";
  508. };
  509. 17DF328924C87D3500BCE2E3 /* Products */ = {
  510. isa = PBXGroup;
  511. children = (
  512. 17DF328824C87D3500BCE2E3 /* WriteFreely-MultiPlatform.app */,
  513. 17DF329024C87D3500BCE2E3 /* WriteFreely for Mac.app */,
  514. 17DF329824C87D3500BCE2E3 /* Tests iOS.xctest */,
  515. 17DF32A324C87D3500BCE2E3 /* Tests macOS.xctest */,
  516. 172E0FFF2735B83E00061372 /* ActionExtension-iOS.appex */,
  517. );
  518. name = Products;
  519. sourceTree = "<group>";
  520. };
  521. 17DF328A24C87D3500BCE2E3 /* iOS */ = {
  522. isa = PBXGroup;
  523. children = (
  524. 17DF328B24C87D3500BCE2E3 /* Info.plist */,
  525. 17B3E964250FAA9000EE9748 /* LaunchScreen.storyboard */,
  526. 17681E3F251940F200D394AE /* Extensions */,
  527. 17A67CAB251A5D7E002F163D /* PostEditor */,
  528. 17120DA624E19CE2002B9F6C /* Settings */,
  529. );
  530. path = iOS;
  531. sourceTree = "<group>";
  532. };
  533. 17DF329124C87D3500BCE2E3 /* macOS */ = {
  534. isa = PBXGroup;
  535. children = (
  536. 17DF329224C87D3500BCE2E3 /* Info.plist */,
  537. 17DF329324C87D3500BCE2E3 /* macOS.entitlements */,
  538. 17A4FEEC25927E730037E96B /* AppDelegate.swift */,
  539. 17BC617725715042003363CA /* Navigation */,
  540. 17A67CAC251A5D8D002F163D /* PostEditor */,
  541. 17A5388924DDA50500DEFF9A /* Settings */,
  542. 17B5103A2515448D00E9631F /* Credits.rtf */,
  543. );
  544. path = macOS;
  545. sourceTree = "<group>";
  546. };
  547. 17DF329B24C87D3500BCE2E3 /* Tests iOS */ = {
  548. isa = PBXGroup;
  549. children = (
  550. 17DF329C24C87D3500BCE2E3 /* Tests_iOS.swift */,
  551. 17DF329E24C87D3500BCE2E3 /* Info.plist */,
  552. );
  553. path = "Tests iOS";
  554. sourceTree = "<group>";
  555. };
  556. 17DF32A624C87D3500BCE2E3 /* Tests macOS */ = {
  557. isa = PBXGroup;
  558. children = (
  559. 17DF32A724C87D3500BCE2E3 /* Tests_macOS.swift */,
  560. 17DF32A924C87D3500BCE2E3 /* Info.plist */,
  561. );
  562. path = "Tests macOS";
  563. sourceTree = "<group>";
  564. };
  565. 17DF32C124C87D8D00BCE2E3 /* Frameworks */ = {
  566. isa = PBXGroup;
  567. children = (
  568. 172E10002735B83E00061372 /* UniformTypeIdentifiers.framework */,
  569. );
  570. name = Frameworks;
  571. sourceTree = "<group>";
  572. };
  573. 17DF32CC24C8B72300BCE2E3 /* Navigation */ = {
  574. isa = PBXGroup;
  575. children = (
  576. 17DF328224C87D3300BCE2E3 /* ContentView.swift */,
  577. );
  578. path = Navigation;
  579. sourceTree = "<group>";
  580. };
  581. 17DF32D024C8B75C00BCE2E3 /* Account */ = {
  582. isa = PBXGroup;
  583. children = (
  584. 17A5388B24DDC83F00DEFF9A /* AccountModel.swift */,
  585. 17120DAB24E1B99F002B9F6C /* AccountLoginView.swift */,
  586. 17120DA824E1B2F5002B9F6C /* AccountLogoutView.swift */,
  587. 17A5388D24DDEC7400DEFF9A /* AccountView.swift */,
  588. );
  589. path = Account;
  590. sourceTree = "<group>";
  591. };
  592. 17DF32D124C8B78500BCE2E3 /* PostList */ = {
  593. isa = PBXGroup;
  594. children = (
  595. 1756AE7324CB26FA00FD7257 /* PostCellView.swift */,
  596. 1756AE6D24CB255B00FD7257 /* PostListModel.swift */,
  597. 1756AE7924CB65DF00FD7257 /* PostListView.swift */,
  598. 17DF32D424C8CA3400BCE2E3 /* PostStatusBadgeView.swift */,
  599. 17C42E642509237800072984 /* PostListFilteredView.swift */,
  600. );
  601. path = PostList;
  602. sourceTree = "<group>";
  603. };
  604. 17DF32D224C8B78D00BCE2E3 /* PostCollection */ = {
  605. isa = PBXGroup;
  606. children = (
  607. 171BFDF924D4AF8300888236 /* CollectionListView.swift */,
  608. );
  609. path = PostCollection;
  610. sourceTree = "<group>";
  611. };
  612. 17DFDE83251D309400A25F31 /* Licenses */ = {
  613. isa = PBXGroup;
  614. children = (
  615. 17B68D4F25A4FED2005ED37C /* Sparkle-License.txt */,
  616. 17DFDE84251D309400A25F31 /* Hack-License.txt */,
  617. 17DFDE85251D309400A25F31 /* Lora-Cyrillic-OFL.txt */,
  618. 17DFDE86251D309400A25F31 /* OpenSans-License.txt */,
  619. );
  620. path = Licenses;
  621. sourceTree = "<group>";
  622. };
  623. /* End PBXGroup section */
  624. /* Begin PBXNativeTarget section */
  625. 172E0FFE2735B83E00061372 /* ActionExtension-iOS */ = {
  626. isa = PBXNativeTarget;
  627. buildConfigurationList = 172E10112735B83E00061372 /* Build configuration list for PBXNativeTarget "ActionExtension-iOS" */;
  628. buildPhases = (
  629. 172E0FFB2735B83E00061372 /* Sources */,
  630. 172E0FFC2735B83E00061372 /* Frameworks */,
  631. 172E0FFD2735B83E00061372 /* Resources */,
  632. );
  633. buildRules = (
  634. );
  635. dependencies = (
  636. );
  637. name = "ActionExtension-iOS";
  638. packageProductDependencies = (
  639. 1784D2F027946DA10033E72E /* WriteFreely */,
  640. );
  641. productName = "ActionExtension-iOS";
  642. productReference = 172E0FFF2735B83E00061372 /* ActionExtension-iOS.appex */;
  643. productType = "com.apple.product-type.app-extension";
  644. };
  645. 17DF328724C87D3500BCE2E3 /* WriteFreely-MultiPlatform (iOS) */ = {
  646. isa = PBXNativeTarget;
  647. buildConfigurationList = 17DF32B224C87D3500BCE2E3 /* Build configuration list for PBXNativeTarget "WriteFreely-MultiPlatform (iOS)" */;
  648. buildPhases = (
  649. 17DF328424C87D3500BCE2E3 /* Sources */,
  650. 17DF328524C87D3500BCE2E3 /* Frameworks */,
  651. 17DF328624C87D3500BCE2E3 /* Resources */,
  652. 17DF32C424C87E6700BCE2E3 /* ShellScript */,
  653. 172E100E2735B83E00061372 /* Embed App Extensions */,
  654. );
  655. buildRules = (
  656. );
  657. dependencies = (
  658. 172E100C2735B83E00061372 /* PBXTargetDependency */,
  659. );
  660. name = "WriteFreely-MultiPlatform (iOS)";
  661. packageProductDependencies = (
  662. 1784D2EC27946D880033E72E /* WriteFreely */,
  663. );
  664. productName = "WriteFreely-MultiPlatform (iOS)";
  665. productReference = 17DF328824C87D3500BCE2E3 /* WriteFreely-MultiPlatform.app */;
  666. productType = "com.apple.product-type.application";
  667. };
  668. 17DF328F24C87D3500BCE2E3 /* WriteFreely-MultiPlatform (macOS) */ = {
  669. isa = PBXNativeTarget;
  670. buildConfigurationList = 17DF32B524C87D3500BCE2E3 /* Build configuration list for PBXNativeTarget "WriteFreely-MultiPlatform (macOS)" */;
  671. buildPhases = (
  672. 17DF328C24C87D3500BCE2E3 /* Sources */,
  673. 17DF328D24C87D3500BCE2E3 /* Frameworks */,
  674. 17DF328E24C87D3500BCE2E3 /* Resources */,
  675. 17DF32C524C87FDB00BCE2E3 /* ShellScript */,
  676. );
  677. buildRules = (
  678. );
  679. dependencies = (
  680. );
  681. name = "WriteFreely-MultiPlatform (macOS)";
  682. packageProductDependencies = (
  683. 1784D2EE27946D9A0033E72E /* WriteFreely */,
  684. 17D4926427947B4D0035BD7E /* Sparkle */,
  685. );
  686. productName = "WriteFreely-MultiPlatform (macOS)";
  687. productReference = 17DF329024C87D3500BCE2E3 /* WriteFreely for Mac.app */;
  688. productType = "com.apple.product-type.application";
  689. };
  690. 17DF329724C87D3500BCE2E3 /* Tests iOS */ = {
  691. isa = PBXNativeTarget;
  692. buildConfigurationList = 17DF32B824C87D3500BCE2E3 /* Build configuration list for PBXNativeTarget "Tests iOS" */;
  693. buildPhases = (
  694. 17DF329424C87D3500BCE2E3 /* Sources */,
  695. 17DF329524C87D3500BCE2E3 /* Frameworks */,
  696. 17DF329624C87D3500BCE2E3 /* Resources */,
  697. );
  698. buildRules = (
  699. );
  700. dependencies = (
  701. 17DF329A24C87D3500BCE2E3 /* PBXTargetDependency */,
  702. );
  703. name = "Tests iOS";
  704. productName = "Tests iOS";
  705. productReference = 17DF329824C87D3500BCE2E3 /* Tests iOS.xctest */;
  706. productType = "com.apple.product-type.bundle.ui-testing";
  707. };
  708. 17DF32A224C87D3500BCE2E3 /* Tests macOS */ = {
  709. isa = PBXNativeTarget;
  710. buildConfigurationList = 17DF32BB24C87D3500BCE2E3 /* Build configuration list for PBXNativeTarget "Tests macOS" */;
  711. buildPhases = (
  712. 17DF329F24C87D3500BCE2E3 /* Sources */,
  713. 17DF32A024C87D3500BCE2E3 /* Frameworks */,
  714. 17DF32A124C87D3500BCE2E3 /* Resources */,
  715. );
  716. buildRules = (
  717. );
  718. dependencies = (
  719. 17DF32A524C87D3500BCE2E3 /* PBXTargetDependency */,
  720. );
  721. name = "Tests macOS";
  722. productName = "Tests macOS";
  723. productReference = 17DF32A324C87D3500BCE2E3 /* Tests macOS.xctest */;
  724. productType = "com.apple.product-type.bundle.ui-testing";
  725. };
  726. /* End PBXNativeTarget section */
  727. /* Begin PBXProject section */
  728. 17DF327C24C87D3300BCE2E3 /* Project object */ = {
  729. isa = PBXProject;
  730. attributes = {
  731. LastSwiftUpdateCheck = 1310;
  732. LastUpgradeCheck = 1320;
  733. TargetAttributes = {
  734. 172E0FFE2735B83E00061372 = {
  735. CreatedOnToolsVersion = 13.1;
  736. };
  737. 17DF328724C87D3500BCE2E3 = {
  738. CreatedOnToolsVersion = 12.0;
  739. };
  740. 17DF328F24C87D3500BCE2E3 = {
  741. CreatedOnToolsVersion = 12.0;
  742. };
  743. 17DF329724C87D3500BCE2E3 = {
  744. CreatedOnToolsVersion = 12.0;
  745. TestTargetID = 17DF328724C87D3500BCE2E3;
  746. };
  747. 17DF32A224C87D3500BCE2E3 = {
  748. CreatedOnToolsVersion = 12.0;
  749. TestTargetID = 17DF328F24C87D3500BCE2E3;
  750. };
  751. };
  752. };
  753. buildConfigurationList = 17DF327F24C87D3300BCE2E3 /* Build configuration list for PBXProject "WriteFreely-MultiPlatform" */;
  754. compatibilityVersion = "Xcode 9.3";
  755. developmentRegion = en;
  756. hasScannedForEncodings = 0;
  757. knownRegions = (
  758. en,
  759. Base,
  760. );
  761. mainGroup = 17DF327B24C87D3300BCE2E3;
  762. packageReferences = (
  763. 1784D2EB27946D880033E72E /* XCRemoteSwiftPackageReference "writefreely-swift" */,
  764. 17D4926327947B4D0035BD7E /* XCRemoteSwiftPackageReference "Sparkle" */,
  765. );
  766. productRefGroup = 17DF328924C87D3500BCE2E3 /* Products */;
  767. projectDirPath = "";
  768. projectRoot = "";
  769. targets = (
  770. 17DF328724C87D3500BCE2E3 /* WriteFreely-MultiPlatform (iOS) */,
  771. 17DF328F24C87D3500BCE2E3 /* WriteFreely-MultiPlatform (macOS) */,
  772. 17DF329724C87D3500BCE2E3 /* Tests iOS */,
  773. 17DF32A224C87D3500BCE2E3 /* Tests macOS */,
  774. 172E0FFE2735B83E00061372 /* ActionExtension-iOS */,
  775. );
  776. };
  777. /* End PBXProject section */
  778. /* Begin PBXResourcesBuildPhase section */
  779. 172E0FFD2735B83E00061372 /* Resources */ = {
  780. isa = PBXResourcesBuildPhase;
  781. buildActionMask = 2147483647;
  782. files = (
  783. 17836C17273F0FBB0047AF61 /* OpenSans-Regular.ttf in Resources */,
  784. 172E10132735BB6200061372 /* Action.js in Resources */,
  785. 172E10042735B83E00061372 /* Media.xcassets in Resources */,
  786. 17836C15273F0FBB0047AF61 /* Hack-Regular.ttf in Resources */,
  787. 17836C16273F0FBB0047AF61 /* LoraGX.ttf in Resources */,
  788. );
  789. runOnlyForDeploymentPostprocessing = 0;
  790. };
  791. 17DF328624C87D3500BCE2E3 /* Resources */ = {
  792. isa = PBXResourcesBuildPhase;
  793. buildActionMask = 2147483647;
  794. files = (
  795. 17B3E965250FAA9000EE9748 /* LaunchScreen.storyboard in Resources */,
  796. 17DFDE8B251D309400A25F31 /* OpenSans-License.txt in Resources */,
  797. 17DF32AE24C87D3500BCE2E3 /* Assets.xcassets in Resources */,
  798. 17D4F39E2514F0E500517CE6 /* OpenSans-Regular.ttf in Resources */,
  799. 17D4F36C2514EE2F00517CE6 /* LoraGX.ttf in Resources */,
  800. 17D4F3A52514F1E900517CE6 /* Hack-Regular.ttf in Resources */,
  801. 17DFDE89251D309400A25F31 /* Lora-Cyrillic-OFL.txt in Resources */,
  802. 17DFDE87251D309400A25F31 /* Hack-License.txt in Resources */,
  803. );
  804. runOnlyForDeploymentPostprocessing = 0;
  805. };
  806. 17DF328E24C87D3500BCE2E3 /* Resources */ = {
  807. isa = PBXResourcesBuildPhase;
  808. buildActionMask = 2147483647;
  809. files = (
  810. 17DF32AF24C87D3500BCE2E3 /* Assets.xcassets in Resources */,
  811. 17DFDE8C251D309400A25F31 /* OpenSans-License.txt in Resources */,
  812. 17B5103B2515448D00E9631F /* Credits.rtf in Resources */,
  813. 17D4F39F2514F0E500517CE6 /* OpenSans-Regular.ttf in Resources */,
  814. 17D4F3A62514F1E900517CE6 /* Hack-Regular.ttf in Resources */,
  815. 17D4F36D2514EE2F00517CE6 /* LoraGX.ttf in Resources */,
  816. 17DFDE8A251D309400A25F31 /* Lora-Cyrillic-OFL.txt in Resources */,
  817. 17DFDE88251D309400A25F31 /* Hack-License.txt in Resources */,
  818. );
  819. runOnlyForDeploymentPostprocessing = 0;
  820. };
  821. 17DF329624C87D3500BCE2E3 /* Resources */ = {
  822. isa = PBXResourcesBuildPhase;
  823. buildActionMask = 2147483647;
  824. files = (
  825. );
  826. runOnlyForDeploymentPostprocessing = 0;
  827. };
  828. 17DF32A124C87D3500BCE2E3 /* Resources */ = {
  829. isa = PBXResourcesBuildPhase;
  830. buildActionMask = 2147483647;
  831. files = (
  832. );
  833. runOnlyForDeploymentPostprocessing = 0;
  834. };
  835. /* End PBXResourcesBuildPhase section */
  836. /* Begin PBXShellScriptBuildPhase section */
  837. 17DF32C424C87E6700BCE2E3 /* ShellScript */ = {
  838. isa = PBXShellScriptBuildPhase;
  839. alwaysOutOfDate = 1;
  840. buildActionMask = 2147483647;
  841. files = (
  842. );
  843. inputFileListPaths = (
  844. );
  845. inputPaths = (
  846. );
  847. outputFileListPaths = (
  848. );
  849. outputPaths = (
  850. );
  851. runOnlyForDeploymentPostprocessing = 0;
  852. shellPath = /bin/sh;
  853. shellScript = "# Run SwiftLint on builds\nif which swiftlint >/dev/null; then\n swiftlint\nelse\n echo \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\nfi\n";
  854. };
  855. 17DF32C524C87FDB00BCE2E3 /* ShellScript */ = {
  856. isa = PBXShellScriptBuildPhase;
  857. alwaysOutOfDate = 1;
  858. buildActionMask = 2147483647;
  859. files = (
  860. );
  861. inputFileListPaths = (
  862. );
  863. inputPaths = (
  864. );
  865. outputFileListPaths = (
  866. );
  867. outputPaths = (
  868. );
  869. runOnlyForDeploymentPostprocessing = 0;
  870. shellPath = /bin/sh;
  871. shellScript = "# Run SwiftLint on builds\nif which swiftlint >/dev/null; then\n swiftlint\nelse\n echo \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\nfi\n";
  872. };
  873. /* End PBXShellScriptBuildPhase section */
  874. /* Begin PBXSourcesBuildPhase section */
  875. 172E0FFB2735B83E00061372 /* Sources */ = {
  876. isa = PBXSourcesBuildPhase;
  877. buildActionMask = 2147483647;
  878. files = (
  879. 172E10062735B83E00061372 /* ActionViewController.swift in Sources */,
  880. 172E10202735C64600061372 /* WFACollection+CoreDataClass.swift in Sources */,
  881. 172E10222735C64600061372 /* WFAPost+CoreDataProperties.swift in Sources */,
  882. 172E101D2735C5AB00061372 /* LocalStorageModel.xcdatamodeld in Sources */,
  883. 17027E27286757650062EB29 /* Logging.swift in Sources */,
  884. 17836C14273EFB870047AF61 /* UserDefaults+Extensions.swift in Sources */,
  885. 172E10242735C72500061372 /* PreferencesModel.swift in Sources */,
  886. 172E10172735C2DF00061372 /* EnvironmentValues+Extensions.swift in Sources */,
  887. 172E10212735C64600061372 /* WFACollection+CoreDataProperties.swift in Sources */,
  888. 172E101C2735C57400061372 /* LocalStorageManager.swift in Sources */,
  889. 172E10192735C3DB00061372 /* ContentView.swift in Sources */,
  890. 1727526828099802003D0A6A /* ErrorConstants.swift in Sources */,
  891. 172E10152735C2BD00061372 /* UIHostingView.swift in Sources */,
  892. 172E101F2735C64600061372 /* WFAPost+CoreDataClass.swift in Sources */,
  893. 1727526C2809991A003D0A6A /* ErrorHandling.swift in Sources */,
  894. 172E10232735C6FF00061372 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift in Sources */,
  895. 172E101E2735C62F00061372 /* PostStatus.swift in Sources */,
  896. );
  897. runOnlyForDeploymentPostprocessing = 0;
  898. };
  899. 17DF328424C87D3500BCE2E3 /* Sources */ = {
  900. isa = PBXSourcesBuildPhase;
  901. buildActionMask = 2147483647;
  902. files = (
  903. 17DF32AC24C87D3500BCE2E3 /* ContentView.swift in Sources */,
  904. 173E19D1254318F600440F0F /* RemoteChangePromptView.swift in Sources */,
  905. 17B37C5625C8679800FE75E9 /* WriteFreelyModel+API.swift in Sources */,
  906. 17C42E622507D8E600072984 /* PostStatus.swift in Sources */,
  907. 1756DBBA24FED45500207AB8 /* LocalStorageManager.swift in Sources */,
  908. 1727526A2809991A003D0A6A /* ErrorHandling.swift in Sources */,
  909. 1756AE8124CB844500FD7257 /* View+Keyboard.swift in Sources */,
  910. 17C42E652509237800072984 /* PostListFilteredView.swift in Sources */,
  911. 170DFA34251BBC44001D82A0 /* PostEditorModel.swift in Sources */,
  912. 17120DAC24E1B99F002B9F6C /* AccountLoginView.swift in Sources */,
  913. 17B37C4B25C8661300FE75E9 /* WriteFreelyModel+Keychain.swift in Sources */,
  914. 17480CA5251272EE00EB7765 /* Bundle+AppVersion.swift in Sources */,
  915. 17B37C5D25C8698900FE75E9 /* WriteFreelyModel+APIHandlers.swift in Sources */,
  916. 17120DA924E1B2F5002B9F6C /* AccountLogoutView.swift in Sources */,
  917. 171BFDFA24D4AF8300888236 /* CollectionListView.swift in Sources */,
  918. 1756DBB324FECDBB00207AB8 /* PostEditorStatusToolbarView.swift in Sources */,
  919. 17120DB224E1E19C002B9F6C /* SettingsHeaderView.swift in Sources */,
  920. 375A67E828FC555C007A1AC0 /* MultilineTextView.swift in Sources */,
  921. 171DC677272C7D0B002B9B8A /* UserDefaults+Extensions.swift in Sources */,
  922. 1756DBB724FED3A400207AB8 /* LocalStorageModel.xcdatamodeld in Sources */,
  923. 17B996DA2502D23E0017B536 /* WFAPost+CoreDataProperties.swift in Sources */,
  924. 1756AE7724CB2EDD00FD7257 /* PostEditorView.swift in Sources */,
  925. 17DF32D524C8CA3400BCE2E3 /* PostStatusBadgeView.swift in Sources */,
  926. 17D435E824E3128F0036B539 /* PreferencesModel.swift in Sources */,
  927. 1756AE7A24CB65DF00FD7257 /* PostListView.swift in Sources */,
  928. 17B996D82502D23E0017B536 /* WFAPost+CoreDataClass.swift in Sources */,
  929. 1756DC0124FEE18400207AB8 /* WFACollection+CoreDataClass.swift in Sources */,
  930. 17DF32AA24C87D3500BCE2E3 /* WriteFreely_MultiPlatformApp.swift in Sources */,
  931. 17120DA724E19D11002B9F6C /* SettingsView.swift in Sources */,
  932. 17027E25286741B90062EB29 /* Logging.swift in Sources */,
  933. 1727526628099802003D0A6A /* ErrorConstants.swift in Sources */,
  934. 1756DC0324FEE18400207AB8 /* WFACollection+CoreDataProperties.swift in Sources */,
  935. 17120DA224E1985C002B9F6C /* AccountModel.swift in Sources */,
  936. 17120DA324E19A42002B9F6C /* PreferencesView.swift in Sources */,
  937. 1756AE6E24CB255B00FD7257 /* PostListModel.swift in Sources */,
  938. 173E19E3254329CC00440F0F /* PostTextEditingView.swift in Sources */,
  939. 174D313224EC2831006CA9EE /* WriteFreelyModel.swift in Sources */,
  940. 17C42E70250AA12300072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift in Sources */,
  941. 17120DA124E19839002B9F6C /* AccountView.swift in Sources */,
  942. 1756AE7424CB26FA00FD7257 /* PostCellView.swift in Sources */,
  943. );
  944. runOnlyForDeploymentPostprocessing = 0;
  945. };
  946. 17DF328C24C87D3500BCE2E3 /* Sources */ = {
  947. isa = PBXSourcesBuildPhase;
  948. buildActionMask = 2147483647;
  949. files = (
  950. 171DC678272C7D0B002B9B8A /* UserDefaults+Extensions.swift in Sources */,
  951. 17DF32AD24C87D3500BCE2E3 /* ContentView.swift in Sources */,
  952. 1756DBBB24FED45500207AB8 /* LocalStorageManager.swift in Sources */,
  953. 17A4FEED25927E730037E96B /* AppDelegate.swift in Sources */,
  954. 174D313324EC2831006CA9EE /* WriteFreelyModel.swift in Sources */,
  955. 17D435E924E3128F0036B539 /* PreferencesModel.swift in Sources */,
  956. 17120DAA24E1B2F5002B9F6C /* AccountLogoutView.swift in Sources */,
  957. 17DF32D624C8CA3400BCE2E3 /* PostStatusBadgeView.swift in Sources */,
  958. 172C492E2593981900E20ADF /* MacUpdatesView.swift in Sources */,
  959. 1727526728099802003D0A6A /* ErrorConstants.swift in Sources */,
  960. 17479F152583D8E40072B7FB /* PostEditorSharingPicker.swift in Sources */,
  961. 17480CA6251272EE00EB7765 /* Bundle+AppVersion.swift in Sources */,
  962. 17C42E662509237800072984 /* PostListFilteredView.swift in Sources */,
  963. 17120DAD24E1B99F002B9F6C /* AccountLoginView.swift in Sources */,
  964. 17D4926727947D780035BD7E /* MacUpdatesViewModel.swift in Sources */,
  965. 17466626256C0D0600629997 /* MacEditorTextView.swift in Sources */,
  966. 17027E26286741B90062EB29 /* Logging.swift in Sources */,
  967. 1727526B2809991A003D0A6A /* ErrorHandling.swift in Sources */,
  968. 17E5DF8A2543610700DCDC9B /* PostTextEditingView.swift in Sources */,
  969. 17C42E71250AAFD500072984 /* NSManagedObjectContext+ExecuteAndMergeChanges.swift in Sources */,
  970. 1756AE7B24CB65DF00FD7257 /* PostListView.swift in Sources */,
  971. 1753F6AC24E431CC00309365 /* MacPreferencesView.swift in Sources */,
  972. 1756DC0424FEE18400207AB8 /* WFACollection+CoreDataProperties.swift in Sources */,
  973. 17B996DB2502D23E0017B536 /* WFAPost+CoreDataProperties.swift in Sources */,
  974. 17BC618A25715318003363CA /* ActivePostToolbarView.swift in Sources */,
  975. 171BFDFB24D4AF8300888236 /* CollectionListView.swift in Sources */,
  976. 17A67CAF251A5DD7002F163D /* PostEditorView.swift in Sources */,
  977. 17DF32AB24C87D3500BCE2E3 /* WriteFreely_MultiPlatformApp.swift in Sources */,
  978. 17B37C5725C8679800FE75E9 /* WriteFreelyModel+API.swift in Sources */,
  979. 17A5388C24DDC83F00DEFF9A /* AccountModel.swift in Sources */,
  980. 17B996D92502D23E0017B536 /* WFAPost+CoreDataClass.swift in Sources */,
  981. 1756DBB824FED3A400207AB8 /* LocalStorageModel.xcdatamodeld in Sources */,
  982. 17B37C4C25C8661300FE75E9 /* WriteFreelyModel+Keychain.swift in Sources */,
  983. 17A5389324DDED0000DEFF9A /* PreferencesView.swift in Sources */,
  984. 1756AE6F24CB255B00FD7257 /* PostListModel.swift in Sources */,
  985. 1756DC0224FEE18400207AB8 /* WFACollection+CoreDataClass.swift in Sources */,
  986. 1756DBB424FECDBB00207AB8 /* PostEditorStatusToolbarView.swift in Sources */,
  987. 17A5388F24DDEC7400DEFF9A /* AccountView.swift in Sources */,
  988. 1780F6EF25895EDB00FE45FF /* PostCommands.swift in Sources */,
  989. 17B37C5E25C8698900FE75E9 /* WriteFreelyModel+APIHandlers.swift in Sources */,
  990. 170DFA35251BBC44001D82A0 /* PostEditorModel.swift in Sources */,
  991. 1756AE7524CB26FA00FD7257 /* PostCellView.swift in Sources */,
  992. 17A5388824DDA31F00DEFF9A /* MacAccountView.swift in Sources */,
  993. 17C42E632507D8E600072984 /* PostStatus.swift in Sources */,
  994. );
  995. runOnlyForDeploymentPostprocessing = 0;
  996. };
  997. 17DF329424C87D3500BCE2E3 /* Sources */ = {
  998. isa = PBXSourcesBuildPhase;
  999. buildActionMask = 2147483647;
  1000. files = (
  1001. 17DF329D24C87D3500BCE2E3 /* Tests_iOS.swift in Sources */,
  1002. );
  1003. runOnlyForDeploymentPostprocessing = 0;
  1004. };
  1005. 17DF329F24C87D3500BCE2E3 /* Sources */ = {
  1006. isa = PBXSourcesBuildPhase;
  1007. buildActionMask = 2147483647;
  1008. files = (
  1009. 17DF32A824C87D3500BCE2E3 /* Tests_macOS.swift in Sources */,
  1010. );
  1011. runOnlyForDeploymentPostprocessing = 0;
  1012. };
  1013. /* End PBXSourcesBuildPhase section */
  1014. /* Begin PBXTargetDependency section */
  1015. 172E100C2735B83E00061372 /* PBXTargetDependency */ = {
  1016. isa = PBXTargetDependency;
  1017. target = 172E0FFE2735B83E00061372 /* ActionExtension-iOS */;
  1018. targetProxy = 172E100B2735B83E00061372 /* PBXContainerItemProxy */;
  1019. };
  1020. 17DF329A24C87D3500BCE2E3 /* PBXTargetDependency */ = {
  1021. isa = PBXTargetDependency;
  1022. target = 17DF328724C87D3500BCE2E3 /* WriteFreely-MultiPlatform (iOS) */;
  1023. targetProxy = 17DF329924C87D3500BCE2E3 /* PBXContainerItemProxy */;
  1024. };
  1025. 17DF32A524C87D3500BCE2E3 /* PBXTargetDependency */ = {
  1026. isa = PBXTargetDependency;
  1027. target = 17DF328F24C87D3500BCE2E3 /* WriteFreely-MultiPlatform (macOS) */;
  1028. targetProxy = 17DF32A424C87D3500BCE2E3 /* PBXContainerItemProxy */;
  1029. };
  1030. /* End PBXTargetDependency section */
  1031. /* Begin XCBuildConfiguration section */
  1032. 172E100F2735B83E00061372 /* Debug */ = {
  1033. isa = XCBuildConfiguration;
  1034. buildSettings = {
  1035. ASSETCATALOG_COMPILER_ALTERNATE_APPICON_NAMES = "";
  1036. ASSETCATALOG_COMPILER_APPICON_NAME = AppIconExtension;
  1037. CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
  1038. CODE_SIGN_ENTITLEMENTS = "ActionExtension-iOS/ActionExtension-iOS.entitlements";
  1039. CODE_SIGN_STYLE = Automatic;
  1040. CURRENT_PROJECT_VERSION = 691;
  1041. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1042. GENERATE_INFOPLIST_FILE = YES;
  1043. INFOPLIST_FILE = "ActionExtension-iOS/Info.plist";
  1044. INFOPLIST_KEY_CFBundleDisplayName = "Create WriteFreely draft";
  1045. INFOPLIST_KEY_NSHumanReadableCopyright = "";
  1046. IPHONEOS_DEPLOYMENT_TARGET = 14.0;
  1047. LD_RUNPATH_SEARCH_PATHS = (
  1048. "$(inherited)",
  1049. "@executable_path/Frameworks",
  1050. "@executable_path/../../Frameworks",
  1051. );
  1052. MARKETING_VERSION = 1.0.14;
  1053. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.WriteFreely-MultiPlatform.ActionExtension-iOS";
  1054. PRODUCT_NAME = "$(TARGET_NAME)";
  1055. SDKROOT = iphoneos;
  1056. SKIP_INSTALL = YES;
  1057. SWIFT_EMIT_LOC_STRINGS = YES;
  1058. SWIFT_VERSION = 5.0;
  1059. TARGETED_DEVICE_FAMILY = "1,2";
  1060. };
  1061. name = Debug;
  1062. };
  1063. 172E10102735B83E00061372 /* Release */ = {
  1064. isa = XCBuildConfiguration;
  1065. buildSettings = {
  1066. ASSETCATALOG_COMPILER_ALTERNATE_APPICON_NAMES = "";
  1067. ASSETCATALOG_COMPILER_APPICON_NAME = AppIconExtension;
  1068. CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
  1069. CODE_SIGN_ENTITLEMENTS = "ActionExtension-iOS/ActionExtension-iOS.entitlements";
  1070. CODE_SIGN_STYLE = Automatic;
  1071. CURRENT_PROJECT_VERSION = 691;
  1072. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1073. GENERATE_INFOPLIST_FILE = YES;
  1074. INFOPLIST_FILE = "ActionExtension-iOS/Info.plist";
  1075. INFOPLIST_KEY_CFBundleDisplayName = "Create WriteFreely draft";
  1076. INFOPLIST_KEY_NSHumanReadableCopyright = "";
  1077. IPHONEOS_DEPLOYMENT_TARGET = 14.0;
  1078. LD_RUNPATH_SEARCH_PATHS = (
  1079. "$(inherited)",
  1080. "@executable_path/Frameworks",
  1081. "@executable_path/../../Frameworks",
  1082. );
  1083. MARKETING_VERSION = 1.0.14;
  1084. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.WriteFreely-MultiPlatform.ActionExtension-iOS";
  1085. PRODUCT_NAME = "$(TARGET_NAME)";
  1086. SDKROOT = iphoneos;
  1087. SKIP_INSTALL = YES;
  1088. SWIFT_EMIT_LOC_STRINGS = YES;
  1089. SWIFT_VERSION = 5.0;
  1090. TARGETED_DEVICE_FAMILY = "1,2";
  1091. VALIDATE_PRODUCT = YES;
  1092. };
  1093. name = Release;
  1094. };
  1095. 17DF32B024C87D3500BCE2E3 /* Debug */ = {
  1096. isa = XCBuildConfiguration;
  1097. buildSettings = {
  1098. ALWAYS_SEARCH_USER_PATHS = NO;
  1099. CLANG_ANALYZER_NONNULL = YES;
  1100. CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
  1101. CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
  1102. CLANG_CXX_LIBRARY = "libc++";
  1103. CLANG_ENABLE_MODULES = YES;
  1104. CLANG_ENABLE_OBJC_ARC = YES;
  1105. CLANG_ENABLE_OBJC_WEAK = YES;
  1106. CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
  1107. CLANG_WARN_BOOL_CONVERSION = YES;
  1108. CLANG_WARN_COMMA = YES;
  1109. CLANG_WARN_CONSTANT_CONVERSION = YES;
  1110. CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
  1111. CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
  1112. CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
  1113. CLANG_WARN_EMPTY_BODY = YES;
  1114. CLANG_WARN_ENUM_CONVERSION = YES;
  1115. CLANG_WARN_INFINITE_RECURSION = YES;
  1116. CLANG_WARN_INT_CONVERSION = YES;
  1117. CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
  1118. CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
  1119. CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
  1120. CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
  1121. CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
  1122. CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
  1123. CLANG_WARN_STRICT_PROTOTYPES = YES;
  1124. CLANG_WARN_SUSPICIOUS_MOVE = YES;
  1125. CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
  1126. CLANG_WARN_UNREACHABLE_CODE = YES;
  1127. CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
  1128. COPY_PHASE_STRIP = NO;
  1129. DEBUG_INFORMATION_FORMAT = dwarf;
  1130. ENABLE_STRICT_OBJC_MSGSEND = YES;
  1131. ENABLE_TESTABILITY = YES;
  1132. GCC_C_LANGUAGE_STANDARD = gnu11;
  1133. GCC_DYNAMIC_NO_PIC = NO;
  1134. GCC_NO_COMMON_BLOCKS = YES;
  1135. GCC_OPTIMIZATION_LEVEL = 0;
  1136. GCC_PREPROCESSOR_DEFINITIONS = (
  1137. "DEBUG=1",
  1138. "$(inherited)",
  1139. );
  1140. GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
  1141. GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
  1142. GCC_WARN_UNDECLARED_SELECTOR = YES;
  1143. GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
  1144. GCC_WARN_UNUSED_FUNCTION = YES;
  1145. GCC_WARN_UNUSED_VARIABLE = YES;
  1146. MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
  1147. MTL_FAST_MATH = YES;
  1148. ONLY_ACTIVE_ARCH = YES;
  1149. SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
  1150. SWIFT_OPTIMIZATION_LEVEL = "-Onone";
  1151. };
  1152. name = Debug;
  1153. };
  1154. 17DF32B124C87D3500BCE2E3 /* Release */ = {
  1155. isa = XCBuildConfiguration;
  1156. buildSettings = {
  1157. ALWAYS_SEARCH_USER_PATHS = NO;
  1158. CLANG_ANALYZER_NONNULL = YES;
  1159. CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
  1160. CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
  1161. CLANG_CXX_LIBRARY = "libc++";
  1162. CLANG_ENABLE_MODULES = YES;
  1163. CLANG_ENABLE_OBJC_ARC = YES;
  1164. CLANG_ENABLE_OBJC_WEAK = YES;
  1165. CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
  1166. CLANG_WARN_BOOL_CONVERSION = YES;
  1167. CLANG_WARN_COMMA = YES;
  1168. CLANG_WARN_CONSTANT_CONVERSION = YES;
  1169. CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
  1170. CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
  1171. CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
  1172. CLANG_WARN_EMPTY_BODY = YES;
  1173. CLANG_WARN_ENUM_CONVERSION = YES;
  1174. CLANG_WARN_INFINITE_RECURSION = YES;
  1175. CLANG_WARN_INT_CONVERSION = YES;
  1176. CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
  1177. CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
  1178. CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
  1179. CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
  1180. CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
  1181. CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
  1182. CLANG_WARN_STRICT_PROTOTYPES = YES;
  1183. CLANG_WARN_SUSPICIOUS_MOVE = YES;
  1184. CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
  1185. CLANG_WARN_UNREACHABLE_CODE = YES;
  1186. CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
  1187. COPY_PHASE_STRIP = NO;
  1188. DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
  1189. ENABLE_NS_ASSERTIONS = NO;
  1190. ENABLE_STRICT_OBJC_MSGSEND = YES;
  1191. GCC_C_LANGUAGE_STANDARD = gnu11;
  1192. GCC_NO_COMMON_BLOCKS = YES;
  1193. GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
  1194. GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
  1195. GCC_WARN_UNDECLARED_SELECTOR = YES;
  1196. GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
  1197. GCC_WARN_UNUSED_FUNCTION = YES;
  1198. GCC_WARN_UNUSED_VARIABLE = YES;
  1199. MTL_ENABLE_DEBUG_INFO = NO;
  1200. MTL_FAST_MATH = YES;
  1201. SWIFT_COMPILATION_MODE = wholemodule;
  1202. SWIFT_OPTIMIZATION_LEVEL = "-O";
  1203. };
  1204. name = Release;
  1205. };
  1206. 17DF32B324C87D3500BCE2E3 /* Debug */ = {
  1207. isa = XCBuildConfiguration;
  1208. buildSettings = {
  1209. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  1210. ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
  1211. ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
  1212. CODE_SIGN_ENTITLEMENTS = "WriteFreely-MultiPlatform (iOS).entitlements";
  1213. CODE_SIGN_STYLE = Automatic;
  1214. CURRENT_PROJECT_VERSION = 691;
  1215. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1216. ENABLE_PREVIEWS = YES;
  1217. INFOPLIST_FILE = iOS/Info.plist;
  1218. IPHONEOS_DEPLOYMENT_TARGET = 14.0;
  1219. LD_RUNPATH_SEARCH_PATHS = (
  1220. "$(inherited)",
  1221. "@executable_path/Frameworks",
  1222. );
  1223. MARKETING_VERSION = 1.0.14;
  1224. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.WriteFreely-MultiPlatform";
  1225. PRODUCT_NAME = "WriteFreely-MultiPlatform";
  1226. SDKROOT = iphoneos;
  1227. SWIFT_VERSION = 5.0;
  1228. TARGETED_DEVICE_FAMILY = "1,2";
  1229. };
  1230. name = Debug;
  1231. };
  1232. 17DF32B424C87D3500BCE2E3 /* Release */ = {
  1233. isa = XCBuildConfiguration;
  1234. buildSettings = {
  1235. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  1236. ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
  1237. ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
  1238. CODE_SIGN_ENTITLEMENTS = "WriteFreely-MultiPlatform (iOS).entitlements";
  1239. CODE_SIGN_STYLE = Automatic;
  1240. CURRENT_PROJECT_VERSION = 691;
  1241. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1242. ENABLE_PREVIEWS = YES;
  1243. INFOPLIST_FILE = iOS/Info.plist;
  1244. IPHONEOS_DEPLOYMENT_TARGET = 14.0;
  1245. LD_RUNPATH_SEARCH_PATHS = (
  1246. "$(inherited)",
  1247. "@executable_path/Frameworks",
  1248. );
  1249. MARKETING_VERSION = 1.0.14;
  1250. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.WriteFreely-MultiPlatform";
  1251. PRODUCT_NAME = "WriteFreely-MultiPlatform";
  1252. SDKROOT = iphoneos;
  1253. SWIFT_VERSION = 5.0;
  1254. TARGETED_DEVICE_FAMILY = "1,2";
  1255. VALIDATE_PRODUCT = YES;
  1256. };
  1257. name = Release;
  1258. };
  1259. 17DF32B624C87D3500BCE2E3 /* Debug */ = {
  1260. isa = XCBuildConfiguration;
  1261. buildSettings = {
  1262. ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
  1263. ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
  1264. CODE_SIGN_ENTITLEMENTS = macOS/macOS.entitlements;
  1265. CODE_SIGN_IDENTITY = "Apple Development";
  1266. CODE_SIGN_STYLE = Automatic;
  1267. COMBINE_HIDPI_IMAGES = YES;
  1268. CURRENT_PROJECT_VERSION = 690;
  1269. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1270. ENABLE_HARDENED_RUNTIME = YES;
  1271. ENABLE_PREVIEWS = YES;
  1272. INFOPLIST_FILE = macOS/Info.plist;
  1273. LD_RUNPATH_SEARCH_PATHS = (
  1274. "$(inherited)",
  1275. "@executable_path/../Frameworks",
  1276. );
  1277. MACOSX_DEPLOYMENT_TARGET = 11.0;
  1278. MARKETING_VERSION = 0.7.0;
  1279. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.WriteFreely-MultiPlatform";
  1280. PRODUCT_NAME = "WriteFreely for Mac";
  1281. SDKROOT = macosx;
  1282. SWIFT_VERSION = 5.0;
  1283. };
  1284. name = Debug;
  1285. };
  1286. 17DF32B724C87D3500BCE2E3 /* Release */ = {
  1287. isa = XCBuildConfiguration;
  1288. buildSettings = {
  1289. ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
  1290. ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
  1291. CODE_SIGN_ENTITLEMENTS = macOS/macOS.entitlements;
  1292. CODE_SIGN_IDENTITY = "Apple Development";
  1293. CODE_SIGN_STYLE = Automatic;
  1294. COMBINE_HIDPI_IMAGES = YES;
  1295. CURRENT_PROJECT_VERSION = 690;
  1296. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1297. ENABLE_HARDENED_RUNTIME = YES;
  1298. ENABLE_PREVIEWS = YES;
  1299. INFOPLIST_FILE = macOS/Info.plist;
  1300. LD_RUNPATH_SEARCH_PATHS = (
  1301. "$(inherited)",
  1302. "@executable_path/../Frameworks",
  1303. );
  1304. MACOSX_DEPLOYMENT_TARGET = 11.0;
  1305. MARKETING_VERSION = 0.7.0;
  1306. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.WriteFreely-MultiPlatform";
  1307. PRODUCT_NAME = "WriteFreely for Mac";
  1308. SDKROOT = macosx;
  1309. SWIFT_VERSION = 5.0;
  1310. };
  1311. name = Release;
  1312. };
  1313. 17DF32B924C87D3500BCE2E3 /* Debug */ = {
  1314. isa = XCBuildConfiguration;
  1315. buildSettings = {
  1316. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  1317. CODE_SIGN_STYLE = Automatic;
  1318. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1319. INFOPLIST_FILE = "Tests iOS/Info.plist";
  1320. IPHONEOS_DEPLOYMENT_TARGET = 14.0;
  1321. LD_RUNPATH_SEARCH_PATHS = (
  1322. "$(inherited)",
  1323. "@executable_path/Frameworks",
  1324. "@loader_path/Frameworks",
  1325. );
  1326. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.Tests-iOS";
  1327. PRODUCT_NAME = "$(TARGET_NAME)";
  1328. SDKROOT = iphoneos;
  1329. SWIFT_VERSION = 5.0;
  1330. TARGETED_DEVICE_FAMILY = "1,2";
  1331. TEST_TARGET_NAME = "WriteFreely-MultiPlatform (iOS)";
  1332. };
  1333. name = Debug;
  1334. };
  1335. 17DF32BA24C87D3500BCE2E3 /* Release */ = {
  1336. isa = XCBuildConfiguration;
  1337. buildSettings = {
  1338. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  1339. CODE_SIGN_STYLE = Automatic;
  1340. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1341. INFOPLIST_FILE = "Tests iOS/Info.plist";
  1342. IPHONEOS_DEPLOYMENT_TARGET = 14.0;
  1343. LD_RUNPATH_SEARCH_PATHS = (
  1344. "$(inherited)",
  1345. "@executable_path/Frameworks",
  1346. "@loader_path/Frameworks",
  1347. );
  1348. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.Tests-iOS";
  1349. PRODUCT_NAME = "$(TARGET_NAME)";
  1350. SDKROOT = iphoneos;
  1351. SWIFT_VERSION = 5.0;
  1352. TARGETED_DEVICE_FAMILY = "1,2";
  1353. TEST_TARGET_NAME = "WriteFreely-MultiPlatform (iOS)";
  1354. VALIDATE_PRODUCT = YES;
  1355. };
  1356. name = Release;
  1357. };
  1358. 17DF32BC24C87D3500BCE2E3 /* Debug */ = {
  1359. isa = XCBuildConfiguration;
  1360. buildSettings = {
  1361. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  1362. CODE_SIGN_STYLE = Automatic;
  1363. COMBINE_HIDPI_IMAGES = YES;
  1364. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1365. INFOPLIST_FILE = "Tests macOS/Info.plist";
  1366. LD_RUNPATH_SEARCH_PATHS = (
  1367. "$(inherited)",
  1368. "@executable_path/../Frameworks",
  1369. "@loader_path/../Frameworks",
  1370. );
  1371. MACOSX_DEPLOYMENT_TARGET = 10.15;
  1372. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.Tests-macOS";
  1373. PRODUCT_NAME = "$(TARGET_NAME)";
  1374. SDKROOT = macosx;
  1375. SWIFT_VERSION = 5.0;
  1376. TEST_TARGET_NAME = "WriteFreely-MultiPlatform (macOS)";
  1377. };
  1378. name = Debug;
  1379. };
  1380. 17DF32BD24C87D3500BCE2E3 /* Release */ = {
  1381. isa = XCBuildConfiguration;
  1382. buildSettings = {
  1383. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  1384. CODE_SIGN_STYLE = Automatic;
  1385. COMBINE_HIDPI_IMAGES = YES;
  1386. DEVELOPMENT_TEAM = TPPAB4YBA6;
  1387. INFOPLIST_FILE = "Tests macOS/Info.plist";
  1388. LD_RUNPATH_SEARCH_PATHS = (
  1389. "$(inherited)",
  1390. "@executable_path/../Frameworks",
  1391. "@loader_path/../Frameworks",
  1392. );
  1393. MACOSX_DEPLOYMENT_TARGET = 10.15;
  1394. PRODUCT_BUNDLE_IDENTIFIER = "com.abunchtell.Tests-macOS";
  1395. PRODUCT_NAME = "$(TARGET_NAME)";
  1396. SDKROOT = macosx;
  1397. SWIFT_VERSION = 5.0;
  1398. TEST_TARGET_NAME = "WriteFreely-MultiPlatform (macOS)";
  1399. };
  1400. name = Release;
  1401. };
  1402. /* End XCBuildConfiguration section */
  1403. /* Begin XCConfigurationList section */
  1404. 172E10112735B83E00061372 /* Build configuration list for PBXNativeTarget "ActionExtension-iOS" */ = {
  1405. isa = XCConfigurationList;
  1406. buildConfigurations = (
  1407. 172E100F2735B83E00061372 /* Debug */,
  1408. 172E10102735B83E00061372 /* Release */,
  1409. );
  1410. defaultConfigurationIsVisible = 0;
  1411. defaultConfigurationName = Release;
  1412. };
  1413. 17DF327F24C87D3300BCE2E3 /* Build configuration list for PBXProject "WriteFreely-MultiPlatform" */ = {
  1414. isa = XCConfigurationList;
  1415. buildConfigurations = (
  1416. 17DF32B024C87D3500BCE2E3 /* Debug */,
  1417. 17DF32B124C87D3500BCE2E3 /* Release */,
  1418. );
  1419. defaultConfigurationIsVisible = 0;
  1420. defaultConfigurationName = Release;
  1421. };
  1422. 17DF32B224C87D3500BCE2E3 /* Build configuration list for PBXNativeTarget "WriteFreely-MultiPlatform (iOS)" */ = {
  1423. isa = XCConfigurationList;
  1424. buildConfigurations = (
  1425. 17DF32B324C87D3500BCE2E3 /* Debug */,
  1426. 17DF32B424C87D3500BCE2E3 /* Release */,
  1427. );
  1428. defaultConfigurationIsVisible = 0;
  1429. defaultConfigurationName = Release;
  1430. };
  1431. 17DF32B524C87D3500BCE2E3 /* Build configuration list for PBXNativeTarget "WriteFreely-MultiPlatform (macOS)" */ = {
  1432. isa = XCConfigurationList;
  1433. buildConfigurations = (
  1434. 17DF32B624C87D3500BCE2E3 /* Debug */,
  1435. 17DF32B724C87D3500BCE2E3 /* Release */,
  1436. );
  1437. defaultConfigurationIsVisible = 0;
  1438. defaultConfigurationName = Release;
  1439. };
  1440. 17DF32B824C87D3500BCE2E3 /* Build configuration list for PBXNativeTarget "Tests iOS" */ = {
  1441. isa = XCConfigurationList;
  1442. buildConfigurations = (
  1443. 17DF32B924C87D3500BCE2E3 /* Debug */,
  1444. 17DF32BA24C87D3500BCE2E3 /* Release */,
  1445. );
  1446. defaultConfigurationIsVisible = 0;
  1447. defaultConfigurationName = Release;
  1448. };
  1449. 17DF32BB24C87D3500BCE2E3 /* Build configuration list for PBXNativeTarget "Tests macOS" */ = {
  1450. isa = XCConfigurationList;
  1451. buildConfigurations = (
  1452. 17DF32BC24C87D3500BCE2E3 /* Debug */,
  1453. 17DF32BD24C87D3500BCE2E3 /* Release */,
  1454. );
  1455. defaultConfigurationIsVisible = 0;
  1456. defaultConfigurationName = Release;
  1457. };
  1458. /* End XCConfigurationList section */
  1459. /* Begin XCRemoteSwiftPackageReference section */
  1460. 1784D2EB27946D880033E72E /* XCRemoteSwiftPackageReference "writefreely-swift" */ = {
  1461. isa = XCRemoteSwiftPackageReference;
  1462. repositoryURL = "https://github.com/writefreely/writefreely-swift";
  1463. requirement = {
  1464. kind = upToNextMajorVersion;
  1465. minimumVersion = 0.3.6;
  1466. };
  1467. };
  1468. 17D4926327947B4D0035BD7E /* XCRemoteSwiftPackageReference "Sparkle" */ = {
  1469. isa = XCRemoteSwiftPackageReference;
  1470. repositoryURL = "https://github.com/sparkle-project/Sparkle";
  1471. requirement = {
  1472. kind = upToNextMinorVersion;
  1473. minimumVersion = 2.3.0;
  1474. };
  1475. };
  1476. /* End XCRemoteSwiftPackageReference section */
  1477. /* Begin XCSwiftPackageProductDependency section */
  1478. 1784D2EC27946D880033E72E /* WriteFreely */ = {
  1479. isa = XCSwiftPackageProductDependency;
  1480. package = 1784D2EB27946D880033E72E /* XCRemoteSwiftPackageReference "writefreely-swift" */;
  1481. productName = WriteFreely;
  1482. };
  1483. 1784D2EE27946D9A0033E72E /* WriteFreely */ = {
  1484. isa = XCSwiftPackageProductDependency;
  1485. package = 1784D2EB27946D880033E72E /* XCRemoteSwiftPackageReference "writefreely-swift" */;
  1486. productName = WriteFreely;
  1487. };
  1488. 1784D2F027946DA10033E72E /* WriteFreely */ = {
  1489. isa = XCSwiftPackageProductDependency;
  1490. package = 1784D2EB27946D880033E72E /* XCRemoteSwiftPackageReference "writefreely-swift" */;
  1491. productName = WriteFreely;
  1492. };
  1493. 17D4926427947B4D0035BD7E /* Sparkle */ = {
  1494. isa = XCSwiftPackageProductDependency;
  1495. package = 17D4926327947B4D0035BD7E /* XCRemoteSwiftPackageReference "Sparkle" */;
  1496. productName = Sparkle;
  1497. };
  1498. /* End XCSwiftPackageProductDependency section */
  1499. /* Begin XCVersionGroup section */
  1500. 1756DBB524FED3A400207AB8 /* LocalStorageModel.xcdatamodeld */ = {
  1501. isa = XCVersionGroup;
  1502. children = (
  1503. 1756DBB624FED3A400207AB8 /* LocalStorageModel.xcdatamodel */,
  1504. );
  1505. currentVersion = 1756DBB624FED3A400207AB8 /* LocalStorageModel.xcdatamodel */;
  1506. path = LocalStorageModel.xcdatamodeld;
  1507. sourceTree = "<group>";
  1508. versionGroupType = wrapper.xcdatamodel;
  1509. };
  1510. /* End XCVersionGroup section */
  1511. };
  1512. rootObject = 17DF327C24C87D3300BCE2E3 /* Project object */;
  1513. }