home_state.dart 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. import 'package:cs_resources/generated/assets.dart';
  2. import 'package:cs_resources/generated/l10n.dart';
  3. import 'package:domain/entity/home_list_entity.dart';
  4. class HomeState {
  5. final List<Map<String, dynamic>> homeCategory;
  6. final List<Map<String, dynamic>> lastNews;
  7. final List<Map<String, dynamic>> manageGuide;
  8. HomeListEntity? homeIndex;
  9. HomeState({
  10. List<Map<String, dynamic>>? homeCategory,
  11. List<Map<String, dynamic>>? lastNews,
  12. List<Map<String, dynamic>>? manageGuide,
  13. this.homeIndex,
  14. }) : homeCategory = homeCategory ??
  15. [
  16. {
  17. 'category_name': S.current.facility,
  18. 'category_icon': Assets.mainHomeFacilityIcon,
  19. },
  20. {
  21. 'category_name': S.current.form,
  22. 'category_icon': Assets.mainHomeFormsIcon,
  23. },
  24. {
  25. 'category_name': S.current.notice_board,
  26. 'category_icon': Assets.mainHomeBoticeBoardIcon,
  27. },
  28. {
  29. 'category_name': S.current.property,
  30. 'category_icon': Assets.mainHomePropertyIcon,
  31. },
  32. {
  33. 'category_name': S.current.service,
  34. 'category_icon': Assets.mainHomeServiceIcon,
  35. },
  36. {
  37. 'category_name': S.current.community,
  38. 'category_icon': Assets.mainHomeCommunityIcon,
  39. }
  40. ],
  41. lastNews = lastNews ??
  42. [
  43. {
  44. 'category_name': S.current.property,
  45. 'category_icon': Assets.mainHomePropertyNews,
  46. 'icon_width': 38.5,
  47. 'icon_height': 39.5,
  48. 'margin_right': 13.0,
  49. },
  50. {
  51. 'category_name': S.current.internal,
  52. 'category_icon': Assets.mainHomeInternalNews,
  53. 'icon_width': 33.5,
  54. 'icon_height': 41.0,
  55. 'margin_right': 11.0,
  56. },
  57. {
  58. 'category_name': S.current.info,
  59. 'category_icon': Assets.mainHomeInfoNews,
  60. 'icon_width': 44.0,
  61. 'icon_height': 42.0,
  62. 'margin_right': 6.0,
  63. },
  64. {
  65. 'category_name': S.current.notice,
  66. 'category_icon': Assets.mainHomePublishNews,
  67. 'icon_width': 40.5,
  68. 'icon_height': 42.5,
  69. 'margin_right': 11.0,
  70. }
  71. ],
  72. manageGuide = manageGuide ??
  73. [
  74. {
  75. 'category_name': S.current.introduction_to_info_pack,
  76. 'category_icon': Assets.mainIntroductionGuide,
  77. 'icon_width': 118.5,
  78. 'icon_height': 73.5,
  79. 'margin_top': 12.0,
  80. },
  81. {
  82. 'category_name': S.current.your_roles_responsibilities,
  83. 'category_icon': Assets.mainRolesGuide,
  84. 'icon_width': 116,
  85. 'icon_height': 78,
  86. 'margin_top': 8.5,
  87. },
  88. {
  89. 'category_name': S.current.property_guide,
  90. 'category_icon': Assets.mainPropertyGuide,
  91. 'icon_width': 117.0,
  92. 'icon_height': 76.5,
  93. 'margin_top': 10.0,
  94. },
  95. ];
  96. HomeState copyWith({
  97. HomeListEntity? homeIndex,
  98. }) {
  99. return HomeState(
  100. homeIndex: homeIndex ?? this.homeIndex,
  101. homeCategory: homeCategory,
  102. lastNews: lastNews,
  103. manageGuide: manageGuide,
  104. );
  105. }
  106. }