app_state.dart 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703
  1. import 'package:flutter/material.dart';
  2. import '/backend/schema/structs/index.dart';
  3. import '/backend/api_requests/api_manager.dart';
  4. import 'package:flutter_secure_storage/flutter_secure_storage.dart';
  5. import 'package:csv/csv.dart';
  6. import 'package:synchronized/synchronized.dart';
  7. import 'flutter_flow/flutter_flow_util.dart';
  8. class FFAppState extends ChangeNotifier {
  9. static FFAppState _instance = FFAppState._internal();
  10. factory FFAppState() {
  11. return _instance;
  12. }
  13. FFAppState._internal();
  14. static void reset() {
  15. _instance = FFAppState._internal();
  16. }
  17. Future initializePersistedState() async {
  18. secureStorage = FlutterSecureStorage();
  19. await _safeInitAsync(() async {
  20. _userCsrftoken =
  21. await secureStorage.getString('ff_userCsrftoken') ?? _userCsrftoken;
  22. });
  23. await _safeInitAsync(() async {
  24. _userSessionid =
  25. await secureStorage.getString('ff_userSessionid') ?? _userSessionid;
  26. });
  27. await _safeInitAsync(() async {
  28. _userSessionname = await secureStorage.getString('ff_userSessionname') ??
  29. _userSessionname;
  30. });
  31. await _safeInitAsync(() async {
  32. _userName = await secureStorage.getString('ff_userName') ?? _userName;
  33. });
  34. await _safeInitAsync(() async {
  35. _userUid = await secureStorage.getInt('ff_userUid') ?? _userUid;
  36. });
  37. await _safeInitAsync(() async {
  38. _provincielijst = LoggableList(
  39. (await secureStorage.getStringList('ff_provincielijst'))
  40. ?.map((x) {
  41. try {
  42. return ProvincieModelStruct.fromSerializableMap(
  43. jsonDecode(x));
  44. } catch (e) {
  45. print("Can't decode persisted data type. Error: $e.");
  46. return null;
  47. }
  48. })
  49. .withoutNulls
  50. .toList() ??
  51. _provincielijst,
  52. );
  53. });
  54. await _safeInitAsync(() async {
  55. _provincieSelectId =
  56. await secureStorage.getString('ff_provincieSelectId') ??
  57. _provincieSelectId;
  58. });
  59. await _safeInitAsync(() async {
  60. _gemeentelijst = LoggableList(
  61. (await secureStorage.getStringList('ff_gemeentelijst'))
  62. ?.map((x) {
  63. try {
  64. return GemeenteModelStruct.fromSerializableMap(
  65. jsonDecode(x));
  66. } catch (e) {
  67. print("Can't decode persisted data type. Error: $e.");
  68. return null;
  69. }
  70. })
  71. .withoutNulls
  72. .toList() ??
  73. _gemeentelijst,
  74. );
  75. });
  76. await _safeInitAsync(() async {
  77. _gemeenteSelectId =
  78. await secureStorage.getString('ff_gemeenteSelectId') ??
  79. _gemeenteSelectId;
  80. });
  81. await _safeInitAsync(() async {
  82. _provincieSelectNaam =
  83. await secureStorage.getString('ff_provincieSelectNaam') ??
  84. _provincieSelectNaam;
  85. });
  86. await _safeInitAsync(() async {
  87. _gemeenteSelectNaam =
  88. await secureStorage.getString('ff_gemeenteSelectNaam') ??
  89. _gemeenteSelectNaam;
  90. });
  91. await _safeInitAsync(() async {
  92. _provincieSelectName =
  93. await secureStorage.getString('ff_provincieSelectName') ??
  94. _provincieSelectName;
  95. });
  96. }
  97. void update(VoidCallback callback) {
  98. callback();
  99. notifyListeners();
  100. }
  101. late FlutterSecureStorage secureStorage;
  102. /// csrftoken
  103. String _userCsrftoken = '';
  104. String get userCsrftoken => _userCsrftoken;
  105. set userCsrftoken(String value) {
  106. _userCsrftoken = value;
  107. secureStorage.setString('ff_userCsrftoken', value);
  108. debugLogAppState(this);
  109. }
  110. void deleteUserCsrftoken() {
  111. secureStorage.delete(key: 'ff_userCsrftoken');
  112. }
  113. String _userSessionid = '';
  114. String get userSessionid => _userSessionid;
  115. set userSessionid(String value) {
  116. _userSessionid = value;
  117. secureStorage.setString('ff_userSessionid', value);
  118. debugLogAppState(this);
  119. }
  120. void deleteUserSessionid() {
  121. secureStorage.delete(key: 'ff_userSessionid');
  122. }
  123. String _userSessionname = '';
  124. String get userSessionname => _userSessionname;
  125. set userSessionname(String value) {
  126. _userSessionname = value;
  127. secureStorage.setString('ff_userSessionname', value);
  128. debugLogAppState(this);
  129. }
  130. void deleteUserSessionname() {
  131. secureStorage.delete(key: 'ff_userSessionname');
  132. }
  133. String _userName = '';
  134. String get userName => _userName;
  135. set userName(String value) {
  136. _userName = value;
  137. secureStorage.setString('ff_userName', value);
  138. debugLogAppState(this);
  139. }
  140. void deleteUserName() {
  141. secureStorage.delete(key: 'ff_userName');
  142. }
  143. int _userUid = 0;
  144. int get userUid => _userUid;
  145. set userUid(int value) {
  146. _userUid = value;
  147. secureStorage.setInt('ff_userUid', value);
  148. debugLogAppState(this);
  149. }
  150. void deleteUserUid() {
  151. secureStorage.delete(key: 'ff_userUid');
  152. }
  153. late LoggableList<ProvincieModelStruct> _provincielijst = LoggableList([
  154. ProvincieModelStruct.fromSerializableMap(jsonDecode(
  155. '{\"provinciename\":\"Hello World\",\"provincieid\":\"Hello World\",\"municipality\":\"[\\\"{\\\\\\\"municipalityname\\\\\\\":\\\\\\\"Hello World\\\\\\\",\\\\\\\"municipalityid\\\\\\\":\\\\\\\"Hello World\\\\\\\"}\\\"]\"}'))
  156. ]);
  157. List<ProvincieModelStruct> get provincielijst =>
  158. _provincielijst?..logger = () => debugLogAppState(this);
  159. set provincielijst(List<ProvincieModelStruct> value) {
  160. if (value != null) {
  161. _provincielijst = LoggableList(value);
  162. }
  163. secureStorage.setStringList(
  164. 'ff_provincielijst', value.map((x) => x.serialize()).toList());
  165. debugLogAppState(this);
  166. }
  167. void deleteProvincielijst() {
  168. secureStorage.delete(key: 'ff_provincielijst');
  169. }
  170. void addToProvincielijst(ProvincieModelStruct value) {
  171. provincielijst.add(value);
  172. secureStorage.setStringList('ff_provincielijst',
  173. _provincielijst.map((x) => x.serialize()).toList());
  174. }
  175. void removeFromProvincielijst(ProvincieModelStruct value) {
  176. provincielijst.remove(value);
  177. secureStorage.setStringList('ff_provincielijst',
  178. _provincielijst.map((x) => x.serialize()).toList());
  179. }
  180. void removeAtIndexFromProvincielijst(int index) {
  181. provincielijst.removeAt(index);
  182. secureStorage.setStringList('ff_provincielijst',
  183. _provincielijst.map((x) => x.serialize()).toList());
  184. }
  185. void updateProvincielijstAtIndex(
  186. int index,
  187. ProvincieModelStruct Function(ProvincieModelStruct) updateFn,
  188. ) {
  189. provincielijst[index] = updateFn(_provincielijst[index]);
  190. secureStorage.setStringList('ff_provincielijst',
  191. _provincielijst.map((x) => x.serialize()).toList());
  192. }
  193. void insertAtIndexInProvincielijst(int index, ProvincieModelStruct value) {
  194. provincielijst.insert(index, value);
  195. secureStorage.setStringList('ff_provincielijst',
  196. _provincielijst.map((x) => x.serialize()).toList());
  197. }
  198. String _provincieSelectId = '28666';
  199. String get provincieSelectId => _provincieSelectId;
  200. set provincieSelectId(String value) {
  201. _provincieSelectId = value;
  202. secureStorage.setString('ff_provincieSelectId', value);
  203. debugLogAppState(this);
  204. }
  205. void deleteProvincieSelectId() {
  206. secureStorage.delete(key: 'ff_provincieSelectId');
  207. }
  208. late LoggableList<GemeenteModelStruct> _gemeentelijst = LoggableList([]);
  209. List<GemeenteModelStruct> get gemeentelijst =>
  210. _gemeentelijst?..logger = () => debugLogAppState(this);
  211. set gemeentelijst(List<GemeenteModelStruct> value) {
  212. if (value != null) {
  213. _gemeentelijst = LoggableList(value);
  214. }
  215. secureStorage.setStringList(
  216. 'ff_gemeentelijst', value.map((x) => x.serialize()).toList());
  217. debugLogAppState(this);
  218. }
  219. void deleteGemeentelijst() {
  220. secureStorage.delete(key: 'ff_gemeentelijst');
  221. }
  222. void addToGemeentelijst(GemeenteModelStruct value) {
  223. gemeentelijst.add(value);
  224. secureStorage.setStringList(
  225. 'ff_gemeentelijst', _gemeentelijst.map((x) => x.serialize()).toList());
  226. }
  227. void removeFromGemeentelijst(GemeenteModelStruct value) {
  228. gemeentelijst.remove(value);
  229. secureStorage.setStringList(
  230. 'ff_gemeentelijst', _gemeentelijst.map((x) => x.serialize()).toList());
  231. }
  232. void removeAtIndexFromGemeentelijst(int index) {
  233. gemeentelijst.removeAt(index);
  234. secureStorage.setStringList(
  235. 'ff_gemeentelijst', _gemeentelijst.map((x) => x.serialize()).toList());
  236. }
  237. void updateGemeentelijstAtIndex(
  238. int index,
  239. GemeenteModelStruct Function(GemeenteModelStruct) updateFn,
  240. ) {
  241. gemeentelijst[index] = updateFn(_gemeentelijst[index]);
  242. secureStorage.setStringList(
  243. 'ff_gemeentelijst', _gemeentelijst.map((x) => x.serialize()).toList());
  244. }
  245. void insertAtIndexInGemeentelijst(int index, GemeenteModelStruct value) {
  246. gemeentelijst.insert(index, value);
  247. secureStorage.setStringList(
  248. 'ff_gemeentelijst', _gemeentelijst.map((x) => x.serialize()).toList());
  249. }
  250. String _gemeenteSelectId = '28694';
  251. String get gemeenteSelectId => _gemeenteSelectId;
  252. set gemeenteSelectId(String value) {
  253. _gemeenteSelectId = value;
  254. secureStorage.setString('ff_gemeenteSelectId', value);
  255. debugLogAppState(this);
  256. }
  257. void deleteGemeenteSelectId() {
  258. secureStorage.delete(key: 'ff_gemeenteSelectId');
  259. }
  260. String _provincieSelectNaam = '';
  261. String get provincieSelectNaam => _provincieSelectNaam;
  262. set provincieSelectNaam(String value) {
  263. _provincieSelectNaam = value;
  264. secureStorage.setString('ff_provincieSelectNaam', value);
  265. debugLogAppState(this);
  266. }
  267. void deleteProvincieSelectNaam() {
  268. secureStorage.delete(key: 'ff_provincieSelectNaam');
  269. }
  270. String _gemeenteSelectNaam = '';
  271. String get gemeenteSelectNaam => _gemeenteSelectNaam;
  272. set gemeenteSelectNaam(String value) {
  273. _gemeenteSelectNaam = value;
  274. secureStorage.setString('ff_gemeenteSelectNaam', value);
  275. debugLogAppState(this);
  276. }
  277. void deleteGemeenteSelectNaam() {
  278. secureStorage.delete(key: 'ff_gemeenteSelectNaam');
  279. }
  280. String _currentHorcat = '';
  281. String get currentHorcat => _currentHorcat;
  282. set currentHorcat(String value) {
  283. _currentHorcat = value;
  284. debugLogAppState(this);
  285. }
  286. late LoggableList<String> _currentOriginalLijst = LoggableList([]);
  287. List<String> get currentOriginalLijst =>
  288. _currentOriginalLijst?..logger = () => debugLogAppState(this);
  289. set currentOriginalLijst(List<String> value) {
  290. if (value != null) {
  291. _currentOriginalLijst = LoggableList(value);
  292. }
  293. debugLogAppState(this);
  294. }
  295. void addToCurrentOriginalLijst(String value) {
  296. currentOriginalLijst.add(value);
  297. }
  298. void removeFromCurrentOriginalLijst(String value) {
  299. currentOriginalLijst.remove(value);
  300. }
  301. void removeAtIndexFromCurrentOriginalLijst(int index) {
  302. currentOriginalLijst.removeAt(index);
  303. }
  304. void updateCurrentOriginalLijstAtIndex(
  305. int index,
  306. String Function(String) updateFn,
  307. ) {
  308. currentOriginalLijst[index] = updateFn(_currentOriginalLijst[index]);
  309. }
  310. void insertAtIndexInCurrentOriginalLijst(int index, String value) {
  311. currentOriginalLijst.insert(index, value);
  312. }
  313. late LoggableList<String> _currentFilteredLijst = LoggableList([]);
  314. List<String> get currentFilteredLijst =>
  315. _currentFilteredLijst?..logger = () => debugLogAppState(this);
  316. set currentFilteredLijst(List<String> value) {
  317. if (value != null) {
  318. _currentFilteredLijst = LoggableList(value);
  319. }
  320. debugLogAppState(this);
  321. }
  322. void addToCurrentFilteredLijst(String value) {
  323. currentFilteredLijst.add(value);
  324. }
  325. void removeFromCurrentFilteredLijst(String value) {
  326. currentFilteredLijst.remove(value);
  327. }
  328. void removeAtIndexFromCurrentFilteredLijst(int index) {
  329. currentFilteredLijst.removeAt(index);
  330. }
  331. void updateCurrentFilteredLijstAtIndex(
  332. int index,
  333. String Function(String) updateFn,
  334. ) {
  335. currentFilteredLijst[index] = updateFn(_currentFilteredLijst[index]);
  336. }
  337. void insertAtIndexInCurrentFilteredLijst(int index, String value) {
  338. currentFilteredLijst.insert(index, value);
  339. }
  340. late LoggableList<String> _currentUniqueCategorieen = LoggableList([]);
  341. List<String> get currentUniqueCategorieen =>
  342. _currentUniqueCategorieen?..logger = () => debugLogAppState(this);
  343. set currentUniqueCategorieen(List<String> value) {
  344. if (value != null) {
  345. _currentUniqueCategorieen = LoggableList(value);
  346. }
  347. debugLogAppState(this);
  348. }
  349. void addToCurrentUniqueCategorieen(String value) {
  350. currentUniqueCategorieen.add(value);
  351. }
  352. void removeFromCurrentUniqueCategorieen(String value) {
  353. currentUniqueCategorieen.remove(value);
  354. }
  355. void removeAtIndexFromCurrentUniqueCategorieen(int index) {
  356. currentUniqueCategorieen.removeAt(index);
  357. }
  358. void updateCurrentUniqueCategorieenAtIndex(
  359. int index,
  360. String Function(String) updateFn,
  361. ) {
  362. currentUniqueCategorieen[index] =
  363. updateFn(_currentUniqueCategorieen[index]);
  364. }
  365. void insertAtIndexInCurrentUniqueCategorieen(int index, String value) {
  366. currentUniqueCategorieen.insert(index, value);
  367. }
  368. String _currentSelectedCategorie = '';
  369. String get currentSelectedCategorie => _currentSelectedCategorie;
  370. set currentSelectedCategorie(String value) {
  371. _currentSelectedCategorie = value;
  372. debugLogAppState(this);
  373. }
  374. bool _isLoading = false;
  375. bool get isLoading => _isLoading;
  376. set isLoading(bool value) {
  377. _isLoading = value;
  378. debugLogAppState(this);
  379. }
  380. String _provincieSelectName = '';
  381. String get provincieSelectName => _provincieSelectName;
  382. set provincieSelectName(String value) {
  383. _provincieSelectName = value;
  384. secureStorage.setString('ff_provincieSelectName', value);
  385. debugLogAppState(this);
  386. }
  387. void deleteProvincieSelectName() {
  388. secureStorage.delete(key: 'ff_provincieSelectName');
  389. }
  390. Map<String, DebugDataField> toDebugSerializableMap() => {
  391. 'userCsrftoken': debugSerializeParam(
  392. userCsrftoken,
  393. ParamType.String,
  394. link:
  395. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  396. searchReference:
  397. 'reference=CioKGQoNdXNlckNzcmZ0b2tlbhIIcm1vaGxvcWpyAggDegljc3JmdG9rZW5aDXVzZXJDc3JmdG9rZW4=',
  398. name: 'String',
  399. nullable: false,
  400. ),
  401. 'userSessionid': debugSerializeParam(
  402. userSessionid,
  403. ParamType.String,
  404. link:
  405. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  406. searchReference:
  407. 'reference=CiEKGQoNdXNlclNlc3Npb25pZBIIZHBuYzVmYXdyAggDegBaDXVzZXJTZXNzaW9uaWQ=',
  408. name: 'String',
  409. nullable: false,
  410. ),
  411. 'userSessionname': debugSerializeParam(
  412. userSessionname,
  413. ParamType.String,
  414. link:
  415. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  416. searchReference:
  417. 'reference=CiMKGwoPdXNlclNlc3Npb25uYW1lEgg5ZHp5cG1sMXICCAN6AFoPdXNlclNlc3Npb25uYW1l',
  418. name: 'String',
  419. nullable: false,
  420. ),
  421. 'userName': debugSerializeParam(
  422. userName,
  423. ParamType.String,
  424. link:
  425. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  426. searchReference:
  427. 'reference=ChwKFAoIdXNlck5hbWUSCGF6MHRqNTkycgIIA3oAWgh1c2VyTmFtZQ==',
  428. name: 'String',
  429. nullable: false,
  430. ),
  431. 'userUid': debugSerializeParam(
  432. userUid,
  433. ParamType.int,
  434. link:
  435. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  436. searchReference:
  437. 'reference=ChsKEwoHdXNlclVpZBIIcHFhcTJlNG9yAggBegBaB3VzZXJVaWQ=',
  438. name: 'int',
  439. nullable: false,
  440. ),
  441. 'provincielijst': debugSerializeParam(
  442. provincielijst,
  443. ParamType.DataStruct,
  444. isList: true,
  445. link:
  446. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  447. searchReference:
  448. 'reference=CjoKGgoOcHJvdmluY2llbGlqc3QSCHlza2E1Z3o2choSAggUKhQSEgoJUHJvdmluY2llEgVnY3l5anoAWg5wcm92aW5jaWVsaWpzdA==',
  449. name: 'ProvincieModel',
  450. nullable: false,
  451. ),
  452. 'provincieSelectId': debugSerializeParam(
  453. provincieSelectId,
  454. ParamType.String,
  455. link:
  456. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  457. searchReference:
  458. 'reference=CiUKHQoRcHJvdmluY2llU2VsZWN0SWQSCGl0amt2azNrcgIIA3oAWhFwcm92aW5jaWVTZWxlY3RJZA==',
  459. name: 'String',
  460. nullable: false,
  461. ),
  462. 'gemeentelijst': debugSerializeParam(
  463. gemeentelijst,
  464. ParamType.DataStruct,
  465. isList: true,
  466. link:
  467. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  468. searchReference:
  469. 'reference=Cj0KGQoNZ2VtZWVudGVsaWpzdBIIeTlnaDFnYTRyHhICCBQqGBIWCg1HZW1lZW50ZU1vZGVsEgU4MnU3dXoAWg1nZW1lZW50ZWxpanN0',
  470. name: 'GemeenteModel',
  471. nullable: false,
  472. ),
  473. 'gemeenteSelectId': debugSerializeParam(
  474. gemeenteSelectId,
  475. ParamType.String,
  476. link:
  477. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  478. searchReference:
  479. 'reference=CiQKHAoQZ2VtZWVudGVTZWxlY3RJZBIIandnYjA5Z25yAggDegBaEGdlbWVlbnRlU2VsZWN0SWQ=',
  480. name: 'String',
  481. nullable: false,
  482. ),
  483. 'provincieSelectNaam': debugSerializeParam(
  484. provincieSelectNaam,
  485. ParamType.String,
  486. link:
  487. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  488. searchReference:
  489. 'reference=CicKHwoTcHJvdmluY2llU2VsZWN0TmFhbRIIaGdrOWFiMGVyAggDegBaE3Byb3ZpbmNpZVNlbGVjdE5hYW0=',
  490. name: 'String',
  491. nullable: false,
  492. ),
  493. 'gemeenteSelectNaam': debugSerializeParam(
  494. gemeenteSelectNaam,
  495. ParamType.String,
  496. link:
  497. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  498. searchReference:
  499. 'reference=CiYKHgoSZ2VtZWVudGVTZWxlY3ROYWFtEgh3MXprNXNmYXICCAN6AFoSZ2VtZWVudGVTZWxlY3ROYWFt',
  500. name: 'String',
  501. nullable: false,
  502. ),
  503. 'currentHorcat': debugSerializeParam(
  504. currentHorcat,
  505. ParamType.String,
  506. link:
  507. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  508. searchReference:
  509. 'reference=CiEKGQoNY3VycmVudEhvcmNhdBIIeHJ1M29kNmFyAggDegBaDWN1cnJlbnRIb3JjYXQ=',
  510. name: 'String',
  511. nullable: false,
  512. ),
  513. 'currentOriginalLijst': debugSerializeParam(
  514. currentOriginalLijst,
  515. ParamType.String,
  516. isList: true,
  517. link:
  518. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  519. searchReference:
  520. 'reference=CioKIAoUY3VycmVudE9yaWdpbmFsTGlqc3QSCGlmaGd6ODZpcgQSAggDegBaFGN1cnJlbnRPcmlnaW5hbExpanN0',
  521. name: 'String',
  522. nullable: false,
  523. ),
  524. 'currentFilteredLijst': debugSerializeParam(
  525. currentFilteredLijst,
  526. ParamType.String,
  527. isList: true,
  528. link:
  529. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  530. searchReference:
  531. 'reference=CioKIAoUY3VycmVudEZpbHRlcmVkTGlqc3QSCDRjZTkycnFkcgQSAggDegBaFGN1cnJlbnRGaWx0ZXJlZExpanN0',
  532. name: 'String',
  533. nullable: false,
  534. ),
  535. 'currentUniqueCategorieen': debugSerializeParam(
  536. currentUniqueCategorieen,
  537. ParamType.String,
  538. isList: true,
  539. link:
  540. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  541. searchReference:
  542. 'reference=Ci4KJAoYY3VycmVudFVuaXF1ZUNhdGVnb3JpZWVuEghrcGdlejEyOXIEEgIIA3oAWhhjdXJyZW50VW5pcXVlQ2F0ZWdvcmllZW4=',
  543. name: 'String',
  544. nullable: false,
  545. ),
  546. 'currentSelectedCategorie': debugSerializeParam(
  547. currentSelectedCategorie,
  548. ParamType.String,
  549. link:
  550. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  551. searchReference:
  552. 'reference=CiwKJAoYY3VycmVudFNlbGVjdGVkQ2F0ZWdvcmllEgh0MXl3dDNydnICCAN6AFoYY3VycmVudFNlbGVjdGVkQ2F0ZWdvcmll',
  553. name: 'String',
  554. nullable: false,
  555. ),
  556. 'isLoading': debugSerializeParam(
  557. isLoading,
  558. ParamType.bool,
  559. link:
  560. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  561. searchReference:
  562. 'reference=Ch0KFQoJaXNMb2FkaW5nEgg4eWlsMnFua3ICCAV6AFoJaXNMb2FkaW5n',
  563. name: 'bool',
  564. nullable: false,
  565. ),
  566. 'provincieSelectName': debugSerializeParam(
  567. provincieSelectName,
  568. ParamType.String,
  569. link:
  570. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
  571. searchReference:
  572. 'reference=CicKHwoTcHJvdmluY2llU2VsZWN0TmFtZRIIcHMxY2N5Ym9yAggDegBaE3Byb3ZpbmNpZVNlbGVjdE5hbWU=',
  573. name: 'String',
  574. nullable: false,
  575. )
  576. };
  577. }
  578. void _safeInit(Function() initializeField) {
  579. try {
  580. initializeField();
  581. } catch (_) {}
  582. }
  583. Future _safeInitAsync(Function() initializeField) async {
  584. try {
  585. await initializeField();
  586. } catch (_) {}
  587. }
  588. extension FlutterSecureStorageExtensions on FlutterSecureStorage {
  589. static final _lock = Lock();
  590. Future<void> writeSync({required String key, String? value}) async =>
  591. await _lock.synchronized(() async {
  592. await write(key: key, value: value);
  593. });
  594. void remove(String key) => delete(key: key);
  595. Future<String?> getString(String key) async => await read(key: key);
  596. Future<void> setString(String key, String value) async =>
  597. await writeSync(key: key, value: value);
  598. Future<bool?> getBool(String key) async => (await read(key: key)) == 'true';
  599. Future<void> setBool(String key, bool value) async =>
  600. await writeSync(key: key, value: value.toString());
  601. Future<int?> getInt(String key) async =>
  602. int.tryParse(await read(key: key) ?? '');
  603. Future<void> setInt(String key, int value) async =>
  604. await writeSync(key: key, value: value.toString());
  605. Future<double?> getDouble(String key) async =>
  606. double.tryParse(await read(key: key) ?? '');
  607. Future<void> setDouble(String key, double value) async =>
  608. await writeSync(key: key, value: value.toString());
  609. Future<List<String>?> getStringList(String key) async =>
  610. await read(key: key).then((result) {
  611. if (result == null || result.isEmpty) {
  612. return null;
  613. }
  614. return CsvToListConverter()
  615. .convert(result)
  616. .first
  617. .map((e) => e.toString())
  618. .toList();
  619. });
  620. Future<void> setStringList(String key, List<String> value) async =>
  621. await writeSync(key: key, value: ListToCsvConverter().convert([value]));
  622. }