diff options
| author | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-09-08 16:04:35 +0200 |
|---|---|---|
| committer | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-09-08 16:04:35 +0200 |
| commit | cec89d9e844dc39b84778e1b88e74e23f9ca2e6a (patch) | |
| tree | 16e36fdc1263dff71510256a43dc0d972bf35c88 /Types | |
| parent | a5e25cc05e5e33e114331cc826211c89adbcfa6a (diff) | |
WIP generic Delicious API compatible
Diffstat (limited to 'Types')
| -rw-r--r-- | Types/Constants.h | 9 | ||||
| -rw-r--r-- | Types/Constants.m | 8 | ||||
| -rw-r--r-- | Types/SocialSite.h | 7 | ||||
| -rw-r--r-- | Types/SocialSite.m | 22 |
4 files changed, 31 insertions, 15 deletions
diff --git a/Types/Constants.h b/Types/Constants.h new file mode 100644 index 0000000..75dd240 --- /dev/null +++ b/Types/Constants.h @@ -0,0 +1,9 @@ + +#pragma mark - Tag QSObject Constants + +extern NSString *const kTagType; + +extern NSString *const kTagSiteField; +extern NSString *const kTagUsernameField; +extern NSString *const kTagHostField; +extern NSString *const kTagIdentifierField; diff --git a/Types/Constants.m b/Types/Constants.m new file mode 100644 index 0000000..9300b54 --- /dev/null +++ b/Types/Constants.m @@ -0,0 +1,8 @@ +#pragma mark - Tag QSObject Constants + +NSString *const kTagType = @"qs.tag.socialbookmark"; + +NSString *const kTagSiteField = @"source.site"; +NSString *const kTagUsernameField = @"source.username"; +NSString *const kTagHostField = @"source.host"; +NSString *const kTagIdentifierField = @"source.identifier"; diff --git a/Types/SocialSite.h b/Types/SocialSite.h index f2c848c..130bc40 100644 --- a/Types/SocialSite.h +++ b/Types/SocialSite.h @@ -11,13 +11,14 @@ typedef NS_ENUM(NSInteger, SocialSite) { SocialSiteDelicious = 0, SocialSiteMagnolia = 1, SocialSitePinboard = 2, - SocialSiteLinkding = 3 + SocialSiteLinkding = 3, + SocialSiteSelfHostedDeliciousCompatible = 4 }; @interface SocialSiteHelper : NSObject + (NSString *)displayNameForSite:(SocialSite)site; + (NSString *)siteURLForSite:(SocialSite)site; -+ (NSString *)reversedSiteURLForSite:(SocialSite)site; ++ (BOOL)hasVariableHost:(SocialSite)site; -@end
\ No newline at end of file +@end diff --git a/Types/SocialSite.m b/Types/SocialSite.m index d002235..b73533f 100644 --- a/Types/SocialSite.m +++ b/Types/SocialSite.m @@ -17,6 +17,8 @@ return @"Pinboard"; case SocialSiteLinkding: return @"Linkding"; + case SocialSiteSelfHostedDeliciousCompatible: + return @"Self-Hosted (Delicious Compatible)"; default: return @"Unknown"; } @@ -30,6 +32,7 @@ return @"ma.gnolia.com"; case SocialSitePinboard: return @"pinboard.in"; + case SocialSiteSelfHostedDeliciousCompatible: case SocialSiteLinkding: return @""; // Will be provided by user as host default: @@ -37,19 +40,14 @@ } } -+ (NSString *)reversedSiteURLForSite:(SocialSite)site { ++ (BOOL)hasVariableHost:(SocialSite)site { switch (site) { - case SocialSiteDelicious: - return @"us.icio.del"; - case SocialSiteMagnolia: - return @"com.gnolia.ma"; - case SocialSitePinboard: - return @"in.pinboard"; - case SocialSiteLinkding: - return @"linkding"; // Generic identifier - default: - return nil; + case SocialSiteSelfHostedDeliciousCompatible: + case SocialSiteLinkding: + return YES; + default: + return NO; } } -@end
\ No newline at end of file +@end |