@@ -36,7 +36,7 @@ export class SecureStorage extends SecureStorageCommon {
36
36
get ( arg : GetOptions ) : Promise < any > {
37
37
return new Promise ( ( resolve , reject ) => {
38
38
if ( this . isSimulator ) {
39
- resolve ( NSUserDefaults . standardUserDefaults . objectForKey ( arg . key ) ) ;
39
+ resolve ( this . getUserDefaultsValue ( arg ) ) ;
40
40
return ;
41
41
}
42
42
@@ -57,7 +57,7 @@ export class SecureStorage extends SecureStorageCommon {
57
57
58
58
getSync ( arg : GetOptions ) : any {
59
59
if ( this . isSimulator ) {
60
- return NSUserDefaults . standardUserDefaults . objectForKey ( arg . key ) ;
60
+ return this . getUserDefaultsValue ( arg ) ;
61
61
}
62
62
63
63
let query = SAMKeychainQuery . new ( ) ;
@@ -77,7 +77,7 @@ export class SecureStorage extends SecureStorageCommon {
77
77
set ( arg : SetOptions ) : Promise < boolean > {
78
78
return new Promise ( ( resolve , reject ) => {
79
79
if ( this . isSimulator ) {
80
- NSUserDefaults . standardUserDefaults . setObjectForKey ( arg . value , arg . key ) ;
80
+ this . setUserDefaultsValue ( arg ) ;
81
81
resolve ( true ) ;
82
82
return ;
83
83
}
@@ -96,7 +96,7 @@ export class SecureStorage extends SecureStorageCommon {
96
96
97
97
setSync ( arg : SetOptions ) : boolean {
98
98
if ( this . isSimulator ) {
99
- NSUserDefaults . standardUserDefaults . setObjectForKey ( arg . value , arg . key ) ;
99
+ this . setUserDefaultsValue ( arg ) ;
100
100
return true ;
101
101
}
102
102
@@ -114,7 +114,7 @@ export class SecureStorage extends SecureStorageCommon {
114
114
remove ( arg : RemoveOptions ) : Promise < boolean > {
115
115
return new Promise ( ( resolve , reject ) => {
116
116
if ( this . isSimulator ) {
117
- NSUserDefaults . standardUserDefaults . removeObjectForKey ( arg . key ) ;
117
+ this . removeUserDefaultsValue ( arg ) ;
118
118
resolve ( true ) ;
119
119
return ;
120
120
}
@@ -135,7 +135,7 @@ export class SecureStorage extends SecureStorageCommon {
135
135
136
136
removeSync ( arg : RemoveOptions ) : boolean {
137
137
if ( this . isSimulator ) {
138
- NSUserDefaults . standardUserDefaults . removeObjectForKey ( arg . key ) ;
138
+ this . removeUserDefaultsValue ( arg ) ;
139
139
return true ;
140
140
}
141
141
@@ -205,4 +205,21 @@ export class SecureStorage extends SecureStorageCommon {
205
205
}
206
206
return true ;
207
207
}
208
+
209
+ private setUserDefaultsValue ( arg : SetOptions ) {
210
+ this . getUserDefaultToUse ( arg . accessGroup ) . setValueForKey ( arg . value , arg . key ) ;
211
+ }
212
+ private getUserDefaultsValue ( arg : GetOptions ) {
213
+ return this . getUserDefaultToUse ( arg . accessGroup ) . objectForKey ( arg . key ) ;
214
+ }
215
+ private removeUserDefaultsValue ( arg : RemoveOptions ) {
216
+ return this . getUserDefaultToUse ( arg . accessGroup ) . removeObjectForKey ( arg . key ) ;
217
+ }
218
+ private getUserDefaultToUse ( accessGroup ?: string ) : NSUserDefaults {
219
+ if ( accessGroup ) {
220
+ return new NSUserDefaults ( { suiteName : accessGroup } ) ;
221
+ } else {
222
+ return NSUserDefaults . standardUserDefaults ;
223
+ }
224
+ }
208
225
}
0 commit comments