mirror of
https://github.com/SoPat712/YTLitePlus.git
synced 2025-10-30 12:23:58 -04:00
77 lines
2.4 KiB
Objective-C
77 lines
2.4 KiB
Objective-C
//
|
|
// FLEXCookiesViewController.m
|
|
// FLEX
|
|
//
|
|
// Created by Rich Robinson on 19/10/2015.
|
|
// Copyright © 2020 FLEX Team. All rights reserved.
|
|
//
|
|
|
|
#import "FLEXCookiesViewController.h"
|
|
#import "FLEXObjectExplorerFactory.h"
|
|
#import "FLEXMutableListSection.h"
|
|
#import "FLEXUtility.h"
|
|
|
|
@interface FLEXCookiesViewController ()
|
|
@property (nonatomic, readonly) FLEXMutableListSection<NSHTTPCookie *> *cookies;
|
|
@property (nonatomic) NSString *headerTitle;
|
|
@end
|
|
|
|
@implementation FLEXCookiesViewController
|
|
|
|
#pragma mark - Overrides
|
|
|
|
- (void)viewDidLoad {
|
|
[super viewDidLoad];
|
|
|
|
self.title = @"Cookies";
|
|
}
|
|
|
|
- (NSArray<FLEXTableViewSection *> *)makeSections {
|
|
NSSortDescriptor *nameSortDescriptor = [[NSSortDescriptor alloc]
|
|
initWithKey:@"name" ascending:YES selector:@selector(caseInsensitiveCompare:)
|
|
];
|
|
NSArray *cookies = [NSHTTPCookieStorage.sharedHTTPCookieStorage.cookies
|
|
sortedArrayUsingDescriptors:@[nameSortDescriptor]
|
|
];
|
|
|
|
_cookies = [FLEXMutableListSection list:cookies
|
|
cellConfiguration:^(UITableViewCell *cell, NSHTTPCookie *cookie, NSInteger row) {
|
|
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
|
|
cell.textLabel.text = [cookie.name stringByAppendingFormat:@" (%@)", cookie.value];
|
|
cell.detailTextLabel.text = [cookie.domain stringByAppendingFormat:@" — %@", cookie.path];
|
|
} filterMatcher:^BOOL(NSString *filterText, NSHTTPCookie *cookie) {
|
|
return [cookie.name localizedCaseInsensitiveContainsString:filterText] ||
|
|
[cookie.value localizedCaseInsensitiveContainsString:filterText] ||
|
|
[cookie.domain localizedCaseInsensitiveContainsString:filterText] ||
|
|
[cookie.path localizedCaseInsensitiveContainsString:filterText];
|
|
}
|
|
];
|
|
|
|
self.cookies.selectionHandler = ^(UIViewController *host, NSHTTPCookie *cookie) {
|
|
[host.navigationController pushViewController:[
|
|
FLEXObjectExplorerFactory explorerViewControllerForObject:cookie
|
|
] animated:YES];
|
|
};
|
|
|
|
return @[self.cookies];
|
|
}
|
|
|
|
- (void)reloadData {
|
|
self.headerTitle = [NSString stringWithFormat:
|
|
@"%@ cookies", @(self.cookies.filteredList.count)
|
|
];
|
|
[super reloadData];
|
|
}
|
|
|
|
#pragma mark - FLEXGlobalsEntry
|
|
|
|
+ (NSString *)globalsEntryTitle:(FLEXGlobalsRow)row {
|
|
return @"🍪 Cookies";
|
|
}
|
|
|
|
+ (UIViewController *)globalsEntryViewController:(FLEXGlobalsRow)row {
|
|
return [self new];
|
|
}
|
|
|
|
@end
|