├── .gitignore
├── .idea
├── codeStyles
│ └── Project.xml
└── runConfigurations
│ └── main_dart.xml
├── .metadata
├── README.md
├── android
├── app
│ ├── build.gradle
│ └── src
│ │ ├── debug
│ │ └── AndroidManifest.xml
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── io
│ │ │ │ └── flutter
│ │ │ │ └── plugins
│ │ │ │ └── GeneratedPluginRegistrant.java
│ │ ├── kotlin
│ │ │ └── com
│ │ │ │ └── anggiprayogo
│ │ │ │ └── tix_app
│ │ │ │ └── MainActivity.kt
│ │ └── res
│ │ │ ├── drawable
│ │ │ └── launch_background.xml
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ └── styles.xml
│ │ └── profile
│ │ └── AndroidManifest.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
├── fonts
├── roboto_bold.ttf
├── roboto_regular.ttf
├── sfui_black.ttf
├── sfui_bold.ttf
├── sfui_heavy.ttf
├── sfui_light.ttf
├── sfui_medium.ttf
├── sfui_regular.ttf
├── sfui_regular_res.xml
├── sfui_semibold.ttf
├── sfui_thin.ttf
└── sfui_ultralight.ttf
├── images
├── abc_btn_check_to_on_mtrl_000.png
├── abc_btn_check_to_on_mtrl_015.png
├── abc_btn_radio_to_on_mtrl_000.png
├── abc_btn_radio_to_on_mtrl_015.png
├── abc_btn_switch_to_on_mtrl_00001.9.png
├── abc_btn_switch_to_on_mtrl_00012.9.png
├── abc_ic_menu_copy_mtrl_am_alpha.png
├── abc_ic_menu_cut_mtrl_alpha.png
├── abc_ic_menu_paste_mtrl_am_alpha.png
├── abc_ic_menu_selectall_mtrl_alpha.png
├── abc_ic_menu_share_mtrl_alpha.png
├── abc_ic_star_black_16dp.png
├── abc_ic_star_black_36dp.png
├── abc_ic_star_black_48dp.png
├── abc_ic_star_half_black_16dp.png
├── abc_ic_star_half_black_36dp.png
├── abc_ic_star_half_black_48dp.png
├── abc_scrubber_control_to_pressed_mtrl_000.png
├── abc_scrubber_control_to_pressed_mtrl_005.png
├── abc_spinner_mtrl_am_alpha.9.png
├── abc_switch_track_mtrl_alpha.9.png
├── abc_tab_indicator_mtrl_alpha.9.png
├── abc_text_select_handle_left_mtrl_dark.png
├── abc_text_select_handle_left_mtrl_light.png
├── abc_text_select_handle_right_mtrl_dark.png
├── abc_text_select_handle_right_mtrl_light.png
├── bg_loading.png
├── bg_my_loyal_tix_detail.png
├── bg_profile.png
├── bg_rating_dialog.png
├── btn_back_common.png
├── btn_more_home.png
├── btn_play_moviedetail.png
├── button_view_qr_code.png
├── close.png
├── design_ic_visibility.png
├── design_ic_visibility_off.png
├── empty_movie.png
├── exo_edit_mode_logo.png
├── ic_active_ticket_state_info_tooltip.png
├── ic_already_shown.png
├── ic_arrow.png
├── ic_arrow_back_white_24dp.png
├── ic_arrow_down.png
├── ic_arrow_up.png
├── ic_bg_dialog_qrcode_bottom.png
├── ic_bg_dialog_qrcode_bottom_samll.png
├── ic_bg_dialog_qrcode_middle.png
├── ic_bg_dialog_qrcode_middle_samll.png
├── ic_bg_dialog_qrcode_top.png
├── ic_bg_dialog_qrcode_top_samll.png
├── ic_bg_invitation_code_detail.png
├── ic_bg_invite_code.png
├── ic_bg_qr_code_bottom.png
├── ic_bg_qr_code_middle.png
├── ic_bg_qr_code_top.png
├── ic_bottom_overscroll_edge.png
├── ic_bottom_overscroll_glow.png
├── ic_btn_back_moviedetail.png
├── ic_btn_email.png
├── ic_btn_telepon.png
├── ic_buy_ticket_disable.png
├── ic_buy_ticket_enable.png
├── ic_check_round.png
├── ic_checkbox_checked.png
├── ic_checkbox_unchecked.png
├── ic_chevron_right_grey.png
├── ic_close.png
├── ic_close_black.png
├── ic_close_btn_pay_detail.png
├── ic_close_qrcode.png
├── ic_close_warning_notice.png
├── ic_content_like.png
├── ic_content_liked.png
├── ic_content_view.png
├── ic_current_ticket_status.png
├── ic_dana.png
├── ic_dana_with_text.png
├── ic_default_btn_back_moviedetail.png
├── ic_dialog_failed.png
├── ic_dialog_success.png
├── ic_dolby_atmos_black.png
├── ic_dolby_atmos_white.png
├── ic_download_qrcode.png
├── ic_drop_selected.png
├── ic_edit_dot.png
├── ic_expired_promo.png
├── ic_failed_alert_popup.png
├── ic_failed_ticket_status.png
├── ic_favorite_off.png
├── ic_favorite_on.png
├── ic_favorite_play.png
├── ic_go_my_invitation_code.png
├── ic_got_point.png
├── ic_hide.png
├── ic_home.png
├── ic_home_drop.png
├── ic_home_drop_collapse.png
├── ic_home_page_more_button.png
├── ic_home_refresh.png
├── ic_home_refresh_v2.png
├── ic_how_qrcode.png
├── ic_img_update_eng.png
├── ic_img_update_id.png
├── ic_input_your_code.png
├── ic_invitation_code_homepage.png
├── ic_launcher.png
├── ic_level_coming_soon.png
├── ic_level_silver.png
├── ic_location.png
├── ic_location_gray_covered.png
├── ic_lock_white.png
├── ic_loyaltix_logo.png
├── ic_loyalty_radiobutton_selected.png
├── ic_loyalty_radiobutton_unselected.png
├── ic_maintenance.png
├── ic_map_cinema_detail.png
├── ic_map_detail_ordertiket.png
├── ic_mastercard_icon.png
├── ic_multiply.png
├── ic_nearby.png
├── ic_no_favourite.png
├── ic_no_voucher.png
├── ic_not_start_ticket_status.png
├── ic_notif_logo.png
├── ic_notification_type_announcement.png
├── ic_notification_type_loyalty.png
├── ic_notification_type_promo.png
├── ic_notification_type_transaction.png
├── ic_notification_type_voucher.png
├── ic_order_loading.png
├── ic_os_notification_fallback_white_24dp.png
├── ic_paper_ordertiket.png
├── ic_payment.png
├── ic_payment_failed.png
├── ic_payment_internet_issue.png
├── ic_phone_cinmea_detail.png
├── ic_placeholder_home_now_playing.png
├── ic_placeholder_home_promo.png
├── ic_placeholder_home_spotlight.png
├── ic_placeholder_home_tix_now.png
├── ic_placeholder_home_trailer.png
├── ic_placeholder_movie_detail_movie.png
├── ic_placeholder_movie_detail_video.png
├── ic_placeholder_news_detail_banner.png
├── ic_placeholder_news_detail_reladted.png
├── ic_placeholder_tix_now_banner.png
├── ic_placeholder_tix_now_movie.png
├── ic_placeholder_tix_now_promo.png
├── ic_play_dark.png
├── ic_points_homepage.png
├── ic_points_loyaltix_detail.png
├── ic_redeem.png
├── ic_redeem_disable.png
├── ic_refresh.png
├── ic_refresh_failed.png
├── ic_refresh_success.png
├── ic_refresh_v2.png
├── ic_refund_failed.png
├── ic_refund_success.png
├── ic_refunded_success.png
├── ic_rotate_icon_down.png
├── ic_screen_rotation.png
├── ic_seats_waiting.png
├── ic_selected_payment.png
├── ic_settings.png
├── ic_share.png
├── ic_show.png
├── ic_spent_point.png
├── ic_status_bar_white.png
├── ic_success_alert_popup.png
├── ic_theater_search_dark.png
├── ic_theater_search_grey.png
├── ic_ticket_gray_covered.png
├── ic_timeout_alert_popup.png
├── ic_top_up.png
├── ic_transaction_failed.png
├── ic_transaction_success.png
├── ic_triangle_drop_down.png
├── ic_triangle_drop_up.png
├── ic_unfavorite_theatre_movie.png
├── ic_unselected_payment.png
├── ic_visa_icon.png
├── ic_voucher_shape_used.png
├── ic_voucher_tag_expired.png
├── ic_voucher_tag_used.png
├── ic_wait_seat_process.png
├── ic_waiting_seats_page_transaction_success.png
├── ic_waiting_seats_page_waiting_seats.png
├── ic_warning_notice.png
├── ic_warning_notice_gray.png
├── ic_what_its.png
├── ico_close.png
├── ico_close_video.png
├── ico_coming_soon.png
├── ico_favourite.png
├── ico_glide.png
├── ico_like.png
├── ico_likenum_int.png
├── ico_noti_top_home.png
├── ico_now_playing_empty.png
├── ico_page_view.png
├── ico_points.png
├── ico_refresh.png
├── ico_shop.png
├── ico_success_voucher.png
├── ico_voucher.png
├── icon_cinema_moviedetail.png
├── icon_location_pulltheater.png
├── icon_loyal_normal.png
├── icon_loyal_silver.png
├── icon_pulldown_down.png
├── icon_schedule_next.png
├── icon_theater.png
├── icon_ticket_selected.png
├── icon_ticket_unselected.png
├── img_active_ticket_state_info_processing_refund.png
├── img_active_ticket_state_info_refund_failed.png
├── img_active_ticket_state_info_refund_success.png
├── img_active_ticket_state_info_thankyou_payment.png
├── img_active_ticket_state_info_transaction_failed.png
├── img_active_ticket_state_info_transaction_success.png
├── img_cinema_empty.png
├── img_empty_mytiket.png
├── img_empty_selectseat.png
├── img_end_resister.png
├── img_error_system_payment.png
├── img_homepage_tooltip.png
├── img_location_empty.png
├── img_loyaltix_bg.png
├── img_no_notificatin.png
├── img_not_have_transaction.png
├── img_popup_alert_waitingseats.png
├── img_refund_failed.png
├── img_seat_popup.png
├── img_update_app.png
├── left_corner_btn_buyticket.png
├── logo_beta_light.png
├── logo_dark_beta.png
├── logo_home.png
├── loyaltix_logo.png
├── movie.png
├── off_ico_cinema_menu_top.png
├── off_ico_movies_menu_top.png
├── off_ico_ticket_menu_top.png
├── on_ico_mytix_menu_top.png
├── oval_showcase.png
├── paper_blue.png
├── paper_gold.png
├── paper_grey.png
├── right_corner_btn_buyticket.png
├── share.png
├── share_now.png
└── success.png
├── ios
├── Flutter
│ ├── AppFrameworkInfo.plist
│ ├── Debug.xcconfig
│ ├── Generated.xcconfig
│ └── Release.xcconfig
├── Runner.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── Runner.xcscheme
├── Runner.xcworkspace
│ └── contents.xcworkspacedata
└── Runner
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ ├── AppIcon.appiconset
│ │ ├── Contents.json
│ │ ├── Icon-App-1024x1024@1x.png
│ │ ├── Icon-App-20x20@1x.png
│ │ ├── Icon-App-20x20@2x.png
│ │ ├── Icon-App-20x20@3x.png
│ │ ├── Icon-App-29x29@1x.png
│ │ ├── Icon-App-29x29@2x.png
│ │ ├── Icon-App-29x29@3x.png
│ │ ├── Icon-App-40x40@1x.png
│ │ ├── Icon-App-40x40@2x.png
│ │ ├── Icon-App-40x40@3x.png
│ │ ├── Icon-App-60x60@2x.png
│ │ ├── Icon-App-60x60@3x.png
│ │ ├── Icon-App-76x76@1x.png
│ │ ├── Icon-App-76x76@2x.png
│ │ └── Icon-App-83.5x83.5@2x.png
│ └── LaunchImage.imageset
│ │ ├── Contents.json
│ │ ├── LaunchImage.png
│ │ ├── LaunchImage@2x.png
│ │ ├── LaunchImage@3x.png
│ │ └── README.md
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── GeneratedPluginRegistrant.h
│ ├── GeneratedPluginRegistrant.m
│ ├── Info.plist
│ └── Runner-Bridging-Header.h
├── lib
├── main.dart
├── src
│ ├── blocs
│ │ ├── genres_bloc.dart
│ │ └── now_playing_bloc.dart
│ ├── config.dart
│ ├── models
│ │ ├── genre_detail_model.dart
│ │ ├── genre_models.dart
│ │ └── now_playing_models.dart
│ └── resources
│ │ ├── genre_api_provider.dart
│ │ ├── movie_api_provider.dart
│ │ └── repository.dart
└── views
│ ├── cinemas_screen.dart
│ ├── main_screen.dart
│ ├── movies_detail_screen.dart
│ ├── movies_list_screen.dart
│ ├── movies_screen.dart
│ ├── splash_screen.dart
│ ├── spotlight_detail_screen.dart
│ ├── ticket_detail_screen.dart
│ ├── tickets_past_screen.dart
│ ├── tickets_screen.dart
│ └── tickets_upcoming_screen.dart
├── pubspec.yaml
├── screenshoot
├── ss1.png
├── ss2.png
├── ss3.png
├── ss4.png
├── ss5.png
├── ss6.png
├── ss7.png
└── ss8.png
└── test
└── widget_test.dart
/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | # Created by https://www.gitignore.io/api/dart,swift,xcode,android,intellij,cocoapods,objective-c,androidstudio
3 |
4 | ### Android ###
5 | # Built application files
6 | *.apk
7 | *.ap_
8 |
9 | # Files for the ART/Dalvik VM
10 | *.dex
11 |
12 | # Java class files
13 | *.class
14 |
15 | # Generated files
16 | bin/
17 | gen/
18 | out/
19 |
20 | # Gradle files
21 | .gradle/
22 | build/
23 |
24 | # Local configuration file (sdk path, etc)
25 | local.properties
26 |
27 | # Proguard folder generated by Eclipse
28 | proguard/
29 |
30 | # Log Files
31 | *.log
32 |
33 | # Android Studio Navigation editor temp files
34 | .navigation/
35 |
36 | # Android Studio captures folder
37 | captures/
38 |
39 | # Intellij
40 | *.iml
41 | .idea/workspace.xml
42 | .idea/tasks.xml
43 | .idea/gradle.xml
44 | .idea/dictionaries
45 | .idea/libraries
46 |
47 | # External native build folder generated in Android Studio 2.2 and later
48 | .externalNativeBuild
49 |
50 | # Freeline
51 | freeline.py
52 | freeline/
53 | freeline_project_description.json
54 |
55 | ### Android Patch ###
56 | gen-external-apklibs
57 |
58 | ### AndroidStudio ###
59 | # Covers files to be ignored for android development using Android Studio.
60 |
61 | # Built application files
62 |
63 | # Files for the ART/Dalvik VM
64 |
65 | # Java class files
66 |
67 | # Generated files
68 |
69 | # Gradle files
70 | .gradle
71 |
72 | # Signing files
73 | .signing/
74 |
75 | # Local configuration file (sdk path, etc)
76 |
77 | # Proguard folder generated by Eclipse
78 |
79 | # Log Files
80 |
81 | # Android Studio
82 | /*/build/
83 | /*/local.properties
84 | /*/out
85 | /*/*/build
86 | /*/*/production
87 | *.ipr
88 | *~
89 | *.swp
90 |
91 | # Android Patch
92 |
93 | # External native build folder generated in Android Studio 2.2 and later
94 |
95 | # NDK
96 | obj/
97 |
98 | # IntelliJ IDEA
99 | *.iws
100 | /out/
101 |
102 | # User-specific configurations
103 | .idea/libraries/
104 | .idea/.name
105 | .idea/compiler.xml
106 | .idea/copyright/profiles_settings.xml
107 | .idea/encodings.xml
108 | .idea/misc.xml
109 | .idea/modules.xml
110 | .idea/scopes/scope_settings.xml
111 | .idea/vcs.xml
112 | .idea/jsLibraryMappings.xml
113 | .idea/datasources.xml
114 | .idea/dataSources.ids
115 | .idea/sqlDataSources.xml
116 | .idea/dynamic.xml
117 | .idea/uiDesigner.xml
118 |
119 | # OS-specific files
120 | .DS_Store
121 | .DS_Store?
122 | ._*
123 | .Spotlight-V100
124 | .Trashes
125 | ehthumbs.db
126 | Thumbs.db
127 |
128 | # Legacy Eclipse project files
129 | .classpath
130 | .project
131 |
132 | # Mobile Tools for Java (J2ME)
133 | .mtj.tmp/
134 |
135 | # Package Files #
136 | *.war
137 | *.ear
138 |
139 | # virtual machine crash logs (Reference: http://www.java.com/en/download/help/error_hotspot.xml)
140 | hs_err_pid*
141 |
142 | ## Plugin-specific files:
143 |
144 | # mpeltonen/sbt-idea plugin
145 | .idea_modules/
146 |
147 | # JIRA plugin
148 | atlassian-ide-plugin.xml
149 |
150 | # Mongo Explorer plugin
151 | .idea/mongoSettings.xml
152 |
153 | # Crashlytics plugin (for Android Studio and IntelliJ)
154 | com_crashlytics_export_strings.xml
155 | crashlytics.properties
156 | crashlytics-build.properties
157 | fabric.properties
158 |
159 | ### AndroidStudio Patch ###
160 |
161 | !/gradle/wrapper/gradle-wrapper.jar
162 |
163 | ### CocoaPods ###
164 | ## CocoaPods GitIgnore Template
165 |
166 | # CocoaPods - Only use to conserve bandwidth / Save time on Pushing
167 | # - Also handy if you have a lage number of dependant pods
168 | # - AS PER https://guides.cocoapods.org/using/using-cocoapods.html NEVER IGONRE THE LOCK FILE
169 | Pods/
170 |
171 | ### Dart ###
172 | # See https://www.dartlang.org/tools/private-files.html
173 |
174 | # Files and directories created by pub
175 | .packages
176 | .pub/
177 | # If you're building an application, you may want to check-in your pubspec.lock
178 | pubspec.lock
179 |
180 | # Directory created by dartdoc
181 | # If you don't generate documentation locally you can remove this line.
182 | doc/api/
183 |
184 | ### Intellij ###
185 | # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
186 | # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
187 |
188 | # User-specific stuff:
189 | .idea/**/workspace.xml
190 | .idea/**/tasks.xml
191 |
192 | # Sensitive or high-churn files:
193 | .idea/**/dataSources/
194 | .idea/**/dataSources.ids
195 | .idea/**/dataSources.xml
196 | .idea/**/dataSources.local.xml
197 | .idea/**/sqlDataSources.xml
198 | .idea/**/dynamic.xml
199 | .idea/**/uiDesigner.xml
200 |
201 | # Gradle:
202 | .idea/**/gradle.xml
203 | .idea/**/libraries
204 |
205 | # CMake
206 | cmake-build-debug/
207 |
208 | # Mongo Explorer plugin:
209 | .idea/**/mongoSettings.xml
210 |
211 | ## File-based project format:
212 |
213 | ## Plugin-specific files:
214 |
215 | # IntelliJ
216 |
217 | # mpeltonen/sbt-idea plugin
218 |
219 | # JIRA plugin
220 |
221 | # Cursive Clojure plugin
222 | .idea/replstate.xml
223 |
224 | # Crashlytics plugin (for Android Studio and IntelliJ)
225 |
226 | ### Intellij Patch ###
227 | # Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
228 |
229 | # *.iml
230 | # modules.xml
231 | # .idea/misc.xml
232 | # *.ipr
233 |
234 | # Sonarlint plugin
235 | .idea/sonarlint
236 |
237 | ### Objective-C ###
238 | # Xcode
239 | #
240 | # gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
241 |
242 | ## Build generated
243 | DerivedData/
244 |
245 | ## Various settings
246 | *.pbxuser
247 | !default.pbxuser
248 | *.mode1v3
249 | !default.mode1v3
250 | *.mode2v3
251 | !default.mode2v3
252 | *.perspectivev3
253 | !default.perspectivev3
254 | xcuserdata/
255 |
256 | ## Other
257 | *.moved-aside
258 | *.xccheckout
259 | *.xcscmblueprint
260 |
261 | ## Obj-C/Swift specific
262 | *.hmap
263 | *.ipa
264 | *.dSYM.zip
265 | *.dSYM
266 |
267 | # CocoaPods - Refactored to standalone file
268 |
269 |
270 | # Carthage - Refactored to standalone file
271 |
272 | # fastlane
273 | #
274 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
275 | # screenshots whenever they are needed.
276 | # For more information about the recommended setup visit:
277 | # https://docs.fastlane.tools/best-practices/source-control/#source-control
278 |
279 | fastlane/report.xml
280 | fastlane/Preview.html
281 | fastlane/screenshots
282 | fastlane/test_output
283 |
284 | # Code Injection
285 | #
286 | # After new code Injection tools there's a generated folder /iOSInjectionProject
287 | # https://github.com/johnno1962/injectionforxcode
288 |
289 | iOSInjectionProject/
290 |
291 | ### Objective-C Patch ###
292 |
293 | ### Swift ###
294 | # Xcode
295 | #
296 | # gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
297 |
298 | ## Build generated
299 |
300 | ## Various settings
301 |
302 | ## Other
303 |
304 | ## Obj-C/Swift specific
305 |
306 | ## Playgrounds
307 | timeline.xctimeline
308 | playground.xcworkspace
309 |
310 | # Swift Package Manager
311 | #
312 | # Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.
313 | # Packages/
314 | # Package.pins
315 | .build/
316 |
317 | # CocoaPods - Refactored to standalone file
318 |
319 | # Carthage - Refactored to standalone file
320 |
321 | # fastlane
322 | #
323 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
324 | # screenshots whenever they are needed.
325 | # For more information about the recommended setup visit:
326 | # https://docs.fastlane.tools/best-practices/source-control/#source-control
327 |
328 |
329 | ### Xcode ###
330 | # Xcode
331 | #
332 | # gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
333 |
334 | ## Build generated
335 |
336 | ## Various settings
337 |
338 | ## Other
339 |
340 | ### Xcode Patch ###
341 | *.xcodeproj/*
342 | !*.xcodeproj/project.pbxproj
343 | !*.xcodeproj/xcshareddata/
344 | !*.xcworkspace/contents.xcworkspacedata
345 | /*.gcno
346 |
347 | # Build files
348 | build/
349 |
350 | # End of https://www.gitignore.io/api/dart,swift,xcode,android,intellij,cocoapods,objective-c,androidstudio
--------------------------------------------------------------------------------
/.idea/codeStyles/Project.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/.idea/runConfigurations/main_dart.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: e5b1ed7a7f7b85c1877e09a9495681f719be5578
8 | channel: beta
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # tix_app
2 |
3 | Cloning TIX ID in Flutter (Currently design only, next i will grab the movies from IMDB api for free)
4 |
5 | ## Feature
6 | * Movies
7 |
8 |
9 | * Movies Detail
10 |
11 |
12 |
13 | * Ticket List
14 |
15 |
16 |
17 | * Ticket
18 |
19 |
20 | ## Demo
21 | Here is the link to see the demo of this app link : click here to see demo in youtube
22 | [](https://www.youtube.com/watch?v=xUAu92MLXUE)
23 |
24 | feel free to fork and learn this project, thanks!
25 |
--------------------------------------------------------------------------------
/android/app/build.gradle:
--------------------------------------------------------------------------------
1 | def localProperties = new Properties()
2 | def localPropertiesFile = rootProject.file('local.properties')
3 | if (localPropertiesFile.exists()) {
4 | localPropertiesFile.withReader('UTF-8') { reader ->
5 | localProperties.load(reader)
6 | }
7 | }
8 |
9 | def flutterRoot = localProperties.getProperty('flutter.sdk')
10 | if (flutterRoot == null) {
11 | throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
12 | }
13 |
14 | def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
15 | if (flutterVersionCode == null) {
16 | flutterVersionCode = '1'
17 | }
18 |
19 | def flutterVersionName = localProperties.getProperty('flutter.versionName')
20 | if (flutterVersionName == null) {
21 | flutterVersionName = '1.0'
22 | }
23 |
24 | apply plugin: 'com.android.application'
25 | apply plugin: 'kotlin-android'
26 | apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
27 |
28 | android {
29 | compileSdkVersion 28
30 |
31 | sourceSets {
32 | main.java.srcDirs += 'src/main/kotlin'
33 | }
34 |
35 | lintOptions {
36 | disable 'InvalidPackage'
37 | }
38 |
39 | defaultConfig {
40 | // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
41 | applicationId "com.anggiprayogo.tix_app"
42 | minSdkVersion 16
43 | targetSdkVersion 28
44 | versionCode flutterVersionCode.toInteger()
45 | versionName flutterVersionName
46 | testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
47 | }
48 |
49 | buildTypes {
50 | release {
51 | // TODO: Add your own signing config for the release build.
52 | // Signing with the debug keys for now, so `flutter run --release` works.
53 | signingConfig signingConfigs.debug
54 | }
55 | }
56 | }
57 |
58 | flutter {
59 | source '../..'
60 | }
61 |
62 | dependencies {
63 | implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
64 | testImplementation 'junit:junit:4.12'
65 | androidTestImplementation 'com.android.support.test:runner:1.0.2'
66 | androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
67 | }
68 |
--------------------------------------------------------------------------------
/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
13 |
20 |
24 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java:
--------------------------------------------------------------------------------
1 | package io.flutter.plugins;
2 |
3 | import io.flutter.plugin.common.PluginRegistry;
4 |
5 | /**
6 | * Generated file. Do not edit.
7 | */
8 | public final class GeneratedPluginRegistrant {
9 | public static void registerWith(PluginRegistry registry) {
10 | if (alreadyRegisteredWith(registry)) {
11 | return;
12 | }
13 | }
14 |
15 | private static boolean alreadyRegisteredWith(PluginRegistry registry) {
16 | final String key = GeneratedPluginRegistrant.class.getCanonicalName();
17 | if (registry.hasPlugin(key)) {
18 | return true;
19 | }
20 | registry.registrarFor(key);
21 | return false;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/android/app/src/main/kotlin/com/anggiprayogo/tix_app/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.anggiprayogo.tix_app
2 |
3 | import android.os.Bundle
4 |
5 | import io.flutter.app.FlutterActivity
6 | import io.flutter.plugins.GeneratedPluginRegistrant
7 |
8 | class MainActivity: FlutterActivity() {
9 | override fun onCreate(savedInstanceState: Bundle?) {
10 | super.onCreate(savedInstanceState)
11 | GeneratedPluginRegistrant.registerWith(this)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
--------------------------------------------------------------------------------
/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | ext.kotlin_version = '1.2.71'
3 | repositories {
4 | google()
5 | jcenter()
6 | }
7 |
8 | dependencies {
9 | classpath 'com.android.tools.build:gradle:3.2.1'
10 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
11 | }
12 | }
13 |
14 | allprojects {
15 | repositories {
16 | google()
17 | jcenter()
18 | }
19 | }
20 |
21 | rootProject.buildDir = '../build'
22 | subprojects {
23 | project.buildDir = "${rootProject.buildDir}/${project.name}"
24 | }
25 | subprojects {
26 | project.evaluationDependsOn(':app')
27 | }
28 |
29 | task clean(type: Delete) {
30 | delete rootProject.buildDir
31 | }
32 |
--------------------------------------------------------------------------------
/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 |
--------------------------------------------------------------------------------
/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Jun 23 08:50:38 CEST 2017
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip
7 |
--------------------------------------------------------------------------------
/android/gradlew:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ##############################################################################
4 | ##
5 | ## Gradle start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
10 | DEFAULT_JVM_OPTS=""
11 |
12 | APP_NAME="Gradle"
13 | APP_BASE_NAME=`basename "$0"`
14 |
15 | # Use the maximum available, or set MAX_FD != -1 to use that value.
16 | MAX_FD="maximum"
17 |
18 | warn ( ) {
19 | echo "$*"
20 | }
21 |
22 | die ( ) {
23 | echo
24 | echo "$*"
25 | echo
26 | exit 1
27 | }
28 |
29 | # OS specific support (must be 'true' or 'false').
30 | cygwin=false
31 | msys=false
32 | darwin=false
33 | case "`uname`" in
34 | CYGWIN* )
35 | cygwin=true
36 | ;;
37 | Darwin* )
38 | darwin=true
39 | ;;
40 | MINGW* )
41 | msys=true
42 | ;;
43 | esac
44 |
45 | # Attempt to set APP_HOME
46 | # Resolve links: $0 may be a link
47 | PRG="$0"
48 | # Need this for relative symlinks.
49 | while [ -h "$PRG" ] ; do
50 | ls=`ls -ld "$PRG"`
51 | link=`expr "$ls" : '.*-> \(.*\)$'`
52 | if expr "$link" : '/.*' > /dev/null; then
53 | PRG="$link"
54 | else
55 | PRG=`dirname "$PRG"`"/$link"
56 | fi
57 | done
58 | SAVED="`pwd`"
59 | cd "`dirname \"$PRG\"`/" >/dev/null
60 | APP_HOME="`pwd -P`"
61 | cd "$SAVED" >/dev/null
62 |
63 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
64 |
65 | # Determine the Java command to use to start the JVM.
66 | if [ -n "$JAVA_HOME" ] ; then
67 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
68 | # IBM's JDK on AIX uses strange locations for the executables
69 | JAVACMD="$JAVA_HOME/jre/sh/java"
70 | else
71 | JAVACMD="$JAVA_HOME/bin/java"
72 | fi
73 | if [ ! -x "$JAVACMD" ] ; then
74 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
75 |
76 | Please set the JAVA_HOME variable in your environment to match the
77 | location of your Java installation."
78 | fi
79 | else
80 | JAVACMD="java"
81 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
82 |
83 | Please set the JAVA_HOME variable in your environment to match the
84 | location of your Java installation."
85 | fi
86 |
87 | # Increase the maximum file descriptors if we can.
88 | if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
89 | MAX_FD_LIMIT=`ulimit -H -n`
90 | if [ $? -eq 0 ] ; then
91 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
92 | MAX_FD="$MAX_FD_LIMIT"
93 | fi
94 | ulimit -n $MAX_FD
95 | if [ $? -ne 0 ] ; then
96 | warn "Could not set maximum file descriptor limit: $MAX_FD"
97 | fi
98 | else
99 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
100 | fi
101 | fi
102 |
103 | # For Darwin, add options to specify how the application appears in the dock
104 | if $darwin; then
105 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
106 | fi
107 |
108 | # For Cygwin, switch paths to Windows format before running java
109 | if $cygwin ; then
110 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
111 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
112 | JAVACMD=`cygpath --unix "$JAVACMD"`
113 |
114 | # We build the pattern for arguments to be converted via cygpath
115 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
116 | SEP=""
117 | for dir in $ROOTDIRSRAW ; do
118 | ROOTDIRS="$ROOTDIRS$SEP$dir"
119 | SEP="|"
120 | done
121 | OURCYGPATTERN="(^($ROOTDIRS))"
122 | # Add a user-defined pattern to the cygpath arguments
123 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then
124 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
125 | fi
126 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
127 | i=0
128 | for arg in "$@" ; do
129 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
130 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
131 |
132 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
133 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
134 | else
135 | eval `echo args$i`="\"$arg\""
136 | fi
137 | i=$((i+1))
138 | done
139 | case $i in
140 | (0) set -- ;;
141 | (1) set -- "$args0" ;;
142 | (2) set -- "$args0" "$args1" ;;
143 | (3) set -- "$args0" "$args1" "$args2" ;;
144 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
145 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
146 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
147 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
148 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
149 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
150 | esac
151 | fi
152 |
153 | # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
154 | function splitJvmOpts() {
155 | JVM_OPTS=("$@")
156 | }
157 | eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
158 | JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
159 |
160 | exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
161 |
--------------------------------------------------------------------------------
/android/gradlew.bat:
--------------------------------------------------------------------------------
1 | @if "%DEBUG%" == "" @echo off
2 | @rem ##########################################################################
3 | @rem
4 | @rem Gradle startup script for Windows
5 | @rem
6 | @rem ##########################################################################
7 |
8 | @rem Set local scope for the variables with windows NT shell
9 | if "%OS%"=="Windows_NT" setlocal
10 |
11 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
12 | set DEFAULT_JVM_OPTS=
13 |
14 | set DIRNAME=%~dp0
15 | if "%DIRNAME%" == "" set DIRNAME=.
16 | set APP_BASE_NAME=%~n0
17 | set APP_HOME=%DIRNAME%
18 |
19 | @rem Find java.exe
20 | if defined JAVA_HOME goto findJavaFromJavaHome
21 |
22 | set JAVA_EXE=java.exe
23 | %JAVA_EXE% -version >NUL 2>&1
24 | if "%ERRORLEVEL%" == "0" goto init
25 |
26 | echo.
27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
28 | echo.
29 | echo Please set the JAVA_HOME variable in your environment to match the
30 | echo location of your Java installation.
31 |
32 | goto fail
33 |
34 | :findJavaFromJavaHome
35 | set JAVA_HOME=%JAVA_HOME:"=%
36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
37 |
38 | if exist "%JAVA_EXE%" goto init
39 |
40 | echo.
41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
42 | echo.
43 | echo Please set the JAVA_HOME variable in your environment to match the
44 | echo location of your Java installation.
45 |
46 | goto fail
47 |
48 | :init
49 | @rem Get command-line arguments, handling Windowz variants
50 |
51 | if not "%OS%" == "Windows_NT" goto win9xME_args
52 | if "%@eval[2+2]" == "4" goto 4NT_args
53 |
54 | :win9xME_args
55 | @rem Slurp the command line arguments.
56 | set CMD_LINE_ARGS=
57 | set _SKIP=2
58 |
59 | :win9xME_args_slurp
60 | if "x%~1" == "x" goto execute
61 |
62 | set CMD_LINE_ARGS=%*
63 | goto execute
64 |
65 | :4NT_args
66 | @rem Get arguments from the 4NT Shell from JP Software
67 | set CMD_LINE_ARGS=%$
68 |
69 | :execute
70 | @rem Setup the command line
71 |
72 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
73 |
74 | @rem Execute Gradle
75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
76 |
77 | :end
78 | @rem End local scope for the variables with windows NT shell
79 | if "%ERRORLEVEL%"=="0" goto mainEnd
80 |
81 | :fail
82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
83 | rem the _cmd.exe /c_ return code!
84 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
85 | exit /b 1
86 |
87 | :mainEnd
88 | if "%OS%"=="Windows_NT" endlocal
89 |
90 | :omega
91 |
--------------------------------------------------------------------------------
/android/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
3 | def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
4 |
5 | def plugins = new Properties()
6 | def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
7 | if (pluginsFile.exists()) {
8 | pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
9 | }
10 |
11 | plugins.each { name, path ->
12 | def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
13 | include ":$name"
14 | project(":$name").projectDir = pluginDirectory
15 | }
16 |
--------------------------------------------------------------------------------
/fonts/roboto_bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/roboto_bold.ttf
--------------------------------------------------------------------------------
/fonts/roboto_regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/roboto_regular.ttf
--------------------------------------------------------------------------------
/fonts/sfui_black.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_black.ttf
--------------------------------------------------------------------------------
/fonts/sfui_bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_bold.ttf
--------------------------------------------------------------------------------
/fonts/sfui_heavy.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_heavy.ttf
--------------------------------------------------------------------------------
/fonts/sfui_light.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_light.ttf
--------------------------------------------------------------------------------
/fonts/sfui_medium.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_medium.ttf
--------------------------------------------------------------------------------
/fonts/sfui_regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_regular.ttf
--------------------------------------------------------------------------------
/fonts/sfui_regular_res.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
--------------------------------------------------------------------------------
/fonts/sfui_semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_semibold.ttf
--------------------------------------------------------------------------------
/fonts/sfui_thin.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_thin.ttf
--------------------------------------------------------------------------------
/fonts/sfui_ultralight.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/fonts/sfui_ultralight.ttf
--------------------------------------------------------------------------------
/images/abc_btn_check_to_on_mtrl_000.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_btn_check_to_on_mtrl_000.png
--------------------------------------------------------------------------------
/images/abc_btn_check_to_on_mtrl_015.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_btn_check_to_on_mtrl_015.png
--------------------------------------------------------------------------------
/images/abc_btn_radio_to_on_mtrl_000.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_btn_radio_to_on_mtrl_000.png
--------------------------------------------------------------------------------
/images/abc_btn_radio_to_on_mtrl_015.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_btn_radio_to_on_mtrl_015.png
--------------------------------------------------------------------------------
/images/abc_btn_switch_to_on_mtrl_00001.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_btn_switch_to_on_mtrl_00001.9.png
--------------------------------------------------------------------------------
/images/abc_btn_switch_to_on_mtrl_00012.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_btn_switch_to_on_mtrl_00012.9.png
--------------------------------------------------------------------------------
/images/abc_ic_menu_copy_mtrl_am_alpha.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_menu_copy_mtrl_am_alpha.png
--------------------------------------------------------------------------------
/images/abc_ic_menu_cut_mtrl_alpha.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_menu_cut_mtrl_alpha.png
--------------------------------------------------------------------------------
/images/abc_ic_menu_paste_mtrl_am_alpha.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_menu_paste_mtrl_am_alpha.png
--------------------------------------------------------------------------------
/images/abc_ic_menu_selectall_mtrl_alpha.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_menu_selectall_mtrl_alpha.png
--------------------------------------------------------------------------------
/images/abc_ic_menu_share_mtrl_alpha.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_menu_share_mtrl_alpha.png
--------------------------------------------------------------------------------
/images/abc_ic_star_black_16dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_star_black_16dp.png
--------------------------------------------------------------------------------
/images/abc_ic_star_black_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_star_black_36dp.png
--------------------------------------------------------------------------------
/images/abc_ic_star_black_48dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_star_black_48dp.png
--------------------------------------------------------------------------------
/images/abc_ic_star_half_black_16dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_star_half_black_16dp.png
--------------------------------------------------------------------------------
/images/abc_ic_star_half_black_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_star_half_black_36dp.png
--------------------------------------------------------------------------------
/images/abc_ic_star_half_black_48dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_ic_star_half_black_48dp.png
--------------------------------------------------------------------------------
/images/abc_scrubber_control_to_pressed_mtrl_000.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_scrubber_control_to_pressed_mtrl_000.png
--------------------------------------------------------------------------------
/images/abc_scrubber_control_to_pressed_mtrl_005.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_scrubber_control_to_pressed_mtrl_005.png
--------------------------------------------------------------------------------
/images/abc_spinner_mtrl_am_alpha.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_spinner_mtrl_am_alpha.9.png
--------------------------------------------------------------------------------
/images/abc_switch_track_mtrl_alpha.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_switch_track_mtrl_alpha.9.png
--------------------------------------------------------------------------------
/images/abc_tab_indicator_mtrl_alpha.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_tab_indicator_mtrl_alpha.9.png
--------------------------------------------------------------------------------
/images/abc_text_select_handle_left_mtrl_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_text_select_handle_left_mtrl_dark.png
--------------------------------------------------------------------------------
/images/abc_text_select_handle_left_mtrl_light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_text_select_handle_left_mtrl_light.png
--------------------------------------------------------------------------------
/images/abc_text_select_handle_right_mtrl_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_text_select_handle_right_mtrl_dark.png
--------------------------------------------------------------------------------
/images/abc_text_select_handle_right_mtrl_light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/abc_text_select_handle_right_mtrl_light.png
--------------------------------------------------------------------------------
/images/bg_loading.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/bg_loading.png
--------------------------------------------------------------------------------
/images/bg_my_loyal_tix_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/bg_my_loyal_tix_detail.png
--------------------------------------------------------------------------------
/images/bg_profile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/bg_profile.png
--------------------------------------------------------------------------------
/images/bg_rating_dialog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/bg_rating_dialog.png
--------------------------------------------------------------------------------
/images/btn_back_common.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/btn_back_common.png
--------------------------------------------------------------------------------
/images/btn_more_home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/btn_more_home.png
--------------------------------------------------------------------------------
/images/btn_play_moviedetail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/btn_play_moviedetail.png
--------------------------------------------------------------------------------
/images/button_view_qr_code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/button_view_qr_code.png
--------------------------------------------------------------------------------
/images/close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/close.png
--------------------------------------------------------------------------------
/images/design_ic_visibility.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/design_ic_visibility.png
--------------------------------------------------------------------------------
/images/design_ic_visibility_off.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/design_ic_visibility_off.png
--------------------------------------------------------------------------------
/images/empty_movie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/empty_movie.png
--------------------------------------------------------------------------------
/images/exo_edit_mode_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/exo_edit_mode_logo.png
--------------------------------------------------------------------------------
/images/ic_active_ticket_state_info_tooltip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_active_ticket_state_info_tooltip.png
--------------------------------------------------------------------------------
/images/ic_already_shown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_already_shown.png
--------------------------------------------------------------------------------
/images/ic_arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_arrow.png
--------------------------------------------------------------------------------
/images/ic_arrow_back_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_arrow_back_white_24dp.png
--------------------------------------------------------------------------------
/images/ic_arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_arrow_down.png
--------------------------------------------------------------------------------
/images/ic_arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_arrow_up.png
--------------------------------------------------------------------------------
/images/ic_bg_dialog_qrcode_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_dialog_qrcode_bottom.png
--------------------------------------------------------------------------------
/images/ic_bg_dialog_qrcode_bottom_samll.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_dialog_qrcode_bottom_samll.png
--------------------------------------------------------------------------------
/images/ic_bg_dialog_qrcode_middle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_dialog_qrcode_middle.png
--------------------------------------------------------------------------------
/images/ic_bg_dialog_qrcode_middle_samll.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_dialog_qrcode_middle_samll.png
--------------------------------------------------------------------------------
/images/ic_bg_dialog_qrcode_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_dialog_qrcode_top.png
--------------------------------------------------------------------------------
/images/ic_bg_dialog_qrcode_top_samll.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_dialog_qrcode_top_samll.png
--------------------------------------------------------------------------------
/images/ic_bg_invitation_code_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_invitation_code_detail.png
--------------------------------------------------------------------------------
/images/ic_bg_invite_code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_invite_code.png
--------------------------------------------------------------------------------
/images/ic_bg_qr_code_bottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_qr_code_bottom.png
--------------------------------------------------------------------------------
/images/ic_bg_qr_code_middle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_qr_code_middle.png
--------------------------------------------------------------------------------
/images/ic_bg_qr_code_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bg_qr_code_top.png
--------------------------------------------------------------------------------
/images/ic_bottom_overscroll_edge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bottom_overscroll_edge.png
--------------------------------------------------------------------------------
/images/ic_bottom_overscroll_glow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_bottom_overscroll_glow.png
--------------------------------------------------------------------------------
/images/ic_btn_back_moviedetail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_btn_back_moviedetail.png
--------------------------------------------------------------------------------
/images/ic_btn_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_btn_email.png
--------------------------------------------------------------------------------
/images/ic_btn_telepon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_btn_telepon.png
--------------------------------------------------------------------------------
/images/ic_buy_ticket_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_buy_ticket_disable.png
--------------------------------------------------------------------------------
/images/ic_buy_ticket_enable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_buy_ticket_enable.png
--------------------------------------------------------------------------------
/images/ic_check_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_check_round.png
--------------------------------------------------------------------------------
/images/ic_checkbox_checked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_checkbox_checked.png
--------------------------------------------------------------------------------
/images/ic_checkbox_unchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_checkbox_unchecked.png
--------------------------------------------------------------------------------
/images/ic_chevron_right_grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_chevron_right_grey.png
--------------------------------------------------------------------------------
/images/ic_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_close.png
--------------------------------------------------------------------------------
/images/ic_close_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_close_black.png
--------------------------------------------------------------------------------
/images/ic_close_btn_pay_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_close_btn_pay_detail.png
--------------------------------------------------------------------------------
/images/ic_close_qrcode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_close_qrcode.png
--------------------------------------------------------------------------------
/images/ic_close_warning_notice.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_close_warning_notice.png
--------------------------------------------------------------------------------
/images/ic_content_like.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_content_like.png
--------------------------------------------------------------------------------
/images/ic_content_liked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_content_liked.png
--------------------------------------------------------------------------------
/images/ic_content_view.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_content_view.png
--------------------------------------------------------------------------------
/images/ic_current_ticket_status.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_current_ticket_status.png
--------------------------------------------------------------------------------
/images/ic_dana.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_dana.png
--------------------------------------------------------------------------------
/images/ic_dana_with_text.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_dana_with_text.png
--------------------------------------------------------------------------------
/images/ic_default_btn_back_moviedetail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_default_btn_back_moviedetail.png
--------------------------------------------------------------------------------
/images/ic_dialog_failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_dialog_failed.png
--------------------------------------------------------------------------------
/images/ic_dialog_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_dialog_success.png
--------------------------------------------------------------------------------
/images/ic_dolby_atmos_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_dolby_atmos_black.png
--------------------------------------------------------------------------------
/images/ic_dolby_atmos_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_dolby_atmos_white.png
--------------------------------------------------------------------------------
/images/ic_download_qrcode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_download_qrcode.png
--------------------------------------------------------------------------------
/images/ic_drop_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_drop_selected.png
--------------------------------------------------------------------------------
/images/ic_edit_dot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_edit_dot.png
--------------------------------------------------------------------------------
/images/ic_expired_promo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_expired_promo.png
--------------------------------------------------------------------------------
/images/ic_failed_alert_popup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_failed_alert_popup.png
--------------------------------------------------------------------------------
/images/ic_failed_ticket_status.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_failed_ticket_status.png
--------------------------------------------------------------------------------
/images/ic_favorite_off.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_favorite_off.png
--------------------------------------------------------------------------------
/images/ic_favorite_on.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_favorite_on.png
--------------------------------------------------------------------------------
/images/ic_favorite_play.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_favorite_play.png
--------------------------------------------------------------------------------
/images/ic_go_my_invitation_code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_go_my_invitation_code.png
--------------------------------------------------------------------------------
/images/ic_got_point.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_got_point.png
--------------------------------------------------------------------------------
/images/ic_hide.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_hide.png
--------------------------------------------------------------------------------
/images/ic_home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_home.png
--------------------------------------------------------------------------------
/images/ic_home_drop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_home_drop.png
--------------------------------------------------------------------------------
/images/ic_home_drop_collapse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_home_drop_collapse.png
--------------------------------------------------------------------------------
/images/ic_home_page_more_button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_home_page_more_button.png
--------------------------------------------------------------------------------
/images/ic_home_refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_home_refresh.png
--------------------------------------------------------------------------------
/images/ic_home_refresh_v2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_home_refresh_v2.png
--------------------------------------------------------------------------------
/images/ic_how_qrcode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_how_qrcode.png
--------------------------------------------------------------------------------
/images/ic_img_update_eng.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_img_update_eng.png
--------------------------------------------------------------------------------
/images/ic_img_update_id.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_img_update_id.png
--------------------------------------------------------------------------------
/images/ic_input_your_code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_input_your_code.png
--------------------------------------------------------------------------------
/images/ic_invitation_code_homepage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_invitation_code_homepage.png
--------------------------------------------------------------------------------
/images/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_launcher.png
--------------------------------------------------------------------------------
/images/ic_level_coming_soon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_level_coming_soon.png
--------------------------------------------------------------------------------
/images/ic_level_silver.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_level_silver.png
--------------------------------------------------------------------------------
/images/ic_location.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_location.png
--------------------------------------------------------------------------------
/images/ic_location_gray_covered.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_location_gray_covered.png
--------------------------------------------------------------------------------
/images/ic_lock_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_lock_white.png
--------------------------------------------------------------------------------
/images/ic_loyaltix_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_loyaltix_logo.png
--------------------------------------------------------------------------------
/images/ic_loyalty_radiobutton_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_loyalty_radiobutton_selected.png
--------------------------------------------------------------------------------
/images/ic_loyalty_radiobutton_unselected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_loyalty_radiobutton_unselected.png
--------------------------------------------------------------------------------
/images/ic_maintenance.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_maintenance.png
--------------------------------------------------------------------------------
/images/ic_map_cinema_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_map_cinema_detail.png
--------------------------------------------------------------------------------
/images/ic_map_detail_ordertiket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_map_detail_ordertiket.png
--------------------------------------------------------------------------------
/images/ic_mastercard_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_mastercard_icon.png
--------------------------------------------------------------------------------
/images/ic_multiply.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_multiply.png
--------------------------------------------------------------------------------
/images/ic_nearby.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_nearby.png
--------------------------------------------------------------------------------
/images/ic_no_favourite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_no_favourite.png
--------------------------------------------------------------------------------
/images/ic_no_voucher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_no_voucher.png
--------------------------------------------------------------------------------
/images/ic_not_start_ticket_status.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_not_start_ticket_status.png
--------------------------------------------------------------------------------
/images/ic_notif_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_notif_logo.png
--------------------------------------------------------------------------------
/images/ic_notification_type_announcement.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_notification_type_announcement.png
--------------------------------------------------------------------------------
/images/ic_notification_type_loyalty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_notification_type_loyalty.png
--------------------------------------------------------------------------------
/images/ic_notification_type_promo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_notification_type_promo.png
--------------------------------------------------------------------------------
/images/ic_notification_type_transaction.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_notification_type_transaction.png
--------------------------------------------------------------------------------
/images/ic_notification_type_voucher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_notification_type_voucher.png
--------------------------------------------------------------------------------
/images/ic_order_loading.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_order_loading.png
--------------------------------------------------------------------------------
/images/ic_os_notification_fallback_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_os_notification_fallback_white_24dp.png
--------------------------------------------------------------------------------
/images/ic_paper_ordertiket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_paper_ordertiket.png
--------------------------------------------------------------------------------
/images/ic_payment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_payment.png
--------------------------------------------------------------------------------
/images/ic_payment_failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_payment_failed.png
--------------------------------------------------------------------------------
/images/ic_payment_internet_issue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_payment_internet_issue.png
--------------------------------------------------------------------------------
/images/ic_phone_cinmea_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_phone_cinmea_detail.png
--------------------------------------------------------------------------------
/images/ic_placeholder_home_now_playing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_home_now_playing.png
--------------------------------------------------------------------------------
/images/ic_placeholder_home_promo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_home_promo.png
--------------------------------------------------------------------------------
/images/ic_placeholder_home_spotlight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_home_spotlight.png
--------------------------------------------------------------------------------
/images/ic_placeholder_home_tix_now.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_home_tix_now.png
--------------------------------------------------------------------------------
/images/ic_placeholder_home_trailer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_home_trailer.png
--------------------------------------------------------------------------------
/images/ic_placeholder_movie_detail_movie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_movie_detail_movie.png
--------------------------------------------------------------------------------
/images/ic_placeholder_movie_detail_video.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_movie_detail_video.png
--------------------------------------------------------------------------------
/images/ic_placeholder_news_detail_banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_news_detail_banner.png
--------------------------------------------------------------------------------
/images/ic_placeholder_news_detail_reladted.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_news_detail_reladted.png
--------------------------------------------------------------------------------
/images/ic_placeholder_tix_now_banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_tix_now_banner.png
--------------------------------------------------------------------------------
/images/ic_placeholder_tix_now_movie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_tix_now_movie.png
--------------------------------------------------------------------------------
/images/ic_placeholder_tix_now_promo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_placeholder_tix_now_promo.png
--------------------------------------------------------------------------------
/images/ic_play_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_play_dark.png
--------------------------------------------------------------------------------
/images/ic_points_homepage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_points_homepage.png
--------------------------------------------------------------------------------
/images/ic_points_loyaltix_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_points_loyaltix_detail.png
--------------------------------------------------------------------------------
/images/ic_redeem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_redeem.png
--------------------------------------------------------------------------------
/images/ic_redeem_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_redeem_disable.png
--------------------------------------------------------------------------------
/images/ic_refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_refresh.png
--------------------------------------------------------------------------------
/images/ic_refresh_failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_refresh_failed.png
--------------------------------------------------------------------------------
/images/ic_refresh_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_refresh_success.png
--------------------------------------------------------------------------------
/images/ic_refresh_v2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_refresh_v2.png
--------------------------------------------------------------------------------
/images/ic_refund_failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_refund_failed.png
--------------------------------------------------------------------------------
/images/ic_refund_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_refund_success.png
--------------------------------------------------------------------------------
/images/ic_refunded_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_refunded_success.png
--------------------------------------------------------------------------------
/images/ic_rotate_icon_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_rotate_icon_down.png
--------------------------------------------------------------------------------
/images/ic_screen_rotation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_screen_rotation.png
--------------------------------------------------------------------------------
/images/ic_seats_waiting.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_seats_waiting.png
--------------------------------------------------------------------------------
/images/ic_selected_payment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_selected_payment.png
--------------------------------------------------------------------------------
/images/ic_settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_settings.png
--------------------------------------------------------------------------------
/images/ic_share.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_share.png
--------------------------------------------------------------------------------
/images/ic_show.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_show.png
--------------------------------------------------------------------------------
/images/ic_spent_point.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_spent_point.png
--------------------------------------------------------------------------------
/images/ic_status_bar_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_status_bar_white.png
--------------------------------------------------------------------------------
/images/ic_success_alert_popup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_success_alert_popup.png
--------------------------------------------------------------------------------
/images/ic_theater_search_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_theater_search_dark.png
--------------------------------------------------------------------------------
/images/ic_theater_search_grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_theater_search_grey.png
--------------------------------------------------------------------------------
/images/ic_ticket_gray_covered.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_ticket_gray_covered.png
--------------------------------------------------------------------------------
/images/ic_timeout_alert_popup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_timeout_alert_popup.png
--------------------------------------------------------------------------------
/images/ic_top_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_top_up.png
--------------------------------------------------------------------------------
/images/ic_transaction_failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_transaction_failed.png
--------------------------------------------------------------------------------
/images/ic_transaction_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_transaction_success.png
--------------------------------------------------------------------------------
/images/ic_triangle_drop_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_triangle_drop_down.png
--------------------------------------------------------------------------------
/images/ic_triangle_drop_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_triangle_drop_up.png
--------------------------------------------------------------------------------
/images/ic_unfavorite_theatre_movie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_unfavorite_theatre_movie.png
--------------------------------------------------------------------------------
/images/ic_unselected_payment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_unselected_payment.png
--------------------------------------------------------------------------------
/images/ic_visa_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_visa_icon.png
--------------------------------------------------------------------------------
/images/ic_voucher_shape_used.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_voucher_shape_used.png
--------------------------------------------------------------------------------
/images/ic_voucher_tag_expired.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_voucher_tag_expired.png
--------------------------------------------------------------------------------
/images/ic_voucher_tag_used.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_voucher_tag_used.png
--------------------------------------------------------------------------------
/images/ic_wait_seat_process.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_wait_seat_process.png
--------------------------------------------------------------------------------
/images/ic_waiting_seats_page_transaction_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_waiting_seats_page_transaction_success.png
--------------------------------------------------------------------------------
/images/ic_waiting_seats_page_waiting_seats.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_waiting_seats_page_waiting_seats.png
--------------------------------------------------------------------------------
/images/ic_warning_notice.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_warning_notice.png
--------------------------------------------------------------------------------
/images/ic_warning_notice_gray.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_warning_notice_gray.png
--------------------------------------------------------------------------------
/images/ic_what_its.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ic_what_its.png
--------------------------------------------------------------------------------
/images/ico_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_close.png
--------------------------------------------------------------------------------
/images/ico_close_video.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_close_video.png
--------------------------------------------------------------------------------
/images/ico_coming_soon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_coming_soon.png
--------------------------------------------------------------------------------
/images/ico_favourite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_favourite.png
--------------------------------------------------------------------------------
/images/ico_glide.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_glide.png
--------------------------------------------------------------------------------
/images/ico_like.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_like.png
--------------------------------------------------------------------------------
/images/ico_likenum_int.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_likenum_int.png
--------------------------------------------------------------------------------
/images/ico_noti_top_home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_noti_top_home.png
--------------------------------------------------------------------------------
/images/ico_now_playing_empty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_now_playing_empty.png
--------------------------------------------------------------------------------
/images/ico_page_view.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_page_view.png
--------------------------------------------------------------------------------
/images/ico_points.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_points.png
--------------------------------------------------------------------------------
/images/ico_refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_refresh.png
--------------------------------------------------------------------------------
/images/ico_shop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_shop.png
--------------------------------------------------------------------------------
/images/ico_success_voucher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_success_voucher.png
--------------------------------------------------------------------------------
/images/ico_voucher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/ico_voucher.png
--------------------------------------------------------------------------------
/images/icon_cinema_moviedetail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_cinema_moviedetail.png
--------------------------------------------------------------------------------
/images/icon_location_pulltheater.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_location_pulltheater.png
--------------------------------------------------------------------------------
/images/icon_loyal_normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_loyal_normal.png
--------------------------------------------------------------------------------
/images/icon_loyal_silver.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_loyal_silver.png
--------------------------------------------------------------------------------
/images/icon_pulldown_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_pulldown_down.png
--------------------------------------------------------------------------------
/images/icon_schedule_next.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_schedule_next.png
--------------------------------------------------------------------------------
/images/icon_theater.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_theater.png
--------------------------------------------------------------------------------
/images/icon_ticket_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_ticket_selected.png
--------------------------------------------------------------------------------
/images/icon_ticket_unselected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/icon_ticket_unselected.png
--------------------------------------------------------------------------------
/images/img_active_ticket_state_info_processing_refund.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_active_ticket_state_info_processing_refund.png
--------------------------------------------------------------------------------
/images/img_active_ticket_state_info_refund_failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_active_ticket_state_info_refund_failed.png
--------------------------------------------------------------------------------
/images/img_active_ticket_state_info_refund_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_active_ticket_state_info_refund_success.png
--------------------------------------------------------------------------------
/images/img_active_ticket_state_info_thankyou_payment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_active_ticket_state_info_thankyou_payment.png
--------------------------------------------------------------------------------
/images/img_active_ticket_state_info_transaction_failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_active_ticket_state_info_transaction_failed.png
--------------------------------------------------------------------------------
/images/img_active_ticket_state_info_transaction_success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_active_ticket_state_info_transaction_success.png
--------------------------------------------------------------------------------
/images/img_cinema_empty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_cinema_empty.png
--------------------------------------------------------------------------------
/images/img_empty_mytiket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_empty_mytiket.png
--------------------------------------------------------------------------------
/images/img_empty_selectseat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_empty_selectseat.png
--------------------------------------------------------------------------------
/images/img_end_resister.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_end_resister.png
--------------------------------------------------------------------------------
/images/img_error_system_payment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_error_system_payment.png
--------------------------------------------------------------------------------
/images/img_homepage_tooltip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_homepage_tooltip.png
--------------------------------------------------------------------------------
/images/img_location_empty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_location_empty.png
--------------------------------------------------------------------------------
/images/img_loyaltix_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_loyaltix_bg.png
--------------------------------------------------------------------------------
/images/img_no_notificatin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_no_notificatin.png
--------------------------------------------------------------------------------
/images/img_not_have_transaction.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_not_have_transaction.png
--------------------------------------------------------------------------------
/images/img_popup_alert_waitingseats.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_popup_alert_waitingseats.png
--------------------------------------------------------------------------------
/images/img_refund_failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_refund_failed.png
--------------------------------------------------------------------------------
/images/img_seat_popup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_seat_popup.png
--------------------------------------------------------------------------------
/images/img_update_app.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/img_update_app.png
--------------------------------------------------------------------------------
/images/left_corner_btn_buyticket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/left_corner_btn_buyticket.png
--------------------------------------------------------------------------------
/images/logo_beta_light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/logo_beta_light.png
--------------------------------------------------------------------------------
/images/logo_dark_beta.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/logo_dark_beta.png
--------------------------------------------------------------------------------
/images/logo_home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/logo_home.png
--------------------------------------------------------------------------------
/images/loyaltix_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/loyaltix_logo.png
--------------------------------------------------------------------------------
/images/movie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/movie.png
--------------------------------------------------------------------------------
/images/off_ico_cinema_menu_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/off_ico_cinema_menu_top.png
--------------------------------------------------------------------------------
/images/off_ico_movies_menu_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/off_ico_movies_menu_top.png
--------------------------------------------------------------------------------
/images/off_ico_ticket_menu_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/off_ico_ticket_menu_top.png
--------------------------------------------------------------------------------
/images/on_ico_mytix_menu_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/on_ico_mytix_menu_top.png
--------------------------------------------------------------------------------
/images/oval_showcase.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/oval_showcase.png
--------------------------------------------------------------------------------
/images/paper_blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/paper_blue.png
--------------------------------------------------------------------------------
/images/paper_gold.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/paper_gold.png
--------------------------------------------------------------------------------
/images/paper_grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/paper_grey.png
--------------------------------------------------------------------------------
/images/right_corner_btn_buyticket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/right_corner_btn_buyticket.png
--------------------------------------------------------------------------------
/images/share.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/share.png
--------------------------------------------------------------------------------
/images/share_now.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/share_now.png
--------------------------------------------------------------------------------
/images/success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/images/success.png
--------------------------------------------------------------------------------
/ios/Flutter/AppFrameworkInfo.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | App
9 | CFBundleIdentifier
10 | io.flutter.flutter.app
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | App
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1.0
23 | MinimumOSVersion
24 | 8.0
25 |
26 |
27 |
--------------------------------------------------------------------------------
/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/ios/Flutter/Generated.xcconfig:
--------------------------------------------------------------------------------
1 | // This is a generated file; do not edit or check into version control.
2 | FLUTTER_ROOT=/Users/anggitprayogo/Flutter/sdk/flutter
3 | FLUTTER_APPLICATION_PATH=/Users/anggitprayogo/Flutter/tix_app
4 | FLUTTER_TARGET=lib/main.dart
5 | FLUTTER_BUILD_DIR=build
6 | SYMROOT=${SOURCE_ROOT}/../build/ios
7 | FLUTTER_FRAMEWORK_DIR=/Users/anggitprayogo/Flutter/sdk/flutter/bin/cache/artifacts/engine/ios
8 | FLUTTER_BUILD_NAME=1.0.0
9 | FLUTTER_BUILD_NUMBER=1
10 |
--------------------------------------------------------------------------------
/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
15 |
21 |
22 |
23 |
24 |
25 |
31 |
32 |
33 |
34 |
40 |
41 |
42 |
43 |
44 |
45 |
56 |
58 |
64 |
65 |
66 |
67 |
68 |
69 |
75 |
77 |
83 |
84 |
85 |
86 |
88 |
89 |
92 |
93 |
94 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 |
4 | @UIApplicationMain
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "size" : "20x20",
5 | "idiom" : "iphone",
6 | "filename" : "Icon-App-20x20@2x.png",
7 | "scale" : "2x"
8 | },
9 | {
10 | "size" : "20x20",
11 | "idiom" : "iphone",
12 | "filename" : "Icon-App-20x20@3x.png",
13 | "scale" : "3x"
14 | },
15 | {
16 | "size" : "29x29",
17 | "idiom" : "iphone",
18 | "filename" : "Icon-App-29x29@1x.png",
19 | "scale" : "1x"
20 | },
21 | {
22 | "size" : "29x29",
23 | "idiom" : "iphone",
24 | "filename" : "Icon-App-29x29@2x.png",
25 | "scale" : "2x"
26 | },
27 | {
28 | "size" : "29x29",
29 | "idiom" : "iphone",
30 | "filename" : "Icon-App-29x29@3x.png",
31 | "scale" : "3x"
32 | },
33 | {
34 | "size" : "40x40",
35 | "idiom" : "iphone",
36 | "filename" : "Icon-App-40x40@2x.png",
37 | "scale" : "2x"
38 | },
39 | {
40 | "size" : "40x40",
41 | "idiom" : "iphone",
42 | "filename" : "Icon-App-40x40@3x.png",
43 | "scale" : "3x"
44 | },
45 | {
46 | "size" : "60x60",
47 | "idiom" : "iphone",
48 | "filename" : "Icon-App-60x60@2x.png",
49 | "scale" : "2x"
50 | },
51 | {
52 | "size" : "60x60",
53 | "idiom" : "iphone",
54 | "filename" : "Icon-App-60x60@3x.png",
55 | "scale" : "3x"
56 | },
57 | {
58 | "size" : "20x20",
59 | "idiom" : "ipad",
60 | "filename" : "Icon-App-20x20@1x.png",
61 | "scale" : "1x"
62 | },
63 | {
64 | "size" : "20x20",
65 | "idiom" : "ipad",
66 | "filename" : "Icon-App-20x20@2x.png",
67 | "scale" : "2x"
68 | },
69 | {
70 | "size" : "29x29",
71 | "idiom" : "ipad",
72 | "filename" : "Icon-App-29x29@1x.png",
73 | "scale" : "1x"
74 | },
75 | {
76 | "size" : "29x29",
77 | "idiom" : "ipad",
78 | "filename" : "Icon-App-29x29@2x.png",
79 | "scale" : "2x"
80 | },
81 | {
82 | "size" : "40x40",
83 | "idiom" : "ipad",
84 | "filename" : "Icon-App-40x40@1x.png",
85 | "scale" : "1x"
86 | },
87 | {
88 | "size" : "40x40",
89 | "idiom" : "ipad",
90 | "filename" : "Icon-App-40x40@2x.png",
91 | "scale" : "2x"
92 | },
93 | {
94 | "size" : "76x76",
95 | "idiom" : "ipad",
96 | "filename" : "Icon-App-76x76@1x.png",
97 | "scale" : "1x"
98 | },
99 | {
100 | "size" : "76x76",
101 | "idiom" : "ipad",
102 | "filename" : "Icon-App-76x76@2x.png",
103 | "scale" : "2x"
104 | },
105 | {
106 | "size" : "83.5x83.5",
107 | "idiom" : "ipad",
108 | "filename" : "Icon-App-83.5x83.5@2x.png",
109 | "scale" : "2x"
110 | },
111 | {
112 | "size" : "1024x1024",
113 | "idiom" : "ios-marketing",
114 | "filename" : "Icon-App-1024x1024@1x.png",
115 | "scale" : "1x"
116 | }
117 | ],
118 | "info" : {
119 | "version" : 1,
120 | "author" : "xcode"
121 | }
122 | }
123 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "LaunchImage.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "LaunchImage@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "LaunchImage@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
--------------------------------------------------------------------------------
/ios/Runner/Base.lproj/LaunchScreen.storyboard:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/ios/Runner/Base.lproj/Main.storyboard:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/ios/Runner/GeneratedPluginRegistrant.h:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | #ifndef GeneratedPluginRegistrant_h
6 | #define GeneratedPluginRegistrant_h
7 |
8 | #import
9 |
10 | @interface GeneratedPluginRegistrant : NSObject
11 | + (void)registerWithRegistry:(NSObject*)registry;
12 | @end
13 |
14 | #endif /* GeneratedPluginRegistrant_h */
15 |
--------------------------------------------------------------------------------
/ios/Runner/GeneratedPluginRegistrant.m:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | #import "GeneratedPluginRegistrant.h"
6 |
7 | @implementation GeneratedPluginRegistrant
8 |
9 | + (void)registerWithRegistry:(NSObject*)registry {
10 | }
11 |
12 | @end
13 |
--------------------------------------------------------------------------------
/ios/Runner/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | tix_app
15 | CFBundlePackageType
16 | APPL
17 | CFBundleShortVersionString
18 | $(FLUTTER_BUILD_NAME)
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | $(FLUTTER_BUILD_NUMBER)
23 | LSRequiresIPhoneOS
24 |
25 | UILaunchStoryboardName
26 | LaunchScreen
27 | UIMainStoryboardFile
28 | Main
29 | UISupportedInterfaceOrientations
30 |
31 | UIInterfaceOrientationPortrait
32 | UIInterfaceOrientationLandscapeLeft
33 | UIInterfaceOrientationLandscapeRight
34 |
35 | UISupportedInterfaceOrientations~ipad
36 |
37 | UIInterfaceOrientationPortrait
38 | UIInterfaceOrientationPortraitUpsideDown
39 | UIInterfaceOrientationLandscapeLeft
40 | UIInterfaceOrientationLandscapeRight
41 |
42 | UIViewControllerBasedStatusBarAppearance
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
--------------------------------------------------------------------------------
/lib/main.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | import 'views/splash_screen.dart';
4 |
5 | main() => runApp(TixApp());
6 |
7 | class TixApp extends StatelessWidget {
8 | @override
9 | Widget build(BuildContext context) {
10 | return MaterialApp(
11 | title: "Tix Clone",
12 | theme: ThemeData(fontFamily: "sfui"),
13 | home: SplashScreen(),
14 | );
15 | }
16 | }
--------------------------------------------------------------------------------
/lib/src/blocs/genres_bloc.dart:
--------------------------------------------------------------------------------
1 | import 'package:tix_app/src/resources/repository.dart';
2 | import 'package:rxdart/rxdart.dart';
3 | import 'package:tix_app/src/models/genre_models.dart';
4 | import 'package:tix_app/src/models/genre_detail_model.dart';
5 |
6 | class GenreBloc{
7 |
8 | final _repository = Repository();
9 | final _genreApiFetcher = PublishSubject();
10 | Observable get genres => _genreApiFetcher.stream;
11 |
12 | final _genreDetailFetcher = PublishSubject();
13 | Observable get genreDetail => _genreDetailFetcher.stream;
14 |
15 |
16 | fetchAllGenres() async{
17 | Genre response = await _repository.fetchAllGenres();
18 | _genreApiFetcher.sink.add(response);
19 | }
20 |
21 | fetchGenreDetail(String id) async{
22 | GenreDetail response = await _repository.fetchDetailGenre(id);
23 | _genreDetailFetcher.sink.add(response);
24 | }
25 |
26 | dispose(){
27 | _genreApiFetcher.close();
28 | _genreDetailFetcher.close();
29 | }
30 | }
31 |
32 | final GenreBloc genreBloc = GenreBloc();
--------------------------------------------------------------------------------
/lib/src/blocs/now_playing_bloc.dart:
--------------------------------------------------------------------------------
1 | import 'package:tix_app/src/resources/repository.dart';
2 | import 'package:rxdart/rxdart.dart';
3 | import 'package:tix_app/src/models/now_playing_models.dart';
4 | import 'package:tix_app/src/models/genre_models.dart';
5 |
6 | class NowPlayingBloc {
7 | final _repository = Repository();
8 | final _nowPlayingFetcher = BehaviorSubject();
9 | final _popularMovie = BehaviorSubject();
10 |
11 | Observable get nowPlaying => _nowPlayingFetcher.stream;
12 | Observable get moviePopular => _popularMovie.stream;
13 |
14 | fetchNowPlayingMovies() async {
15 | NowPlayingMovies response = await _repository.fetchNowPlaying();
16 | Genre responseGenres = await _repository.fetchAllGenres();
17 |
18 | response.results.forEach((result) {
19 | result.genreIds.forEach((idGenre) {
20 | String genreName = "";
21 | responseGenres.genres.forEach((item){
22 | if(idGenre == item.id){
23 | genreName += item.name;
24 | }
25 | });
26 | result.genresNames = genreName;
27 | });
28 | });
29 | _nowPlayingFetcher.sink.add(response);
30 | }
31 |
32 |
33 | fetchPopularMovie() async{
34 | NowPlayingMovies response = await _repository.fetchNowPlaying();
35 | Genre responseGenres = await _repository.fetchAllGenres();
36 |
37 | response.results.forEach((result) {
38 | result.genreIds.forEach((idGenre) {
39 | String genreName = "";
40 | responseGenres.genres.forEach((item){
41 | if(idGenre == item.id){
42 | genreName += item.name;
43 | }
44 | });
45 | result.genresNames = genreName;
46 | });
47 | });
48 | _popularMovie.sink.add(response);
49 | }
50 |
51 | dispose() {
52 | _nowPlayingFetcher.close();
53 | _popularMovie.close();
54 | }
55 | }
56 |
57 | final bloc = NowPlayingBloc();
58 |
--------------------------------------------------------------------------------
/lib/src/config.dart:
--------------------------------------------------------------------------------
1 | class ConfigApiGlobals{
2 | String _baseUrl = "https://api.themoviedb.org/3/";
3 | String get baseUrl => _baseUrl;
4 |
5 | String _apiKey = "00fadd6af89412de4c1a3ecd7fe631f6";
6 | String get apiKey => _apiKey;
7 | }
8 |
9 | class RegionApiGlobals{
10 | String _id = "ID";
11 | String _en = "EN";
12 | String _fr = "FR";
13 | String _sg = "SG";
14 |
15 | String get id => _id;
16 |
17 | String get en => _en;
18 |
19 | String get fr => _fr;
20 |
21 | String get sg => _sg;
22 | }
--------------------------------------------------------------------------------
/lib/src/models/genre_detail_model.dart:
--------------------------------------------------------------------------------
1 | // To parse this JSON data, do
2 | //
3 | // final genreDetail = genreDetailFromJson(jsonString);
4 |
5 | import 'dart:convert';
6 |
7 | GenreDetail genreDetailFromJson(String str) => GenreDetail.fromJson(json.decode(str));
8 |
9 | String genreDetailToJson(GenreDetail data) => json.encode(data.toJson());
10 |
11 | class GenreDetail {
12 | int id;
13 | String name;
14 |
15 | GenreDetail({
16 | this.id,
17 | this.name,
18 | });
19 |
20 | factory GenreDetail.fromJson(Map json) => new GenreDetail(
21 | id: json["id"],
22 | name: json["name"],
23 | );
24 |
25 | Map toJson() => {
26 | "id": id,
27 | "name": name,
28 | };
29 | }
--------------------------------------------------------------------------------
/lib/src/models/genre_models.dart:
--------------------------------------------------------------------------------
1 | // To parse this JSON data, do
2 | //
3 | // final genre = genreFromJson(jsonString);
4 |
5 | import 'dart:convert';
6 |
7 | Genre genreFromJson(String str) => Genre.fromJson(json.decode(str));
8 |
9 | String genreToJson(Genre data) => json.encode(data.toJson());
10 |
11 | class Genre {
12 | List genres;
13 |
14 | Genre({
15 | this.genres,
16 | });
17 |
18 | factory Genre.fromJson(Map json) => new Genre(
19 | genres: new List.from(json["genres"].map((x) => GenreElement.fromJson(x))),
20 | );
21 |
22 | Map toJson() => {
23 | "genres": new List.from(genres.map((x) => x.toJson())),
24 | };
25 | }
26 |
27 | class GenreElement {
28 | int id;
29 | String name;
30 |
31 | GenreElement({
32 | this.id,
33 | this.name,
34 | });
35 |
36 | factory GenreElement.fromJson(Map json) => new GenreElement(
37 | id: json["id"],
38 | name: json["name"],
39 | );
40 |
41 | Map toJson() => {
42 | "id": id,
43 | "name": name,
44 | };
45 | }
--------------------------------------------------------------------------------
/lib/src/models/now_playing_models.dart:
--------------------------------------------------------------------------------
1 | // To parse this JSON data, do
2 | //
3 | // final nowPlayingMovies = nowPlayingMoviesFromJson(jsonString);
4 |
5 | import 'dart:convert';
6 |
7 | NowPlayingMovies nowPlayingMoviesFromJson(String str) => NowPlayingMovies.fromJson(json.decode(str));
8 |
9 | String nowPlayingMoviesToJson(NowPlayingMovies data) => json.encode(data.toJson());
10 |
11 | class NowPlayingMovies {
12 | List results;
13 | int page;
14 | int totalResults;
15 | Dates dates;
16 | int totalPages;
17 |
18 | NowPlayingMovies({
19 | this.results,
20 | this.page,
21 | this.totalResults,
22 | this.dates,
23 | this.totalPages,
24 | });
25 |
26 | factory NowPlayingMovies.fromJson(Map json) => new NowPlayingMovies(
27 | results: new List.from(json["results"].map((x) => Result.fromJson(x))),
28 | page: json["page"],
29 | totalResults: json["total_results"],
30 | dates: Dates.fromJson(json["dates"]),
31 | totalPages: json["total_pages"],
32 | );
33 |
34 | Map toJson() => {
35 | "results": new List.from(results.map((x) => x.toJson())),
36 | "page": page,
37 | "total_results": totalResults,
38 | "dates": dates.toJson(),
39 | "total_pages": totalPages,
40 | };
41 | }
42 |
43 | class Dates {
44 | DateTime maximum;
45 | DateTime minimum;
46 |
47 | Dates({
48 | this.maximum,
49 | this.minimum,
50 | });
51 |
52 | factory Dates.fromJson(Map json) => new Dates(
53 | maximum: DateTime.parse(json["maximum"]),
54 | minimum: DateTime.parse(json["minimum"]),
55 | );
56 |
57 | Map toJson() => {
58 | "maximum": "${maximum.year.toString().padLeft(4, '0')}-${maximum.month.toString().padLeft(2, '0')}-${maximum.day.toString().padLeft(2, '0')}",
59 | "minimum": "${minimum.year.toString().padLeft(4, '0')}-${minimum.month.toString().padLeft(2, '0')}-${minimum.day.toString().padLeft(2, '0')}",
60 | };
61 | }
62 |
63 | class Result {
64 | int voteCount;
65 | int id;
66 | bool video;
67 | double voteAverage;
68 | String title;
69 | double popularity;
70 | String posterPath;
71 | OriginalLanguage originalLanguage;
72 | String originalTitle;
73 | List genreIds;
74 | String genresNames;
75 | String backdropPath;
76 | bool adult;
77 | String overview;
78 | DateTime releaseDate;
79 |
80 | Result({
81 | this.voteCount,
82 | this.id,
83 | this.video,
84 | this.voteAverage,
85 | this.title,
86 | this.popularity,
87 | this.posterPath,
88 | this.originalLanguage,
89 | this.originalTitle,
90 | this.genreIds,
91 | this.backdropPath,
92 | this.adult,
93 | this.overview,
94 | this.releaseDate,
95 | this.genresNames,
96 | });
97 |
98 | factory Result.fromJson(Map json) => new Result(
99 | voteCount: json["vote_count"],
100 | id: json["id"],
101 | video: json["video"],
102 | voteAverage: json["vote_average"].toDouble(),
103 | title: json["title"],
104 | popularity: json["popularity"].toDouble(),
105 | posterPath: json["poster_path"] == null ? null : json["poster_path"],
106 | originalLanguage: originalLanguageValues.map[json["original_language"]],
107 | originalTitle: json["original_title"],
108 | genreIds: new List.from(json["genre_ids"].map((x) => x)),
109 | backdropPath: json["backdrop_path"] == null ? null : json["backdrop_path"],
110 | adult: json["adult"],
111 | overview: json["overview"],
112 | releaseDate: DateTime.parse(json["release_date"]),
113 | );
114 |
115 | Map toJson() => {
116 | "vote_count": voteCount,
117 | "id": id,
118 | "video": video,
119 | "vote_average": voteAverage,
120 | "title": title,
121 | "popularity": popularity,
122 | "poster_path": posterPath == null ? null : posterPath,
123 | "original_language": originalLanguageValues.reverse[originalLanguage],
124 | "original_title": originalTitle,
125 | "genre_ids": new List.from(genreIds.map((x) => x)),
126 | "genre_names": genresNames,
127 | "backdrop_path": backdropPath == null ? null : backdropPath,
128 | "adult": adult,
129 | "overview": overview,
130 | "release_date": "${releaseDate.year.toString().padLeft(4, '0')}-${releaseDate.month.toString().padLeft(2, '0')}-${releaseDate.day.toString().padLeft(2, '0')}",
131 | };
132 | }
133 |
134 | enum OriginalLanguage { EN, HI, ID, JA }
135 |
136 | final originalLanguageValues = new EnumValues({
137 | "en": OriginalLanguage.EN,
138 | "hi": OriginalLanguage.HI,
139 | "id": OriginalLanguage.ID,
140 | "ja": OriginalLanguage.JA
141 | });
142 |
143 | class EnumValues {
144 | Map map;
145 | Map reverseMap;
146 |
147 | EnumValues(this.map);
148 |
149 | Map get reverse {
150 | if (reverseMap == null) {
151 | reverseMap = map.map((k, v) => new MapEntry(v, k));
152 | }
153 | return reverseMap;
154 | }
155 | }
156 |
--------------------------------------------------------------------------------
/lib/src/resources/genre_api_provider.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/foundation.dart';
2 | import 'package:tix_app/src/config.dart';
3 | import 'package:http/http.dart' show Client;
4 | import 'package:tix_app/src/models/genre_models.dart';
5 | import 'package:tix_app/src/models/genre_detail_model.dart';
6 | import 'dart:async';
7 |
8 | class GenreApiProvider{
9 |
10 | Client client = new Client();
11 | var _url = "${ConfigApiGlobals().baseUrl}genre/movie/list?api_key=${ConfigApiGlobals().apiKey}®ion=${RegionApiGlobals().id}";
12 |
13 | Future fetchAllGenres() async{
14 | final response = await client.get(_url);
15 | if(response.statusCode == 200){
16 | return compute(genreFromJson, response.body);
17 | }else{
18 | throw Exception("Failed to load genres");
19 | }
20 | }
21 |
22 | Future fetchDetailGenre(String id) async{
23 | var _urlDetail = "${ConfigApiGlobals().baseUrl}genre/$id?api_key=${ConfigApiGlobals().apiKey}®ion=${RegionApiGlobals().id}";
24 | final response = await client.get(_urlDetail);
25 | if(response.statusCode == 200){
26 | return compute(genreDetailFromJson, response.body);
27 | }else{
28 | throw Exception("Failed to load detail");
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/lib/src/resources/movie_api_provider.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/foundation.dart';
2 | import 'package:tix_app/src/config.dart';
3 | import 'package:tix_app/src/models/now_playing_models.dart';
4 | import 'package:http/http.dart' show Client;
5 | import 'dart:async';
6 |
7 | class MovieApiProvider{
8 |
9 | Client client = new Client();
10 |
11 | var _urlNowPlaying = "${ConfigApiGlobals().baseUrl}movie/now_playing?api_key=${ConfigApiGlobals().apiKey}®ion=${RegionApiGlobals().id}";
12 | var _urlPopular = "${ConfigApiGlobals().baseUrl}movie/popular?api_key=${ConfigApiGlobals().apiKey}®ion=${RegionApiGlobals().id}";
13 |
14 | Future fetchMovieNowPlaying() async{
15 | final response = await client.get(_urlNowPlaying);
16 | if(response.statusCode == 200){
17 | return compute(nowPlayingMoviesFromJson,response.body);
18 | }else{
19 | throw Exception("Failed to fetch data");
20 | }
21 | }
22 |
23 | Future fetchMoviePopular() async{
24 | final response = await client.get(_urlPopular);
25 | if(response.statusCode == 200){
26 | return compute(nowPlayingMoviesFromJson, response.body);
27 | }else{
28 | throw Exception("Failed to fetch popular movie");
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/lib/src/resources/repository.dart:
--------------------------------------------------------------------------------
1 | import 'package:tix_app/src/models/now_playing_models.dart';
2 | import 'package:tix_app/src/resources/genre_api_provider.dart';
3 | import 'package:tix_app/src/resources/movie_api_provider.dart';
4 | import 'package:tix_app/src/models/genre_models.dart';
5 | import 'package:tix_app/src/models/genre_detail_model.dart';
6 | import 'dart:async';
7 |
8 | class Repository{
9 |
10 | final _movieApiProvider = MovieApiProvider();
11 | final _genreApiProvider = GenreApiProvider();
12 |
13 | Future fetchNowPlaying() => _movieApiProvider.fetchMovieNowPlaying();
14 | Future fetchPopularMovie() => _movieApiProvider.fetchMoviePopular();
15 |
16 | Future fetchAllGenres() => _genreApiProvider.fetchAllGenres();
17 | Future fetchDetailGenre(String id) => _genreApiProvider.fetchDetailGenre(id);
18 | }
--------------------------------------------------------------------------------
/lib/views/cinemas_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class CinemasScreen extends StatefulWidget {
4 | @override
5 | _CinemasScreenState createState() => _CinemasScreenState();
6 | }
7 |
8 | class _CinemasScreenState extends State {
9 | @override
10 | Widget build(BuildContext context) {
11 | return Scaffold(
12 | body: Column(
13 | mainAxisAlignment: MainAxisAlignment.start,
14 | crossAxisAlignment: CrossAxisAlignment.start,
15 | children: [
16 | _pickLocationCell(),
17 | _cinemasListCell(),
18 | ],
19 | ));
20 | }
21 |
22 | _pickLocationCell() {
23 | return Container(
24 | decoration: BoxDecoration(color: Color.fromRGBO(250, 250, 251, 1)),
25 | child: Padding(
26 | padding: const EdgeInsets.all(16),
27 | child: Row(
28 | children: [
29 | Image.asset(
30 | "images/icon_location_pulltheater.png",
31 | fit: BoxFit.contain,
32 | width: 16,
33 | height: 16,
34 | ),
35 | Expanded(
36 | child: Padding(
37 | padding: const EdgeInsets.only(left: 10),
38 | child: Text(
39 | "JAKARTA",
40 | style: TextStyle(
41 | fontSize: 14,
42 | color: Colors.black,
43 | ),
44 | ),
45 | ),
46 | ),
47 | Image.asset(
48 | "images/ic_triangle_drop_down.png",
49 | width: 16,
50 | height: 16,
51 | )
52 | ],
53 | ),
54 | ),
55 | );
56 | }
57 |
58 | _cinemasListCell() {
59 | return Expanded(
60 | child: ListView(
61 | scrollDirection: Axis.vertical,
62 | children: [
63 | _cinemasListItem(),
64 | Divider(),
65 | _cinemasListItem(),
66 | Divider(),
67 | _cinemasListItem(),
68 | Divider(),
69 | _cinemasListItem(),
70 | Divider(),
71 | _cinemasListItem(),
72 | Divider(),
73 | _cinemasListItem(),
74 | Divider(),
75 | _cinemasListItem(),
76 | Divider(),
77 | _cinemasListItem(),
78 | Divider(),
79 | _cinemasListItem(),
80 | Divider(),
81 | _cinemasListItem(),
82 | Divider(),
83 | ],
84 | ),
85 | );
86 | }
87 |
88 | _cinemasListItem() {
89 | return ListTile(
90 | leading: Text(
91 | "AEON Mall BSD CITY XXI",
92 | maxLines: 1,
93 | style: TextStyle(color: Colors.black, fontSize: 14),
94 | ),
95 | trailing: Image.asset("images/ic_arrow.png", width: 14, height: 14,),
96 | );
97 | }
98 | }
99 |
--------------------------------------------------------------------------------
/lib/views/main_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | import 'movies_screen.dart';
4 | import 'cinemas_screen.dart';
5 | import 'tickets_screen.dart';
6 |
7 | class MainScreen extends StatefulWidget {
8 | @override
9 | _MainScreenState createState() => _MainScreenState();
10 | }
11 |
12 | class _MainScreenState extends State {
13 | var _cIndex = 0;
14 |
15 | List _children = [
16 | MoviesScreen(),
17 | CinemasScreen(),
18 | TicketScreen(),
19 | ];
20 |
21 | incrementTab(index) {
22 | setState(() {
23 | _cIndex = index;
24 | });
25 | }
26 |
27 | @override
28 | Widget build(BuildContext context) {
29 | return Scaffold(
30 | backgroundColor: Colors.white,
31 | appBar: _appBar(),
32 | body: _bodyMain(),
33 | );
34 | }
35 |
36 | Widget _appBar() {
37 | return AppBar(
38 | leading: Padding(
39 | padding: const EdgeInsets.all(8.0),
40 | child: Center(
41 | child: Text(
42 | "2.5K Point",
43 | style: TextStyle(color: Colors.black, fontSize: 12),
44 | )),
45 | ),
46 | title: Padding(
47 | padding: const EdgeInsets.all(8.0),
48 | child: Image.asset("images/logo_dark_beta.png"),
49 | ),
50 | backgroundColor: Colors.white,
51 | elevation: 1,
52 | centerTitle: true,
53 | actions: [
54 | Image.asset(
55 | "images/ico_noti_top_home.png",
56 | width: 32,
57 | height: 32,
58 | fit: BoxFit.contain,
59 | )
60 | ],
61 | );
62 | }
63 |
64 | Widget _bodyMain() {
65 | return Scaffold(
66 | body: Center(child: _children[_cIndex]),
67 | backgroundColor: Colors.white,
68 | bottomNavigationBar: BottomNavigationBar(
69 | onTap: incrementTab,
70 | backgroundColor: Colors.white,
71 | items: [
72 | BottomNavigationBarItem(
73 | icon: Image.asset(
74 | "images/icon_theater.png",
75 | height: 24,
76 | width: 24,
77 | ),
78 | title: Text(
79 | "Movies",
80 | style: TextStyle(
81 | color: Color.fromRGBO(153, 164, 170, 1), fontSize: 12),
82 | )),
83 | BottomNavigationBarItem(
84 | icon: Image.asset(
85 | "images/icon_cinema_moviedetail.png",
86 | height: 24,
87 | width: 24,
88 | ),
89 | title: Text(
90 | "Cinemas",
91 | style: TextStyle(
92 | color: Color.fromRGBO(153, 164, 170, 1), fontSize: 12),
93 | ),
94 | ),
95 | BottomNavigationBarItem(
96 | icon: Image.asset(
97 | "images/icon_ticket_unselected.png",
98 | height: 24,
99 | width: 24,
100 | ),
101 | title: Text(
102 | "Tickets",
103 | style: TextStyle(
104 | color: Color.fromRGBO(153, 164, 170, 1), fontSize: 12),
105 | )),
106 | ]),
107 | );
108 | }
109 | }
110 |
--------------------------------------------------------------------------------
/lib/views/movies_detail_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | import 'tickets_past_screen.dart';
4 | import 'tickets_upcoming_screen.dart';
5 |
6 | class MovieDetailScreen extends StatefulWidget {
7 | @override
8 | _MovieDetailScreenState createState() => _MovieDetailScreenState();
9 | }
10 |
11 | class _MovieDetailScreenState extends State {
12 | @override
13 | Widget build(BuildContext context) {
14 | return Scaffold(
15 | body: CustomScrollView(
16 | shrinkWrap: true,
17 | slivers: [
18 | SliverAppBar(
19 | backgroundColor: Colors.white,
20 | expandedHeight: 375,
21 | pinned: true,
22 | snap: true,
23 | floating: true,
24 | title: Text("Avengers : End Game"),
25 | flexibleSpace: Stack(
26 | children: [
27 | Container(
28 | height: 220,
29 | decoration: BoxDecoration(
30 | image: DecorationImage(
31 | image:
32 | AssetImage("images/bg_my_loyal_tix_detail.png"),
33 | fit: BoxFit.cover)),
34 | child: Center(
35 | child: Image.asset(
36 | "images/ic_play_dark.png",
37 | width: 48,
38 | height: 48,
39 | ),
40 | ),
41 | ),
42 | Row(
43 | mainAxisSize: MainAxisSize.max,
44 | children: [
45 | Container(
46 | height: 140,
47 | width: 90,
48 | margin: EdgeInsets.only(left: 20, top: 140),
49 | decoration: BoxDecoration(
50 | borderRadius: BorderRadius.all(Radius.circular(10)),
51 | image: DecorationImage(
52 | fit: BoxFit.cover,
53 | image: AssetImage(
54 | "images/bg_my_loyal_tix_detail.png"))),
55 | child: Center(
56 | child: Image.asset(
57 | "images/ic_play_dark.png",
58 | width: 24,
59 | height: 24,
60 | ),
61 | ),
62 | ),
63 | Expanded(
64 | child: Container(
65 | margin:
66 | EdgeInsets.only(left: 20, top: 230, right: 10),
67 | child: Column(
68 | crossAxisAlignment: CrossAxisAlignment.start,
69 | children: [
70 | Padding(
71 | padding: const EdgeInsets.only(bottom: 10),
72 | child: Text(
73 | "Avengers : End Game",
74 | style: TextStyle(
75 | color: Colors.black,
76 | fontSize: 16,
77 | fontWeight: FontWeight.bold),
78 | ),
79 | ),
80 | Table(
81 | defaultVerticalAlignment:
82 | TableCellVerticalAlignment.top,
83 | children: [
84 | TableRow(children: [
85 | Text(
86 | "Genre",
87 | style: TextStyle(
88 | fontSize: 12, color: Colors.grey),
89 | ),
90 | Text(
91 | "Action, Advanture, Fantasy",
92 | style: TextStyle(
93 | fontSize: 12, color: Colors.black),
94 | )
95 | ]),
96 | TableRow(children: [
97 | Padding(
98 | padding: const EdgeInsets.only(top: 5),
99 | child: Text(
100 | "Durasi",
101 | style: TextStyle(
102 | fontSize: 12, color: Colors.grey),
103 | ),
104 | ),
105 | Padding(
106 | padding: const EdgeInsets.only(top: 5),
107 | child: Text(
108 | "3 Jam 1 Menit",
109 | style: TextStyle(
110 | fontSize: 12, color: Colors.black),
111 | ),
112 | )
113 | ]),
114 | TableRow(children: [
115 | Padding(
116 | padding: const EdgeInsets.only(top: 5),
117 | child: Text(
118 | "Sutradara",
119 | style: TextStyle(
120 | fontSize: 12, color: Colors.grey),
121 | ),
122 | ),
123 | Padding(
124 | padding: const EdgeInsets.only(top: 5),
125 | child: Text(
126 | "Anthony Russo, Joe Russo",
127 | style: TextStyle(
128 | fontSize: 12, color: Colors.black),
129 | ),
130 | )
131 | ]),
132 | TableRow(children: [
133 | Padding(
134 | padding: const EdgeInsets.only(top: 5),
135 | child: Text(
136 | "Rating",
137 | style: TextStyle(
138 | fontSize: 12, color: Colors.grey),
139 | ),
140 | ),
141 | Padding(
142 | padding: const EdgeInsets.only(top: 5),
143 | child: Chip(
144 | label: Text(
145 | "R",
146 | style: TextStyle(
147 | fontSize: 10,
148 | color: Colors.black),
149 | ),
150 | ),
151 | )
152 | ])
153 | ],
154 | )
155 | ],
156 | )),
157 | ),
158 | ],
159 | ),
160 | ],
161 | ),
162 | ),
163 | SliverList(
164 | delegate: SliverChildListDelegate([
165 | _ticketPastItem(),
166 | _ticketPastItem(),
167 | _ticketPastItem(),
168 | _ticketPastItem(),
169 | _ticketPastItem(),
170 | ]))
171 | ],
172 | ),
173 | );
174 | }
175 |
176 | _ticketPastItem() {
177 | return Container(
178 | margin: EdgeInsets.all(16),
179 | child: Row(
180 | crossAxisAlignment: CrossAxisAlignment.start,
181 | mainAxisAlignment: MainAxisAlignment.start,
182 | mainAxisSize: MainAxisSize.max,
183 | children: [
184 | Container(
185 | height: 120,
186 | width: 80,
187 | decoration: BoxDecoration(
188 | image: DecorationImage(
189 | image: AssetImage("images/bg_my_loyal_tix_detail.png"),
190 | fit: BoxFit.cover),
191 | borderRadius: BorderRadius.all(Radius.circular(10))),
192 | ),
193 | Expanded(
194 | child: Padding(
195 | padding: const EdgeInsets.only(left: 15, right: 15),
196 | child: Column(
197 | mainAxisSize: MainAxisSize.max,
198 | mainAxisAlignment: MainAxisAlignment.start,
199 | crossAxisAlignment: CrossAxisAlignment.start,
200 | children: [
201 | Text(
202 | "Captain America",
203 | maxLines: 2,
204 | style: TextStyle(
205 | color: Colors.black,
206 | fontSize: 16,
207 | fontWeight: FontWeight.bold),
208 | ),
209 | Padding(
210 | padding: const EdgeInsets.only(top: 7),
211 | child: Row(
212 | mainAxisSize: MainAxisSize.max,
213 | children: [
214 | Image.asset(
215 | "images/ic_location_gray_covered.png",
216 | width: 12,
217 | height: 12,
218 | ),
219 | Padding(
220 | padding: const EdgeInsets.only(left: 5),
221 | child: Text(
222 | "BALE KOTA XXI",
223 | style: TextStyle(
224 | color: Colors.grey,
225 | fontSize: 12,
226 | ),
227 | ),
228 | ),
229 | Padding(
230 | padding: const EdgeInsets.only(left: 15),
231 | child: Image.asset(
232 | "images/ic_ticket_gray_covered.png",
233 | width: 12,
234 | height: 12,
235 | ),
236 | ),
237 | Padding(
238 | padding: const EdgeInsets.only(left: 5),
239 | child: Text(
240 | "Ticket(2)",
241 | style: TextStyle(color: Colors.grey, fontSize: 12),
242 | ),
243 | )
244 | ],
245 | ),
246 | ),
247 | Padding(
248 | padding: const EdgeInsets.only(top: 5),
249 | child: Text(
250 | "Sabtu, 16 Maret 2019, 20:00",
251 | style: TextStyle(color: Colors.grey, fontSize: 12),
252 | ),
253 | ),
254 | Padding(
255 | padding: const EdgeInsets.only(top: 5),
256 | child: Text(
257 | "Status Tiket",
258 | style: TextStyle(color: Colors.grey, fontSize: 12),
259 | ),
260 | ),
261 | Padding(
262 | padding: const EdgeInsets.only(top: 10),
263 | child: Row(
264 | mainAxisSize: MainAxisSize.max,
265 | mainAxisAlignment: MainAxisAlignment.end,
266 | children: [
267 | Text(
268 | "Berhasil",
269 | style: TextStyle(
270 | color: Colors.blue,
271 | fontSize: 14,
272 | ),
273 | ),
274 | ],
275 | ),
276 | )
277 | ],
278 | ),
279 | ))
280 | ],
281 | ),
282 | );
283 | }
284 | }
285 |
--------------------------------------------------------------------------------
/lib/views/movies_list_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class MoviesListScreen extends StatefulWidget {
4 | @override
5 | _MoviesListScreenState createState() => _MoviesListScreenState();
6 | }
7 |
8 | class _MoviesListScreenState extends State {
9 | @override
10 | Widget build(BuildContext context) {
11 | return Scaffold(
12 | appBar: AppBar(
13 | iconTheme: IconThemeData(color: Colors.white),
14 | title: Text("Video"),
15 | backgroundColor: Color.fromRGBO(3, 27, 57, 1),
16 | ),
17 | body: ListView(
18 | scrollDirection: Axis.vertical,
19 | shrinkWrap: true,
20 | children: [
21 | _moviesListItem(),
22 | _moviesListItem(),
23 | _moviesListItem(),
24 | _moviesListItem(),
25 | _moviesListItem(),
26 | ],
27 | ),
28 | );
29 | }
30 |
31 | _moviesListItem() {
32 | return Container(
33 | color: Color.fromRGBO(3, 27, 57, 1),
34 | child: Column(
35 | mainAxisSize: MainAxisSize.max,
36 | mainAxisAlignment: MainAxisAlignment.start,
37 | crossAxisAlignment: CrossAxisAlignment.start,
38 | children: [
39 | Container(
40 | height: 200,
41 | decoration: BoxDecoration(
42 | image: DecorationImage(
43 | fit: BoxFit.cover,
44 | image: AssetImage("images/bg_my_loyal_tix_detail.png"))),
45 | child: Center(
46 | child: Image.asset(
47 | "images/ic_play_dark.png",
48 | fit: BoxFit.contain,
49 | width: 48,
50 | height: 48,
51 | ),
52 | ),
53 | ),
54 | Container(
55 | margin: EdgeInsets.all(16),
56 | child: Column(
57 | crossAxisAlignment: CrossAxisAlignment.start,
58 | mainAxisAlignment: MainAxisAlignment.start,
59 | children: [
60 | Text(
61 | "Marvel Studios' Avengers: Endgame | \"Powerful\" TV Spot",
62 | maxLines: 2,
63 | style: TextStyle(
64 | color: Colors.white,
65 | fontWeight: FontWeight.bold,
66 | fontSize: 18),
67 | ),
68 | Padding(
69 | padding: const EdgeInsets.only(top: 16),
70 | child: Row(
71 | mainAxisAlignment: MainAxisAlignment.start,
72 | crossAxisAlignment: CrossAxisAlignment.start,
73 | mainAxisSize: MainAxisSize.max,
74 | children: [
75 | Image.asset(
76 | "images/movie.png",
77 | width: 12,
78 | height: 12,
79 | ),
80 | Expanded(
81 | child: Padding(
82 | padding: const EdgeInsets.only(left: 10),
83 | child: Text(
84 | "Marvel Studios' Avengers: Endgame | \"Powerful\" TV Spot",
85 | style: TextStyle(color: Colors.white, fontSize: 12),
86 | maxLines: 2,
87 | ),
88 | ),
89 | )
90 | ],
91 | ),
92 | ),
93 | Padding(
94 | padding: const EdgeInsets.only(top: 16, bottom: 20),
95 | child: Row(
96 | mainAxisAlignment: MainAxisAlignment.spaceBetween,
97 | crossAxisAlignment: CrossAxisAlignment.start,
98 | mainAxisSize: MainAxisSize.max,
99 | children: [
100 | Text(
101 | "Diterbikan: 22 Apr",
102 | style: TextStyle(color: Colors.white, fontSize: 12),
103 | maxLines: 1,
104 | ),
105 | Row(
106 | mainAxisSize: MainAxisSize.max,
107 | crossAxisAlignment: CrossAxisAlignment.start,
108 | mainAxisAlignment: MainAxisAlignment.start,
109 | children: [
110 | Text(
111 | "3k Ditonton",
112 | maxLines: 1,
113 | style: TextStyle(color: Colors.white, fontSize: 12),
114 | ),
115 | VerticalDivider(),
116 | Padding(
117 | padding: const EdgeInsets.only(right: 10),
118 | child: Image.asset(
119 | "images/ic_content_like.png",
120 | width: 12,
121 | height: 12,
122 | ),
123 | ),
124 | Padding(
125 | padding: const EdgeInsets.only(right: 10),
126 | child: Text(
127 | "52",
128 | maxLines: 1,
129 | style:
130 | TextStyle(fontSize: 12, color: Colors.white),
131 | ),
132 | ),
133 | Image.asset(
134 | "images/ic_content_like.png",
135 | width: 12,
136 | height: 12,
137 | ),
138 | ],
139 | )
140 | ],
141 | ),
142 | )
143 | ],
144 | ),
145 | )
146 | ],
147 | ),
148 | );
149 | }
150 | }
151 |
--------------------------------------------------------------------------------
/lib/views/splash_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'dart:async';
3 |
4 | import 'main_screen.dart';
5 |
6 | class SplashScreen extends StatefulWidget {
7 | @override
8 | _SplashScreenState createState() => _SplashScreenState();
9 | }
10 |
11 | class _SplashScreenState extends State {
12 |
13 | @override
14 | void initState() {
15 | super.initState();
16 | startTime();
17 | }
18 |
19 | @override
20 | Widget build(BuildContext context) {
21 | return Scaffold(
22 | body: Stack(
23 | alignment: Alignment.topLeft,
24 | children: [
25 | Container(
26 | height: double.infinity,
27 | width: double.infinity,
28 | decoration: BoxDecoration(
29 | image: DecorationImage(
30 | image: AssetImage("images/bg_my_loyal_tix_detail.png"),
31 | fit: BoxFit.cover)),
32 | ),
33 | Center(
34 | child: Padding(
35 | padding: const EdgeInsets.all(24.0),
36 | child: Image.asset(
37 | "images/logo_beta_light.png",
38 | fit: BoxFit.contain,
39 | ),
40 | ),
41 | ),
42 | ],
43 | ),
44 | );
45 | }
46 |
47 | startTime() async{
48 | var _duration = Duration(seconds: 3);
49 | return Timer(_duration, startMainScreen);
50 | }
51 |
52 | startMainScreen(){
53 | Navigator.pushReplacement(context, MaterialPageRoute(builder: (context) => MainScreen()));
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/lib/views/spotlight_detail_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class SpotlightDetailScreen extends StatefulWidget {
4 | @override
5 | _SpotlightDetailScreenState createState() => _SpotlightDetailScreenState();
6 | }
7 |
8 | class _SpotlightDetailScreenState extends State {
9 | @override
10 | Widget build(BuildContext context) {
11 | return Scaffold(
12 | appBar: AppBar(
13 | iconTheme: IconThemeData(color: Colors.black),
14 | title: Text(
15 | "News",
16 | style: TextStyle(
17 | color: Colors.black, fontSize: 20, fontWeight: FontWeight.bold),
18 | ),
19 | backgroundColor: Colors.white,
20 | actions: [
21 | Icon(
22 | Icons.share,
23 | color: Colors.black,
24 | )
25 | ],
26 | ),
27 | body: Column(
28 | children: [
29 | Image.asset(
30 | "images/bg_my_loyal_tix_detail.png",
31 | height: 200,
32 | fit: BoxFit.fill,
33 | )
34 | ],
35 | ),
36 | );
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/lib/views/ticket_detail_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class TicketDetailScreen extends StatefulWidget {
4 | @override
5 | _TicketDetailScreenState createState() => _TicketDetailScreenState();
6 | }
7 |
8 | class _TicketDetailScreenState extends State {
9 | @override
10 | Widget build(BuildContext context) {
11 | return Scaffold(
12 | appBar: AppBar(
13 | iconTheme: IconThemeData(color: Colors.black),
14 | backgroundColor: Colors.white,
15 | title: Text(
16 | "Already Shown",
17 | style: TextStyle(color: Colors.black, fontWeight: FontWeight.bold),
18 | ),
19 | ),
20 | body: Card(
21 | margin: EdgeInsets.all(16),
22 | shape: RoundedRectangleBorder(
23 | borderRadius: BorderRadius.all(Radius.circular(20))),
24 | child: Column(
25 | crossAxisAlignment: CrossAxisAlignment.start,
26 | mainAxisAlignment: MainAxisAlignment.start,
27 | mainAxisSize: MainAxisSize.min,
28 | children: [
29 | Container(
30 | decoration: BoxDecoration(
31 | color: Color.fromRGBO(26, 41, 72, 1),
32 | borderRadius: BorderRadius.only(
33 | topLeft: Radius.circular(20),
34 | topRight: Radius.circular(20))),
35 | child: Row(
36 | mainAxisSize: MainAxisSize.max,
37 | children: [
38 | Container(
39 | height: 120,
40 | width: 90,
41 | margin: EdgeInsets.only(left: 20, top: 20, bottom: 20),
42 | decoration: BoxDecoration(
43 | borderRadius: BorderRadius.all(Radius.circular(10)),
44 | image: DecorationImage(
45 | fit: BoxFit.cover,
46 | image: AssetImage(
47 | "images/bg_my_loyal_tix_detail.png"))),
48 | child: Center(
49 | child: Image.asset(
50 | "images/ic_play_dark.png",
51 | width: 24,
52 | height: 24,
53 | ),
54 | ),
55 | ),
56 | Expanded(
57 | child: Container(
58 | margin: EdgeInsets.only(left: 20, right: 10, top: 20),
59 | child: Column(
60 | crossAxisAlignment: CrossAxisAlignment.start,
61 | children: [
62 | Padding(
63 | padding: const EdgeInsets.only(bottom: 10),
64 | child: Text(
65 | "Avengers : End Game",
66 | style: TextStyle(
67 | color: Color.fromRGBO(227, 193, 121, 1),
68 | fontSize: 16,
69 | fontWeight: FontWeight.bold),
70 | ),
71 | ),
72 | Table(
73 | defaultVerticalAlignment:
74 | TableCellVerticalAlignment.top,
75 | children: [
76 | TableRow(children: [
77 | Text(
78 | "Tanggal",
79 | style: TextStyle(
80 | fontSize: 12, color: Colors.grey),
81 | ),
82 | Text(
83 | "Sat, 16 Maret 2019",
84 | style: TextStyle(
85 | fontSize: 12,
86 | color: Colors.white,
87 | fontWeight: FontWeight.bold),
88 | )
89 | ]),
90 | TableRow(children: [
91 | Padding(
92 | padding: const EdgeInsets.only(top: 5),
93 | child: Text(
94 | "Time",
95 | style: TextStyle(
96 | fontSize: 12, color: Colors.grey),
97 | ),
98 | ),
99 | Padding(
100 | padding: const EdgeInsets.only(top: 5),
101 | child: Text(
102 | "20:00",
103 | style: TextStyle(
104 | fontSize: 12,
105 | color: Colors.white,
106 | fontWeight: FontWeight.bold),
107 | ),
108 | )
109 | ]),
110 | TableRow(children: [
111 | Padding(
112 | padding: const EdgeInsets.only(top: 5),
113 | child: Text(
114 | "Cinema",
115 | style: TextStyle(
116 | fontSize: 12, color: Colors.grey),
117 | ),
118 | ),
119 | Padding(
120 | padding: const EdgeInsets.only(top: 5),
121 | child: Text(
122 | "Bale Kota XXI Studio 1",
123 | style: TextStyle(
124 | fontSize: 12,
125 | color: Colors.white,
126 | fontWeight: FontWeight.bold),
127 | ),
128 | )
129 | ]),
130 | ],
131 | )
132 | ],
133 | )),
134 | ),
135 | ],
136 | ),
137 | ),
138 | Container(
139 | decoration:
140 | BoxDecoration(color: Color.fromRGBO(227, 193, 121, 1)),
141 | child: Row(
142 | mainAxisAlignment: MainAxisAlignment.center,
143 | crossAxisAlignment: CrossAxisAlignment.center,
144 | children: [
145 | Expanded(
146 | child: Padding(
147 | padding: const EdgeInsets.all(8.0),
148 | child: Column(
149 | children: [
150 | Text(
151 | "Total Tickets",
152 | style: TextStyle(color: Colors.grey, fontSize: 12),
153 | ),
154 | Padding(
155 | padding: const EdgeInsets.only(top: 10),
156 | child: Text(
157 | "2 Person, G16, G17",
158 | textAlign: TextAlign.center,
159 | style: TextStyle(
160 | color: Colors.black,
161 | fontWeight: FontWeight.bold,
162 | fontSize: 14),
163 | ),
164 | )
165 | ],
166 | ),
167 | ),
168 | ),
169 | Expanded(
170 | child: Padding(
171 | padding: const EdgeInsets.all(8.0),
172 | child: Column(
173 | children: [
174 | Text(
175 | "Transcation Code",
176 | textAlign: TextAlign.center,
177 | style: TextStyle(color: Colors.grey, fontSize: 12),
178 | ),
179 | Padding(
180 | padding: const EdgeInsets.only(top: 10),
181 | child: Text(
182 | "55555",
183 | textAlign: TextAlign.center,
184 | style: TextStyle(
185 | color: Colors.grey,
186 | fontWeight: FontWeight.bold,
187 | fontSize: 14),
188 | ),
189 | )
190 | ],
191 | ),
192 | ),
193 | ),
194 | Expanded(
195 | child: Padding(
196 | padding: const EdgeInsets.all(8.0),
197 | child: Center(
198 | child: Image.asset(
199 | "images/ic_already_shown.png",
200 | width: 48,
201 | height: 48,
202 | ),
203 | )),
204 | ),
205 | ],
206 | ),
207 | ),
208 | Container(
209 | height: 10,
210 | decoration: BoxDecoration(
211 | image: DecorationImage(
212 | image: AssetImage("images/paper_gold.png"),
213 | fit: BoxFit.fill)),
214 | ),
215 | Container(
216 | padding: EdgeInsets.all(16),
217 | child: Column(
218 | mainAxisAlignment: MainAxisAlignment.start,
219 | crossAxisAlignment: CrossAxisAlignment.start,
220 | children: [
221 | Padding(
222 | padding: const EdgeInsets.only(top: 10, bottom: 10),
223 | child: Text(
224 | "ORDER NUMBER: 1109928129819282",
225 | style: TextStyle(color: Colors.grey, fontSize: 12),
226 | ),
227 | ),
228 | Divider(),
229 | Padding(
230 | padding: const EdgeInsets.only(top: 10, bottom: 10),
231 | child: Row(
232 | mainAxisAlignment: MainAxisAlignment.spaceBetween,
233 | children: [
234 | Text(
235 | "ACTUAL PAYMENT",
236 | style: TextStyle(color: Colors.grey, fontSize: 12),
237 | ),
238 | Text(
239 | "Rp.81.000",
240 | style: TextStyle(
241 | color: Colors.black,
242 | fontSize: 12,
243 | fontWeight: FontWeight.bold),
244 | ),
245 | ],
246 | ),
247 | ),
248 | Divider(),
249 | Padding(
250 | padding: const EdgeInsets.only(top: 10, bottom: 10),
251 | child: Column(
252 | children: [
253 | Padding(
254 | padding: const EdgeInsets.only(top: 10, bottom: 10),
255 | child: Row(
256 | mainAxisAlignment: MainAxisAlignment.spaceBetween,
257 | children: [
258 | Text(
259 | "TICKET PRICE",
260 | style:
261 | TextStyle(color: Colors.grey, fontSize: 12),
262 | ),
263 | Text(
264 | "Rp.50.000 x 2",
265 | style: TextStyle(
266 | color: Colors.black,
267 | fontSize: 12,
268 | fontWeight: FontWeight.bold),
269 | ),
270 | ],
271 | ),
272 | ),
273 | Padding(
274 | padding: const EdgeInsets.only(top: 0, bottom: 10),
275 | child: Row(
276 | mainAxisAlignment: MainAxisAlignment.spaceBetween,
277 | children: [
278 | Text(
279 | "CONVENIENCEE FEE",
280 | style:
281 | TextStyle(color: Colors.grey, fontSize: 12),
282 | ),
283 | Text(
284 | "Rp.3.000 x 2",
285 | style: TextStyle(
286 | color: Colors.black,
287 | fontSize: 12,
288 | fontWeight: FontWeight.bold),
289 | ),
290 | ],
291 | ),
292 | ),
293 | Padding(
294 | padding: const EdgeInsets.only(top: 0, bottom: 10),
295 | child: Row(
296 | mainAxisAlignment: MainAxisAlignment.spaceBetween,
297 | children: [
298 | Text(
299 | "DISCOUNT",
300 | style:
301 | TextStyle(color: Colors.grey, fontSize: 12),
302 | ),
303 | Text(
304 | "-Rp.25.000",
305 | style: TextStyle(
306 | color: Colors.pink,
307 | fontSize: 12,
308 | fontWeight: FontWeight.bold),
309 | ),
310 | ],
311 | ),
312 | ),
313 | ],
314 | ),
315 | ),
316 | ],
317 | ),
318 | )
319 | ],
320 | ),
321 | ),
322 | );
323 | }
324 | }
325 |
--------------------------------------------------------------------------------
/lib/views/tickets_past_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | import 'ticket_detail_screen.dart';
4 |
5 | class TicketPastScreen extends StatefulWidget {
6 | @override
7 | _TicketPastScreenState createState() => _TicketPastScreenState();
8 | }
9 |
10 | class _TicketPastScreenState extends State {
11 | @override
12 | Widget build(BuildContext context) {
13 | return Padding(
14 | padding: const EdgeInsets.only(left: 16, right: 16, top: 20),
15 | child: ListView(
16 | shrinkWrap: true,
17 | scrollDirection: Axis.vertical,
18 | children: [
19 | _ticketPastItem(),
20 | Divider(),
21 | _ticketPastItem(),
22 | Divider(),
23 | _ticketPastItem(),
24 | Divider(),
25 | _ticketPastItem(),
26 | ],
27 | ),
28 | );
29 | }
30 |
31 | _ticketPastItem() {
32 | return GestureDetector(
33 | onTap: () =>{
34 | Navigator.push(context, MaterialPageRoute(builder: (context) => TicketDetailScreen()))
35 | },
36 | child: Row(
37 | crossAxisAlignment: CrossAxisAlignment.start,
38 | mainAxisAlignment: MainAxisAlignment.start,
39 | mainAxisSize: MainAxisSize.max,
40 | children: [
41 | Container(
42 | height: 120,
43 | width: 80,
44 | decoration: BoxDecoration(
45 | image: DecorationImage(
46 | image: AssetImage("images/bg_my_loyal_tix_detail.png"),
47 | fit: BoxFit.cover),
48 | borderRadius: BorderRadius.all(Radius.circular(10))),
49 | ),
50 | Expanded(
51 | child: Padding(
52 | padding: const EdgeInsets.only(left: 15, right: 15),
53 | child: Column(
54 | mainAxisSize: MainAxisSize.max,
55 | mainAxisAlignment: MainAxisAlignment.start,
56 | crossAxisAlignment: CrossAxisAlignment.start,
57 | children: [
58 | Text(
59 | "Captain America",
60 | maxLines: 2,
61 | style: TextStyle(
62 | color: Colors.black,
63 | fontSize: 16,
64 | fontWeight: FontWeight.bold),
65 | ),
66 | Padding(
67 | padding: const EdgeInsets.only(top: 7),
68 | child: Row(
69 | mainAxisSize: MainAxisSize.max,
70 | children: [
71 | Image.asset(
72 | "images/ic_location_gray_covered.png",
73 | width: 12,
74 | height: 12,
75 | ),
76 | Padding(
77 | padding: const EdgeInsets.only(left: 5),
78 | child: Text(
79 | "BALE KOTA XXI",
80 | style: TextStyle(
81 | color: Colors.grey,
82 | fontSize: 12,
83 | ),
84 | ),
85 | ),
86 | Padding(
87 | padding: const EdgeInsets.only(left: 15),
88 | child: Image.asset(
89 | "images/ic_ticket_gray_covered.png",
90 | width: 12,
91 | height: 12,
92 | ),
93 | ),
94 | Padding(
95 | padding: const EdgeInsets.only(left: 5),
96 | child: Text(
97 | "Ticket(2)",
98 | style: TextStyle(color: Colors.grey, fontSize: 12),
99 | ),
100 | )
101 | ],
102 | ),
103 | ),
104 | Padding(
105 | padding: const EdgeInsets.only(top: 5),
106 | child: Text(
107 | "Sabtu, 16 Maret 2019, 20:00",
108 | style: TextStyle(color: Colors.grey, fontSize: 12),
109 | ),
110 | ),
111 | Padding(
112 | padding: const EdgeInsets.only(top: 5),
113 | child: Text(
114 | "Status Tiket",
115 | style: TextStyle(color: Colors.grey, fontSize: 12),
116 | ),
117 | ),
118 | Padding(
119 | padding: const EdgeInsets.only(top: 10),
120 | child: Row(
121 | mainAxisSize: MainAxisSize.max,
122 | mainAxisAlignment: MainAxisAlignment.end,
123 | children: [
124 | Text(
125 | "Berhasil",
126 | style: TextStyle(color: Colors.blue, fontSize: 14,),
127 | ),
128 | ],
129 | ),
130 | )
131 | ],
132 | ),
133 | ))
134 | ],
135 | ),
136 | );
137 | }
138 | }
139 |
--------------------------------------------------------------------------------
/lib/views/tickets_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | import 'tickets_upcoming_screen.dart';
4 | import 'tickets_past_screen.dart';
5 |
6 | class TicketScreen extends StatefulWidget {
7 | @override
8 | _TicketScreenState createState() => _TicketScreenState();
9 | }
10 |
11 | class _TicketScreenState extends State {
12 | @override
13 | Widget build(BuildContext context) {
14 | return Scaffold(
15 | body: DefaultTabController(
16 | length: 2,
17 | child: Scaffold(
18 | appBar: PreferredSize(
19 | preferredSize: Size.fromHeight(kToolbarHeight),
20 | child: TabBar(
21 | indicatorColor: Colors.blue,
22 | tabs: [
23 | Tab(
24 | text: "Upcoming Ticket",
25 | ),
26 | Tab(
27 | text: "Past Ticket",
28 | )
29 | ],
30 | labelColor: Colors.black,
31 | )),
32 | body: TabBarView(
33 | children: [TicketUpcomingScreen(), TicketPastScreen()]),
34 | )),
35 | );
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/lib/views/tickets_upcoming_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class TicketUpcomingScreen extends StatefulWidget {
4 | @override
5 | _TicketUpcomingScreenState createState() => _TicketUpcomingScreenState();
6 | }
7 |
8 | class _TicketUpcomingScreenState extends State {
9 | @override
10 | Widget build(BuildContext context) {
11 | return Center(
12 | child: Column(
13 | mainAxisSize: MainAxisSize.max,
14 | mainAxisAlignment: MainAxisAlignment.center,
15 | crossAxisAlignment: CrossAxisAlignment.center,
16 | children: [
17 | Image.asset("images/img_empty_mytiket.png", fit: BoxFit.contain, width: 100, height: 100,),
18 | Padding(
19 | padding: const EdgeInsets.only(left: 20, right: 20),
20 | child: Text(
21 | "Tidak ada ticket yang akan datang",
22 | style: TextStyle(fontSize: 16, color: Colors.grey),
23 | ),
24 | )
25 | ],
26 | ),
27 | );
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: tix_app
2 | description: Cloning of tix app
3 |
4 | # The following defines the version and build number for your application.
5 | # A version number is three numbers separated by dots, like 1.2.43
6 | # followed by an optional build number separated by a +.
7 | # Both the version and the builder number may be overridden in flutter
8 | # build by specifying --build-name and --build-number, respectively.
9 | # In Android, build-name is used as versionName while build-number used as versionCode.
10 | # Read more about Android versioning at https://developer.android.com/studio/publish/versioning
11 | # In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
12 | # Read more about iOS versioning at
13 | # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
14 | version: 1.0.0+1
15 |
16 | environment:
17 | sdk: ">=2.1.0 <3.0.0"
18 |
19 | dependencies:
20 | flutter:
21 | sdk: flutter
22 |
23 | # The following adds the Cupertino Icons font to your application.
24 | # Use with the CupertinoIcons class for iOS style icons.
25 | cupertino_icons: ^0.1.2
26 | carousel_slider: ^1.3.0
27 | rxdart: ^0.21.0
28 | http: ^0.12.0+2
29 | liquid_pull_to_refresh: ^1.1.0
30 |
31 | dev_dependencies:
32 | flutter_test:
33 | sdk: flutter
34 |
35 |
36 | # For information on the generic Dart part of this file, see the
37 | # following page: https://www.dartlang.org/tools/pub/pubspec
38 |
39 | # The following section is specific to Flutter.
40 | flutter:
41 |
42 | # The following line ensures that the Material Icons font is
43 | # included with your application, so that you can use the icons in
44 | # the material Icons class.
45 | uses-material-design: true
46 |
47 | # To add assets to your application, add an assets section, like this:
48 | assets:
49 | - images/bg_my_loyal_tix_detail.png
50 | - images/logo_beta_light.png
51 | - images/logo_dark_beta.png
52 | - images/ic_os_notification_fallback_white_24dp.png
53 | - images/ico_noti_top_home.png
54 | - images/icon_cinema_moviedetail.png
55 | - images/icon_location_pulltheater.png
56 | - images/icon_theater.png
57 | - images/icon_ticket_unselected.png
58 | - images/ic_triangle_drop_down.png
59 | - images/ic_triangle_drop_up.png
60 | - images/ic_chevron_right_grey.png
61 | - images/ic_spent_point.png
62 | - images/ic_play_dark.png
63 | - images/ic_invitation_code_homepage.png
64 | - images/ic_home_page_more_button.png
65 | - images/ic_arrow.png
66 | - images/ic_content_like.png
67 | - images/ic_content_view.png
68 | - images/img_empty_mytiket.png
69 | - images/ic_location_gray_covered.png
70 | - images/ic_ticket_gray_covered.png
71 | - images/ic_already_shown.png
72 | - images/ic_bg_dialog_qrcode_top.png
73 | - images/ic_default_btn_back_moviedetail.png
74 | - images/paper_gold.png
75 | - images/movie.png
76 |
77 | # An image asset can refer to one or more resolution-specific "variants", see
78 | # https://flutter.io/assets-and-images/#resolution-aware.
79 |
80 | # For details regarding adding assets from package dependencies, see
81 | # https://flutter.io/assets-and-images/#from-packages
82 |
83 | # To add custom fonts to your application, add a fonts section here,
84 | # in this "flutter" section. Each entry in this list should have a
85 | # "family" key with the font family name, and a "fonts" key with a
86 | # list giving the asset and other descriptors for the font. For
87 | # example:
88 | fonts:
89 | - family: sfui
90 | fonts:
91 | - asset: fonts/sfui_medium.ttf
92 |
93 | #
94 | # For details regarding fonts from package dependencies,
95 | # see https://flutter.io/custom-fonts/#from-packages
96 |
--------------------------------------------------------------------------------
/screenshoot/ss1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/screenshoot/ss1.png
--------------------------------------------------------------------------------
/screenshoot/ss2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/screenshoot/ss2.png
--------------------------------------------------------------------------------
/screenshoot/ss3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/screenshoot/ss3.png
--------------------------------------------------------------------------------
/screenshoot/ss4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/screenshoot/ss4.png
--------------------------------------------------------------------------------
/screenshoot/ss5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/screenshoot/ss5.png
--------------------------------------------------------------------------------
/screenshoot/ss6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/screenshoot/ss6.png
--------------------------------------------------------------------------------
/screenshoot/ss7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/screenshoot/ss7.png
--------------------------------------------------------------------------------
/screenshoot/ss8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/anggit97/flutter-tixid-clonning/1fa654a10b00c2dd3fc3aaac48c7cdb01d8f3e4b/screenshoot/ss8.png
--------------------------------------------------------------------------------
/test/widget_test.dart:
--------------------------------------------------------------------------------
1 | // This is a basic Flutter widget test.
2 | //
3 | // To perform an interaction with a widget in your test, use the WidgetTester
4 | // utility that Flutter provides. For example, you can send tap and scroll
5 | // gestures. You can also use WidgetTester to find child widgets in the widget
6 | // tree, read text, and verify that the values of widget properties are correct.
7 |
8 | import 'package:flutter/material.dart';
9 | import 'package:flutter_test/flutter_test.dart';
10 |
11 | import 'package:tix_app/main.dart';
12 |
13 | void main() {
14 | testWidgets('Counter increments smoke test', (WidgetTester tester) async {
15 | // Build our app and trigger a frame.
16 | await tester.pumpWidget(TixApp());
17 |
18 | // Verify that our counter starts at 0.
19 | expect(find.text('0'), findsOneWidget);
20 | expect(find.text('1'), findsNothing);
21 |
22 | // Tap the '+' icon and trigger a frame.
23 | await tester.tap(find.byIcon(Icons.add));
24 | await tester.pump();
25 |
26 | // Verify that our counter has incremented.
27 | expect(find.text('0'), findsNothing);
28 | expect(find.text('1'), findsOneWidget);
29 | });
30 | }
31 |
--------------------------------------------------------------------------------