|
|
70076d71c1
|
phase3: shop.dart NotificationListener return bool
|
2026-07-31 14:54:32 +08:00 |
|
|
|
6487c0db54
|
phase3: pinput v5, late field fix, carousel nullable, badges badgeAnimation param. 251->242
|
2026-07-31 14:53:58 +08:00 |
|
|
|
ab06fadea8
|
phase3: @required->required keyword, nullable for-in iterator fix. 309->251
|
2026-07-31 14:49:02 +08:00 |
|
|
|
1aa7cf3477
|
phase3: targeted local-var nullable (strict type) + nullfix cascade. 379->309
|
2026-07-26 10:47:55 +08:00 |
|
|
|
3ed58e1596
|
phase3: precise nullable-condition fixes (if(x)->if(x==true), analyzer-driven). 399->379
|
2026-07-26 10:46:26 +08:00 |
|
|
|
97e4908126
|
phase3: BreadCrumb.route nullable (+stable nullfix re-run). 440->399
|
2026-07-26 10:44:45 +08:00 |
|
|
|
154d696e70
|
phase3: improve arg-bang handler (allow ! in chains, ; terminator). 574->440
|
2026-07-26 10:41:02 +08:00 |
|
|
|
36f36b815f
|
phase3: youtube_player_iframe 2.x->5.x migration (fromVideoId)
|
2026-07-26 01:11:47 +08:00 |
|
|
|
6d789c7b19
|
phase3: badges 2.x->3.x migration (badgeStyle/animation), SearchBar/onPrimary fixes. 596->580
|
2026-07-26 01:10:45 +08:00 |
|
|
|
cdaaa63d67
|
phase3: stabilize nullfix.py (disable risky local-nullable handler)
Script stable handlers (zero corruption): bang(!), late, param-nullable,
field-formal field-nullable, arg-bang. Reusable — re-run after manual fixes.
Errors: 2374(peak) -> 596 | web build: 1845 -> 571
|
2026-07-26 00:15:38 +08:00 |
|
|
|
f1d7dbb423
|
phase3: fix Scrollbar isAlwaysShown->thumbVisibility, badges hide Badge. 621->605
|
2026-07-25 18:17:33 +08:00 |
|
|
|
a76b872966
|
phase3: nullfix arg-bang handler (argument_type/invalid_assignment). 872 -> 621
|
2026-07-25 18:16:40 +08:00 |
|
|
|
c21ccbd54d
|
phase3: nullfix field-formal field-nullable handler. 907 -> 872
|
2026-07-25 18:14:55 +08:00 |
|
|
|
fce670664b
|
phase3: nullfix.py batch script — bang/late/param-nullable
Automated null-safety fixes driven by dart analyze (no corruption):
- unchecked_use_of_nullable_value: insert '!' on receiver (property/method/[]/op)
- not_initialized field/var: mark 'late'
- missing_default_value_for_parameter: nullable param
Errors: 2374(peak) -> 907
|
2026-07-25 18:13:01 +08:00 |
|
|
|
8f3d3509ea
|
phase3(wip): desktop_checkout field null-safety + build local-shadow
|
2026-07-25 02:53:03 +08:00 |
|
|
|
e2f0d37edd
|
phase3: generated l10n/messages_all, events, actions, dialog null-safe
|
2026-07-24 20:30:00 +08:00 |
|
|
|
1f85ae1e63
|
phase3: bulk null-safety fixes
- validator: (String value) -> (String? value) [30 files]
- ElevatedButton.styleFrom(primary:) -> backgroundColor: [31 files]
- global Key? param fix [129 files]
|
2026-07-24 20:27:16 +08:00 |
|
|
|
e2f815e141
|
phase3: util_web + shop_scroll (custom scroll) null-safe; global Key? param fix
|
2026-07-24 20:24:57 +08:00 |
|
|
|
f831fd1405
|
phase3: util_web null-safe (showImage, WebImagePicker, ImageInfo)
util_io deferred (excluded from web build via conditional import).
|
2026-07-24 20:17:07 +08:00 |
|
|
|
7e8182259f
|
phase3: utils.dart null-safe (cart logic + dio5 error handling)
- cart event handlers rewritten with local list + nullable model fields
- getCartInfo*/addCart/removeCart helpers: nullable List<CartInfo>? params
- addSubproductToCard/addSubproductQty/removeSubproduct: null-safe nested access
- showMessageDialog: DioException + promoted response local
- newCartLineItem params nullable; getWeekDayName default return
- launchURL->launch; RuntimeError code nullable
|
2026-07-24 20:13:07 +08:00 |
|
|
|
88dd90ed7c
|
phase3(critical-path): home page chain null-safe
home.dart + desktop/mobile navigation, carousels, index content widgets,
customers_logo, appbar_menu, navigation_drawer, MobileBottomNav, double_back.
Fixes: Key? params, nullable State fields, Scrollbar thumbVisibility,
ModalRoute.of()?, badges hide Badge, cartInfos local promotion.
|
2026-07-24 13:42:03 +08:00 |
|
|
|
ae4c4046c3
|
phase3(critical-path): store + main + routes + nav components null-safe
- store/state + reducers: nullable AppState fields & reducer types
- main.dart: localeResolutionCallback Locale?, settings.name? guard
- routes.dart: fluro 2.0.5 HandlerFunc (BuildContext?) + params['x']!
- navigationbar/breadcrumbs/bottom_nav/text_link: nullable optional params/fields
|
2026-07-24 13:37:04 +08:00 |
|
|
|
cef00db911
|
phase3: null-safe store/ (AppState fields + reducers nullable)
|
2026-07-24 13:31:34 +08:00 |
|
|
|
4f9aa4f683
|
phase3(foundation): http_util dio5 migration + null-safe models
- http_util.dart: dio4->5 (DioException, nullable params, drop unused statusCode,
null-safe e.response!.data), countryCode ?? ''
- models/* (39 files): make all instance fields nullable (fromJson initializer-list
pattern forces nullable); fix internal method usages (cart_info/cart_line_item/
order/shipping_rate) with !/??
- models/ now passes dart analyze with 0 errors
Widget-level null-safety + remaining utils/store continue in next batch.
|
2026-07-24 03:48:54 +08:00 |
|
|
|
1a578c925d
|
feat: Phase 2 — upgrade deps to null-safe, replace deprecated packages
- pubspec: bump all maintained deps to null-safe latest; flutter pub get resolves
- Remove 12 packages (0-ref or no null-safe): splashscreen, flappy_search_bar,
searchable_dropdown, share, platform_detect, flutter_inappwebview, countdown,
gender_selection, flutter_dash, smooth_star_rating, hovering, ffi
- Add flutter_rating_bar
- Keep discontinued-but-null-safe for now (Phase 5): pull_to_refresh, hive, catcher
- New null-safe custom components (API-compatible, callers change only imports):
utils/countdown.dart, widgets/general/{hover_widget,gender_selection,
smooth_star_rating,search_bar}.dart
- main.dart: drop dead SplashScreen _buildBody + _to field
- 23 consuming files: swap deprecated imports to local components
Null-safety migration + upgraded-API adaptation = Phase 3.
|
2026-07-24 03:10:12 +08:00 |
|
|
|
7ffcc848d0
|
feat: Phase 1 — remove Stripe, switch to e-Transfer
- Drop stripe_payment + stripe_sdk deps; delete stripe pay pages/widgets
- New ETransferPay widget: shows payment@wisetronic.com + R#<orderId> remark
- goPayment stripe/native branches now route to e-Transfer
- pay_now widgets: strip saved-cards section & dead nativePay logic
- my_cards pages rewritten as e-Transfer info (route kept)
- models/utils/constants cleaned of stripe; env constraint -> Dart 3
See UPGRADE_NOTES.md. (Null-safety migration is Phase 3; deps upgrade Phase 2.)
|
2026-07-24 02:47:13 +08:00 |
|
|
|
f8a90ad305
|
updated new flutter version
|
2023-12-15 21:34:23 +08:00 |
|
|
|
bcf21d90ac
|
updated new flutter version
|
2022-06-30 03:47:47 -04:00 |
|
|
|
f504e213a0
|
initial commit to gitea
|
2022-03-10 00:47:26 -05:00 |
|
|
|
808ffa3211
|
backup. before shop update
|
2021-08-31 13:28:33 -04:00 |
|
|
|
c378a6203c
|
backup.
|
2020-12-28 00:19:04 -05:00 |
|
|
|
86c845b49b
|
backup.
|
2020-12-23 00:43:59 -05:00 |
|
Pei desktop
|
0fd880f57b
|
backup
|
2020-12-10 22:58:41 -05:00 |
|
|
|
2df672fe40
|
Add packages.
|
2020-12-10 22:47:04 -05:00 |
|
Pei desktop
|
4a24b1d323
|
backup
|
2020-12-02 02:24:00 -05:00 |
|
|
|
6d3905ea48
|
Create project
|
2020-11-25 13:19:15 -05:00 |
|