maplestory-openapi 2.4.1 → 2.7.1

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.
Files changed (92) hide show
  1. package/README.md +51 -41
  2. package/dist/index.js +1085 -405
  3. package/dist/index.min.js +1 -1
  4. package/dist/index.mjs +1068 -405
  5. package/package.json +6 -4
  6. package/types/index.d.ts +18 -3
  7. package/types/maplestory/api/dto/character/characterAbilityDto.d.ts +1 -1
  8. package/types/maplestory/api/dto/character/characterAndroidEquipmentDto.d.ts +1 -1
  9. package/types/maplestory/api/dto/character/characterBasicDto.d.ts +21 -1
  10. package/types/maplestory/api/dto/character/characterBeautyEquipmentDto.d.ts +1 -1
  11. package/types/maplestory/api/dto/character/characterCashItemEquipmentDto.d.ts +1 -1
  12. package/types/maplestory/api/dto/character/characterDojangDto.d.ts +1 -1
  13. package/types/maplestory/api/dto/character/characterHexaMatrixDto.d.ts +1 -1
  14. package/types/maplestory/api/dto/character/characterHexaMatrixStatDto.d.ts +1 -1
  15. package/types/maplestory/api/dto/character/characterHyperStatDto.d.ts +1 -1
  16. package/types/maplestory/api/dto/character/characterItemEquipmentDto.d.ts +1 -1
  17. package/types/maplestory/api/dto/character/characterLinkSkillDto.d.ts +1 -1
  18. package/types/maplestory/api/dto/character/characterLinkSkillInfoDto.d.ts +4 -0
  19. package/types/maplestory/api/dto/character/characterListAccountCharacterDto.d.ts +28 -0
  20. package/types/maplestory/api/dto/character/characterListAccountDto.d.ts +17 -0
  21. package/types/maplestory/api/dto/character/characterListDto.d.ts +13 -0
  22. package/types/maplestory/api/dto/character/characterPetEquipmentDto.d.ts +1 -1
  23. package/types/maplestory/api/dto/character/characterPopularityDto.d.ts +1 -1
  24. package/types/maplestory/api/dto/character/characterPropensityDto.d.ts +1 -1
  25. package/types/maplestory/api/dto/character/characterSetEffectDto.d.ts +3 -3
  26. package/types/maplestory/api/dto/character/characterSetEffectInfoDto.d.ts +5 -10
  27. package/types/maplestory/api/dto/character/characterSetEffectOptionFullDto.d.ts +16 -0
  28. package/types/maplestory/api/dto/character/characterSetEffectSetDto.d.ts +26 -0
  29. package/types/maplestory/api/dto/character/characterSkillDto.d.ts +1 -1
  30. package/types/maplestory/api/dto/character/characterSkillInfoDto.d.ts +4 -0
  31. package/types/maplestory/api/dto/character/characterStatDto.d.ts +1 -1
  32. package/types/maplestory/api/dto/character/characterSymbolEquipmentDto.d.ts +1 -1
  33. package/types/maplestory/api/dto/character/characterVMatrixCoreEquipmentDto.d.ts +2 -2
  34. package/types/maplestory/api/dto/character/characterVMatrixDto.d.ts +1 -1
  35. package/types/maplestory/api/dto/guild/guildBasicDto.d.ts +1 -9
  36. package/types/maplestory/api/dto/history/starforceHistoryDto.d.ts +1 -1
  37. package/types/maplestory/api/dto/notice/cashshopNoticeDetailDto.d.ts +40 -0
  38. package/types/maplestory/api/dto/notice/cashshopNoticeListDto.d.ts +13 -0
  39. package/types/maplestory/api/dto/notice/cashshopNoticeListItemDto.d.ts +40 -0
  40. package/types/maplestory/api/dto/notice/eventNoticeDetailDto.d.ts +32 -0
  41. package/types/maplestory/api/dto/notice/eventNoticeListDto.d.ts +13 -0
  42. package/types/maplestory/api/dto/notice/eventNoticeListItemDto.d.ts +32 -0
  43. package/types/maplestory/api/dto/notice/noticeDetailDto.d.ts +24 -0
  44. package/types/maplestory/api/dto/notice/noticeListDto.d.ts +13 -0
  45. package/types/maplestory/api/dto/notice/noticeListItemDto.d.ts +24 -0
  46. package/types/maplestory/api/dto/notice/updateNoticeDetailDto.d.ts +24 -0
  47. package/types/maplestory/api/dto/notice/updateNoticeListDto.d.ts +13 -0
  48. package/types/maplestory/api/dto/notice/updateNoticeListItemDto.d.ts +24 -0
  49. package/types/maplestory/api/dto/union/unionArtifactDto.d.ts +1 -1
  50. package/types/maplestory/api/dto/union/unionDto.d.ts +1 -1
  51. package/types/maplestory/api/dto/union/unionRaiderDto.d.ts +26 -1
  52. package/types/maplestory/api/dto/union/unionRaiderPresetDto.d.ts +26 -0
  53. package/types/maplestory/api/mapleStoryApi.d.ts +126 -25
  54. package/types/maplestory/api/mapleStoryApiError.d.ts +2 -1
  55. package/types/maplestory/api/response/character/characterAbilityDtoBody.d.ts +1 -1
  56. package/types/maplestory/api/response/character/characterAndroidEquipmentDtoBody.d.ts +1 -1
  57. package/types/maplestory/api/response/character/characterBasicDtoBody.d.ts +4 -1
  58. package/types/maplestory/api/response/character/characterBeautyEquipmentDtoBody.d.ts +1 -1
  59. package/types/maplestory/api/response/character/characterCashItemEquipmentDtoBody.d.ts +1 -1
  60. package/types/maplestory/api/response/character/characterDojangDtoBody.d.ts +1 -1
  61. package/types/maplestory/api/response/character/characterHexaMatrixDtoBody.d.ts +1 -1
  62. package/types/maplestory/api/response/character/characterHexaMatrixStatDtoBody.d.ts +1 -1
  63. package/types/maplestory/api/response/character/characterHyperStatDtoBody.d.ts +1 -1
  64. package/types/maplestory/api/response/character/characterItemEquipmentDtoBody.d.ts +1 -1
  65. package/types/maplestory/api/response/character/characterLinkSkillDtoBody.d.ts +2 -1
  66. package/types/maplestory/api/response/character/characterListDtoBody.d.ts +15 -0
  67. package/types/maplestory/api/response/character/characterPetEquipmentDtoBody.d.ts +1 -1
  68. package/types/maplestory/api/response/character/characterPopularityDtoBody.d.ts +1 -1
  69. package/types/maplestory/api/response/character/characterPropensityDtoBody.d.ts +1 -1
  70. package/types/maplestory/api/response/character/characterSetEffectDtoBody.d.ts +11 -6
  71. package/types/maplestory/api/response/character/characterSkillDtoBody.d.ts +2 -1
  72. package/types/maplestory/api/response/character/characterStatDtoBody.d.ts +1 -1
  73. package/types/maplestory/api/response/character/characterSymbolEquipmentDtoBody.d.ts +1 -1
  74. package/types/maplestory/api/response/character/characterVMatrixDtoBody.d.ts +3 -3
  75. package/types/maplestory/api/response/guild/guildBasicDtoBody.d.ts +1 -3
  76. package/types/maplestory/api/response/history/cubeHistoryDtoBody.d.ts +1 -1
  77. package/types/maplestory/api/response/history/cubeHistoryResponseDtoBody.d.ts +1 -1
  78. package/types/maplestory/api/response/history/starforceHistoryDtoBody.d.ts +2 -2
  79. package/types/maplestory/api/response/history/starforceHistoryResponseDtoBody.d.ts +1 -1
  80. package/types/maplestory/api/response/notice/cashshopNoticeDetailDtoBody.d.ts +10 -0
  81. package/types/maplestory/api/response/notice/cashshopNoticeListDtoBody.d.ts +13 -0
  82. package/types/maplestory/api/response/notice/eventNoticeDetailDtoBody.d.ts +9 -0
  83. package/types/maplestory/api/response/notice/eventNoticeListDtoBody.d.ts +12 -0
  84. package/types/maplestory/api/response/notice/noticeDetailDtoBody.d.ts +7 -0
  85. package/types/maplestory/api/response/notice/noticeListDtoBody.d.ts +10 -0
  86. package/types/maplestory/api/response/notice/updateNoticeDetailDtoBody.d.ts +7 -0
  87. package/types/maplestory/api/response/notice/updateNoticeListDtoBody.d.ts +10 -0
  88. package/types/maplestory/api/response/ranking/theSeedRankingResponseDtoBody.d.ts +2 -3
  89. package/types/maplestory/api/response/union/unionArtifactDtoBody.d.ts +1 -1
  90. package/types/maplestory/api/response/union/unionDtoBody.d.ts +1 -1
  91. package/types/maplestory/api/response/union/unionRaiderDtoBody.d.ts +14 -2
  92. package/types/maplestory/api/dto/character/characterSetEffectOptionInfoDto.d.ts +0 -16
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof win
15
15
  var timezone$1 = {exports: {}};
16
16
 
17
17
  (function (module, exports) {
18
- !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||"short",o=t+"|"+i,r=e[o];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u<i.length;u+=1){var f=i[u],s=f.type,m=f.value,c=t[s];c>=0&&(r[c]=parseInt(m,10));}var d=r[3],l=24===d?0:d,h=r[0]+"-"+r[1]+"-"+r[2]+" "+l+":"+r[4]+":"+r[5]+":000",v=+e;return (o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString("en-US",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,"minute");}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return "timezonename"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if("string"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return [i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t;};}}));
18
+ !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||"short",o=t+"|"+i,r=e[o];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u<i.length;u+=1){var f=i[u],s=f.type,m=f.value,c=t[s];c>=0&&(r[c]=parseInt(m,10));}var d=r[3],l=24===d?0:d,h=r[0]+"-"+r[1]+"-"+r[2]+" "+l+":"+r[4]+":"+r[5]+":000",v=+e;return (o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n,i=this.utcOffset(),a=this.toDate(),u=a.toLocaleString("en-US",{timeZone:t}),f=Math.round((a-new Date(u))/1e3/60),s=15*-Math.round(a.getTimezoneOffset()/15)-f;if(!Number(s))n=this.utcOffset(0,e);else if(n=o(u,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(s,!0),e){var m=n.utcOffset();n=n.add(i-m,"minute");}return n.$x.$timezone=t,n},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return "timezonename"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if("string"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return [i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t;};}}));
19
19
  }(timezone$1));
20
20
 
21
21
  var timezone = timezone$1.exports;
@@ -110,7 +110,7 @@ class CharacterAbilityDto {
110
110
  constructor(obj) {
111
111
  const { date, ability_grade, ability_info, remain_fame, preset_no, ability_preset_1, ability_preset_2, ability_preset_3, } = obj;
112
112
  // 날짜는 Date 객체로 변환
113
- this.date = new Date(date);
113
+ this.date = date ? new Date(date) : null;
114
114
  this.abilityGrade = ability_grade;
115
115
  this.abilityInfo = ability_info.map((info) => new CharacterAbilityInfoDto(info));
116
116
  this.remainFame = remain_fame;
@@ -443,7 +443,7 @@ class CharacterAndroidEquipmentDto {
443
443
  androidPreset3;
444
444
  constructor(obj) {
445
445
  const { date, android_name, android_nickname, android_icon, android_description, android_hair, android_face, android_skin_name, android_cash_item_equipment, android_ear_sensor_clip_flag, android_gender, android_grade, android_non_humanoid_flag, android_shop_usable_flag, preset_no, android_preset_1, android_preset_2, android_preset_3, } = obj;
446
- this.date = new Date(date);
446
+ this.date = date ? new Date(date) : null;
447
447
  this.androidName = android_name;
448
448
  this.androidNickname = android_nickname;
449
449
  this.androidIcon = android_icon;
@@ -509,9 +509,21 @@ class CharacterBasicDto {
509
509
  * 캐릭터 외형 이미지
510
510
  */
511
511
  characterImage;
512
+ /**
513
+ * 캐릭터 생성일
514
+ */
515
+ characterDateCreate;
516
+ /**
517
+ * 최근 7일간 접속 여부
518
+ */
519
+ accessFlag;
520
+ /**
521
+ * 해방 퀘스트 완료 여부
522
+ */
523
+ liberationQuestClearFlag;
512
524
  constructor(obj) {
513
- const { date, character_name, world_name, character_gender, character_class, character_class_level, character_level, character_exp, character_exp_rate, character_guild_name, character_image, } = obj;
514
- this.date = new Date(date);
525
+ const { date, character_name, world_name, character_gender, character_class, character_class_level, character_level, character_exp, character_exp_rate, character_guild_name, character_image, character_date_create, access_flag, liberation_quest_clear_flag, } = obj;
526
+ this.date = date ? new Date(date) : null;
515
527
  this.characterName = character_name;
516
528
  this.worldName = world_name;
517
529
  this.characterGender = character_gender;
@@ -522,6 +534,21 @@ class CharacterBasicDto {
522
534
  this.characterExpRate = character_exp_rate;
523
535
  this.characterGuildName = character_guild_name;
524
536
  this.characterImage = character_image;
537
+ this.characterDateCreate = new Date(character_date_create);
538
+ this.accessFlag = access_flag;
539
+ this.liberationQuestClearFlag = liberation_quest_clear_flag;
540
+ }
541
+ /**
542
+ * 최근 7일간 접속 여부
543
+ */
544
+ get isAccessFlag() {
545
+ return this.accessFlag === 'true';
546
+ }
547
+ /**
548
+ * 해방 퀘스트 완료 여부
549
+ */
550
+ get isLiberationQuestClearFlag() {
551
+ return this.liberationQuestClearFlag === 'true';
525
552
  }
526
553
  }
527
554
 
@@ -628,7 +655,7 @@ class CharacterBeautyEquipmentDto {
628
655
  additionalCharacterSkinName;
629
656
  constructor(obj) {
630
657
  const { date, character_gender, character_class, character_hair, character_face, character_skin_name, additional_character_hair, additional_character_face, additional_character_skin_name, } = obj;
631
- this.date = new Date(date);
658
+ this.date = date ? new Date(date) : null;
632
659
  this.characterGender = character_gender;
633
660
  this.characterClass = character_class;
634
661
  this.characterHair = new CharacterBeautyEquipmentHairDto(character_hair);
@@ -812,7 +839,7 @@ class CharacterCashItemEquipmentDto {
812
839
  additionalCashItemEquipmentPreset3;
813
840
  constructor(obj) {
814
841
  const { date, character_gender, character_class, preset_no, cash_item_equipment_base, cash_item_equipment_preset_1, cash_item_equipment_preset_2, cash_item_equipment_preset_3, additional_cash_item_equipment_base, additional_cash_item_equipment_preset_1, additional_cash_item_equipment_preset_2, additional_cash_item_equipment_preset_3, } = obj;
815
- this.date = new Date(date);
842
+ this.date = date ? new Date(date) : null;
816
843
  this.characterGender = character_gender;
817
844
  this.characterClass = character_class;
818
845
  this.presetNo = preset_no;
@@ -861,7 +888,7 @@ class CharacterDojangDto {
861
888
  dojangBestTime;
862
889
  constructor(obj) {
863
890
  const { date, character_class, world_name, dojang_best_floor, date_dojang_record, dojang_best_time, } = obj;
864
- this.date = new Date(date);
891
+ this.date = date ? new Date(date) : null;
865
892
  this.characterClass = character_class;
866
893
  this.worldName = world_name;
867
894
  this.dojangBestFloor = dojang_best_floor;
@@ -943,7 +970,7 @@ class CharacterHexaMatrixDto {
943
970
  characterHexaCoreEquipment;
944
971
  constructor(obj) {
945
972
  const { date, character_hexa_core_equipment } = obj;
946
- this.date = new Date(date);
973
+ this.date = date ? new Date(date) : null;
947
974
  this.characterHexaCoreEquipment = character_hexa_core_equipment.map((equipment) => new CharacterHexaMatrixEquipmentDto(equipment));
948
975
  }
949
976
  }
@@ -1019,7 +1046,7 @@ class CharacterHexaMatrixStatDto {
1019
1046
  presetHexaStatCore;
1020
1047
  constructor(obj) {
1021
1048
  const { date, character_class, character_hexa_stat_core, preset_hexa_stat_core, } = obj;
1022
- this.date = new Date(date);
1049
+ this.date = date ? new Date(date) : null;
1023
1050
  this.characterClass = character_class;
1024
1051
  this.characterHexaStatCore = character_hexa_stat_core.map((core) => new CharacterHexaMatrixStatCoreDto(core));
1025
1052
  this.presetHexaStatCore = preset_hexa_stat_core.map((core) => new CharacterHexaMatrixStatCoreDto(core));
@@ -1101,7 +1128,7 @@ class CharacterHyperStatDto {
1101
1128
  hyperStatPreset3RemainPoint;
1102
1129
  constructor(obj) {
1103
1130
  const { date, character_class, use_preset_no, use_available_hyper_stat, hyper_stat_preset_1, hyper_stat_preset_1_remain_point, hyper_stat_preset_2, hyper_stat_preset_2_remain_point, hyper_stat_preset_3, hyper_stat_preset_3_remain_point, } = obj;
1104
- this.date = new Date(date);
1131
+ this.date = date ? new Date(date) : null;
1105
1132
  this.characterClass = character_class;
1106
1133
  this.usePresetNo = use_preset_no;
1107
1134
  this.useAvailableHyperStat = use_available_hyper_stat;
@@ -2150,7 +2177,7 @@ class CharacterItemEquipmentDto {
2150
2177
  mechanicEquipment;
2151
2178
  constructor(obj) {
2152
2179
  const { date, character_gender, character_class, preset_no, item_equipment, item_equipment_preset_1, item_equipment_preset_2, item_equipment_preset_3, title, dragon_equipment, mechanic_equipment, } = obj;
2153
- this.date = new Date(date);
2180
+ this.date = date ? new Date(date) : null;
2154
2181
  this.characterGender = character_gender;
2155
2182
  this.characterClass = character_class;
2156
2183
  this.presetNo = preset_no;
@@ -2184,16 +2211,21 @@ class CharacterLinkSkillInfoDto {
2184
2211
  * 스킬 효과
2185
2212
  */
2186
2213
  skillEffect;
2214
+ /**
2215
+ * 다음 레벨의 스킬 효과
2216
+ */
2217
+ skillEffectNext;
2187
2218
  /**
2188
2219
  * 스킬 아이콘
2189
2220
  */
2190
2221
  skillIcon;
2191
2222
  constructor(obj) {
2192
- const { skill_name, skill_description, skill_level, skill_effect, skill_icon, } = obj;
2223
+ const { skill_name, skill_description, skill_level, skill_effect, skill_effect_next, skill_icon, } = obj;
2193
2224
  this.skillName = skill_name;
2194
2225
  this.skillDescription = skill_description;
2195
2226
  this.skillLevel = skill_level;
2196
2227
  this.skillEffect = skill_effect;
2228
+ this.skillEffectNext = skill_effect_next;
2197
2229
  this.skillIcon = skill_icon;
2198
2230
  }
2199
2231
  }
@@ -2244,7 +2276,7 @@ class CharacterLinkSkillDto {
2244
2276
  characterOwnedLinkSkillPreset3;
2245
2277
  constructor(obj) {
2246
2278
  const { date, character_class, character_link_skill, character_link_skill_preset_1, character_link_skill_preset_2, character_link_skill_preset_3, character_owned_link_skill, character_owned_link_skill_preset_1, character_owned_link_skill_preset_2, character_owned_link_skill_preset_3, } = obj;
2247
- this.date = new Date(date);
2279
+ this.date = date ? new Date(date) : null;
2248
2280
  this.characterClass = character_class;
2249
2281
  this.characterLinkSkill = character_link_skill.map((skill) => new CharacterLinkSkillInfoDto(skill));
2250
2282
  this.characterLinkSkillPreset1 = character_link_skill_preset_1.map((skill) => new CharacterLinkSkillInfoDto(skill));
@@ -2257,6 +2289,73 @@ class CharacterLinkSkillDto {
2257
2289
  }
2258
2290
  }
2259
2291
 
2292
+ /**
2293
+ * 캐릭터 정보
2294
+ */
2295
+ class CharacterListAccountCharacterDto {
2296
+ /**
2297
+ * 캐릭터 식별자
2298
+ */
2299
+ ocid;
2300
+ /**
2301
+ * 캐릭터 명
2302
+ */
2303
+ characterName;
2304
+ /**
2305
+ * 월드 명
2306
+ */
2307
+ worldName;
2308
+ /**
2309
+ * 캐릭터 직업
2310
+ */
2311
+ characterClass;
2312
+ /**
2313
+ * 캐릭터 레벨
2314
+ */
2315
+ characterLevel;
2316
+ constructor(obj) {
2317
+ const { ocid, character_name, world_name, character_class, character_level, } = obj;
2318
+ this.ocid = ocid;
2319
+ this.characterName = character_name;
2320
+ this.worldName = world_name;
2321
+ this.characterClass = character_class;
2322
+ this.characterLevel = character_level;
2323
+ }
2324
+ }
2325
+
2326
+ /**
2327
+ * 메이플스토리 계정
2328
+ */
2329
+ class CharacterListAccountDto {
2330
+ /**
2331
+ * 메이플스토리 계정 식별자
2332
+ */
2333
+ accountId;
2334
+ /**
2335
+ * 캐릭터 목록
2336
+ */
2337
+ characterList;
2338
+ constructor(obj) {
2339
+ const { account_id, character_list } = obj;
2340
+ this.accountId = account_id;
2341
+ this.characterList = character_list.map(character => new CharacterListAccountCharacterDto(character));
2342
+ }
2343
+ }
2344
+
2345
+ /**
2346
+ * 계정의 보유 캐릭터 목록
2347
+ */
2348
+ class CharacterListDto {
2349
+ /**
2350
+ * 메이플스토리 계정 목록
2351
+ */
2352
+ accountList;
2353
+ constructor(obj) {
2354
+ const { account_list } = obj;
2355
+ this.accountList = account_list.map(account => new CharacterListAccountDto(account));
2356
+ }
2357
+ }
2358
+
2260
2359
  /**
2261
2360
  * 캐릭터 펫 장비 자동 스킬 정보
2262
2361
  */
@@ -2496,7 +2595,7 @@ class CharacterPetEquipmentDto {
2496
2595
  pet3AppearanceIcon;
2497
2596
  constructor(obj) {
2498
2597
  const { date, pet_1_name, pet_1_nickname, pet_1_icon, pet_1_description, pet_1_equipment, pet_1_auto_skill, pet_1_pet_type, pet_1_skill, pet_1_date_expire, pet_1_appearance, pet_1_appearance_icon, pet_2_name, pet_2_nickname, pet_2_icon, pet_2_description, pet_2_equipment, pet_2_auto_skill, pet_2_pet_type, pet_2_skill, pet_2_date_expire, pet_2_appearance, pet_2_appearance_icon, pet_3_name, pet_3_nickname, pet_3_icon, pet_3_description, pet_3_equipment, pet_3_auto_skill, pet_3_pet_type, pet_3_skill, pet_3_date_expire, pet_3_appearance, pet_3_appearance_icon, } = obj;
2499
- this.date = new Date(date);
2598
+ this.date = date ? new Date(date) : null;
2500
2599
  this.pet1Name = pet_1_name;
2501
2600
  this.pet1Nickname = pet_1_nickname;
2502
2601
  this.pet1Icon = pet_1_icon;
@@ -2547,7 +2646,7 @@ class CharacterPopularityDto {
2547
2646
  popularity;
2548
2647
  constructor(obj) {
2549
2648
  const { date, popularity } = obj;
2550
- this.date = new Date(date);
2649
+ this.date = date ? new Date(date) : null;
2551
2650
  this.popularity = popularity;
2552
2651
  }
2553
2652
  }
@@ -2583,7 +2682,7 @@ class CharacterPropensityDto {
2583
2682
  charmLevel;
2584
2683
  constructor(obj) {
2585
2684
  const { date, charisma_level, sensibility_level, insight_level, willingness_level, handicraft_level, charm_level, } = obj;
2586
- this.date = new Date(date);
2685
+ this.date = date ? new Date(date) : null;
2587
2686
  this.charismaLevel = charisma_level;
2588
2687
  this.sensibilityLevel = sensibility_level;
2589
2688
  this.insightLevel = insight_level;
@@ -2594,15 +2693,15 @@ class CharacterPropensityDto {
2594
2693
  }
2595
2694
 
2596
2695
  /**
2597
- * 캐릭터 세트 효과 옵션 정보
2696
+ * 적용 중인 세트 효과 정보
2598
2697
  */
2599
- class CharacterSetEffectOptionInfoDto {
2698
+ class CharacterSetEffectInfoDto {
2600
2699
  /**
2601
2700
  * 세트 효과 레벨 (장비 수)
2602
2701
  */
2603
2702
  setCount;
2604
2703
  /**
2605
- * 적용 중인 세트 효과
2704
+ * 세트 효과
2606
2705
  */
2607
2706
  setOption;
2608
2707
  constructor(obj) {
@@ -2613,9 +2712,28 @@ class CharacterSetEffectOptionInfoDto {
2613
2712
  }
2614
2713
 
2615
2714
  /**
2616
- * 캐릭터 세트 효과 정보
2715
+ * 모든 세트 효과 정보
2617
2716
  */
2618
- class CharacterSetEffectInfoDto {
2717
+ class CharacterSetEffectOptionFullDto {
2718
+ /**
2719
+ * 세트 효과 레벨 (장비 수)
2720
+ */
2721
+ setCount;
2722
+ /**
2723
+ * 세트 효과
2724
+ */
2725
+ setOption;
2726
+ constructor(obj) {
2727
+ const { set_count, set_option } = obj;
2728
+ this.setCount = set_count;
2729
+ this.setOption = set_option;
2730
+ }
2731
+ }
2732
+
2733
+ /**
2734
+ * 세트 효과 정보
2735
+ */
2736
+ class CharacterSetEffectSetDto {
2619
2737
  /**
2620
2738
  * 세트 효과 명
2621
2739
  */
@@ -2625,14 +2743,19 @@ class CharacterSetEffectInfoDto {
2625
2743
  */
2626
2744
  totalSetCount;
2627
2745
  /**
2628
- * 세트 효과 옵션
2746
+ * 적용 중인 세트 효과 정보
2629
2747
  */
2630
2748
  setEffectInfo;
2749
+ /**
2750
+ * 모든 세트 효과 정보
2751
+ */
2752
+ setOptionFull;
2631
2753
  constructor(obj) {
2632
- const { set_name, total_set_count, set_effect_info } = obj;
2754
+ const { set_name, total_set_count, set_effect_info, set_option_full } = obj;
2633
2755
  this.setName = set_name;
2634
2756
  this.totalSetCount = total_set_count;
2635
- this.setEffectInfo = set_effect_info.map((info) => new CharacterSetEffectOptionInfoDto(info));
2757
+ this.setEffectInfo = set_effect_info.map((info) => new CharacterSetEffectInfoDto(info));
2758
+ this.setOptionFull = set_option_full.map((info) => new CharacterSetEffectOptionFullDto(info));
2636
2759
  }
2637
2760
  }
2638
2761
 
@@ -2650,8 +2773,8 @@ class CharacterSetEffectDto {
2650
2773
  setEffect;
2651
2774
  constructor(obj) {
2652
2775
  const { date, set_effect } = obj;
2653
- this.date = new Date(date);
2654
- this.setEffect = set_effect.map((effect) => new CharacterSetEffectInfoDto(effect));
2776
+ this.date = date ? new Date(date) : null;
2777
+ this.setEffect = set_effect.map((effect) => new CharacterSetEffectSetDto(effect));
2655
2778
  }
2656
2779
  }
2657
2780
 
@@ -2675,16 +2798,21 @@ class CharacterSkillInfoDto {
2675
2798
  * 스킬 레벨 별 효과 설명
2676
2799
  */
2677
2800
  skillEffect;
2801
+ /**
2802
+ * 다음 스킬 레벨 효과 설명
2803
+ */
2804
+ skillEffectNext;
2678
2805
  /**
2679
2806
  * 스킬 아이콘
2680
2807
  */
2681
2808
  skillIcon;
2682
2809
  constructor(obj) {
2683
- const { skill_name, skill_description, skill_level, skill_effect, skill_icon, } = obj;
2810
+ const { skill_name, skill_description, skill_level, skill_effect, skill_effect_next, skill_icon, } = obj;
2684
2811
  this.skillName = skill_name;
2685
2812
  this.skillDescription = skill_description;
2686
2813
  this.skillLevel = skill_level;
2687
2814
  this.skillEffect = skill_effect;
2815
+ this.skillEffectNext = skill_effect_next;
2688
2816
  this.skillIcon = skill_icon;
2689
2817
  }
2690
2818
  }
@@ -2711,7 +2839,7 @@ class CharacterSkillDto {
2711
2839
  characterSkill;
2712
2840
  constructor(obj) {
2713
2841
  const { date, character_class, character_skill_grade, character_skill } = obj;
2714
- this.date = new Date(date);
2842
+ this.date = date ? new Date(date) : null;
2715
2843
  this.characterClass = character_class;
2716
2844
  this.characterSkillGrade = character_skill_grade;
2717
2845
  this.characterSkill = character_skill.map((skill) => new CharacterSkillInfoDto(skill));
@@ -2740,7 +2868,7 @@ class CharacterStatDto {
2740
2868
  remainAP;
2741
2869
  constructor(obj) {
2742
2870
  const { date, character_class, final_stat, remain_ap } = obj;
2743
- this.date = new Date(date);
2871
+ this.date = date ? new Date(date) : null;
2744
2872
  this.characterClass = character_class;
2745
2873
  this.finalStat = final_stat.map((stat) => {
2746
2874
  return {
@@ -2839,7 +2967,7 @@ class CharacterSymbolEquipmentDto {
2839
2967
  symbol;
2840
2968
  constructor(obj) {
2841
2969
  const { date, character_class, symbol } = obj;
2842
- this.date = new Date(date);
2970
+ this.date = date ? new Date(date) : null;
2843
2971
  this.characterClass = character_class;
2844
2972
  this.symbol = symbol.map((s) => new CharacterSymbolEquipmentInfoDto(s));
2845
2973
  }
@@ -2916,7 +3044,7 @@ class CharacterVMatrixDto {
2916
3044
  characterVMatrixRemainSlotUpgradePoint;
2917
3045
  constructor(obj) {
2918
3046
  const { date, character_class, character_v_core_equipment, character_v_matrix_remain_slot_upgrade_point, } = obj;
2919
- this.date = new Date(date);
3047
+ this.date = date ? new Date(date) : null;
2920
3048
  this.characterClass = character_class;
2921
3049
  this.characterVCoreEquipment = character_v_core_equipment.map((equipment) => new CharacterVMatrixCodeEquipmentDto(equipment));
2922
3050
  this.characterVMatrixRemainSlotUpgradePoint =
@@ -3006,17 +3134,9 @@ class GuildBasicDto {
3006
3134
  * 노블레스 스킬 목록
3007
3135
  */
3008
3136
  guildNoblesseSkill;
3009
- /**
3010
- * 조합형 길드 마크
3011
- */
3012
- guildMark;
3013
- /**
3014
- * 커스텀 길드 마크 (base64 인코딩 형식)
3015
- */
3016
- guildMarkCustom;
3017
3137
  constructor(obj) {
3018
- const { date, world_name, guild_name, guild_level, guild_fame, guild_point, guild_master_name, guild_member_count, guild_member, guild_skill, guild_noblesse_skill, guild_mark, guild_mark_custom, } = obj;
3019
- this.date = new Date(date);
3138
+ const { date, world_name, guild_name, guild_level, guild_fame, guild_point, guild_master_name, guild_member_count, guild_member, guild_skill, guild_noblesse_skill, } = obj;
3139
+ this.date = date ? new Date(date) : null;
3020
3140
  this.worldName = world_name;
3021
3141
  this.guildName = guild_name;
3022
3142
  this.guildLevel = guild_level;
@@ -3027,8 +3147,6 @@ class GuildBasicDto {
3027
3147
  this.guildMember = guild_member;
3028
3148
  this.guildSkill = guild_skill.map((skill) => new GuildSkillDto(skill));
3029
3149
  this.guildNoblesseSkill = guild_noblesse_skill.map((skill) => new GuildSkillDto(skill));
3030
- this.guildMark = guild_mark;
3031
- this.guildMarkCustom = guild_mark_custom;
3032
3150
  }
3033
3151
  }
3034
3152
 
@@ -3502,7 +3620,7 @@ class StarforceHistoryDto {
3502
3620
  this.worldName = world_name;
3503
3621
  this.targetItem = target_item;
3504
3622
  this.dateCreate = new Date(date_create);
3505
- this.starforceEventList = starforce_event_list.map((event) => new StarforceEventDto(event));
3623
+ this.starforceEventList = starforce_event_list?.map((event) => new StarforceEventDto(event)) ?? null;
3506
3624
  }
3507
3625
  }
3508
3626
 
@@ -3560,213 +3678,563 @@ class InspectionInfoDto {
3560
3678
  }
3561
3679
 
3562
3680
  /**
3563
- * 업적 랭킹 정보
3681
+ * 캐시샵 공지 상세
3564
3682
  */
3565
- class AchievementRankingDto {
3566
- /**
3567
- * 랭킹 업데이트 일자 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
3568
- */
3569
- date;
3683
+ class CashshopNoticeDetailDto {
3570
3684
  /**
3571
- * 업적 랭킹 순위
3685
+ * 공지 제목
3572
3686
  */
3573
- ranking;
3687
+ title;
3574
3688
  /**
3575
- * 캐릭터
3689
+ * 공지 링크
3576
3690
  */
3577
- characterName;
3691
+ url;
3578
3692
  /**
3579
- * 월드
3693
+ * 공지 본문
3580
3694
  */
3581
- worldName;
3695
+ contents;
3582
3696
  /**
3583
- * 직업
3697
+ * 공지 등록일
3584
3698
  */
3585
- className;
3699
+ date;
3586
3700
  /**
3587
- * 전직 직업 명
3701
+ * 판매 시작일
3588
3702
  */
3589
- subClassName;
3703
+ dateSaleStart;
3590
3704
  /**
3591
- * 업적 등급
3705
+ * 판매 종료일
3592
3706
  */
3593
- trophyGrade;
3707
+ dateSaleEnd;
3594
3708
  /**
3595
- * 업적 점수
3709
+ * 상시 판매 여부 (true - 상시)
3596
3710
  */
3597
- trophyScore;
3711
+ ongoingFlag;
3598
3712
  constructor(obj) {
3599
- const { date, ranking, character_name, world_name, class_name, sub_class_name, trophy_grade, trophy_score, } = obj;
3713
+ const { title, url, contents, date, date_sale_start, date_sale_end, ongoing_flag } = obj;
3714
+ this.title = title;
3715
+ this.url = url;
3716
+ this.contents = contents;
3600
3717
  this.date = new Date(date);
3601
- this.ranking = ranking;
3602
- this.characterName = character_name;
3603
- this.worldName = world_name;
3604
- this.className = class_name;
3605
- this.subClassName = sub_class_name;
3606
- this.trophyGrade = trophy_grade;
3607
- this.trophyScore = trophy_score;
3718
+ this.dateSaleStart = date_sale_start ? new Date(date_sale_start) : null;
3719
+ this.dateSaleEnd = date_sale_end ? new Date(date_sale_end) : null;
3720
+ this.ongoingFlag = ongoing_flag;
3608
3721
  }
3609
- }
3610
-
3611
- /**
3612
- * 업적 랭킹 응답 정보
3613
- */
3614
- class AchievementRankingResponseDto {
3615
3722
  /**
3616
- * 업적 랭킹 정보
3723
+ * 상시 판매 여부 (true - 상시)
3617
3724
  */
3618
- ranking;
3619
- constructor(obj) {
3620
- const { ranking } = obj;
3621
- this.ranking = ranking.map((rank) => new AchievementRankingDto(rank));
3725
+ get isOnGoing() {
3726
+ return this.ongoingFlag === 'true';
3622
3727
  }
3623
3728
  }
3624
3729
 
3625
3730
  /**
3626
- * 무릉도장 랭킹 정보
3731
+ * 캐시샵 공지
3627
3732
  */
3628
- class DojangRankingDto {
3629
- /**
3630
- * 랭킹 업데이트 일자 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
3631
- */
3632
- date;
3633
- /**
3634
- * 무릉도장 랭킹 순위
3635
- */
3636
- ranking;
3733
+ class CashshopNoticeListItemDto {
3637
3734
  /**
3638
- * 캐릭터
3735
+ * 공지 제목
3639
3736
  */
3640
- characterName;
3737
+ title;
3641
3738
  /**
3642
- * 월드
3739
+ * 공지 링크
3643
3740
  */
3644
- worldName;
3741
+ url;
3645
3742
  /**
3646
- * 직업
3743
+ * 공지 식별자
3647
3744
  */
3648
- className;
3745
+ noticeId;
3649
3746
  /**
3650
- * 전직 직업 명
3747
+ * 공지 등록일
3651
3748
  */
3652
- subClassName;
3749
+ date;
3653
3750
  /**
3654
- * 캐릭터 레벨
3751
+ * 판매 시작일
3655
3752
  */
3656
- characterLevel;
3753
+ dateSaleStart;
3657
3754
  /**
3658
- * 무릉도장 구간
3755
+ * 판매 종료일
3659
3756
  */
3660
- dojangFloor;
3757
+ dateSaleEnd;
3661
3758
  /**
3662
- * 무릉도장 클리어 시간 기록 ( 단위)
3759
+ * 상시 판매 여부 (true - 상시)
3663
3760
  */
3664
- dojangTimeRecord;
3761
+ ongoingFlag;
3665
3762
  constructor(obj) {
3666
- const { date, ranking, character_name, world_name, class_name, sub_class_name, character_level, dojang_floor, dojang_time_record, } = obj;
3763
+ const { title, url, notice_id, date, date_sale_start, date_sale_end, ongoing_flag } = obj;
3764
+ this.title = title;
3765
+ this.url = url;
3766
+ this.noticeId = notice_id;
3667
3767
  this.date = new Date(date);
3668
- this.ranking = ranking;
3669
- this.characterName = character_name;
3670
- this.worldName = world_name;
3671
- this.className = class_name;
3672
- this.subClassName = sub_class_name;
3673
- this.characterLevel = character_level;
3674
- this.dojangFloor = dojang_floor;
3675
- this.dojangTimeRecord = dojang_time_record;
3768
+ this.dateSaleStart = date_sale_start ? new Date(date_sale_start) : null;
3769
+ this.dateSaleEnd = date_sale_end ? new Date(date_sale_end) : null;
3770
+ this.ongoingFlag = ongoing_flag;
3771
+ }
3772
+ /**
3773
+ * 상시 판매 여부 (true - 상시)
3774
+ */
3775
+ get isOnGoing() {
3776
+ return this.ongoingFlag === 'true';
3676
3777
  }
3677
3778
  }
3678
3779
 
3679
3780
  /**
3680
- * 무릉도장 랭킹 응답 정보
3781
+ * 캐시샵 공지 목록
3681
3782
  */
3682
- class DojangRankingResponseDto {
3783
+ class CashshopNoticeListDto {
3683
3784
  /**
3684
- * 길드 랭킹 정보
3785
+ * 공지 목록
3685
3786
  */
3686
- ranking;
3787
+ cashshopNotice;
3687
3788
  constructor(obj) {
3688
- const { ranking } = obj;
3689
- this.ranking = ranking.map((rank) => new DojangRankingDto(rank));
3789
+ const { cashshop_notice } = obj;
3790
+ this.cashshopNotice = cashshop_notice.map(notice => new CashshopNoticeListItemDto(notice));
3690
3791
  }
3691
3792
  }
3692
3793
 
3693
3794
  /**
3694
- * 길드 랭킹 정보
3795
+ * 진행 이벤트 상세
3695
3796
  */
3696
- class GuildRankingDto {
3797
+ class EventNoticeDetailDto {
3697
3798
  /**
3698
- * 랭킹 업데이트 일자 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
3799
+ * 공지 제목
3800
+ */
3801
+ title;
3802
+ /**
3803
+ * 공지 링크
3804
+ */
3805
+ url;
3806
+ /**
3807
+ * 공지 본문
3808
+ */
3809
+ contents;
3810
+ /**
3811
+ * 공지 등록일
3699
3812
  */
3700
3813
  date;
3701
3814
  /**
3702
- * 길드 랭킹 순위
3815
+ * 이벤트 시작일
3703
3816
  */
3704
- ranking;
3817
+ dateEventStart;
3705
3818
  /**
3706
- * 길드
3819
+ * 이벤트 종료일
3707
3820
  */
3708
- guildName;
3821
+ dateEventEnd;
3822
+ constructor(obj) {
3823
+ const { title, url, contents, date, date_event_start, date_event_end } = obj;
3824
+ this.title = title;
3825
+ this.url = url;
3826
+ this.contents = contents;
3827
+ this.date = new Date(date);
3828
+ this.dateEventStart = new Date(date_event_start);
3829
+ this.dateEventEnd = new Date(date_event_end);
3830
+ }
3831
+ }
3832
+
3833
+ /**
3834
+ * 진행 중 이벤트 공지
3835
+ */
3836
+ class EventNoticeListItemDto {
3709
3837
  /**
3710
- * 월드
3838
+ * 공지 제목
3711
3839
  */
3712
- worldName;
3840
+ title;
3713
3841
  /**
3714
- * 길드 레벨
3842
+ * 공지 링크
3715
3843
  */
3716
- guildLevel;
3844
+ url;
3717
3845
  /**
3718
- * 길드 마스터 캐릭터 명
3846
+ * 공지 식별자
3719
3847
  */
3720
- guildMasterName;
3848
+ noticeId;
3721
3849
  /**
3722
- * 길드 마크
3850
+ * 공지 등록일
3723
3851
  */
3724
- guildMark;
3852
+ date;
3725
3853
  /**
3726
- * 길드 포인트
3854
+ * 이벤트 시작일
3727
3855
  */
3728
- guildPoint;
3856
+ dateEventStart;
3857
+ /**
3858
+ * 이벤트 종료일
3859
+ */
3860
+ dateEventEnd;
3729
3861
  constructor(obj) {
3730
- const { date, ranking, guild_name, world_name, guild_level, guild_master_name, guild_mark, guild_point, } = obj;
3862
+ const { title, url, notice_id, date, date_event_start, date_event_end } = obj;
3863
+ this.title = title;
3864
+ this.url = url;
3865
+ this.noticeId = notice_id;
3731
3866
  this.date = new Date(date);
3732
- this.ranking = ranking;
3733
- this.guildName = guild_name;
3734
- this.worldName = world_name;
3735
- this.guildLevel = guild_level;
3736
- this.guildMasterName = guild_master_name;
3737
- this.guildMark = guild_mark;
3738
- this.guildPoint = guild_point;
3867
+ this.dateEventStart = new Date(date_event_start);
3868
+ this.dateEventEnd = new Date(date_event_end);
3739
3869
  }
3740
3870
  }
3741
3871
 
3742
3872
  /**
3743
- * 길드 랭킹 응답 정보
3873
+ * 진행 이벤트 공지 목록
3744
3874
  */
3745
- class GuildRankingResponseDto {
3875
+ class EventNoticeListDto {
3746
3876
  /**
3747
- * 길드 랭킹 정보
3877
+ * 공지 목록
3748
3878
  */
3749
- ranking;
3879
+ eventNotice;
3750
3880
  constructor(obj) {
3751
- const { ranking } = obj;
3752
- this.ranking = ranking.map((rank) => new GuildRankingDto(rank));
3881
+ const { event_notice } = obj;
3882
+ this.eventNotice = event_notice.map(notice => new EventNoticeListItemDto(notice));
3753
3883
  }
3754
3884
  }
3755
3885
 
3756
3886
  /**
3757
- * 종합 랭킹 정보
3887
+ * 공지사항 상세
3758
3888
  */
3759
- class OverallRankingDto {
3889
+ class NoticeDetailDto {
3760
3890
  /**
3761
- * 랭킹 업데이트 일자 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
3891
+ * 공지 제목
3762
3892
  */
3763
- date;
3893
+ title;
3764
3894
  /**
3765
- * 종합 랭킹 순위
3895
+ * 공지 링크
3766
3896
  */
3767
- ranking;
3897
+ url;
3768
3898
  /**
3769
- * 캐릭터
3899
+ * 공지 본문
3900
+ */
3901
+ contents;
3902
+ /**
3903
+ * 공지 등록일
3904
+ */
3905
+ date;
3906
+ constructor(obj) {
3907
+ const { title, url, contents, date } = obj;
3908
+ this.title = title;
3909
+ this.url = url;
3910
+ this.contents = contents;
3911
+ this.date = new Date(date);
3912
+ }
3913
+ }
3914
+
3915
+ /**
3916
+ * 공지사항
3917
+ */
3918
+ class NoticeListItemDto {
3919
+ /**
3920
+ * 공지 제목
3921
+ */
3922
+ title;
3923
+ /**
3924
+ * 공지 링크
3925
+ */
3926
+ url;
3927
+ /**
3928
+ * 공지 식별자
3929
+ */
3930
+ noticeId;
3931
+ /**
3932
+ * 공지 등록일
3933
+ */
3934
+ date;
3935
+ constructor(obj) {
3936
+ const { title, url, notice_id, date } = obj;
3937
+ this.title = title;
3938
+ this.url = url;
3939
+ this.noticeId = notice_id;
3940
+ this.date = new Date(date);
3941
+ }
3942
+ }
3943
+
3944
+ /**
3945
+ * 공지사항 목록
3946
+ */
3947
+ class NoticeListDto {
3948
+ /**
3949
+ * 공지 목록
3950
+ */
3951
+ notice;
3952
+ constructor(obj) {
3953
+ const { notice } = obj;
3954
+ this.notice = notice.map(notice => new NoticeListItemDto(notice));
3955
+ }
3956
+ }
3957
+
3958
+ /**
3959
+ * 업데이트 상세
3960
+ */
3961
+ class UpdateNoticeDetailDto {
3962
+ /**
3963
+ * 공지 제목
3964
+ */
3965
+ title;
3966
+ /**
3967
+ * 공지 링크
3968
+ */
3969
+ url;
3970
+ /**
3971
+ * 공지 본문
3972
+ */
3973
+ contents;
3974
+ /**
3975
+ * 공지 등록일
3976
+ */
3977
+ date;
3978
+ constructor(obj) {
3979
+ const { title, url, contents, date } = obj;
3980
+ this.title = title;
3981
+ this.url = url;
3982
+ this.contents = contents;
3983
+ this.date = new Date(date);
3984
+ }
3985
+ }
3986
+
3987
+ /**
3988
+ * 업데이트 공지
3989
+ */
3990
+ class UpdateNoticeListItemDto {
3991
+ /**
3992
+ * 공지 제목
3993
+ */
3994
+ title;
3995
+ /**
3996
+ * 공지 링크
3997
+ */
3998
+ url;
3999
+ /**
4000
+ * 공지 식별자
4001
+ */
4002
+ noticeId;
4003
+ /**
4004
+ * 공지 등록일
4005
+ */
4006
+ date;
4007
+ constructor(obj) {
4008
+ const { title, url, notice_id, date } = obj;
4009
+ this.title = title;
4010
+ this.url = url;
4011
+ this.noticeId = notice_id;
4012
+ this.date = new Date(date);
4013
+ }
4014
+ }
4015
+
4016
+ /**
4017
+ * 업데이트 목록
4018
+ */
4019
+ class UpdateNoticeListDto {
4020
+ /**
4021
+ * 공지 목록
4022
+ */
4023
+ updateNotice;
4024
+ constructor(obj) {
4025
+ const { update_notice } = obj;
4026
+ this.updateNotice = update_notice.map(notice => new UpdateNoticeListItemDto(notice));
4027
+ }
4028
+ }
4029
+
4030
+ /**
4031
+ * 업적 랭킹 정보
4032
+ */
4033
+ class AchievementRankingDto {
4034
+ /**
4035
+ * 랭킹 업데이트 일자 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
4036
+ */
4037
+ date;
4038
+ /**
4039
+ * 업적 랭킹 순위
4040
+ */
4041
+ ranking;
4042
+ /**
4043
+ * 캐릭터 명
4044
+ */
4045
+ characterName;
4046
+ /**
4047
+ * 월드 명
4048
+ */
4049
+ worldName;
4050
+ /**
4051
+ * 직업 명
4052
+ */
4053
+ className;
4054
+ /**
4055
+ * 전직 직업 명
4056
+ */
4057
+ subClassName;
4058
+ /**
4059
+ * 업적 등급
4060
+ */
4061
+ trophyGrade;
4062
+ /**
4063
+ * 업적 점수
4064
+ */
4065
+ trophyScore;
4066
+ constructor(obj) {
4067
+ const { date, ranking, character_name, world_name, class_name, sub_class_name, trophy_grade, trophy_score, } = obj;
4068
+ this.date = new Date(date);
4069
+ this.ranking = ranking;
4070
+ this.characterName = character_name;
4071
+ this.worldName = world_name;
4072
+ this.className = class_name;
4073
+ this.subClassName = sub_class_name;
4074
+ this.trophyGrade = trophy_grade;
4075
+ this.trophyScore = trophy_score;
4076
+ }
4077
+ }
4078
+
4079
+ /**
4080
+ * 업적 랭킹 응답 정보
4081
+ */
4082
+ class AchievementRankingResponseDto {
4083
+ /**
4084
+ * 업적 랭킹 정보
4085
+ */
4086
+ ranking;
4087
+ constructor(obj) {
4088
+ const { ranking } = obj;
4089
+ this.ranking = ranking.map((rank) => new AchievementRankingDto(rank));
4090
+ }
4091
+ }
4092
+
4093
+ /**
4094
+ * 무릉도장 랭킹 정보
4095
+ */
4096
+ class DojangRankingDto {
4097
+ /**
4098
+ * 랭킹 업데이트 일자 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
4099
+ */
4100
+ date;
4101
+ /**
4102
+ * 무릉도장 랭킹 순위
4103
+ */
4104
+ ranking;
4105
+ /**
4106
+ * 캐릭터 명
4107
+ */
4108
+ characterName;
4109
+ /**
4110
+ * 월드 명
4111
+ */
4112
+ worldName;
4113
+ /**
4114
+ * 직업 명
4115
+ */
4116
+ className;
4117
+ /**
4118
+ * 전직 직업 명
4119
+ */
4120
+ subClassName;
4121
+ /**
4122
+ * 캐릭터 레벨
4123
+ */
4124
+ characterLevel;
4125
+ /**
4126
+ * 무릉도장 구간
4127
+ */
4128
+ dojangFloor;
4129
+ /**
4130
+ * 무릉도장 클리어 시간 기록 (초 단위)
4131
+ */
4132
+ dojangTimeRecord;
4133
+ constructor(obj) {
4134
+ const { date, ranking, character_name, world_name, class_name, sub_class_name, character_level, dojang_floor, dojang_time_record, } = obj;
4135
+ this.date = new Date(date);
4136
+ this.ranking = ranking;
4137
+ this.characterName = character_name;
4138
+ this.worldName = world_name;
4139
+ this.className = class_name;
4140
+ this.subClassName = sub_class_name;
4141
+ this.characterLevel = character_level;
4142
+ this.dojangFloor = dojang_floor;
4143
+ this.dojangTimeRecord = dojang_time_record;
4144
+ }
4145
+ }
4146
+
4147
+ /**
4148
+ * 무릉도장 랭킹 응답 정보
4149
+ */
4150
+ class DojangRankingResponseDto {
4151
+ /**
4152
+ * 길드 랭킹 정보
4153
+ */
4154
+ ranking;
4155
+ constructor(obj) {
4156
+ const { ranking } = obj;
4157
+ this.ranking = ranking.map((rank) => new DojangRankingDto(rank));
4158
+ }
4159
+ }
4160
+
4161
+ /**
4162
+ * 길드 랭킹 정보
4163
+ */
4164
+ class GuildRankingDto {
4165
+ /**
4166
+ * 랭킹 업데이트 일자 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
4167
+ */
4168
+ date;
4169
+ /**
4170
+ * 길드 랭킹 순위
4171
+ */
4172
+ ranking;
4173
+ /**
4174
+ * 길드 명
4175
+ */
4176
+ guildName;
4177
+ /**
4178
+ * 월드 명
4179
+ */
4180
+ worldName;
4181
+ /**
4182
+ * 길드 레벨
4183
+ */
4184
+ guildLevel;
4185
+ /**
4186
+ * 길드 마스터 캐릭터 명
4187
+ */
4188
+ guildMasterName;
4189
+ /**
4190
+ * 길드 마크
4191
+ */
4192
+ guildMark;
4193
+ /**
4194
+ * 길드 포인트
4195
+ */
4196
+ guildPoint;
4197
+ constructor(obj) {
4198
+ const { date, ranking, guild_name, world_name, guild_level, guild_master_name, guild_mark, guild_point, } = obj;
4199
+ this.date = new Date(date);
4200
+ this.ranking = ranking;
4201
+ this.guildName = guild_name;
4202
+ this.worldName = world_name;
4203
+ this.guildLevel = guild_level;
4204
+ this.guildMasterName = guild_master_name;
4205
+ this.guildMark = guild_mark;
4206
+ this.guildPoint = guild_point;
4207
+ }
4208
+ }
4209
+
4210
+ /**
4211
+ * 길드 랭킹 응답 정보
4212
+ */
4213
+ class GuildRankingResponseDto {
4214
+ /**
4215
+ * 길드 랭킹 정보
4216
+ */
4217
+ ranking;
4218
+ constructor(obj) {
4219
+ const { ranking } = obj;
4220
+ this.ranking = ranking.map((rank) => new GuildRankingDto(rank));
4221
+ }
4222
+ }
4223
+
4224
+ /**
4225
+ * 종합 랭킹 정보
4226
+ */
4227
+ class OverallRankingDto {
4228
+ /**
4229
+ * 랭킹 업데이트 일자 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
4230
+ */
4231
+ date;
4232
+ /**
4233
+ * 종합 랭킹 순위
4234
+ */
4235
+ ranking;
4236
+ /**
4237
+ * 캐릭터 명
3770
4238
  */
3771
4239
  characterName;
3772
4240
  /**
@@ -4042,7 +4510,7 @@ class UnionArtifactDto {
4042
4510
  unionArtifactRemainAp;
4043
4511
  constructor(obj) {
4044
4512
  const { date, union_artifact_effect, union_artifact_crystal, union_artifact_remain_ap, } = obj;
4045
- this.date = new Date(date);
4513
+ this.date = date ? new Date(date) : null;
4046
4514
  this.unionArtifactEffect = union_artifact_effect.map((effect) => new UnionArtifactEffectDto(effect));
4047
4515
  this.unionArtifactCrystal = union_artifact_crystal.map((crystal) => new UnionArtifactCrystalDto(crystal));
4048
4516
  this.unionArtifactRemainAp = union_artifact_remain_ap;
@@ -4079,7 +4547,7 @@ class UnionDto {
4079
4547
  unionArtifactPoint;
4080
4548
  constructor(obj) {
4081
4549
  const { date, union_level, union_grade, union_artifact_level, union_artifact_exp, union_artifact_point } = obj;
4082
- this.date = new Date(date);
4550
+ this.date = date ? new Date(date) : null;
4083
4551
  this.unionLevel = union_level;
4084
4552
  this.unionGrade = union_grade;
4085
4553
  this.unionArtifactLevel = union_artifact_level;
@@ -4167,17 +4635,46 @@ class UnionRaiderBlockDto {
4167
4635
  */
4168
4636
  class UnionRaiderInnerStatDto {
4169
4637
  /**
4170
- * 공격대 배치 위치 (11시 방향부터 시계 방향 순서대로 0~7)
4638
+ * 공격대 배치 위치 (11시 방향부터 시계 방향 순서대로 0~7)
4639
+ */
4640
+ statFieldId;
4641
+ /**
4642
+ * 해당 지역 점령 효과
4643
+ */
4644
+ statFieldEffect;
4645
+ constructor(obj) {
4646
+ const { stat_field_id, stat_field_effect } = obj;
4647
+ this.statFieldId = stat_field_id;
4648
+ this.statFieldEffect = stat_field_effect;
4649
+ }
4650
+ }
4651
+
4652
+ /**
4653
+ * 유니온 프리셋 정보
4654
+ */
4655
+ class UnionRaiderPresetDto {
4656
+ /**
4657
+ * 유니온 공격대원 효과
4658
+ */
4659
+ unionRaiderStat;
4660
+ /**
4661
+ * 유니온 공격대 점령 효과
4662
+ */
4663
+ unionOccupiedStat;
4664
+ /**
4665
+ * 유니온 공격대 배치
4171
4666
  */
4172
- statFieldId;
4667
+ unionInnerStat;
4173
4668
  /**
4174
- * 해당 지역 점령 효과
4669
+ * 유니온 블록 정보
4175
4670
  */
4176
- statFieldEffect;
4671
+ unionBlock;
4177
4672
  constructor(obj) {
4178
- const { stat_field_id, stat_field_effect } = obj;
4179
- this.statFieldId = stat_field_id;
4180
- this.statFieldEffect = stat_field_effect;
4673
+ const { union_raider_stat, union_occupied_stat, union_inner_stat, union_block, } = obj;
4674
+ this.unionRaiderStat = union_raider_stat;
4675
+ this.unionOccupiedStat = union_occupied_stat;
4676
+ this.unionInnerStat = union_inner_stat.map((stat) => new UnionRaiderInnerStatDto(stat));
4677
+ this.unionBlock = union_block.map((block) => new UnionRaiderBlockDto(block));
4181
4678
  }
4182
4679
  }
4183
4680
 
@@ -4202,13 +4699,53 @@ class UnionRaiderDto {
4202
4699
  * 유니온 블록 정보
4203
4700
  */
4204
4701
  unionBlock;
4702
+ /**
4703
+ * 적용 중인 프리셋 번호
4704
+ */
4705
+ usePresetNo;
4706
+ /**
4707
+ * 유니온 프리셋 1번 정보
4708
+ */
4709
+ unionRaiderPreset1;
4710
+ /**
4711
+ * 유니온 프리셋 2번 정보
4712
+ */
4713
+ unionRaiderPreset2;
4714
+ /**
4715
+ * 유니온 프리셋 3번 정보
4716
+ */
4717
+ unionRaiderPreset3;
4718
+ /**
4719
+ * 유니온 프리셋 4번 정보
4720
+ */
4721
+ unionRaiderPreset4;
4722
+ /**
4723
+ * 유니온 프리셋 5번 정보
4724
+ */
4725
+ unionRaiderPreset5;
4205
4726
  constructor(obj) {
4206
- const { date, union_raider_stat, union_occupied_stat, union_inner_stat, union_block, } = obj;
4207
- this.date = new Date(date);
4727
+ const { date, union_raider_stat, union_occupied_stat, union_inner_stat, union_block, use_preset_no, union_raider_preset_1, union_raider_preset_2, union_raider_preset_3, union_raider_preset_4, union_raider_preset_5, } = obj;
4728
+ this.date = date ? new Date(date) : null;
4208
4729
  this.unionRaiderStat = union_raider_stat;
4209
4730
  this.unionOccupiedStat = union_occupied_stat;
4210
4731
  this.unionInnerStat = union_inner_stat.map((stat) => new UnionRaiderInnerStatDto(stat));
4211
4732
  this.unionBlock = union_block.map((block) => new UnionRaiderBlockDto(block));
4733
+ this.usePresetNo = use_preset_no;
4734
+ this.unionRaiderPreset1 = union_raider_preset_1
4735
+ ? new UnionRaiderPresetDto(union_raider_preset_1)
4736
+ : null;
4737
+ this.unionRaiderPreset2 = union_raider_preset_2
4738
+ ? new UnionRaiderPresetDto(union_raider_preset_2)
4739
+ : null;
4740
+ this.unionRaiderPreset3 = union_raider_preset_3
4741
+ ? new UnionRaiderPresetDto(union_raider_preset_3)
4742
+ : null;
4743
+ this.unionRaiderPreset4 = union_raider_preset_4
4744
+ ? new UnionRaiderPresetDto(union_raider_preset_4)
4745
+ : null;
4746
+ this.unionRaiderPreset5 = union_raider_preset_5
4747
+ ? new UnionRaiderPresetDto(union_raider_preset_5)
4748
+ : null;
4212
4749
  }
4213
4750
  }
4214
4751
 
@@ -4242,6 +4779,7 @@ exports.MapleStoryApiErrorCode = void 0;
4242
4779
  MapleStoryApiErrorCode[MapleStoryApiErrorCode["OPENAPI00007"] = 6] = "OPENAPI00007";
4243
4780
  MapleStoryApiErrorCode[MapleStoryApiErrorCode["OPENAPI00009"] = 7] = "OPENAPI00009";
4244
4781
  MapleStoryApiErrorCode[MapleStoryApiErrorCode["OPENAPI00010"] = 8] = "OPENAPI00010";
4782
+ MapleStoryApiErrorCode[MapleStoryApiErrorCode["OPENAPI00011"] = 9] = "OPENAPI00011";
4245
4783
  })(exports.MapleStoryApiErrorCode || (exports.MapleStoryApiErrorCode = {}));
4246
4784
  const errorMap = {
4247
4785
  ['OPENAPI00001']: exports.MapleStoryApiErrorCode.OPENAPI00001,
@@ -4253,6 +4791,7 @@ const errorMap = {
4253
4791
  ['OPENAPI00007']: exports.MapleStoryApiErrorCode.OPENAPI00007,
4254
4792
  ['OPENAPI00009']: exports.MapleStoryApiErrorCode.OPENAPI00009,
4255
4793
  ['OPENAPI00010']: exports.MapleStoryApiErrorCode.OPENAPI00010,
4794
+ ['OPENAPI00011']: exports.MapleStoryApiErrorCode.OPENAPI00011,
4256
4795
  };
4257
4796
 
4258
4797
  dayjs__default["default"].extend(timezone);
@@ -4293,8 +4832,9 @@ class MapleStoryApi {
4293
4832
  //#region 캐릭터 정보 조회
4294
4833
  /**
4295
4834
  * 캐릭터 식별자(ocid)를 조회합니다.
4835
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4296
4836
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4297
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
4837
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4298
4838
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4299
4839
  *
4300
4840
  * @param characterName 캐릭터 명
@@ -4308,28 +4848,39 @@ class MapleStoryApi {
4308
4848
  });
4309
4849
  return new CharacterDto(data);
4310
4850
  }
4851
+ /**
4852
+ * 계정의 보유 캐릭터 목록을 조회합니다.
4853
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4854
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 수 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 수 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23일 00시 사이 데이터가 조회 됩니다.)
4855
+ * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4856
+ */
4857
+ async getCharacterList() {
4858
+ const path = 'maplestory/v1/character/list';
4859
+ const { data } = await this.client.get(path);
4860
+ return new CharacterListDto(data);
4861
+ }
4311
4862
  /**
4312
4863
  * 기본 정보를 조회합니다.
4864
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4313
4865
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4314
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
4866
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4315
4867
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4316
4868
  *
4317
4869
  * @param ocid 캐릭터 식별자
4318
4870
  * @param dateOptions 조회 기준일 (KST)
4319
4871
  */
4320
- async getCharacterBasic(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4321
- hour: 1,
4322
- minute: 0,
4323
- dateOffset: 1,
4324
- })) {
4872
+ async getCharacterBasic(ocid, dateOptions) {
4325
4873
  const path = 'maplestory/v1/character/basic';
4326
- const query = {
4327
- ocid: ocid,
4328
- date: MapleStoryApi.toDateString({
4874
+ const date = dateOptions
4875
+ ? MapleStoryApi.toDateString({
4329
4876
  year: 2023,
4330
4877
  month: 12,
4331
4878
  day: 21,
4332
- }, dateOptions),
4879
+ }, dateOptions)
4880
+ : undefined;
4881
+ const query = {
4882
+ ocid: ocid,
4883
+ date: date,
4333
4884
  };
4334
4885
  const { data } = await this.client.get(path, {
4335
4886
  params: query,
@@ -4338,26 +4889,26 @@ class MapleStoryApi {
4338
4889
  }
4339
4890
  /**
4340
4891
  * 인기도 정보를 조회합니다.
4892
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4341
4893
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4342
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
4894
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4343
4895
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4344
4896
  *
4345
4897
  * @param ocid 캐릭터 식별자
4346
4898
  * @param dateOptions 조회 기준일 (KST)
4347
4899
  */
4348
- async getCharacterPopularity(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4349
- hour: 1,
4350
- minute: 0,
4351
- dateOffset: 1,
4352
- })) {
4900
+ async getCharacterPopularity(ocid, dateOptions) {
4353
4901
  const path = 'maplestory/v1/character/popularity';
4354
- const query = {
4355
- ocid: ocid,
4356
- date: MapleStoryApi.toDateString({
4902
+ const date = dateOptions
4903
+ ? MapleStoryApi.toDateString({
4357
4904
  year: 2023,
4358
4905
  month: 12,
4359
4906
  day: 21,
4360
- }, dateOptions),
4907
+ }, dateOptions)
4908
+ : undefined;
4909
+ const query = {
4910
+ ocid: ocid,
4911
+ date: date,
4361
4912
  };
4362
4913
  const { data } = await this.client.get(path, {
4363
4914
  params: query,
@@ -4366,26 +4917,26 @@ class MapleStoryApi {
4366
4917
  }
4367
4918
  /**
4368
4919
  * 종합 능력치 정보를 조회합니다.
4920
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4369
4921
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4370
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
4922
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4371
4923
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4372
4924
  *
4373
4925
  * @param ocid 캐릭터 식별자
4374
4926
  * @param dateOptions 조회 기준일 (KST)
4375
4927
  */
4376
- async getCharacterStat(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4377
- hour: 1,
4378
- minute: 0,
4379
- dateOffset: 1,
4380
- })) {
4928
+ async getCharacterStat(ocid, dateOptions) {
4381
4929
  const path = 'maplestory/v1/character/stat';
4382
- const query = {
4383
- ocid: ocid,
4384
- date: MapleStoryApi.toDateString({
4930
+ const date = dateOptions
4931
+ ? MapleStoryApi.toDateString({
4385
4932
  year: 2023,
4386
4933
  month: 12,
4387
4934
  day: 21,
4388
- }, dateOptions),
4935
+ }, dateOptions)
4936
+ : undefined;
4937
+ const query = {
4938
+ ocid: ocid,
4939
+ date: date,
4389
4940
  };
4390
4941
  const { data } = await this.client.get(path, {
4391
4942
  params: query,
@@ -4394,26 +4945,26 @@ class MapleStoryApi {
4394
4945
  }
4395
4946
  /**
4396
4947
  * 하이퍼스탯 정보를 조회합니다.
4948
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4397
4949
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4398
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
4950
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4399
4951
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4400
4952
  *
4401
4953
  * @param ocid 캐릭터 식별자
4402
4954
  * @param dateOptions 조회 기준일 (KST)
4403
4955
  */
4404
- async getCharacterHyperStat(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4405
- hour: 1,
4406
- minute: 0,
4407
- dateOffset: 1,
4408
- })) {
4956
+ async getCharacterHyperStat(ocid, dateOptions) {
4409
4957
  const path = 'maplestory/v1/character/hyper-stat';
4410
- const query = {
4411
- ocid: ocid,
4412
- date: MapleStoryApi.toDateString({
4958
+ const date = dateOptions
4959
+ ? MapleStoryApi.toDateString({
4413
4960
  year: 2023,
4414
4961
  month: 12,
4415
4962
  day: 21,
4416
- }, dateOptions),
4963
+ }, dateOptions)
4964
+ : undefined;
4965
+ const query = {
4966
+ ocid: ocid,
4967
+ date: date,
4417
4968
  };
4418
4969
  const { data } = await this.client.get(path, {
4419
4970
  params: query,
@@ -4422,26 +4973,26 @@ class MapleStoryApi {
4422
4973
  }
4423
4974
  /**
4424
4975
  * 성향 정보를 조회합니다.
4976
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4425
4977
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4426
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
4978
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4427
4979
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4428
4980
  *
4429
4981
  * @param ocid 캐릭터 식별자
4430
4982
  * @param dateOptions 조회 기준일 (KST)
4431
4983
  */
4432
- async getCharacterPropensity(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4433
- hour: 1,
4434
- minute: 0,
4435
- dateOffset: 1,
4436
- })) {
4984
+ async getCharacterPropensity(ocid, dateOptions) {
4437
4985
  const path = 'maplestory/v1/character/propensity';
4438
- const query = {
4439
- ocid: ocid,
4440
- date: MapleStoryApi.toDateString({
4986
+ const date = dateOptions
4987
+ ? MapleStoryApi.toDateString({
4441
4988
  year: 2023,
4442
4989
  month: 12,
4443
4990
  day: 21,
4444
- }, dateOptions),
4991
+ }, dateOptions)
4992
+ : undefined;
4993
+ const query = {
4994
+ ocid: ocid,
4995
+ date: date,
4445
4996
  };
4446
4997
  const { data } = await this.client.get(path, {
4447
4998
  params: query,
@@ -4450,26 +5001,26 @@ class MapleStoryApi {
4450
5001
  }
4451
5002
  /**
4452
5003
  * 어빌리티 정보를 조회합니다.
5004
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4453
5005
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4454
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5006
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4455
5007
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4456
5008
  *
4457
5009
  * @param ocid 캐릭터 식별자
4458
5010
  * @param dateOptions 조회 기준일 (KST)
4459
5011
  */
4460
- async getCharacterAbility(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4461
- hour: 1,
4462
- minute: 0,
4463
- dateOffset: 1,
4464
- })) {
5012
+ async getCharacterAbility(ocid, dateOptions) {
4465
5013
  const path = 'maplestory/v1/character/ability';
4466
- const query = {
4467
- ocid: ocid,
4468
- date: MapleStoryApi.toDateString({
5014
+ const date = dateOptions
5015
+ ? MapleStoryApi.toDateString({
4469
5016
  year: 2023,
4470
5017
  month: 12,
4471
5018
  day: 21,
4472
- }, dateOptions),
5019
+ }, dateOptions)
5020
+ : undefined;
5021
+ const query = {
5022
+ ocid: ocid,
5023
+ date: date,
4473
5024
  };
4474
5025
  const { data } = await this.client.get(path, {
4475
5026
  params: query,
@@ -4478,26 +5029,26 @@ class MapleStoryApi {
4478
5029
  }
4479
5030
  /**
4480
5031
  * 장착한 장비 중 캐시 장비를 제외한 나머지 장비 정보를 조회합니다.
5032
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4481
5033
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4482
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5034
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4483
5035
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4484
5036
  *
4485
5037
  * @param ocid 캐릭터 식별자
4486
5038
  * @param dateOptions 조회 기준일 (KST)
4487
5039
  */
4488
- async getCharacterItemEquipment(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4489
- hour: 1,
4490
- minute: 0,
4491
- dateOffset: 1,
4492
- })) {
5040
+ async getCharacterItemEquipment(ocid, dateOptions) {
4493
5041
  const path = 'maplestory/v1/character/item-equipment';
4494
- const query = {
4495
- ocid: ocid,
4496
- date: MapleStoryApi.toDateString({
5042
+ const date = dateOptions
5043
+ ? MapleStoryApi.toDateString({
4497
5044
  year: 2023,
4498
5045
  month: 12,
4499
5046
  day: 21,
4500
- }, dateOptions),
5047
+ }, dateOptions)
5048
+ : undefined;
5049
+ const query = {
5050
+ ocid: ocid,
5051
+ date: date,
4501
5052
  };
4502
5053
  const { data } = await this.client.get(path, {
4503
5054
  params: query,
@@ -4506,26 +5057,26 @@ class MapleStoryApi {
4506
5057
  }
4507
5058
  /**
4508
5059
  * 장착한 캐시 장비 정보를 조회합니다.
5060
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4509
5061
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4510
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5062
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4511
5063
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4512
5064
  *
4513
5065
  * @param ocid 캐릭터 식별자
4514
5066
  * @param dateOptions 조회 기준일 (KST)
4515
5067
  */
4516
- async getCharacterCashItemEquipment(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4517
- hour: 1,
4518
- minute: 0,
4519
- dateOffset: 1,
4520
- })) {
5068
+ async getCharacterCashItemEquipment(ocid, dateOptions) {
4521
5069
  const path = 'maplestory/v1/character/cashitem-equipment';
4522
- const query = {
4523
- ocid: ocid,
4524
- date: MapleStoryApi.toDateString({
5070
+ const date = dateOptions
5071
+ ? MapleStoryApi.toDateString({
4525
5072
  year: 2023,
4526
5073
  month: 12,
4527
5074
  day: 21,
4528
- }, dateOptions),
5075
+ }, dateOptions)
5076
+ : undefined;
5077
+ const query = {
5078
+ ocid: ocid,
5079
+ date: date,
4529
5080
  };
4530
5081
  const { data } = await this.client.get(path, {
4531
5082
  params: query,
@@ -4534,26 +5085,26 @@ class MapleStoryApi {
4534
5085
  }
4535
5086
  /**
4536
5087
  * 장착한 심볼 정보를 조회합니다.
5088
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4537
5089
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4538
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5090
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4539
5091
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4540
5092
  *
4541
5093
  * @param ocid 캐릭터 식별자
4542
5094
  * @param dateOptions 조회 기준일 (KST)
4543
5095
  */
4544
- async getCharacterSymbolEquipment(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4545
- hour: 1,
4546
- minute: 0,
4547
- dateOffset: 1,
4548
- })) {
5096
+ async getCharacterSymbolEquipment(ocid, dateOptions) {
4549
5097
  const path = 'maplestory/v1/character/symbol-equipment';
4550
- const query = {
4551
- ocid: ocid,
4552
- date: MapleStoryApi.toDateString({
5098
+ const date = dateOptions
5099
+ ? MapleStoryApi.toDateString({
4553
5100
  year: 2023,
4554
5101
  month: 12,
4555
5102
  day: 21,
4556
- }, dateOptions),
5103
+ }, dateOptions)
5104
+ : undefined;
5105
+ const query = {
5106
+ ocid: ocid,
5107
+ date: date,
4557
5108
  };
4558
5109
  const { data } = await this.client.get(path, {
4559
5110
  params: query,
@@ -4562,26 +5113,26 @@ class MapleStoryApi {
4562
5113
  }
4563
5114
  /**
4564
5115
  * 적용받고 있는 세트 효과 정보를 조회합니다.
5116
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4565
5117
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4566
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5118
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4567
5119
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4568
5120
  *
4569
5121
  * @param ocid 캐릭터 식별자
4570
5122
  * @param dateOptions 조회 기준일 (KST)
4571
5123
  */
4572
- async getCharacterSetEffect(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4573
- hour: 1,
4574
- minute: 0,
4575
- dateOffset: 1,
4576
- })) {
5124
+ async getCharacterSetEffect(ocid, dateOptions) {
4577
5125
  const path = 'maplestory/v1/character/set-effect';
4578
- const query = {
4579
- ocid: ocid,
4580
- date: MapleStoryApi.toDateString({
5126
+ const date = dateOptions
5127
+ ? MapleStoryApi.toDateString({
4581
5128
  year: 2023,
4582
5129
  month: 12,
4583
5130
  day: 21,
4584
- }, dateOptions),
5131
+ }, dateOptions)
5132
+ : undefined;
5133
+ const query = {
5134
+ ocid: ocid,
5135
+ date: date,
4585
5136
  };
4586
5137
  const { data } = await this.client.get(path, {
4587
5138
  params: query,
@@ -4590,26 +5141,23 @@ class MapleStoryApi {
4590
5141
  }
4591
5142
  /**
4592
5143
  * 장착 중인 헤어, 성형, 피부 정보를 조회합니다.
5144
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4593
5145
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4594
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5146
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4595
5147
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4596
5148
  *
4597
5149
  * @param ocid 캐릭터 식별자
4598
5150
  * @param dateOptions 조회 기준일 (KST)
4599
5151
  */
4600
- async getCharacterBeautyEquipment(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4601
- hour: 1,
4602
- minute: 0,
4603
- dateOffset: 1,
4604
- })) {
5152
+ async getCharacterBeautyEquipment(ocid, dateOptions) {
4605
5153
  const path = 'maplestory/v1/character/beauty-equipment';
4606
5154
  const query = {
4607
5155
  ocid: ocid,
4608
- date: MapleStoryApi.toDateString({
5156
+ date: dateOptions ? MapleStoryApi.toDateString({
4609
5157
  year: 2023,
4610
5158
  month: 12,
4611
5159
  day: 21,
4612
- }, dateOptions),
5160
+ }, dateOptions) : undefined,
4613
5161
  };
4614
5162
  const { data } = await this.client.get(path, {
4615
5163
  params: query,
@@ -4618,26 +5166,26 @@ class MapleStoryApi {
4618
5166
  }
4619
5167
  /**
4620
5168
  * 장착한 안드로이드 정보를 조회합니다.
5169
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4621
5170
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4622
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5171
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4623
5172
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4624
5173
  *
4625
5174
  * @param ocid 캐릭터 식별자
4626
5175
  * @param dateOptions 조회 기준일 (KST)
4627
5176
  */
4628
- async getCharacterAndroidEquipment(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4629
- hour: 1,
4630
- minute: 0,
4631
- dateOffset: 1,
4632
- })) {
5177
+ async getCharacterAndroidEquipment(ocid, dateOptions) {
4633
5178
  const path = 'maplestory/v1/character/android-equipment';
4634
- const query = {
4635
- ocid: ocid,
4636
- date: MapleStoryApi.toDateString({
5179
+ const date = dateOptions
5180
+ ? MapleStoryApi.toDateString({
4637
5181
  year: 2023,
4638
5182
  month: 12,
4639
5183
  day: 21,
4640
- }, dateOptions),
5184
+ }, dateOptions)
5185
+ : undefined;
5186
+ const query = {
5187
+ ocid: ocid,
5188
+ date: date,
4641
5189
  };
4642
5190
  const { data } = await this.client.get(path, {
4643
5191
  params: query,
@@ -4646,26 +5194,26 @@ class MapleStoryApi {
4646
5194
  }
4647
5195
  /**
4648
5196
  * 장착한 펫 및 펫 스킬, 장비 정보를 조회합니다.
5197
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4649
5198
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4650
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5199
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4651
5200
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4652
5201
  *
4653
5202
  * @param ocid 캐릭터 식별자
4654
5203
  * @param dateOptions 조회 기준일 (KST)
4655
5204
  */
4656
- async getCharacterPetEquipment(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4657
- hour: 1,
4658
- minute: 0,
4659
- dateOffset: 1,
4660
- })) {
5205
+ async getCharacterPetEquipment(ocid, dateOptions) {
4661
5206
  const path = 'maplestory/v1/character/pet-equipment';
4662
- const query = {
4663
- ocid: ocid,
4664
- date: MapleStoryApi.toDateString({
5207
+ const date = dateOptions
5208
+ ? MapleStoryApi.toDateString({
4665
5209
  year: 2023,
4666
5210
  month: 12,
4667
5211
  day: 21,
4668
- }, dateOptions),
5212
+ }, dateOptions)
5213
+ : undefined;
5214
+ const query = {
5215
+ ocid: ocid,
5216
+ date: date,
4669
5217
  };
4670
5218
  const { data } = await this.client.get(path, {
4671
5219
  params: query,
@@ -4674,8 +5222,9 @@ class MapleStoryApi {
4674
5222
  }
4675
5223
  /**
4676
5224
  * 캐릭터 스킬과 하이퍼 스킬 정보를 조회합니다.
5225
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4677
5226
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4678
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5227
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4679
5228
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4680
5229
  *
4681
5230
  * @param ocid 캐릭터 식별자
@@ -4693,20 +5242,19 @@ class MapleStoryApi {
4693
5242
  * - 6: 6차 스킬
4694
5243
  * @param dateOptions 조회 기준일 (KST)
4695
5244
  */
4696
- async getCharacterSkill(ocid, characterSkillGrade, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4697
- hour: 1,
4698
- minute: 0,
4699
- dateOffset: 1,
4700
- })) {
5245
+ async getCharacterSkill(ocid, characterSkillGrade, dateOptions) {
4701
5246
  const path = 'maplestory/v1/character/skill';
4702
- const query = {
4703
- ocid: ocid,
4704
- character_skill_grade: characterSkillGrade,
4705
- date: MapleStoryApi.toDateString({
5247
+ const date = dateOptions
5248
+ ? MapleStoryApi.toDateString({
4706
5249
  year: 2023,
4707
5250
  month: 12,
4708
5251
  day: 21,
4709
- }, dateOptions),
5252
+ }, dateOptions)
5253
+ : undefined;
5254
+ const query = {
5255
+ ocid: ocid,
5256
+ character_skill_grade: characterSkillGrade,
5257
+ date: date,
4710
5258
  };
4711
5259
  const { data } = await this.client.get(path, {
4712
5260
  params: query,
@@ -4715,26 +5263,26 @@ class MapleStoryApi {
4715
5263
  }
4716
5264
  /**
4717
5265
  * 장착 링크 스킬 정보를 조회합니다.
5266
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4718
5267
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4719
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5268
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4720
5269
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4721
5270
  *
4722
5271
  * @param ocid 캐릭터 식별자
4723
5272
  * @param dateOptions 조회 기준일 (KST)
4724
5273
  */
4725
- async getCharacterLinkSkill(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4726
- hour: 1,
4727
- minute: 0,
4728
- dateOffset: 1,
4729
- })) {
5274
+ async getCharacterLinkSkill(ocid, dateOptions) {
4730
5275
  const path = 'maplestory/v1/character/link-skill';
4731
- const query = {
4732
- ocid: ocid,
4733
- date: MapleStoryApi.toDateString({
5276
+ const date = dateOptions
5277
+ ? MapleStoryApi.toDateString({
4734
5278
  year: 2023,
4735
5279
  month: 12,
4736
5280
  day: 21,
4737
- }, dateOptions),
5281
+ }, dateOptions)
5282
+ : undefined;
5283
+ const query = {
5284
+ ocid: ocid,
5285
+ date: date,
4738
5286
  };
4739
5287
  const { data } = await this.client.get(path, {
4740
5288
  params: query,
@@ -4743,26 +5291,26 @@ class MapleStoryApi {
4743
5291
  }
4744
5292
  /**
4745
5293
  * V매트릭스 슬롯 정보와 장착한 V코어 정보를 조회합니다.
5294
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4746
5295
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4747
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5296
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4748
5297
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4749
5298
  *
4750
5299
  * @param ocid 캐릭터 식별자
4751
5300
  * @param dateOptions 조회 기준일 (KST)
4752
5301
  */
4753
- async getCharacterVMatrix(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4754
- hour: 1,
4755
- minute: 0,
4756
- dateOffset: 1,
4757
- })) {
5302
+ async getCharacterVMatrix(ocid, dateOptions) {
4758
5303
  const path = 'maplestory/v1/character/vmatrix';
4759
- const query = {
4760
- ocid: ocid,
4761
- date: MapleStoryApi.toDateString({
5304
+ const date = dateOptions
5305
+ ? MapleStoryApi.toDateString({
4762
5306
  year: 2023,
4763
5307
  month: 12,
4764
5308
  day: 21,
4765
- }, dateOptions),
5309
+ }, dateOptions)
5310
+ : undefined;
5311
+ const query = {
5312
+ ocid: ocid,
5313
+ date: date,
4766
5314
  };
4767
5315
  const { data } = await this.client.get(path, {
4768
5316
  params: query,
@@ -4771,26 +5319,26 @@ class MapleStoryApi {
4771
5319
  }
4772
5320
  /**
4773
5321
  * HEXA 매트릭스에 장착한 HEXA 코어 정보를 조회합니다.
5322
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4774
5323
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4775
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5324
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4776
5325
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4777
5326
  *
4778
5327
  * @param ocid 캐릭터 식별자
4779
5328
  * @param dateOptions 조회 기준일 (KST)
4780
5329
  */
4781
- async getCharacterHexaMatrix(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4782
- hour: 1,
4783
- minute: 0,
4784
- dateOffset: 1,
4785
- })) {
5330
+ async getCharacterHexaMatrix(ocid, dateOptions) {
4786
5331
  const path = 'maplestory/v1/character/hexamatrix';
4787
- const query = {
4788
- ocid: ocid,
4789
- date: MapleStoryApi.toDateString({
5332
+ const date = dateOptions
5333
+ ? MapleStoryApi.toDateString({
4790
5334
  year: 2023,
4791
5335
  month: 12,
4792
5336
  day: 21,
4793
- }, dateOptions),
5337
+ }, dateOptions)
5338
+ : undefined;
5339
+ const query = {
5340
+ ocid: ocid,
5341
+ date: date,
4794
5342
  };
4795
5343
  const { data } = await this.client.get(path, {
4796
5344
  params: query,
@@ -4799,26 +5347,26 @@ class MapleStoryApi {
4799
5347
  }
4800
5348
  /**
4801
5349
  * HEXA 매트릭스에 설정한 HEXA 스탯 정보를 조회합니다.
5350
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4802
5351
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4803
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5352
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4804
5353
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4805
5354
  *
4806
5355
  * @param ocid 캐릭터 식별자
4807
5356
  * @param dateOptions 조회 기준일 (KST)
4808
5357
  */
4809
- async getCharacterHexaMatrixStat(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4810
- hour: 1,
4811
- minute: 0,
4812
- dateOffset: 1,
4813
- })) {
5358
+ async getCharacterHexaMatrixStat(ocid, dateOptions) {
4814
5359
  const path = 'maplestory/v1/character/hexamatrix-stat';
4815
- const query = {
4816
- ocid: ocid,
4817
- date: MapleStoryApi.toDateString({
5360
+ const date = dateOptions
5361
+ ? MapleStoryApi.toDateString({
4818
5362
  year: 2023,
4819
5363
  month: 12,
4820
5364
  day: 21,
4821
- }, dateOptions),
5365
+ }, dateOptions)
5366
+ : undefined;
5367
+ const query = {
5368
+ ocid: ocid,
5369
+ date: date,
4822
5370
  };
4823
5371
  const { data } = await this.client.get(path, {
4824
5372
  params: query,
@@ -4827,26 +5375,26 @@ class MapleStoryApi {
4827
5375
  }
4828
5376
  /**
4829
5377
  * 캐릭터 무릉도장 최고 기록 정보를 조회합니다.
5378
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4830
5379
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4831
- * - 캐릭터 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5380
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4832
5381
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4833
5382
  *
4834
5383
  * @param ocid 캐릭터 식별자
4835
5384
  * @param dateOptions 조회 기준일 (KST)
4836
5385
  */
4837
- async getCharacterDojang(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4838
- hour: 1,
4839
- minute: 0,
4840
- dateOffset: 1,
4841
- })) {
5386
+ async getCharacterDojang(ocid, dateOptions) {
4842
5387
  const path = 'maplestory/v1/character/dojang';
4843
- const query = {
4844
- ocid: ocid,
4845
- date: MapleStoryApi.toDateString({
5388
+ const date = dateOptions
5389
+ ? MapleStoryApi.toDateString({
4846
5390
  year: 2023,
4847
5391
  month: 12,
4848
5392
  day: 21,
4849
- }, dateOptions),
5393
+ }, dateOptions)
5394
+ : undefined;
5395
+ const query = {
5396
+ ocid: ocid,
5397
+ date: date,
4850
5398
  };
4851
5399
  const { data } = await this.client.get(path, {
4852
5400
  params: query,
@@ -4857,26 +5405,26 @@ class MapleStoryApi {
4857
5405
  //#region 유니온 정보 조회
4858
5406
  /**
4859
5407
  * 유니온 정보를 조회합니다.
5408
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4860
5409
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4861
- * - 유니온 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5410
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4862
5411
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4863
5412
  *
4864
5413
  * @param ocid 캐릭터 식별자
4865
5414
  * @param dateOptions 조회 기준일 (KST)
4866
5415
  */
4867
- async getUnion(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4868
- hour: 1,
4869
- minute: 0,
4870
- dateOffset: 1,
4871
- })) {
5416
+ async getUnion(ocid, dateOptions) {
4872
5417
  const path = 'maplestory/v1/user/union';
4873
- const query = {
4874
- ocid: ocid,
4875
- date: MapleStoryApi.toDateString({
5418
+ const date = dateOptions
5419
+ ? MapleStoryApi.toDateString({
4876
5420
  year: 2023,
4877
5421
  month: 12,
4878
5422
  day: 21,
4879
- }, dateOptions),
5423
+ }, dateOptions)
5424
+ : undefined;
5425
+ const query = {
5426
+ ocid: ocid,
5427
+ date: date,
4880
5428
  };
4881
5429
  const { data } = await this.client.get(path, {
4882
5430
  params: query,
@@ -4885,26 +5433,26 @@ class MapleStoryApi {
4885
5433
  }
4886
5434
  /**
4887
5435
  * 유니온 공격대 정보를 조회합니다.
5436
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4888
5437
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4889
- * - 유니온 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5438
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4890
5439
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4891
5440
  *
4892
5441
  * @param ocid 캐릭터 식별자
4893
5442
  * @param dateOptions 조회 기준일 (KST)
4894
5443
  */
4895
- async getUnionRaider(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4896
- hour: 1,
4897
- minute: 0,
4898
- dateOffset: 1,
4899
- })) {
5444
+ async getUnionRaider(ocid, dateOptions) {
4900
5445
  const path = 'maplestory/v1/user/union-raider';
4901
- const query = {
4902
- ocid: ocid,
4903
- date: MapleStoryApi.toDateString({
5446
+ const date = dateOptions
5447
+ ? MapleStoryApi.toDateString({
4904
5448
  year: 2023,
4905
5449
  month: 12,
4906
5450
  day: 21,
4907
- }, dateOptions),
5451
+ }, dateOptions)
5452
+ : undefined;
5453
+ const query = {
5454
+ ocid: ocid,
5455
+ date: date,
4908
5456
  };
4909
5457
  const { data } = await this.client.get(path, {
4910
5458
  params: query,
@@ -4913,26 +5461,26 @@ class MapleStoryApi {
4913
5461
  }
4914
5462
  /**
4915
5463
  * 유니온 아티팩트 정보를 조회합니다.
5464
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4916
5465
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4917
- * - 유니온 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.)
5466
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4918
5467
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4919
5468
  *
4920
5469
  * @param ocid 캐릭터 식별자
4921
5470
  * @param dateOptions 조회 기준일 (KST)
4922
5471
  */
4923
- async getUnionArtifact(ocid, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4924
- hour: 1,
4925
- minute: 0,
4926
- dateOffset: 1,
4927
- })) {
5472
+ async getUnionArtifact(ocid, dateOptions) {
4928
5473
  const path = 'maplestory/v1/user/union-artifact';
4929
- const query = {
4930
- ocid: ocid,
4931
- date: MapleStoryApi.toDateString({
5474
+ const date = dateOptions
5475
+ ? MapleStoryApi.toDateString({
4932
5476
  year: 2023,
4933
5477
  month: 12,
4934
5478
  day: 21,
4935
- }, dateOptions),
5479
+ }, dateOptions)
5480
+ : undefined;
5481
+ const query = {
5482
+ ocid: ocid,
5483
+ date: date,
4936
5484
  };
4937
5485
  const { data } = await this.client.get(path, {
4938
5486
  params: query,
@@ -4943,8 +5491,9 @@ class MapleStoryApi {
4943
5491
  //#region 길드 정보 조회
4944
5492
  /**
4945
5493
  * 길드 식별자(oguild_id) 정보를 조회합니다.
5494
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4946
5495
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4947
- * - 길드 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.).
5496
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4948
5497
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4949
5498
  *
4950
5499
  * @param guildName 길드 명
@@ -4962,26 +5511,26 @@ class MapleStoryApi {
4962
5511
  }
4963
5512
  /**
4964
5513
  * 길드 기본 정보를 조회합니다.
5514
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
4965
5515
  * - 2023년 12월 21일 데이터부터 조회할 수 있습니다.
4966
- * - 길드 정보 조회 API는 일자별 데이터로 매일 오전 1시부터 전일 데이터 조회가 가능합니다. (예를 들어, 12월 22일 데이터를 조회하면 22일 00시부터 23일의 00시 사이의 데이터가 조회됩니다.).
5516
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 있습니다. (12월 22일 데이터 조회 시, 22일 00시부터 23 00시 사이 데이터가 조회 됩니다.)
4967
5517
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
4968
5518
  *
4969
5519
  * @param guildId 길드 식별자
4970
5520
  * @param dateOptions 조회 기준일 (KST)
4971
5521
  */
4972
- async getGuildBasic(guildId, dateOptions = MapleStoryApi.getProperDefaultDateOptions({
4973
- hour: 1,
4974
- minute: 0,
4975
- dateOffset: 1,
4976
- })) {
5522
+ async getGuildBasic(guildId, dateOptions) {
4977
5523
  const path = 'maplestory/v1/guild/basic';
4978
- const query = {
4979
- oguild_id: guildId,
4980
- date: MapleStoryApi.toDateString({
5524
+ const date = dateOptions
5525
+ ? MapleStoryApi.toDateString({
4981
5526
  year: 2023,
4982
5527
  month: 12,
4983
5528
  day: 21,
4984
- }, dateOptions),
5529
+ }, dateOptions)
5530
+ : undefined;
5531
+ const query = {
5532
+ oguild_id: guildId,
5533
+ date: date,
4985
5534
  };
4986
5535
  const { data } = await this.client.get(path, {
4987
5536
  params: query,
@@ -4996,7 +5545,7 @@ class MapleStoryApi {
4996
5545
  if (typeof parameter === 'string') {
4997
5546
  query.cursor = parameter;
4998
5547
  }
4999
- else if (typeof parameter === 'object') {
5548
+ else if (typeof parameter === 'object' || parameter === undefined) {
5000
5549
  query.date = MapleStoryApi.toDateString({
5001
5550
  year: 2023,
5002
5551
  month: 12,
@@ -5271,6 +5820,120 @@ class MapleStoryApi {
5271
5820
  return new AchievementRankingResponseDto(data);
5272
5821
  }
5273
5822
  //#endregion
5823
+ //#region 공지 정보 조회
5824
+ /**
5825
+ * 메이플스토리 공지사항에 최근 등록된 게시글 20개를 조회합니다.
5826
+ *
5827
+ * - 공지 정보 API는 데이터 최신화(공지 내용 수정/ 업데이트 고려)를 위해 실시간 조회 또는 최소 일배치 작업을 권장합니다.
5828
+ * - 실시간으로 정보를 제공하지 않는 경우, 신규/수정 공지 내용이 반영되지 않을 수 있으니 서비스 이용 유저에게 홈페이지 공지 사항을 확인하라는 가이드를 제공해주세요.
5829
+ */
5830
+ async getNoticeList() {
5831
+ const path = 'maplestory/v1/notice';
5832
+ const { data } = await this.client.get(path);
5833
+ return new NoticeListDto(data);
5834
+ }
5835
+ /**
5836
+ * 메이플스토리 공지사항 게시글 세부 사항을 조회합니다.
5837
+ *
5838
+ * - 공지 정보 API는 데이터 최신화(공지 내용 수정/ 업데이트 고려)를 위해 실시간 조회 또는 최소 일배치 작업을 권장합니다.
5839
+ * - 실시간으로 정보를 제공하지 않는 경우, 신규/수정 공지 내용이 반영되지 않을 수 있으니 서비스 이용 유저에게 홈페이지 공지 사항을 확인하라는 가이드를 제공해주세요.
5840
+ * @param noticeId 공지 식별자
5841
+ */
5842
+ async getNoticeDetail(noticeId) {
5843
+ const path = 'maplestory/v1/notice/detail';
5844
+ const query = {
5845
+ notice_id: noticeId,
5846
+ };
5847
+ const { data } = await this.client.get(path, {
5848
+ params: query,
5849
+ });
5850
+ return new NoticeDetailDto(data);
5851
+ }
5852
+ /**
5853
+ * 메이플스토리 업데이트에 최근 등록된 게시글 20개를 조회합니다.
5854
+ *
5855
+ * - 공지 정보 API는 데이터 최신화(공지 내용 수정/ 업데이트 고려)를 위해 실시간 조회 또는 최소 일배치 작업을 권장합니다.
5856
+ * - 실시간으로 정보를 제공하지 않는 경우, 신규/수정 공지 내용이 반영되지 않을 수 있으니 서비스 이용 유저에게 홈페이지 공지 사항을 확인하라는 가이드를 제공해주세요.
5857
+ */
5858
+ async getUpdateNoticeList() {
5859
+ const path = 'maplestory/v1/notice-update';
5860
+ const { data } = await this.client.get(path);
5861
+ return new UpdateNoticeListDto(data);
5862
+ }
5863
+ /**
5864
+ * 메이플스토리 업데이트 게시글 세부 사항을 조회합니다.
5865
+ *
5866
+ * - 공지 정보 API는 데이터 최신화(공지 내용 수정/ 업데이트 고려)를 위해 실시간 조회 또는 최소 일배치 작업을 권장합니다.
5867
+ * - 실시간으로 정보를 제공하지 않는 경우, 신규/수정 공지 내용이 반영되지 않을 수 있으니 서비스 이용 유저에게 홈페이지 공지 사항을 확인하라는 가이드를 제공해주세요.
5868
+ * @param noticeId 공지 식별자
5869
+ */
5870
+ async getUpdateNoticeDetail(noticeId) {
5871
+ const path = 'maplestory/v1/notice-update/detail';
5872
+ const query = {
5873
+ notice_id: noticeId,
5874
+ };
5875
+ const { data } = await this.client.get(path, {
5876
+ params: query,
5877
+ });
5878
+ return new UpdateNoticeDetailDto(data);
5879
+ }
5880
+ /**
5881
+ * 메이플스토리 진행 중 이벤트에 최근 등록된 공지사항 20개를 조회합니다.
5882
+ *
5883
+ * - 공지 정보 API는 데이터 최신화(공지 내용 수정/ 업데이트 고려)를 위해 실시간 조회 또는 최소 일배치 작업을 권장합니다.
5884
+ * - 실시간으로 정보를 제공하지 않는 경우, 신규/수정 공지 내용이 반영되지 않을 수 있으니 서비스 이용 유저에게 홈페이지 공지 사항을 확인하라는 가이드를 제공해주세요.
5885
+ */
5886
+ async getEventNoticeList() {
5887
+ const path = 'maplestory/v1/notice-event';
5888
+ const { data } = await this.client.get(path);
5889
+ return new EventNoticeListDto(data);
5890
+ }
5891
+ /**
5892
+ * 메이플스토리 진행 중 이벤트 게시글 세부 사항을 조회합니다.
5893
+ *
5894
+ * - 공지 정보 API는 데이터 최신화(공지 내용 수정/ 업데이트 고려)를 위해 실시간 조회 또는 최소 일배치 작업을 권장합니다.
5895
+ * - 실시간으로 정보를 제공하지 않는 경우, 신규/수정 공지 내용이 반영되지 않을 수 있으니 서비스 이용 유저에게 홈페이지 공지 사항을 확인하라는 가이드를 제공해주세요.
5896
+ * @param noticeId 공지 식별자
5897
+ */
5898
+ async getEventNoticeDetail(noticeId) {
5899
+ const path = 'maplestory/v1/notice-event/detail';
5900
+ const query = {
5901
+ notice_id: noticeId,
5902
+ };
5903
+ const { data } = await this.client.get(path, {
5904
+ params: query,
5905
+ });
5906
+ return new EventNoticeDetailDto(data);
5907
+ }
5908
+ /**
5909
+ * 메이플스토리 캐시샵 공지에 최근 등록된 공지사항 20개를 조회합니다.
5910
+ *
5911
+ * - 공지 정보 API는 데이터 최신화(공지 내용 수정/ 업데이트 고려)를 위해 실시간 조회 또는 최소 일배치 작업을 권장합니다.
5912
+ * - 실시간으로 정보를 제공하지 않는 경우, 신규/수정 공지 내용이 반영되지 않을 수 있으니 서비스 이용 유저에게 홈페이지 공지 사항을 확인하라는 가이드를 제공해주세요.
5913
+ */
5914
+ async getCashshopNoticeList() {
5915
+ const path = 'maplestory/v1/notice-cashshop';
5916
+ const { data } = await this.client.get(path);
5917
+ return new CashshopNoticeListDto(data);
5918
+ }
5919
+ /**
5920
+ * 메이플스토리 캐시샵 공지 게시글 세부 사항을 조회합니다.
5921
+ *
5922
+ * - 공지 정보 API는 데이터 최신화(공지 내용 수정/ 업데이트 고려)를 위해 실시간 조회 또는 최소 일배치 작업을 권장합니다.
5923
+ * - 실시간으로 정보를 제공하지 않는 경우, 신규/수정 공지 내용이 반영되지 않을 수 있으니 서비스 이용 유저에게 홈페이지 공지 사항을 확인하라는 가이드를 제공해주세요.
5924
+ * @param noticeId 공지 식별자
5925
+ */
5926
+ async getCashshopNoticeDetail(noticeId) {
5927
+ const path = 'maplestory/v1/notice-cashshop/detail';
5928
+ const query = {
5929
+ notice_id: noticeId,
5930
+ };
5931
+ const { data } = await this.client.get(path, {
5932
+ params: query,
5933
+ });
5934
+ return new CashshopNoticeDetailDto(data);
5935
+ }
5936
+ //#endregion
5274
5937
  /**
5275
5938
  * 서버 점검 정보를 조회합니다.
5276
5939
  */
@@ -5357,6 +6020,9 @@ class MapleStoryApi {
5357
6020
 
5358
6021
  exports.AchievementRankingDto = AchievementRankingDto;
5359
6022
  exports.AchievementRankingResponseDto = AchievementRankingResponseDto;
6023
+ exports.CashshopNoticeDetailDto = CashshopNoticeDetailDto;
6024
+ exports.CashshopNoticeListDto = CashshopNoticeListDto;
6025
+ exports.CashshopNoticeListItemDto = CashshopNoticeListItemDto;
5360
6026
  exports.CharacterAbilityDto = CharacterAbilityDto;
5361
6027
  exports.CharacterAbilityInfoDto = CharacterAbilityInfoDto;
5362
6028
  exports.CharacterAbilityPresetDto = CharacterAbilityPresetDto;
@@ -5397,6 +6063,9 @@ exports.CharacterItemEquipmentTitleDto = CharacterItemEquipmentTitleDto;
5397
6063
  exports.CharacterItemEquipmentTotalOptionDto = CharacterItemEquipmentTotalOptionDto;
5398
6064
  exports.CharacterLinkSkillDto = CharacterLinkSkillDto;
5399
6065
  exports.CharacterLinkSkillInfoDto = CharacterLinkSkillInfoDto;
6066
+ exports.CharacterListAccountCharacterDto = CharacterListAccountCharacterDto;
6067
+ exports.CharacterListAccountDto = CharacterListAccountDto;
6068
+ exports.CharacterListDto = CharacterListDto;
5400
6069
  exports.CharacterPetEquipmentAutoSkillDto = CharacterPetEquipmentAutoSkillDto;
5401
6070
  exports.CharacterPetEquipmentDto = CharacterPetEquipmentDto;
5402
6071
  exports.CharacterPetEquipmentItemDto = CharacterPetEquipmentItemDto;
@@ -5405,7 +6074,8 @@ exports.CharacterPopularityDto = CharacterPopularityDto;
5405
6074
  exports.CharacterPropensityDto = CharacterPropensityDto;
5406
6075
  exports.CharacterSetEffectDto = CharacterSetEffectDto;
5407
6076
  exports.CharacterSetEffectInfoDto = CharacterSetEffectInfoDto;
5408
- exports.CharacterSetEffectOptionInfoDto = CharacterSetEffectOptionInfoDto;
6077
+ exports.CharacterSetEffectOptionFullDto = CharacterSetEffectOptionFullDto;
6078
+ exports.CharacterSetEffectSetDto = CharacterSetEffectSetDto;
5409
6079
  exports.CharacterSkillDto = CharacterSkillDto;
5410
6080
  exports.CharacterSkillInfoDto = CharacterSkillInfoDto;
5411
6081
  exports.CharacterStatDto = CharacterStatDto;
@@ -5418,6 +6088,9 @@ exports.CubeHistoryResponseDto = CubeHistoryResponseDto;
5418
6088
  exports.CubeResultOptionDto = CubeResultOptionDto;
5419
6089
  exports.DojangRankingDto = DojangRankingDto;
5420
6090
  exports.DojangRankingResponseDto = DojangRankingResponseDto;
6091
+ exports.EventNoticeDetailDto = EventNoticeDetailDto;
6092
+ exports.EventNoticeListDto = EventNoticeListDto;
6093
+ exports.EventNoticeListItemDto = EventNoticeListItemDto;
5421
6094
  exports.GuildBasicDto = GuildBasicDto;
5422
6095
  exports.GuildDto = GuildDto;
5423
6096
  exports.GuildRankingDto = GuildRankingDto;
@@ -5426,6 +6099,9 @@ exports.GuildSkillDto = GuildSkillDto;
5426
6099
  exports.InspectionInfoDto = InspectionInfoDto;
5427
6100
  exports.MapleStoryApi = MapleStoryApi;
5428
6101
  exports.MapleStoryApiError = MapleStoryApiError;
6102
+ exports.NoticeDetailDto = NoticeDetailDto;
6103
+ exports.NoticeListDto = NoticeListDto;
6104
+ exports.NoticeListItemDto = NoticeListItemDto;
5429
6105
  exports.OverallRankingDto = OverallRankingDto;
5430
6106
  exports.OverallRankingResponseDto = OverallRankingResponseDto;
5431
6107
  exports.PotentialHistoryDto = PotentialHistoryDto;
@@ -5445,6 +6121,10 @@ exports.UnionRaiderBlockDto = UnionRaiderBlockDto;
5445
6121
  exports.UnionRaiderBlockPositionDto = UnionRaiderBlockPositionDto;
5446
6122
  exports.UnionRaiderDto = UnionRaiderDto;
5447
6123
  exports.UnionRaiderInnerStatDto = UnionRaiderInnerStatDto;
6124
+ exports.UnionRaiderPresetDto = UnionRaiderPresetDto;
5448
6125
  exports.UnionRankingDto = UnionRankingDto;
5449
6126
  exports.UnionRankingResponseDto = UnionRankingResponseDto;
6127
+ exports.UpdateNoticeDetailDto = UpdateNoticeDetailDto;
6128
+ exports.UpdateNoticeListDto = UpdateNoticeListDto;
6129
+ exports.UpdateNoticeListItemDto = UpdateNoticeListItemDto;
5450
6130
  exports.potentialOptionGradeFromString = potentialOptionGradeFromString;