@sunggang/ui-lib 0.4.40 → 0.4.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -254,7 +254,7 @@ var fetchAPI = function() {
254
254
  };
255
255
  }();
256
256
 
257
- /* eslint-disable @typescript-eslint/no-explicit-any */ function _array_like_to_array(arr, len) {
257
+ function _array_like_to_array(arr, len) {
258
258
  if (len == null || len > arr.length) len = arr.length;
259
259
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
260
260
  return arr2;
@@ -465,7 +465,7 @@ var LiffProvider = function(param) {
465
465
  // userInfo 的 localStorage key
466
466
  var userInfoStorageKey = "".concat(localStorageKey, "-userInfo");
467
467
  // 從 localStorage 載入 userInfo
468
- var loadUserInfoFromStorage = React.useCallback(function() {
468
+ var loadUserInfoFromStorage = function() {
469
469
  try {
470
470
  var storedUserInfo = window.localStorage.getItem(userInfoStorageKey);
471
471
  if (storedUserInfo) {
@@ -477,20 +477,16 @@ var LiffProvider = function(param) {
477
477
  console.error("載入 userInfo 失敗:", err);
478
478
  }
479
479
  return null;
480
- }, [
481
- userInfoStorageKey
482
- ]);
480
+ };
483
481
  // 儲存 userInfo 到 localStorage
484
- var saveUserInfoToStorage = React.useCallback(function(info) {
482
+ var saveUserInfoToStorage = function(info) {
485
483
  try {
486
484
  window.localStorage.setItem(userInfoStorageKey, JSON.stringify(info));
487
485
  } catch (err) {
488
486
  console.error("儲存 userInfo 失敗:", err);
489
487
  }
490
- }, [
491
- userInfoStorageKey
492
- ]);
493
- var fetchMemberInfo = React.useCallback(function() {
488
+ };
489
+ var fetchMemberInfo = function() {
494
490
  var _ref = _async_to_generator(function(token) {
495
491
  var response, err;
496
492
  return _ts_generator(this, function(_state) {
@@ -535,23 +531,19 @@ var LiffProvider = function(param) {
535
531
  }
536
532
  });
537
533
  });
538
- return function(token) {
534
+ return function fetchMemberInfo(token) {
539
535
  return _ref.apply(this, arguments);
540
536
  };
541
- }(), [
542
- memberInfoUrl,
543
- saveUserInfoToStorage
544
- ]);
537
+ }();
545
538
  // 檢查 token 的有效性
546
- var checkTokenFunc = React.useCallback(function() {
539
+ var checkTokenFunc = function() {
547
540
  var _ref = _async_to_generator(function(token) {
548
541
  var finalToken, response, err;
549
542
  return _ts_generator(this, function(_state) {
550
543
  switch(_state.label){
551
544
  case 0:
552
545
  if (!checkTokenUrl) return [
553
- 2,
554
- false
546
+ 2
555
547
  ];
556
548
  finalToken = token.startsWith("Bearer ") ? token : "Bearer ".concat(token);
557
549
  _state.label = 1;
@@ -614,17 +606,12 @@ var LiffProvider = function(param) {
614
606
  }
615
607
  });
616
608
  });
617
- return function(token) {
609
+ return function checkTokenFunc(token) {
618
610
  return _ref.apply(this, arguments);
619
611
  };
620
- }(), [
621
- checkTokenUrl,
622
- memberInfoUrl,
623
- userInfoStorageKey,
624
- fetchMemberInfo
625
- ]);
612
+ }();
626
613
  // 登入初始化函數
627
- var loginInit = React.useCallback(function() {
614
+ var loginInit = function() {
628
615
  var _ref = _async_to_generator(function(token) {
629
616
  var _resData_data, _resData_data1, response, resData, loginToken, err;
630
617
  return _ts_generator(this, function(_state) {
@@ -709,34 +696,22 @@ var LiffProvider = function(param) {
709
696
  }
710
697
  });
711
698
  });
712
- return function(token) {
699
+ return function loginInit(token) {
713
700
  return _ref.apply(this, arguments);
714
701
  };
715
- }(), [
716
- loginUrl,
717
- ignoreCheckAddFriend,
718
- inviteCode,
719
- localStorageKey,
720
- memberInfoUrl,
721
- handleLoginError,
722
- fetchMemberInfo,
723
- saveUserInfoToStorage
724
- ]);
702
+ }();
725
703
  // 初始化 LIFF
726
- var initializeLiff = React.useCallback(function() {
704
+ var initializeLiff = function() {
727
705
  var _ref = _async_to_generator(function(isValid) {
728
- var originalFetch, customFetch, liff, redirectUri, lineToken, tempFriendship, friendship, friendFlag, error, err;
706
+ var customFetch, liff, originalFetch, lineToken, redirectUri, tempFriendship, friendship, friendFlag, error, err;
729
707
  return _ts_generator(this, function(_state) {
730
708
  switch(_state.label){
731
709
  case 0:
732
- originalFetch = window.fetch;
733
- _state.label = 1;
734
- case 1:
735
710
  _state.trys.push([
736
- 1,
737
- 13,
738
- 14,
739
- 15
711
+ 0,
712
+ 9,
713
+ ,
714
+ 10
740
715
  ]);
741
716
  customFetch = // 自訂 fetch 函數,避免每次請求都改變 URL
742
717
  // eslint-disable-next-line no-inner-declarations
@@ -750,15 +725,11 @@ var LiffProvider = function(param) {
750
725
  4,
751
726
  Promise.resolve().then(function () { return require('./index.cjs3.js'); })
752
727
  ];
753
- case 2:
728
+ case 1:
754
729
  liff = _state.sent().liff;
730
+ originalFetch = window.fetch;
755
731
  window.fetch = customFetch;
756
732
  if (openInApp && !(liff === null || liff === void 0 ? void 0 : liff.isInClient()) && (liff === null || liff === void 0 ? void 0 : liff.getOS()) !== "web") window.location.href = "line://app/".concat(liffId);
757
- console.log("Initializing LIFF with ID:", liff);
758
- if (!!(liff === null || liff === void 0 ? void 0 : liff.isLoggedIn())) return [
759
- 3,
760
- 4
761
- ];
762
733
  return [
763
734
  4,
764
735
  liff.init({
@@ -766,17 +737,11 @@ var LiffProvider = function(param) {
766
737
  withLoginOnExternalBrowser: false
767
738
  })
768
739
  ];
769
- case 3:
740
+ case 2:
770
741
  _state.sent();
771
742
  console.log("LIFF init succeeded.");
772
- return [
773
- 3,
774
- 5
775
- ];
776
- case 4:
777
- console.log("LIFF already logged in, skip init.");
778
- _state.label = 5;
779
- case 5:
743
+ setLiffObject(liff);
744
+ lineToken = liff === null || liff === void 0 ? void 0 : liff.getAccessToken();
780
745
  // 未登入先進行登入
781
746
  if (!liff.isLoggedIn()) {
782
747
  redirectUri = customerRedirectUrl || "".concat(window.location.href);
@@ -795,58 +760,42 @@ var LiffProvider = function(param) {
795
760
  redirectUri: redirectUri
796
761
  });
797
762
  }
798
- setLiffObject(liff);
799
- lineToken = liff === null || liff === void 0 ? void 0 : liff.getAccessToken();
800
- // 已登入且 token 有效,跳過 loginInit
801
- if (isValid) {
802
- console.log("✅ Token 已驗證有效,跳過 loginInit");
803
- return [
804
- 2
805
- ];
806
- }
807
763
  tempFriendship = null;
808
764
  if (!lineToken) return [
809
765
  3,
810
- 12
766
+ 8
811
767
  ];
812
- _state.label = 6;
813
- case 6:
768
+ _state.label = 3;
769
+ case 3:
814
770
  _state.trys.push([
815
- 6,
816
- 9,
771
+ 3,
772
+ 5,
817
773
  ,
818
- 10
774
+ 6
819
775
  ]);
820
- if (!!(liff === null || liff === void 0 ? void 0 : liff.isLoggedIn())) return [
821
- 3,
822
- 8
823
- ];
824
776
  return [
825
777
  4,
826
778
  liff.getFriendship()
827
779
  ];
828
- case 7:
780
+ case 4:
829
781
  friendship = _state.sent();
830
782
  friendFlag = friendship === null || friendship === void 0 ? void 0 : friendship.friendFlag;
831
783
  setFriendship(friendFlag);
832
784
  tempFriendship = friendFlag;
833
785
  console.log("isFriendship", friendFlag);
834
- _state.label = 8;
835
- case 8:
836
786
  return [
837
787
  3,
838
- 10
788
+ 6
839
789
  ];
840
- case 9:
790
+ case 5:
841
791
  error = _state.sent();
842
792
  console.error("Error in liff.getFriendship():", error);
843
793
  return [
844
794
  3,
845
- 10
795
+ 6
846
796
  ];
847
- case 10:
797
+ case 6:
848
798
  console.log("isValid", isValid);
849
- // 如果是好友且 token 有效,跳過 loginInit
850
799
  if (tempFriendship && isValid) return [
851
800
  2
852
801
  ];
@@ -854,52 +803,34 @@ var LiffProvider = function(param) {
854
803
  4,
855
804
  loginInit(lineToken)
856
805
  ];
857
- case 11:
806
+ case 7:
858
807
  _state.sent();
859
- _state.label = 12;
860
- case 12:
808
+ _state.label = 8;
809
+ case 8:
861
810
  return [
862
811
  3,
863
- 15
812
+ 10
864
813
  ];
865
- case 13:
814
+ case 9:
866
815
  err = _state.sent();
867
816
  setLiffError(err.toString());
868
817
  console.log("LIFF init failed.", err);
869
818
  return [
870
819
  3,
871
- 15
872
- ];
873
- case 14:
874
- // 確保還原全域 fetch
875
- try {
876
- window.fetch = originalFetch;
877
- } catch (e) {
878
- // ignore
879
- }
880
- return [
881
- 7
820
+ 10
882
821
  ];
883
- case 15:
822
+ case 10:
884
823
  return [
885
824
  2
886
825
  ];
887
826
  }
888
827
  });
889
828
  });
890
- return function(isValid) {
829
+ return function initializeLiff(isValid) {
891
830
  return _ref.apply(this, arguments);
892
831
  };
893
- }(), [
894
- openInApp,
895
- liffId,
896
- liffLogin,
897
- loginByUser,
898
- ignoreRoute,
899
- customerRedirectUrl,
900
- loginInit
901
- ]);
902
- var accountLogin = React.useCallback(function() {
832
+ }();
833
+ var accountLogin = function() {
903
834
  var _ref = _async_to_generator(function(username, password) {
904
835
  var response, token, tokenType, finalToken, err;
905
836
  return _ts_generator(this, function(_state) {
@@ -966,14 +897,10 @@ var LiffProvider = function(param) {
966
897
  }
967
898
  });
968
899
  });
969
- return function(username, password) {
900
+ return function accountLogin(username, password) {
970
901
  return _ref.apply(this, arguments);
971
902
  };
972
- }(), [
973
- accountLoginUrl,
974
- localStorageKey,
975
- fetchMemberInfo
976
- ]);
903
+ }();
977
904
  var ensureLiffTokenValid = React.useCallback(/*#__PURE__*/ _async_to_generator(function() {
978
905
  var _parsedStore_data, _parsedStore_state, jwtTokenValue, jwtToken, parsedStore, isValid, _tmp, err;
979
906
  return _ts_generator(this, function(_state) {
@@ -1062,34 +989,26 @@ var LiffProvider = function(param) {
1062
989
  });
1063
990
  }), [
1064
991
  liffObject,
1065
- userInfoStorageKey,
1066
- checkTokenFunc,
1067
- localStorageKey,
1068
- loginData
992
+ userInfoStorageKey
1069
993
  ]);
1070
994
  var normalizeToken = function(token) {
1071
995
  var trimmed = token.trim();
1072
996
  return trimmed.toLowerCase().startsWith("bearer ") ? trimmed : "Bearer ".concat(trimmed);
1073
997
  };
1074
- // searchParams 移到 useEffect 內部以避免每次 render 變動造成的依賴問題
1075
- // (會在後面的 useEffect 中建立)
1076
- var searchParams = null;
998
+ var searchParams = typeof window !== "undefined" ? new URLSearchParams(window.location.search) : null;
1077
999
  // 初始載入時從 localStorage 載入 userInfo
1078
1000
  React.useEffect(function() {
1079
1001
  loadUserInfoFromStorage();
1080
- }, [
1081
- loadUserInfoFromStorage
1082
- ]);
1002
+ }, []);
1083
1003
  // 客戶端初始化 LIFF
1084
1004
  React.useEffect(function() {
1085
1005
  var checkAndInitialize = function() {
1086
1006
  var _ref = _async_to_generator(function() {
1087
- var searchParamsLocal, tokenFromQuery, finalToken, isValid, loginStore, jwtToken, _parsedStore_data, _parsedStore_state, parsedStore, isValid1, _tmp;
1007
+ var tokenFromQuery, finalToken, isValid, loginStore, jwtToken, _parsedStore_data, _parsedStore_state, parsedStore, isValid1, _tmp;
1088
1008
  return _ts_generator(this, function(_state) {
1089
1009
  switch(_state.label){
1090
1010
  case 0:
1091
- searchParamsLocal = typeof window !== "undefined" ? new URLSearchParams(window.location.search) : null;
1092
- tokenFromQuery = searchParamsLocal === null || searchParamsLocal === void 0 ? void 0 : searchParamsLocal.get("token");
1011
+ tokenFromQuery = searchParams === null || searchParams === void 0 ? void 0 : searchParams.get("token");
1093
1012
  if (!tokenFromQuery) return [
1094
1013
  3,
1095
1014
  2
@@ -1156,13 +1075,7 @@ var LiffProvider = function(param) {
1156
1075
  };
1157
1076
  }();
1158
1077
  checkAndInitialize();
1159
- }, [
1160
- checkTokenFunc,
1161
- initializeLiff,
1162
- localStorageKey,
1163
- loginData,
1164
- searchParams
1165
- ]);
1078
+ }, []);
1166
1079
  var contextValue = React.useMemo(function() {
1167
1080
  return {
1168
1081
  liffObject: liffObject,
@@ -1187,8 +1100,7 @@ var LiffProvider = function(param) {
1187
1100
  isFriendship,
1188
1101
  ensureLiffTokenValid,
1189
1102
  accountLogin,
1190
- loginType,
1191
- initializeLiff
1103
+ loginType
1192
1104
  ]);
1193
1105
  return /*#__PURE__*/ jsxRuntime.jsx(LiffContext.Provider, {
1194
1106
  value: contextValue,
@@ -250,7 +250,7 @@ var fetchAPI = function() {
250
250
  };
251
251
  }();
252
252
 
253
- /* eslint-disable @typescript-eslint/no-explicit-any */ function _array_like_to_array(arr, len) {
253
+ function _array_like_to_array(arr, len) {
254
254
  if (len == null || len > arr.length) len = arr.length;
255
255
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
256
256
  return arr2;
@@ -461,7 +461,7 @@ var LiffProvider = function(param) {
461
461
  // userInfo 的 localStorage key
462
462
  var userInfoStorageKey = "".concat(localStorageKey, "-userInfo");
463
463
  // 從 localStorage 載入 userInfo
464
- var loadUserInfoFromStorage = useCallback(function() {
464
+ var loadUserInfoFromStorage = function() {
465
465
  try {
466
466
  var storedUserInfo = window.localStorage.getItem(userInfoStorageKey);
467
467
  if (storedUserInfo) {
@@ -473,20 +473,16 @@ var LiffProvider = function(param) {
473
473
  console.error("載入 userInfo 失敗:", err);
474
474
  }
475
475
  return null;
476
- }, [
477
- userInfoStorageKey
478
- ]);
476
+ };
479
477
  // 儲存 userInfo 到 localStorage
480
- var saveUserInfoToStorage = useCallback(function(info) {
478
+ var saveUserInfoToStorage = function(info) {
481
479
  try {
482
480
  window.localStorage.setItem(userInfoStorageKey, JSON.stringify(info));
483
481
  } catch (err) {
484
482
  console.error("儲存 userInfo 失敗:", err);
485
483
  }
486
- }, [
487
- userInfoStorageKey
488
- ]);
489
- var fetchMemberInfo = useCallback(function() {
484
+ };
485
+ var fetchMemberInfo = function() {
490
486
  var _ref = _async_to_generator(function(token) {
491
487
  var response, err;
492
488
  return _ts_generator(this, function(_state) {
@@ -531,23 +527,19 @@ var LiffProvider = function(param) {
531
527
  }
532
528
  });
533
529
  });
534
- return function(token) {
530
+ return function fetchMemberInfo(token) {
535
531
  return _ref.apply(this, arguments);
536
532
  };
537
- }(), [
538
- memberInfoUrl,
539
- saveUserInfoToStorage
540
- ]);
533
+ }();
541
534
  // 檢查 token 的有效性
542
- var checkTokenFunc = useCallback(function() {
535
+ var checkTokenFunc = function() {
543
536
  var _ref = _async_to_generator(function(token) {
544
537
  var finalToken, response, err;
545
538
  return _ts_generator(this, function(_state) {
546
539
  switch(_state.label){
547
540
  case 0:
548
541
  if (!checkTokenUrl) return [
549
- 2,
550
- false
542
+ 2
551
543
  ];
552
544
  finalToken = token.startsWith("Bearer ") ? token : "Bearer ".concat(token);
553
545
  _state.label = 1;
@@ -610,17 +602,12 @@ var LiffProvider = function(param) {
610
602
  }
611
603
  });
612
604
  });
613
- return function(token) {
605
+ return function checkTokenFunc(token) {
614
606
  return _ref.apply(this, arguments);
615
607
  };
616
- }(), [
617
- checkTokenUrl,
618
- memberInfoUrl,
619
- userInfoStorageKey,
620
- fetchMemberInfo
621
- ]);
608
+ }();
622
609
  // 登入初始化函數
623
- var loginInit = useCallback(function() {
610
+ var loginInit = function() {
624
611
  var _ref = _async_to_generator(function(token) {
625
612
  var _resData_data, _resData_data1, response, resData, loginToken, err;
626
613
  return _ts_generator(this, function(_state) {
@@ -705,34 +692,22 @@ var LiffProvider = function(param) {
705
692
  }
706
693
  });
707
694
  });
708
- return function(token) {
695
+ return function loginInit(token) {
709
696
  return _ref.apply(this, arguments);
710
697
  };
711
- }(), [
712
- loginUrl,
713
- ignoreCheckAddFriend,
714
- inviteCode,
715
- localStorageKey,
716
- memberInfoUrl,
717
- handleLoginError,
718
- fetchMemberInfo,
719
- saveUserInfoToStorage
720
- ]);
698
+ }();
721
699
  // 初始化 LIFF
722
- var initializeLiff = useCallback(function() {
700
+ var initializeLiff = function() {
723
701
  var _ref = _async_to_generator(function(isValid) {
724
- var originalFetch, customFetch, liff, redirectUri, lineToken, tempFriendship, friendship, friendFlag, error, err;
702
+ var customFetch, liff, originalFetch, lineToken, redirectUri, tempFriendship, friendship, friendFlag, error, err;
725
703
  return _ts_generator(this, function(_state) {
726
704
  switch(_state.label){
727
705
  case 0:
728
- originalFetch = window.fetch;
729
- _state.label = 1;
730
- case 1:
731
706
  _state.trys.push([
732
- 1,
733
- 13,
734
- 14,
735
- 15
707
+ 0,
708
+ 9,
709
+ ,
710
+ 10
736
711
  ]);
737
712
  customFetch = // 自訂 fetch 函數,避免每次請求都改變 URL
738
713
  // eslint-disable-next-line no-inner-declarations
@@ -746,15 +721,11 @@ var LiffProvider = function(param) {
746
721
  4,
747
722
  import('./index.esm3.js')
748
723
  ];
749
- case 2:
724
+ case 1:
750
725
  liff = _state.sent().liff;
726
+ originalFetch = window.fetch;
751
727
  window.fetch = customFetch;
752
728
  if (openInApp && !(liff === null || liff === void 0 ? void 0 : liff.isInClient()) && (liff === null || liff === void 0 ? void 0 : liff.getOS()) !== "web") window.location.href = "line://app/".concat(liffId);
753
- console.log("Initializing LIFF with ID:", liff);
754
- if (!!(liff === null || liff === void 0 ? void 0 : liff.isLoggedIn())) return [
755
- 3,
756
- 4
757
- ];
758
729
  return [
759
730
  4,
760
731
  liff.init({
@@ -762,17 +733,11 @@ var LiffProvider = function(param) {
762
733
  withLoginOnExternalBrowser: false
763
734
  })
764
735
  ];
765
- case 3:
736
+ case 2:
766
737
  _state.sent();
767
738
  console.log("LIFF init succeeded.");
768
- return [
769
- 3,
770
- 5
771
- ];
772
- case 4:
773
- console.log("LIFF already logged in, skip init.");
774
- _state.label = 5;
775
- case 5:
739
+ setLiffObject(liff);
740
+ lineToken = liff === null || liff === void 0 ? void 0 : liff.getAccessToken();
776
741
  // 未登入先進行登入
777
742
  if (!liff.isLoggedIn()) {
778
743
  redirectUri = customerRedirectUrl || "".concat(window.location.href);
@@ -791,58 +756,42 @@ var LiffProvider = function(param) {
791
756
  redirectUri: redirectUri
792
757
  });
793
758
  }
794
- setLiffObject(liff);
795
- lineToken = liff === null || liff === void 0 ? void 0 : liff.getAccessToken();
796
- // 已登入且 token 有效,跳過 loginInit
797
- if (isValid) {
798
- console.log("✅ Token 已驗證有效,跳過 loginInit");
799
- return [
800
- 2
801
- ];
802
- }
803
759
  tempFriendship = null;
804
760
  if (!lineToken) return [
805
761
  3,
806
- 12
762
+ 8
807
763
  ];
808
- _state.label = 6;
809
- case 6:
764
+ _state.label = 3;
765
+ case 3:
810
766
  _state.trys.push([
811
- 6,
812
- 9,
767
+ 3,
768
+ 5,
813
769
  ,
814
- 10
770
+ 6
815
771
  ]);
816
- if (!!(liff === null || liff === void 0 ? void 0 : liff.isLoggedIn())) return [
817
- 3,
818
- 8
819
- ];
820
772
  return [
821
773
  4,
822
774
  liff.getFriendship()
823
775
  ];
824
- case 7:
776
+ case 4:
825
777
  friendship = _state.sent();
826
778
  friendFlag = friendship === null || friendship === void 0 ? void 0 : friendship.friendFlag;
827
779
  setFriendship(friendFlag);
828
780
  tempFriendship = friendFlag;
829
781
  console.log("isFriendship", friendFlag);
830
- _state.label = 8;
831
- case 8:
832
782
  return [
833
783
  3,
834
- 10
784
+ 6
835
785
  ];
836
- case 9:
786
+ case 5:
837
787
  error = _state.sent();
838
788
  console.error("Error in liff.getFriendship():", error);
839
789
  return [
840
790
  3,
841
- 10
791
+ 6
842
792
  ];
843
- case 10:
793
+ case 6:
844
794
  console.log("isValid", isValid);
845
- // 如果是好友且 token 有效,跳過 loginInit
846
795
  if (tempFriendship && isValid) return [
847
796
  2
848
797
  ];
@@ -850,52 +799,34 @@ var LiffProvider = function(param) {
850
799
  4,
851
800
  loginInit(lineToken)
852
801
  ];
853
- case 11:
802
+ case 7:
854
803
  _state.sent();
855
- _state.label = 12;
856
- case 12:
804
+ _state.label = 8;
805
+ case 8:
857
806
  return [
858
807
  3,
859
- 15
808
+ 10
860
809
  ];
861
- case 13:
810
+ case 9:
862
811
  err = _state.sent();
863
812
  setLiffError(err.toString());
864
813
  console.log("LIFF init failed.", err);
865
814
  return [
866
815
  3,
867
- 15
868
- ];
869
- case 14:
870
- // 確保還原全域 fetch
871
- try {
872
- window.fetch = originalFetch;
873
- } catch (e) {
874
- // ignore
875
- }
876
- return [
877
- 7
816
+ 10
878
817
  ];
879
- case 15:
818
+ case 10:
880
819
  return [
881
820
  2
882
821
  ];
883
822
  }
884
823
  });
885
824
  });
886
- return function(isValid) {
825
+ return function initializeLiff(isValid) {
887
826
  return _ref.apply(this, arguments);
888
827
  };
889
- }(), [
890
- openInApp,
891
- liffId,
892
- liffLogin,
893
- loginByUser,
894
- ignoreRoute,
895
- customerRedirectUrl,
896
- loginInit
897
- ]);
898
- var accountLogin = useCallback(function() {
828
+ }();
829
+ var accountLogin = function() {
899
830
  var _ref = _async_to_generator(function(username, password) {
900
831
  var response, token, tokenType, finalToken, err;
901
832
  return _ts_generator(this, function(_state) {
@@ -962,14 +893,10 @@ var LiffProvider = function(param) {
962
893
  }
963
894
  });
964
895
  });
965
- return function(username, password) {
896
+ return function accountLogin(username, password) {
966
897
  return _ref.apply(this, arguments);
967
898
  };
968
- }(), [
969
- accountLoginUrl,
970
- localStorageKey,
971
- fetchMemberInfo
972
- ]);
899
+ }();
973
900
  var ensureLiffTokenValid = useCallback(/*#__PURE__*/ _async_to_generator(function() {
974
901
  var _parsedStore_data, _parsedStore_state, jwtTokenValue, jwtToken, parsedStore, isValid, _tmp, err;
975
902
  return _ts_generator(this, function(_state) {
@@ -1058,34 +985,26 @@ var LiffProvider = function(param) {
1058
985
  });
1059
986
  }), [
1060
987
  liffObject,
1061
- userInfoStorageKey,
1062
- checkTokenFunc,
1063
- localStorageKey,
1064
- loginData
988
+ userInfoStorageKey
1065
989
  ]);
1066
990
  var normalizeToken = function(token) {
1067
991
  var trimmed = token.trim();
1068
992
  return trimmed.toLowerCase().startsWith("bearer ") ? trimmed : "Bearer ".concat(trimmed);
1069
993
  };
1070
- // searchParams 移到 useEffect 內部以避免每次 render 變動造成的依賴問題
1071
- // (會在後面的 useEffect 中建立)
1072
- var searchParams = null;
994
+ var searchParams = typeof window !== "undefined" ? new URLSearchParams(window.location.search) : null;
1073
995
  // 初始載入時從 localStorage 載入 userInfo
1074
996
  useEffect(function() {
1075
997
  loadUserInfoFromStorage();
1076
- }, [
1077
- loadUserInfoFromStorage
1078
- ]);
998
+ }, []);
1079
999
  // 客戶端初始化 LIFF
1080
1000
  useEffect(function() {
1081
1001
  var checkAndInitialize = function() {
1082
1002
  var _ref = _async_to_generator(function() {
1083
- var searchParamsLocal, tokenFromQuery, finalToken, isValid, loginStore, jwtToken, _parsedStore_data, _parsedStore_state, parsedStore, isValid1, _tmp;
1003
+ var tokenFromQuery, finalToken, isValid, loginStore, jwtToken, _parsedStore_data, _parsedStore_state, parsedStore, isValid1, _tmp;
1084
1004
  return _ts_generator(this, function(_state) {
1085
1005
  switch(_state.label){
1086
1006
  case 0:
1087
- searchParamsLocal = typeof window !== "undefined" ? new URLSearchParams(window.location.search) : null;
1088
- tokenFromQuery = searchParamsLocal === null || searchParamsLocal === void 0 ? void 0 : searchParamsLocal.get("token");
1007
+ tokenFromQuery = searchParams === null || searchParams === void 0 ? void 0 : searchParams.get("token");
1089
1008
  if (!tokenFromQuery) return [
1090
1009
  3,
1091
1010
  2
@@ -1152,13 +1071,7 @@ var LiffProvider = function(param) {
1152
1071
  };
1153
1072
  }();
1154
1073
  checkAndInitialize();
1155
- }, [
1156
- checkTokenFunc,
1157
- initializeLiff,
1158
- localStorageKey,
1159
- loginData,
1160
- searchParams
1161
- ]);
1074
+ }, []);
1162
1075
  var contextValue = useMemo(function() {
1163
1076
  return {
1164
1077
  liffObject: liffObject,
@@ -1183,8 +1096,7 @@ var LiffProvider = function(param) {
1183
1096
  isFriendship,
1184
1097
  ensureLiffTokenValid,
1185
1098
  accountLogin,
1186
- loginType,
1187
- initializeLiff
1099
+ loginType
1188
1100
  ]);
1189
1101
  return /*#__PURE__*/ jsx(LiffContext.Provider, {
1190
1102
  value: contextValue,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sunggang/ui-lib",
3
- "version": "0.4.40",
3
+ "version": "0.4.41",
4
4
  "sideEffects": [
5
5
  "*.css",
6
6
  "./src/style.css",