sales-frontend-utils 0.0.37 → 0.0.39

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.
package/dist/index.cjs CHANGED
@@ -1,5 +1,13 @@
1
1
  'use strict';
2
2
 
3
+ var dayjs = require('dayjs');
4
+ var customParseFormat = require('dayjs/plugin/customParseFormat.js');
5
+
6
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
7
+
8
+ var dayjs__default = /*#__PURE__*/_interopDefault(dayjs);
9
+ var customParseFormat__default = /*#__PURE__*/_interopDefault(customParseFormat);
10
+
3
11
  var __defProp = Object.defineProperty;
4
12
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5
13
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
@@ -841,6 +849,120 @@ function getE2EDataIDs(ids, onSuccess, onFailure = () => {
841
849
  );
842
850
  }
843
851
  }
852
+ dayjs__default.default.locale("ko");
853
+ dayjs__default.default.extend(customParseFormat__default.default);
854
+ function getLastDay(year, month) {
855
+ switch (month) {
856
+ case 2:
857
+ return year % 4 === 0 ? 29 : 28;
858
+ case 4:
859
+ case 6:
860
+ case 9:
861
+ case 11:
862
+ return 30;
863
+ default:
864
+ return 31;
865
+ }
866
+ }
867
+ var getOneMonthLater = (value, format) => {
868
+ const str = value ? value.split(".").join("") : "";
869
+ const date = value ? new Date(Number(str.substring(0, 4)), Number(str.substring(4, 6)) - 1, Number(str.substring(6, 8))) : /* @__PURE__ */ new Date();
870
+ try {
871
+ return dayjs__default.default(new Date(date.setMonth(date.getMonth() + 1))).format(format || "YYYY.MM.DD");
872
+ } catch (err) {
873
+ console.warn(err);
874
+ return "";
875
+ }
876
+ };
877
+ var getDateDiff = (date1, date2) => {
878
+ const yyyyMMdd1 = date1.replace(/[.|-]/g, "");
879
+ const yyyyMMdd2 = date2.replace(/[.|-]/g, "");
880
+ const diff1 = dayjs__default.default(dayjs__default.default(yyyyMMdd1).format("YYYY-MM-DD"));
881
+ const diff2 = dayjs__default.default(yyyyMMdd2).format("YYYY-MM-DD");
882
+ return diff1.diff(diff2, "day");
883
+ };
884
+ var validateBirthdate = (front, back) => {
885
+ const year = parseInt(front.slice(0, 2));
886
+ const month = parseInt(front.slice(2, 4));
887
+ const day = parseInt(front.slice(4, 6));
888
+ let birthYear = 0;
889
+ switch (back) {
890
+ case "1":
891
+ case "2":
892
+ case "5":
893
+ case "6":
894
+ birthYear = 1900 + year;
895
+ break;
896
+ case "3":
897
+ case "4":
898
+ case "7":
899
+ case "8":
900
+ birthYear = 2e3 + year;
901
+ break;
902
+ case "9":
903
+ case "0":
904
+ return false;
905
+ default:
906
+ return false;
907
+ }
908
+ const birthdate = new Date(birthYear, month - 1, day);
909
+ const currdate = /* @__PURE__ */ new Date();
910
+ return birthdate < currdate;
911
+ };
912
+ function isDateAfter(targetDate, compareDate) {
913
+ const targetDateTime = new Date(convertDateFormat(targetDate, "YYYY-MM-DD")).getTime();
914
+ const compareDateTime = new Date(convertDateFormat(compareDate, "YYYY-MM-DD")).getTime();
915
+ return targetDateTime > compareDateTime;
916
+ }
917
+ var convertDateFormat = (value, format) => {
918
+ if (!value) {
919
+ return "";
920
+ }
921
+ return dayjs__default.default(value).format(format || "YYYY.MM.DD");
922
+ };
923
+ var isFutureDate = (dateString, format) => {
924
+ if (!dateString) {
925
+ return false;
926
+ }
927
+ const today = dayjs__default.default().startOf("day");
928
+ const date = dayjs__default.default(dateString, format || "YYYYMMDD", true);
929
+ return date.isValid() && date.isAfter(today);
930
+ };
931
+ var isValidDate = (dateString, format) => {
932
+ if (!dateString) {
933
+ return false;
934
+ }
935
+ const date = dayjs__default.default(dateString, format || "YYYYMMDD", true);
936
+ return date.isValid();
937
+ };
938
+ var getPeriodDate = (periodType) => {
939
+ const lastMonth = dayjs__default.default().subtract(1, "M");
940
+ switch (periodType) {
941
+ case "thisWeek":
942
+ return { startDate: dayjs__default.default().day(0).toDate(), endDate: dayjs__default.default().day(6).toDate() };
943
+ case "lastWeek":
944
+ return {
945
+ startDate: dayjs__default.default().subtract(1, "w").day(0).toDate(),
946
+ endDate: dayjs__default.default().subtract(1, "w").day(6).toDate()
947
+ };
948
+ case "last7Days":
949
+ return { startDate: dayjs__default.default().subtract(7, "d").toDate(), endDate: dayjs__default.default().toDate() };
950
+ case "thisMonth":
951
+ return {
952
+ startDate: dayjs__default.default().date(1).toDate(),
953
+ endDate: dayjs__default.default().date(dayjs__default.default().daysInMonth()).toDate()
954
+ };
955
+ case "lastMonth":
956
+ return {
957
+ startDate: lastMonth.date(1).toDate(),
958
+ endDate: lastMonth.date(lastMonth.daysInMonth()).toDate()
959
+ };
960
+ case "last365Days":
961
+ return { startDate: dayjs__default.default().subtract(365, "d").toDate(), endDate: dayjs__default.default().toDate() };
962
+ default:
963
+ return { startDate: dayjs__default.default().toDate(), endDate: dayjs__default.default().toDate() };
964
+ }
965
+ };
844
966
 
845
967
  exports.MessageEventManager = MessageEventManager;
846
968
  exports.addE2EObject = addE2EObject;
@@ -848,6 +970,7 @@ exports.base64ToBlob = base64ToBlob;
848
970
  exports.base64ToFile = base64ToFile;
849
971
  exports.blobToFile = blobToFile;
850
972
  exports.checkUserAgentDspApp = checkUserAgentDspApp;
973
+ exports.convertDateFormat = convertDateFormat;
851
974
  exports.convertTextToImg = convertTextToImg;
852
975
  exports.debounce = debounce;
853
976
  exports.deleteCookie = deleteCookie;
@@ -864,6 +987,7 @@ exports.getCurrentBrowserName = getCurrentBrowserName;
864
987
  exports.getCurrentBrowserVersion = getCurrentBrowserVersion;
865
988
  exports.getCurrentOSName = getCurrentOSName;
866
989
  exports.getCurrentOSVersion = getCurrentOSVersion;
990
+ exports.getDateDiff = getDateDiff;
867
991
  exports.getDeviceModel = getDeviceModel;
868
992
  exports.getDspApiBasePathFromEnvironment = getDspApiBasePathFromEnvironment;
869
993
  exports.getDspExecutionEnvironment = getDspExecutionEnvironment;
@@ -872,28 +996,35 @@ exports.getE2EDataIDs = getE2EDataIDs;
872
996
  exports.getEnvironmentFromHostname = getEnvironmentFromHostname;
873
997
  exports.getExt = getExt;
874
998
  exports.getFormFactorFromUserAgent = getFormFactorFromUserAgent;
999
+ exports.getLastDay = getLastDay;
875
1000
  exports.getNlcHostFromEnvironment = getNlcHostFromEnvironment;
876
1001
  exports.getOSName = getOSName;
877
1002
  exports.getOSVersion = getOSVersion;
1003
+ exports.getOneMonthLater = getOneMonthLater;
878
1004
  exports.getOrCreateDeviceId = getOrCreateDeviceId;
1005
+ exports.getPeriodDate = getPeriodDate;
879
1006
  exports.getServicePath = getServicePath;
880
1007
  exports.getSubdomain = getSubdomain;
881
1008
  exports.hasAstx2 = hasAstx2;
882
1009
  exports.imageUrlToFile = imageUrlToFile;
883
1010
  exports.initASTX2 = initASTX2;
884
1011
  exports.isClient = isClient;
1012
+ exports.isDateAfter = isDateAfter;
885
1013
  exports.isDspApp = isDspApp;
886
1014
  exports.isFpPlannerApp = isFpPlannerApp;
1015
+ exports.isFutureDate = isFutureDate;
887
1016
  exports.isPc = isPc;
888
1017
  exports.isPhone = isPhone;
889
1018
  exports.isProductionApp = isProductionApp;
890
1019
  exports.isSalesPortal = isSalesPortal;
891
1020
  exports.isStorybookEnv = isStorybookEnv;
892
1021
  exports.isTablet = isTablet;
1022
+ exports.isValidDate = isValidDate;
893
1023
  exports.loadScript = loadScript;
894
1024
  exports.objectUrlToBase64 = objectUrlToBase64;
895
1025
  exports.objectUrlToBlob = objectUrlToBlob;
896
1026
  exports.setCookie = setCookie;
897
1027
  exports.throttle = throttle;
1028
+ exports.validateBirthdate = validateBirthdate;
898
1029
  //# sourceMappingURL=index.cjs.map
899
1030
  //# sourceMappingURL=index.cjs.map