[dart] search

Viewer

  1. import 'dart:io';
  2.  
  3. import 'package:flutter/material.dart';
  4. import 'package:thawaf/resources/data_state/data_item_model.dart';
  5. import 'package:thawaf/resources/data_state/data_state.dart';
  6.  
  7. class PanduanStateProvider with ChangeNotifier {
  8.   bool isLoading = false;
  9.   bool isInit = false;
  10.  
  11.   late DataState dataStatePanduan;
  12.   List<DataItem> data = [];
  13.  
  14.   initialize() async {
  15.     try {
  16.       if (isInit) throw "Sudah diinit";
  17.       if (isLoading) throw "Sedang loading, mohon tunggu";
  18.       isInit = true;
  19.       isLoading = true;
  20.       refresh();
  21.       dataStatePanduan = await DataState.create(
  22.         "panduanHajis",
  23.         id: "panduanHajis",
  24.         withStream: true,
  25.         showPrint: true,
  26.         filters: [],
  27.         sorts: [],
  28.         onRefresh: () {
  29.           refresh();
  30.         },
  31.       );
  32.       dataStatePanduan.onRefresh = () async {
  33.         data = await dataStatePanduan.find(
  34.           sorts: [
  35.             SortDataState(
  36.               key: "createdAt",
  37.               desc: true,
  38.             )
  39.           ],
  40.         );
  41.         refresh();
  42.       };
  43.       dataStatePanduan.refresh();
  44.       isLoading = false;
  45.       refresh();
  46.     } catch (e) {}
  47.   }
  48.  
  49.   refresh() {
  50.     notifyListeners();
  51.   }
  52. }
  53.  

Editor

You can edit this paste and save as new:


File Description
  • search
  • Paste Code
  • 23 Apr-2024
  • 1.23 Kb
You can Share it: