pds-dev-kit-web-test 2.5.629 → 2.5.630

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 (368) hide show
  1. package/dist/index.d.ts +6 -6
  2. package/dist/index.js +12 -3
  3. package/dist/src/common/assets/icons/fill/Translate.d.ts +4 -0
  4. package/dist/src/common/assets/icons/fill/Translate.js +30 -0
  5. package/dist/src/common/assets/icons/fill/index.d.ts +1 -0
  6. package/dist/src/common/assets/icons/fill/index.js +2 -0
  7. package/dist/src/common/assets/icons/line/Translate.d.ts +4 -0
  8. package/dist/src/common/assets/icons/line/Translate.js +30 -0
  9. package/dist/src/common/assets/icons/line/index.d.ts +1 -0
  10. package/dist/src/common/assets/icons/line/index.js +2 -0
  11. package/dist/src/common/hooks/useParentResizeObserver.d.ts +2 -0
  12. package/dist/src/common/hooks/useParentResizeObserver.js +20 -0
  13. package/dist/src/common/hooks/useResizeObserver.d.ts +3 -0
  14. package/dist/src/common/hooks/useResizeObserver.js +27 -0
  15. package/dist/src/common/hooks/useTooltip.js +1 -1
  16. package/dist/src/common/hooks/useWindowSize.d.ts +4 -0
  17. package/dist/src/common/hooks/useWindowSize.js +22 -0
  18. package/dist/src/common/index.d.ts +1 -1
  19. package/dist/src/common/services/i18n/resources/en.json +61 -1
  20. package/dist/src/common/services/i18n/resources/es.json +61 -1
  21. package/dist/src/common/services/i18n/resources/fil.json +61 -1
  22. package/dist/src/common/services/i18n/resources/index.d.ts +421 -0
  23. package/dist/src/common/services/i18n/resources/ja.json +61 -1
  24. package/dist/src/common/services/i18n/resources/ko.json +62 -1
  25. package/dist/src/common/services/i18n/resources/zh-cn.json +61 -1
  26. package/dist/src/common/services/i18n/resources/zh-tw.json +61 -1
  27. package/dist/src/common/styles/colorSet/PaletteColor_Dark.json +4 -1
  28. package/dist/src/common/styles/colorSet/PaletteColor_light.json +4 -1
  29. package/dist/src/common/styles/colorSet/UIColor.json +5 -1
  30. package/dist/src/common/styles/colorSet/index.d.ts +10 -0
  31. package/dist/src/common/styles/colorSet/ui-type.d.ts +4 -0
  32. package/dist/src/common/styles/scroll/scrollbarStyle.d.ts +2 -0
  33. package/dist/src/common/styles/scroll/scrollbarStyle.js +4 -3
  34. package/dist/src/common/types/components.d.ts +9 -0
  35. package/dist/src/common/types/components.js +8 -0
  36. package/dist/src/common/types/index.d.ts +1 -1
  37. package/dist/src/common/types/index.js +1 -1
  38. package/dist/src/common/types/multilingual.d.ts +16 -0
  39. package/dist/src/common/types/text.d.ts +2 -0
  40. package/dist/src/common/utils/SystemUIPositionGenerator/hoverTypeSystemUICssGenerator.js +1 -1
  41. package/dist/src/common/utils/dateHelper.d.ts +3 -0
  42. package/dist/src/common/utils/dateHelper.js +37 -0
  43. package/dist/src/core/pricing/formatter.d.ts +4 -0
  44. package/dist/src/core/pricing/formatter.js +18 -0
  45. package/dist/src/core/pricing/index.d.ts +2 -0
  46. package/dist/src/core/pricing/index.js +18 -0
  47. package/dist/src/core/pricing/policy.d.ts +26 -0
  48. package/dist/src/core/pricing/policy.js +98 -0
  49. package/dist/src/core/pricing/service.d.ts +62 -0
  50. package/dist/src/core/pricing/service.js +157 -0
  51. package/dist/src/core/pricing/translator.d.ts +27 -0
  52. package/dist/src/core/pricing/translator.js +54 -0
  53. package/dist/src/core/pricing/types.d.ts +19 -0
  54. package/dist/src/core/pricing/types.js +31 -0
  55. package/dist/src/core/pricing/validator.d.ts +29 -0
  56. package/dist/src/core/pricing/validator.js +105 -0
  57. package/dist/src/desktop/common/components/TextFieldBase/TextFieldBase.d.ts +4 -1
  58. package/dist/src/desktop/common/components/TextFieldBase/TextFieldBase.js +32 -23
  59. package/dist/src/desktop/components/AdminList/AdminList.d.ts +10 -1
  60. package/dist/src/desktop/components/AdminList/AdminList.js +16 -18
  61. package/dist/src/desktop/components/AdminList/HeaderRow.d.ts +10 -1
  62. package/dist/src/desktop/components/AdminList/HeaderRow.js +2 -2
  63. package/dist/src/desktop/components/AdminListHeader/AdminListHeader.d.ts +2 -1
  64. package/dist/src/desktop/components/AdminListHeader/AdminListHeader.js +2 -2
  65. package/dist/src/desktop/components/AdminListHeader/HeaderBar.d.ts +2 -1
  66. package/dist/src/desktop/components/AdminListHeader/HeaderBar.js +2 -2
  67. package/dist/src/desktop/components/BasicButtonGroup/BasicButtonGroup.js +1 -1
  68. package/dist/src/desktop/components/BasicFormGroup/BasicFormGroup.d.ts +6 -2
  69. package/dist/src/desktop/components/BasicFormGroup/BasicFormGroup.js +67 -6
  70. package/dist/src/desktop/components/BodyTextGroup/BodyTextGroup.d.ts +6 -1
  71. package/dist/src/desktop/components/BodyTextGroup/BodyTextGroup.js +70 -2
  72. package/dist/src/desktop/components/BoxItem/BoxItem.d.ts +67 -0
  73. package/dist/src/desktop/components/BoxItem/BoxItem.js +107 -0
  74. package/dist/src/desktop/components/BoxItem/LeftBox/Checkbox.d.ts +7 -0
  75. package/dist/src/desktop/components/BoxItem/LeftBox/Checkbox.js +9 -0
  76. package/dist/src/desktop/components/BoxItem/LeftBox/Image.d.ts +11 -0
  77. package/dist/src/desktop/components/BoxItem/LeftBox/Image.js +9 -0
  78. package/dist/src/desktop/components/BoxItem/LeftBox/LeftBox.d.ts +11 -0
  79. package/dist/src/desktop/components/BoxItem/LeftBox/LeftBox.js +36 -0
  80. package/dist/src/desktop/components/BoxItem/LeftBox/index.d.ts +2 -0
  81. package/dist/src/{sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner → desktop/components/BoxItem/LeftBox}/index.js +3 -3
  82. package/dist/src/desktop/components/BoxItem/index.d.ts +1 -0
  83. package/dist/src/desktop/components/BoxItem/index.js +8 -0
  84. package/dist/src/desktop/components/Calendar/AllDaySchedulesSection.d.ts +12 -0
  85. package/dist/src/desktop/components/Calendar/AllDaySchedulesSection.js +134 -0
  86. package/dist/src/desktop/components/Calendar/Calendar.d.ts +4 -0
  87. package/dist/src/desktop/components/Calendar/Calendar.js +399 -0
  88. package/dist/src/desktop/components/Calendar/CalendarContext.d.ts +51 -0
  89. package/dist/src/desktop/components/Calendar/CalendarContext.js +76 -0
  90. package/dist/src/desktop/components/Calendar/CurrentTimeIndicator.d.ts +7 -0
  91. package/dist/src/desktop/components/Calendar/CurrentTimeIndicator.js +48 -0
  92. package/dist/src/desktop/components/Calendar/DailyView.d.ts +2 -0
  93. package/dist/src/desktop/components/Calendar/DailyView.js +91 -0
  94. package/dist/src/desktop/components/Calendar/MonthlyView.d.ts +28 -0
  95. package/dist/src/desktop/components/Calendar/MonthlyView.js +419 -0
  96. package/dist/src/desktop/components/Calendar/MultiWeekSchedulesLayer.d.ts +21 -0
  97. package/dist/src/desktop/components/Calendar/MultiWeekSchedulesLayer.js +186 -0
  98. package/dist/src/desktop/components/Calendar/ScheduleItem.d.ts +25 -0
  99. package/dist/src/desktop/components/Calendar/ScheduleItem.js +56 -0
  100. package/dist/src/desktop/components/Calendar/TimeBasedScheduleItem.d.ts +12 -0
  101. package/dist/src/desktop/components/Calendar/TimeBasedScheduleItem.js +184 -0
  102. package/dist/src/desktop/components/Calendar/WeeklyView.d.ts +6 -0
  103. package/dist/src/desktop/components/Calendar/WeeklyView.js +114 -0
  104. package/dist/src/desktop/components/Calendar/YearlyView.d.ts +13 -0
  105. package/dist/src/desktop/components/Calendar/YearlyView.js +76 -0
  106. package/dist/src/desktop/components/Calendar/calendarUtils.d.ts +24 -0
  107. package/dist/src/desktop/components/Calendar/calendarUtils.js +87 -0
  108. package/dist/src/desktop/components/Calendar/constants.d.ts +1 -0
  109. package/dist/src/desktop/components/Calendar/constants.js +31 -0
  110. package/dist/src/desktop/components/Calendar/index.d.ts +14 -0
  111. package/dist/src/desktop/components/Calendar/index.js +42 -0
  112. package/dist/src/desktop/components/Calendar/timeFormatUtils.d.ts +18 -0
  113. package/dist/src/desktop/components/Calendar/timeFormatUtils.js +59 -0
  114. package/dist/src/desktop/components/Calendar/types.d.ts +61 -0
  115. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubbleListItem.d.ts +2 -3
  116. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubbleListItem.js +3 -8
  117. package/dist/src/desktop/components/ChatList/Body.d.ts +1 -1
  118. package/dist/src/desktop/components/PriceTextField/PriceTextField.d.ts +43 -0
  119. package/dist/src/desktop/components/PriceTextField/PriceTextField.js +604 -0
  120. package/dist/src/desktop/components/PriceTextField/index.d.ts +1 -0
  121. package/dist/src/desktop/components/PriceTextField/index.js +8 -0
  122. package/dist/src/desktop/components/PriceTextLabel/PriceTextLabel.d.ts +14 -0
  123. package/dist/src/desktop/components/PriceTextLabel/PriceTextLabel.js +47 -0
  124. package/dist/src/desktop/components/PriceTextLabel/index.d.ts +1 -0
  125. package/dist/src/desktop/components/PriceTextLabel/index.js +8 -0
  126. package/dist/src/desktop/components/Snackbar/Snackbar.d.ts +17 -0
  127. package/dist/src/desktop/components/Snackbar/Snackbar.js +221 -0
  128. package/dist/src/desktop/components/Snackbar/index.d.ts +1 -0
  129. package/dist/src/desktop/components/Snackbar/index.js +8 -0
  130. package/dist/src/desktop/components/Snackbar/provider.d.ts +11 -0
  131. package/dist/src/desktop/components/Snackbar/provider.js +43 -0
  132. package/dist/src/desktop/components/TextButton/TextButton.d.ts +6 -3
  133. package/dist/src/desktop/components/TextButton/TextButton.js +67 -40
  134. package/dist/src/desktop/components/TextField/TextField.d.ts +2 -1
  135. package/dist/src/desktop/components/TextField/TextField.js +7 -7
  136. package/dist/src/desktop/components/TextLabel/TextLabel.d.ts +3 -3
  137. package/dist/src/desktop/components/UploadTextButton/UploadTextButton.d.ts +1 -1
  138. package/dist/src/desktop/components/UploadTextButton/UploadTextButton.js +56 -39
  139. package/dist/src/desktop/components/index.d.ts +6 -1
  140. package/dist/src/desktop/components/index.js +12 -1
  141. package/dist/src/desktop/index.d.ts +1 -1
  142. package/dist/src/desktop/index.js +7 -2
  143. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFA.js +1 -1
  144. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFB.js +1 -1
  145. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFE.js +1 -1
  146. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFL.js +8 -5
  147. package/dist/src/desktop/panels/DesktopBasicModal/DesktopBasicModal.d.ts +2 -1
  148. package/dist/src/desktop/panels/DesktopBasicModal/DesktopBasicModal.js +13 -15
  149. package/dist/src/desktop/panels/DesktopBasicModalWithTab/DesktopBasicModalWithTab.d.ts +3 -1
  150. package/dist/src/desktop/panels/DesktopBasicModalWithTab/DesktopBasicModalWithTab.js +12 -6
  151. package/dist/src/desktop/panels/DesktopHeadlessModal/DesktopHeadlessModal.d.ts +19 -3
  152. package/dist/src/desktop/panels/DesktopHeadlessModal/DesktopHeadlessModal.js +42 -31
  153. package/dist/src/desktop/panels/DesktopTutorialModal/DesktopTutorialModal.d.ts +3 -1
  154. package/dist/src/desktop/panels/DesktopTutorialModal/DesktopTutorialModal.js +11 -5
  155. package/dist/src/desktop/panels/MultilingualModal/MultilingualModal.d.ts +13 -0
  156. package/dist/src/desktop/panels/MultilingualModal/MultilingualModal.js +206 -0
  157. package/dist/src/desktop/panels/MultilingualModal/index.d.ts +1 -0
  158. package/dist/src/{sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList → desktop/panels/MultilingualModal}/index.js +3 -3
  159. package/dist/src/desktop/panels/index.d.ts +2 -1
  160. package/dist/src/desktop/panels/index.js +6 -1
  161. package/dist/src/hybrid/components/Divider/Divider.d.ts +3 -1
  162. package/dist/src/hybrid/components/Divider/Divider.js +9 -7
  163. package/dist/src/mobile/common/components/TextFieldBase/TextFieldBase.d.ts +3 -1
  164. package/dist/src/mobile/common/components/TextFieldBase/TextFieldBase.js +26 -22
  165. package/dist/src/mobile/components/BoxItem/BoxItem.d.ts +67 -0
  166. package/dist/src/mobile/components/BoxItem/BoxItem.js +106 -0
  167. package/dist/src/mobile/components/BoxItem/LeftBox/Checkbox.d.ts +7 -0
  168. package/dist/src/mobile/components/BoxItem/LeftBox/Checkbox.js +9 -0
  169. package/dist/src/mobile/components/BoxItem/LeftBox/Image.d.ts +11 -0
  170. package/dist/src/mobile/components/BoxItem/LeftBox/Image.js +9 -0
  171. package/dist/src/mobile/components/BoxItem/LeftBox/LeftBox.d.ts +11 -0
  172. package/dist/src/mobile/components/BoxItem/LeftBox/LeftBox.js +36 -0
  173. package/dist/src/mobile/components/BoxItem/LeftBox/index.d.ts +2 -0
  174. package/dist/src/mobile/components/BoxItem/LeftBox/index.js +8 -0
  175. package/dist/src/mobile/components/BoxItem/index.d.ts +1 -0
  176. package/dist/src/mobile/components/BoxItem/index.js +8 -0
  177. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubbleListItem.d.ts +2 -3
  178. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubbleListItem.js +3 -8
  179. package/dist/src/mobile/components/ChatList/Body.d.ts +1 -1
  180. package/dist/src/mobile/components/PriceTextField/PriceTextField.d.ts +42 -0
  181. package/dist/src/mobile/components/PriceTextField/PriceTextField.js +591 -0
  182. package/dist/src/mobile/components/PriceTextField/index.d.ts +1 -0
  183. package/dist/src/mobile/components/PriceTextField/index.js +8 -0
  184. package/dist/src/mobile/components/PriceTextLabel/PriceTextLabel.d.ts +14 -0
  185. package/dist/src/mobile/components/PriceTextLabel/PriceTextLabel.js +47 -0
  186. package/dist/src/mobile/components/PriceTextLabel/index.d.ts +1 -0
  187. package/dist/src/mobile/components/PriceTextLabel/index.js +8 -0
  188. package/dist/src/mobile/components/Snackbar/Snackbar.d.ts +17 -0
  189. package/dist/src/mobile/components/Snackbar/Snackbar.js +221 -0
  190. package/dist/src/mobile/components/Snackbar/index.d.ts +1 -0
  191. package/dist/src/mobile/components/Snackbar/index.js +8 -0
  192. package/dist/src/mobile/components/Snackbar/provider.d.ts +11 -0
  193. package/dist/src/mobile/components/Snackbar/provider.js +43 -0
  194. package/dist/src/mobile/components/TextButton/TextButton.d.ts +6 -3
  195. package/dist/src/mobile/components/TextButton/TextButton.js +55 -31
  196. package/dist/src/mobile/components/TextField/TextField.d.ts +2 -1
  197. package/dist/src/mobile/components/TextField/TextField.js +7 -7
  198. package/dist/src/mobile/components/TextLabel/TextLabel.d.ts +3 -3
  199. package/dist/src/mobile/components/UploadTextButton/UploadTextButton.d.ts +1 -1
  200. package/dist/src/mobile/components/UploadTextButton/UploadTextButton.js +44 -30
  201. package/dist/src/mobile/components/index.d.ts +5 -1
  202. package/dist/src/mobile/components/index.js +9 -1
  203. package/dist/src/mobile/index.d.ts +1 -1
  204. package/dist/src/mobile/index.js +6 -2
  205. package/dist/src/mobile/panels/MobileBasicModal/MobileBasicModal.d.ts +3 -1
  206. package/dist/src/mobile/panels/MobileBasicModal/MobileBasicModal.js +10 -3
  207. package/dist/src/sub/AdminList/AdminList/AdminList.d.ts +10 -1
  208. package/dist/src/sub/AdminList/AdminList/AdminList.js +19 -18
  209. package/dist/src/sub/AdminList/AdminList/HeaderRow.d.ts +10 -1
  210. package/dist/src/sub/AdminList/AdminList/HeaderRow.js +2 -2
  211. package/dist/src/sub/DynamicLayout/CompositionRenderer/ComponentBlockMatcher.js +1 -4
  212. package/dist/src/sub/DynamicLayout/CompositionRenderer/Composition.d.ts +3 -5
  213. package/dist/src/sub/DynamicLayout/CompositionRenderer/Composition.js +54 -54
  214. package/dist/src/sub/DynamicLayout/CompositionRenderer/CompositionRenderer.d.ts +6 -0
  215. package/dist/src/sub/DynamicLayout/CompositionRenderer/CompositionRenderer.js +27 -0
  216. package/dist/src/sub/DynamicLayout/DynamicLayout.d.ts +1 -1
  217. package/dist/src/sub/DynamicLayout/DynamicLayout.js +2 -4
  218. package/dist/src/sub/DynamicLayout/components/Section/components/CustomSectionBackgroundMedia.js +2 -24
  219. package/dist/src/sub/DynamicLayout/components/Section/sectionContext.d.ts +2 -2
  220. package/dist/src/sub/DynamicLayout/components/Section/util/parseSectionBackgroundMediaData.js +1 -3
  221. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/index.d.ts +0 -40
  222. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/index.js +177 -36
  223. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/PaletteColor_Dark.json +4 -152
  224. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/PaletteColor_light.json +2 -150
  225. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/SemanticColor.json +1 -45
  226. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/UIColor.json +9 -262
  227. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/index.d.ts +0 -593
  228. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/ui-type.d.ts +0 -253
  229. package/dist/src/sub/DynamicLayout/components/pdsOriginal/desktop/IconButton/IconButton.d.ts +1 -3
  230. package/dist/src/sub/DynamicLayout/components/pdsOriginal/desktop/IconButton/IconButton.js +3 -5
  231. package/dist/src/sub/DynamicLayout/components/pdsOriginal/hybrid/Icon/Icon.d.ts +1 -2
  232. package/dist/src/sub/DynamicLayout/components/pdsOriginal/hybrid/Icon/Icon.js +2 -9
  233. package/dist/src/sub/DynamicLayout/mock_video_cb.d.ts +1 -0
  234. package/dist/src/sub/DynamicLayout/mock_video_cb.js +5 -4
  235. package/dist/src/sub/DynamicLayout/mocks.d.ts +961 -8
  236. package/dist/src/sub/DynamicLayout/mocks.js +4239 -55
  237. package/dist/src/sub/DynamicLayout/sectionActionTypes.d.ts +4 -4
  238. package/dist/src/sub/DynamicLayout/sections/CustomSection/CustomSection.d.ts +1 -1
  239. package/dist/src/sub/DynamicLayout/sections/CustomSection/CustomSection.js +7 -7
  240. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/ComponentBlockMatcher.js +3 -13
  241. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Button/Button.js +2 -18
  242. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.d.ts +4 -10
  243. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.js +3 -140
  244. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Image/Image.js +3 -39
  245. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.js +8 -49
  246. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/VideoPlayer/VideoPlayer.js +28 -3
  247. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/VideoPlayer/helper.d.ts +1 -0
  248. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/VideoPlayer/helper.js +15 -5
  249. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/types.d.ts +3 -55
  250. package/dist/src/sub/DynamicLayout/sections/CustomSection/newUtils/group.d.ts +1 -1
  251. package/dist/src/sub/DynamicLayout/sections/CustomSection/newUtils/replaceUndefinedValues.js +1 -1
  252. package/dist/src/sub/DynamicLayout/sections/CustomSection/types.d.ts +10 -27
  253. package/dist/src/sub/DynamicLayout/sections/CustomSection/types.js +1 -3
  254. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/effectPropParsers/parseEffectPropEntAnim.d.ts +4 -4
  255. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/layoutPropParsers/parseLayoutPropPadding.d.ts +2 -2
  256. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseJsonProperties.d.ts +2 -2
  257. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parsePlacement.d.ts +2 -7
  258. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parsePlacement.js +5 -16
  259. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseProperties.d.ts +2 -2
  260. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/stylePropParsers/parseStylePropTextSpec.js +0 -2
  261. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/types.d.ts +3 -53
  262. package/dist/src/sub/DynamicLayout/sections/FlexGridCustomSection.d.ts +1 -1
  263. package/dist/src/sub/DynamicLayout/sections/FlexGridCustomSection.js +0 -1
  264. package/dist/src/sub/DynamicLayout/types.d.ts +17 -64
  265. package/package.json +2 -3
  266. package/release-note.md +2 -2
  267. package/dist/src/common/types/form.d.ts +0 -9
  268. package/dist/src/common/types/form.js +0 -10
  269. package/dist/src/sub/DynamicLayout/CompositionEditor/CompositionEditor.d.ts +0 -22
  270. package/dist/src/sub/DynamicLayout/CompositionEditor/CompositionEditor.js +0 -1134
  271. package/dist/src/sub/DynamicLayout/CompositionRenderer/CompositionBackground.d.ts +0 -11
  272. package/dist/src/sub/DynamicLayout/CompositionRenderer/CompositionBackground.js +0 -45
  273. package/dist/src/sub/DynamicLayout/CompositionRenderer/createCompositions.d.ts +0 -10
  274. package/dist/src/sub/DynamicLayout/CompositionRenderer/createCompositions.js +0 -79
  275. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/downIcons.d.ts +0 -12
  276. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/downIcons.js +0 -76
  277. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/index.d.ts +0 -4
  278. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/index.js +0 -47
  279. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/leftIcons.d.ts +0 -12
  280. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/leftIcons.js +0 -76
  281. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/rightIcons.d.ts +0 -12
  282. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/rightIcons.js +0 -76
  283. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/upIcons.d.ts +0 -12
  284. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/upIcons.js +0 -76
  285. package/dist/src/sub/DynamicLayout/compositionActionTypes.d.ts +0 -139
  286. package/dist/src/sub/DynamicLayout/compositionQueryContext.d.ts +0 -8
  287. package/dist/src/sub/DynamicLayout/compositionQueryContext.js +0 -14
  288. package/dist/src/sub/DynamicLayout/mock_componentBlocks.d.ts +0 -911
  289. package/dist/src/sub/DynamicLayout/mock_componentBlocks.js +0 -4238
  290. package/dist/src/sub/DynamicLayout/mock_composition.d.ts +0 -3
  291. package/dist/src/sub/DynamicLayout/mock_composition.js +0 -1607
  292. package/dist/src/sub/DynamicLayout/mock_contentsCarousel.d.ts +0 -1
  293. package/dist/src/sub/DynamicLayout/mock_contentsCarousel.js +0 -1111
  294. package/dist/src/sub/DynamicLayout/mock_contentsList.d.ts +0 -1
  295. package/dist/src/sub/DynamicLayout/mock_contentsList.js +0 -1091
  296. package/dist/src/sub/DynamicLayout/mock_queryData.d.ts +0 -96
  297. package/dist/src/sub/DynamicLayout/mock_queryData.js +0 -2639
  298. package/dist/src/sub/DynamicLayout/mock_slideBanner.d.ts +0 -842
  299. package/dist/src/sub/DynamicLayout/mock_slideBanner.js +0 -854
  300. package/dist/src/sub/DynamicLayout/mock_video.d.ts +0 -368
  301. package/dist/src/sub/DynamicLayout/mock_video.js +0 -371
  302. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarouselCore.d.ts +0 -12
  303. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarouselCore.js +0 -61
  304. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomNavigationNextBtn.d.ts +0 -15
  305. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomNavigationNextBtn.js +0 -69
  306. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomNavigationPrevBtn.d.ts +0 -15
  307. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomNavigationPrevBtn.js +0 -69
  308. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomProgressbar.d.ts +0 -9
  309. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomProgressbar.js +0 -87
  310. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/navigationConfigs.d.ts +0 -4
  311. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/navigationConfigs.js +0 -849
  312. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/progressConfigs.d.ts +0 -43
  313. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/progressConfigs.js +0 -162
  314. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/contentsCarouselUtils.d.ts +0 -39
  315. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/contentsCarouselUtils.js +0 -182
  316. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useFlexGridLayout.d.ts +0 -18
  317. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useFlexGridLayout.js +0 -229
  318. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useSwiper.d.ts +0 -14
  319. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useSwiper.js +0 -46
  320. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/index.d.ts +0 -1
  321. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/index.js +0 -8
  322. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/types.d.ts +0 -139
  323. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.d.ts +0 -14
  324. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.js +0 -214
  325. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsListCore.d.ts +0 -17
  326. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsListCore.js +0 -39
  327. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/CustomPagination.d.ts +0 -10
  328. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/CustomPagination.js +0 -85
  329. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/paginationConfigs.d.ts +0 -25
  330. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/paginationConfigs.js +0 -183
  331. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/contentsListUtils.d.ts +0 -29
  332. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/contentsListUtils.js +0 -130
  333. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/hooks/useFlexGridLayout.d.ts +0 -18
  334. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/hooks/useFlexGridLayout.js +0 -229
  335. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/index.d.ts +0 -1
  336. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/types.d.ts +0 -67
  337. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/types.js +0 -2
  338. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.d.ts +0 -14
  339. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.js +0 -151
  340. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBannerCore.d.ts +0 -12
  341. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBannerCore.js +0 -39
  342. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomNavigationNextBtn.d.ts +0 -15
  343. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomNavigationNextBtn.js +0 -69
  344. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomNavigationPrevBtn.d.ts +0 -15
  345. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomNavigationPrevBtn.js +0 -69
  346. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomPagination.d.ts +0 -20
  347. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomPagination.js +0 -173
  348. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomProgressbar.d.ts +0 -9
  349. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomProgressbar.js +0 -87
  350. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/navigationConfigs.d.ts +0 -4
  351. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/navigationConfigs.js +0 -849
  352. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/progressConfigs.d.ts +0 -43
  353. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/progressConfigs.js +0 -162
  354. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useFlexGridLayout.d.ts +0 -18
  355. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useFlexGridLayout.js +0 -229
  356. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useSwiper.d.ts +0 -16
  357. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useSwiper.js +0 -63
  358. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/index.d.ts +0 -1
  359. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/slideBannerUtils.d.ts +0 -46
  360. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/slideBannerUtils.js +0 -186
  361. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/types.d.ts +0 -163
  362. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/types.js +0 -2
  363. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/textSpecFormatOptions.d.ts +0 -7
  364. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/textSpecFormatOptions.js +0 -211
  365. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseCompositionPlacement.d.ts +0 -14
  366. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseCompositionPlacement.js +0 -26
  367. /package/dist/src/{sub/DynamicLayout/compositionActionTypes.js → common/types/multilingual.js} +0 -0
  368. /package/dist/src/{sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel → desktop/components/Calendar}/types.js +0 -0
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
18
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
19
+ if (ar || !(i in from)) {
20
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
21
+ ar[i] = from[i];
22
+ }
23
+ }
24
+ return to.concat(ar || Array.prototype.slice.call(from));
25
+ };
26
+ var __importDefault = (this && this.__importDefault) || function (mod) {
27
+ return (mod && mod.__esModule) ? mod : { "default": mod };
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.MultiWeekSchedulesLayer = void 0;
31
+ var jsx_runtime_1 = require("react/jsx-runtime");
32
+ var react_1 = require("react");
33
+ var useParentResizeObserver_1 = require("../../../common/hooks/useParentResizeObserver");
34
+ var useWindowSize_1 = require("../../../common/hooks/useWindowSize");
35
+ var styled_components_1 = __importDefault(require("styled-components"));
36
+ var TextLabel_1 = require("../TextLabel");
37
+ var ScheduleItem_1 = require("./ScheduleItem");
38
+ var MultiWeekSchedulesLayer = function (_a) {
39
+ var multiWeekSchedules = _a.multiWeekSchedules, selectedSchedules = _a.selectedSchedules, handleScheduleClick = _a.handleScheduleClick, handleScheduleDragStart = _a.handleScheduleDragStart, handleScheduleDragEnd = _a.handleScheduleDragEnd, _b = _a.isDraggable, isDraggable = _b === void 0 ? false : _b, _c = _a.maxSchedulesPerDay, maxSchedulesPerDay = _c === void 0 ? 3 : _c;
40
+ var containerRef = (0, react_1.useRef)(null);
41
+ var _d = (0, react_1.useState)([]), cellPositions = _d[0], setCellPositions = _d[1];
42
+ var _e = (0, react_1.useState)([]), hiddenSchedules = _e[0], setHiddenSchedules = _e[1];
43
+ var height = (0, useWindowSize_1.useWindowSize)().height;
44
+ // 캘린더 셀들의 실제 위치를 계산하는 함수
45
+ var calculateCellPositions = (0, react_1.useCallback)(function () {
46
+ if (!containerRef.current)
47
+ return;
48
+ var gridContainer = containerRef.current.parentElement;
49
+ if (!gridContainer)
50
+ return;
51
+ // 헤더를 제외한 캘린더 셀들을 찾기
52
+ var calendarCells = gridContainer.querySelectorAll('[data-calendar-cell]');
53
+ var positions = [];
54
+ // 각 주(row)의 위치 정보 수집
55
+ for (var row = 0; row < 6; row += 1) {
56
+ var cellIndex = row * 7; // 각 주의 첫 번째 셀
57
+ var cell = calendarCells[cellIndex];
58
+ if (cell) {
59
+ var cellRect = cell.getBoundingClientRect();
60
+ var containerRect = gridContainer.getBoundingClientRect();
61
+ var relativeTop = cellRect.top - containerRect.top;
62
+ var dateLabelHeight = 24; // 날짜 라벨 대략 높이
63
+ positions.push({
64
+ top: relativeTop + dateLabelHeight,
65
+ height: cellRect.height - dateLabelHeight
66
+ });
67
+ }
68
+ else {
69
+ // 기본값 설정 (fallback)
70
+ positions.push({
71
+ top: 60 + row * 120,
72
+ height: 96
73
+ });
74
+ }
75
+ }
76
+ setCellPositions(positions);
77
+ }, []);
78
+ // ResizeObserver로 크기 변경 감지
79
+ (0, useParentResizeObserver_1.useParentResizeObserver)(containerRef, calculateCellPositions, 100);
80
+ // 창 크기 변경 시 재계산
81
+ (0, react_1.useLayoutEffect)(function () {
82
+ calculateCellPositions();
83
+ }, [height, calculateCellPositions]);
84
+ (0, react_1.useEffect)(function () {
85
+ // 각 row별로 스케줄 개수와 높이 제한 확인
86
+ var schedulesByRow = {};
87
+ multiWeekSchedules.forEach(function (scheduleInfo) {
88
+ var startRow = scheduleInfo.startRow, endRow = scheduleInfo.endRow;
89
+ for (var row = startRow; row <= endRow; row += 1) {
90
+ if (!schedulesByRow[row]) {
91
+ schedulesByRow[row] = [];
92
+ }
93
+ schedulesByRow[row].push(scheduleInfo);
94
+ }
95
+ });
96
+ // 각 row(주)에서 높이 제한 확인 (실제로 보이는 줄 수와 전체 스케줄 수 모두 출력)
97
+ Object.keys(schedulesByRow).forEach(function (rowStr) {
98
+ var row = parseInt(rowStr, 10);
99
+ var schedules = schedulesByRow[row];
100
+ var rowSchedules = __spreadArray([], schedules, true);
101
+ if (rowSchedules.length > maxSchedulesPerDay) {
102
+ // row(주)를 날짜로 변환 (row 2가 첫 번째 주, row 3이 두 번째 주...)
103
+ var weekIndex = row - 2; // 헤더 제외
104
+ var today = new Date();
105
+ var startOfWeek = new Date(today);
106
+ startOfWeek.setDate(today.getDate() - today.getDay()); // 이번 주 일요일
107
+ var weekStart = new Date(startOfWeek);
108
+ weekStart.setDate(startOfWeek.getDate() + weekIndex * 7);
109
+ var weekEnd = new Date(weekStart);
110
+ weekEnd.setDate(weekStart.getDate() + 6);
111
+ // 최대 스케줄 개수를 초과하는 스케줄은 숨김 처리 (scheduleIndex기준, 0부터 시작)
112
+ setHiddenSchedules(__spreadArray([], rowSchedules, true).filter(function (rowSchedule) { return rowSchedule.scheduleIndex > maxSchedulesPerDay - 1; })
113
+ .map(function (s) { return s.schedule.id.toString(); }));
114
+ }
115
+ });
116
+ }, [maxSchedulesPerDay]);
117
+ // 드래그 시작 핸들러를 함수로 분리
118
+ var handleDragStart = function (schedule, e) {
119
+ if (handleScheduleDragStart) {
120
+ handleScheduleDragStart(schedule, e);
121
+ }
122
+ };
123
+ return ((0, jsx_runtime_1.jsx)(S_Layer, __assign({ ref: containerRef }, { children: multiWeekSchedules
124
+ .filter(function (s) { return !hiddenSchedules.includes(s.schedule.id.toString()); })
125
+ .map(function (_a) {
126
+ var schedule = _a.schedule, startRow = _a.startRow, endRow = _a.endRow, startCol = _a.startCol, endCol = _a.endCol, scheduleIndex = _a.scheduleIndex;
127
+ var isSameRow = startRow === endRow;
128
+ var isSelected = selectedSchedules.some(function (s) { return s.id === schedule.id; });
129
+ var uniqueKey = "multi-".concat(schedule.id, "-").concat(startRow, "-").concat(startCol, "-").concat(endCol);
130
+ if (isSameRow) {
131
+ return ((0, jsx_runtime_1.jsxs)(S_MultiWeekSchedule, __assign({ "$color": schedule.color, "$startRow": startRow, "$endRow": endRow, "$startCol": startCol, "$endCol": endCol, "$scheduleIndex": scheduleIndex, "$isSelected": isSelected, "$isDraggable": isDraggable, "$cellPositions": cellPositions, draggable: isDraggable, onDragStart: isDraggable ? function (e) { return handleDragStart(schedule, e); } : undefined, onDragEnd: isDraggable ? handleScheduleDragEnd : undefined, onClick: function (e) {
132
+ e.stopPropagation();
133
+ handleScheduleClick === null || handleScheduleClick === void 0 ? void 0 : handleScheduleClick(schedule, e);
134
+ } }, { children: [(0, jsx_runtime_1.jsx)(ScheduleItem_1.S_Dot, { "$isSelected": isSelected }), (0, jsx_runtime_1.jsx)(TextLabel_1.TextLabel, { styleTheme: "caption2Bold", text: schedule.title, ellipsisMode: "use", colorTheme: isSelected ? 'sysTextWhite' : undefined })] }), uniqueKey));
135
+ }
136
+ // 여러 행에 걸친 이벤트 처리
137
+ var segments = [];
138
+ for (var row = startRow; row <= endRow; row += 1) {
139
+ var isFirstRow = row === startRow;
140
+ var isLastRow = row === endRow;
141
+ var segmentStartCol = isFirstRow ? startCol : 1;
142
+ var segmentEndCol = isLastRow ? endCol : 7;
143
+ segments.push((0, jsx_runtime_1.jsxs)(S_MultiWeekSchedule, __assign({ "$color": schedule.color, "$startRow": row, "$endRow": row, "$startCol": segmentStartCol, "$endCol": segmentEndCol, "$scheduleIndex": scheduleIndex, "$isSelected": isSelected, "$isDraggable": isDraggable, "$cellPositions": cellPositions, draggable: isDraggable, onDragStart: isDraggable
144
+ ? function (e) {
145
+ handleScheduleDragStart === null || handleScheduleDragStart === void 0 ? void 0 : handleScheduleDragStart(schedule, e);
146
+ }
147
+ : undefined, onDragEnd: isDraggable ? handleScheduleDragEnd : undefined, onClick: function (e) {
148
+ e.stopPropagation();
149
+ handleScheduleClick === null || handleScheduleClick === void 0 ? void 0 : handleScheduleClick(schedule, e);
150
+ } }, { children: [(0, jsx_runtime_1.jsx)(ScheduleItem_1.S_Dot, { "$isSelected": isSelected }), (0, jsx_runtime_1.jsx)(TextLabel_1.TextLabel, { styleTheme: "caption2Regular", text: schedule.title, ellipsisMode: "use", colorTheme: isSelected ? 'sysTextWhite' : undefined })] }), "".concat(uniqueKey, "-row-").concat(row)));
151
+ }
152
+ return segments;
153
+ }) })));
154
+ };
155
+ exports.MultiWeekSchedulesLayer = MultiWeekSchedulesLayer;
156
+ var S_Layer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n height: 100%;\n left: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 10;\n\n & > * {\n pointer-events: auto;\n }\n"], ["\n height: 100%;\n left: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 10;\n\n & > * {\n pointer-events: auto;\n }\n"])));
157
+ var S_MultiWeekSchedule = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n align-items: center;\n background-color: ", ";\n border-radius: 4px;\n color: white;\n cursor: ", ";\n display: flex;\n font-size: 12px;\n height: 17px;\n left: ", ";\n padding: 2px 6px;\n position: absolute;\n top: ", ";\n user-select: none;\n width: ", ";\n z-index: 10;\n\n &:active {\n background: ", ";\n cursor: ", ";\n }\n"], ["\n align-items: center;\n background-color: ", ";\n border-radius: 4px;\n color: white;\n cursor: ", ";\n display: flex;\n font-size: 12px;\n height: 17px;\n left: ", ";\n padding: 2px 6px;\n position: absolute;\n top: ", ";\n user-select: none;\n width: ", ";\n z-index: 10;\n\n &:active {\n background: ", ";\n cursor: ", ";\n }\n"])), function (props) {
158
+ return props.$isSelected ? props.theme.ui_cpnt_sheet_base_06 : props.theme.ui_cpnt_sheet_base;
159
+ }, function (_a) {
160
+ var $isDraggable = _a.$isDraggable;
161
+ return ($isDraggable ? 'grab' : 'normal');
162
+ }, function (props) { return "calc((".concat(props.$startCol - 1, ") * (100% / 7) + 4px)"); }, function (props) {
163
+ var $startRow = props.$startRow, $scheduleIndex = props.$scheduleIndex, $cellPositions = props.$cellPositions;
164
+ var rowIndex = $startRow - 2; // 헤더 행 제외 (첫 번째 캘린더 행이 row 2)
165
+ if (!$cellPositions ||
166
+ $cellPositions.length === 0 ||
167
+ rowIndex < 0 ||
168
+ rowIndex >= $cellPositions.length) {
169
+ // 기본값 (fallback)
170
+ var defaultTop = 60 + rowIndex * 100;
171
+ var scheduleSpacing_1 = ($scheduleIndex || 0) * 19;
172
+ return "".concat(defaultTop + scheduleSpacing_1, "px");
173
+ }
174
+ var cellPosition = $cellPositions[rowIndex];
175
+ var scheduleHeight = 16;
176
+ var scheduleSpacing = ($scheduleIndex || 0) * (scheduleHeight + 7);
177
+ var calculatedTop = cellPosition.top + scheduleSpacing;
178
+ return "".concat(calculatedTop, "px");
179
+ }, function (props) { return "calc((".concat(props.$endCol - props.$startCol + 1, ") * (100% / 7) - 21px)"); }, function (_a) {
180
+ var theme = _a.theme;
181
+ return theme.ui_cpnt_sheet_base_06;
182
+ }, function (_a) {
183
+ var $isDraggable = _a.$isDraggable;
184
+ return ($isDraggable ? 'grabbing' : 'normal');
185
+ });
186
+ var templateObject_1, templateObject_2;
@@ -0,0 +1,25 @@
1
+ import type { Schedule } from './types';
2
+ import type React from 'react';
3
+ export interface ScheduleItemExtraProps {
4
+ onDragStart?: (e: React.DragEvent) => void;
5
+ onDragEnd?: () => void;
6
+ onClick?: (e: React.MouseEvent) => void;
7
+ style?: React.CSSProperties;
8
+ className?: string;
9
+ [key: string]: unknown;
10
+ }
11
+ interface ScheduleItemProps {
12
+ schedule: Schedule;
13
+ extraProps?: ScheduleItemExtraProps;
14
+ onDragStart: (schedule: Schedule, e: React.DragEvent) => void;
15
+ onDragEnd: () => void;
16
+ onClick?: (schedule: Schedule, e?: React.MouseEvent) => void;
17
+ isSelected?: boolean;
18
+ isAllDay?: boolean;
19
+ isDraggable?: boolean;
20
+ }
21
+ export declare const ScheduleItem: React.FC<ScheduleItemProps>;
22
+ export declare const S_Dot: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {
23
+ $isSelected?: boolean | undefined;
24
+ }, never>;
25
+ export {};
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.S_Dot = exports.ScheduleItem = void 0;
22
+ var jsx_runtime_1 = require("react/jsx-runtime");
23
+ var styled_components_1 = __importDefault(require("styled-components"));
24
+ var TextLabel_1 = require("../TextLabel");
25
+ var ScheduleItem = function (_a) {
26
+ var schedule = _a.schedule, _b = _a.extraProps, extraProps = _b === void 0 ? {} : _b, onDragStart = _a.onDragStart, onDragEnd = _a.onDragEnd, onClick = _a.onClick, _c = _a.isSelected, isSelected = _c === void 0 ? false : _c, _d = _a.isAllDay, isAllDay = _d === void 0 ? false : _d, _e = _a.isDraggable, isDraggable = _e === void 0 ? false : _e;
27
+ return ((0, jsx_runtime_1.jsxs)(S_ScheduleItem, __assign({ "$color": schedule.color, "$position": "single", "$isSelected": isSelected, "$isAllday": isAllDay, "$isDraggable": isDraggable, draggable: isDraggable, onDragStart: isDraggable ? function (e) { return onDragStart(schedule, e); } : undefined, onDragEnd: isDraggable ? onDragEnd : undefined, onClick: function (e) {
28
+ e.stopPropagation();
29
+ onClick === null || onClick === void 0 ? void 0 : onClick(schedule, e);
30
+ } }, extraProps, { children: [(0, jsx_runtime_1.jsx)(exports.S_Dot, { "$isSelected": isSelected }), (0, jsx_runtime_1.jsx)(S_TextContainer, { children: (0, jsx_runtime_1.jsx)(TextLabel_1.TextLabel, { styleTheme: "caption2Bold", text: schedule.title, colorTheme: isSelected ? 'sysTextWhite' : undefined, ellipsisMode: "use", singleLineMode: "use" }) })] }), schedule.id));
31
+ };
32
+ exports.ScheduleItem = ScheduleItem;
33
+ var S_ScheduleItem = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n align-items: center;\n background: ", ";\n border: ", ";\n border-radius: 4px;\n cursor: ", ";\n display: flex;\n flex-shrink: 1;\n max-width: 100%;\n min-width: 0;\n overflow: hidden;\n padding: 2px 6px;\n position: relative;\n transition: opacity 0.2s ease, transform 0.2s ease;\n\n &:active {\n background: ", ";\n cursor: ", ";\n }\n"], ["\n align-items: center;\n background: ", ";\n border: ", ";\n border-radius: 4px;\n cursor: ", ";\n display: flex;\n flex-shrink: 1;\n max-width: 100%;\n min-width: 0;\n overflow: hidden;\n padding: 2px 6px;\n position: relative;\n transition: opacity 0.2s ease, transform 0.2s ease;\n\n &:active {\n background: ", ";\n cursor: ", ";\n }\n"])), function (props) {
34
+ if (props.$isSelected)
35
+ return props.theme.ui_cpnt_sheet_base_06;
36
+ if (props.$isAllday)
37
+ return props.theme.ui_cpnt_sheet_base;
38
+ return 'transparent';
39
+ }, function (props) {
40
+ return props.$isSelected ? "2px solid ".concat(props.theme.ui_cpnt_sheet_base_06) : '2px solid transparent';
41
+ }, function (_a) {
42
+ var $isDraggable = _a.$isDraggable;
43
+ return ($isDraggable ? 'grab' : 'default');
44
+ }, function (_a) {
45
+ var theme = _a.theme;
46
+ return theme.ui_cpnt_sheet_base_06;
47
+ }, function (_a) {
48
+ var $isDraggable = _a.$isDraggable;
49
+ return ($isDraggable ? 'grabbing' : 'default');
50
+ });
51
+ var S_TextContainer = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n flex: 1;\n max-width: 85%;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n /* TextLabel \uB0B4\uBD80 \uC694\uC18C\uC5D0\uB3C4 \uD55C \uC904 \uC81C\uD55C \uC801\uC6A9 */\n * {\n line-height: 1 !important;\n max-height: 1em !important;\n overflow: hidden !important;\n text-overflow: ellipsis !important;\n white-space: nowrap !important;\n }\n"], ["\n flex: 1;\n max-width: 85%;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n /* TextLabel \uB0B4\uBD80 \uC694\uC18C\uC5D0\uB3C4 \uD55C \uC904 \uC81C\uD55C \uC801\uC6A9 */\n * {\n line-height: 1 !important;\n max-height: 1em !important;\n overflow: hidden !important;\n text-overflow: ellipsis !important;\n white-space: nowrap !important;\n }\n"])));
52
+ exports.S_Dot = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n background: ", ";\n border-radius: 50%;\n height: 4px;\n margin-right: 4px;\n width: 4px;\n"], ["\n background: ", ";\n border-radius: 50%;\n height: 4px;\n margin-right: 4px;\n width: 4px;\n"])), function (_a) {
53
+ var $isSelected = _a.$isSelected, theme = _a.theme;
54
+ return $isSelected ? theme.ui_cpnt_icon_sys_white : theme.ui_cpnt_icon_sys_grey_02;
55
+ });
56
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1,12 @@
1
+ import type { Schedule } from './types';
2
+ import type React from 'react';
3
+ interface TimeBasedScheduleItemProps {
4
+ schedules: Schedule[];
5
+ selectedSchedules: Schedule[];
6
+ isDraggable?: boolean;
7
+ onClick?: (schedule: Schedule, e?: React.MouseEvent) => void;
8
+ handleScheduleDragStart: (schedule: Schedule, e: React.DragEvent) => void;
9
+ handleScheduleDragEnd: () => void;
10
+ }
11
+ export declare const TimeBasedScheduleItem: React.FC<TimeBasedScheduleItemProps>;
12
+ export {};
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
18
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
19
+ if (ar || !(i in from)) {
20
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
21
+ ar[i] = from[i];
22
+ }
23
+ }
24
+ return to.concat(ar || Array.prototype.slice.call(from));
25
+ };
26
+ var __importDefault = (this && this.__importDefault) || function (mod) {
27
+ return (mod && mod.__esModule) ? mod : { "default": mod };
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.TimeBasedScheduleItem = void 0;
31
+ var jsx_runtime_1 = require("react/jsx-runtime");
32
+ var react_1 = require("react");
33
+ var react_i18next_1 = require("react-i18next");
34
+ var styled_components_1 = __importDefault(require("styled-components"));
35
+ var TextLabel_1 = require("../TextLabel");
36
+ var calendarUtils_1 = require("./calendarUtils");
37
+ var timeFormatUtils_1 = require("./timeFormatUtils");
38
+ var TimeBasedScheduleItem = function (_a) {
39
+ var schedules = _a.schedules, selectedSchedules = _a.selectedSchedules, _b = _a.isDraggable, isDraggable = _b === void 0 ? false : _b, onClick = _a.onClick, handleScheduleDragStart = _a.handleScheduleDragStart, handleScheduleDragEnd = _a.handleScheduleDragEnd;
40
+ var _c = (0, react_i18next_1.useTranslation)(), i18n = _c.i18n, t = _c.t;
41
+ // 시간별 스케줄 계산 및 grid 위치 할당
42
+ var timedSchedulesWithGrid = (0, react_1.useMemo)(function () {
43
+ var filteredSchedules = schedules.filter(function (schedule) { return !(0, calendarUtils_1.calculateIsAllDay)(new Date(schedule.startDate), new Date(schedule.endDate)); });
44
+ // 시간 순으로 정렬 (시작 시간 기준, 시작시간이 같으면 duration이 짧은 순)
45
+ var sortedSchedules = __spreadArray([], filteredSchedules, true).sort(function (a, b) {
46
+ var startTimeA = new Date(a.startDate).getTime();
47
+ var startTimeB = new Date(b.startDate).getTime();
48
+ // 시작시간이 다르면 시작시간 기준으로 정렬
49
+ if (startTimeA !== startTimeB) {
50
+ return startTimeA - startTimeB;
51
+ }
52
+ // 시작시간이 같으면 duration이 짧은 순으로 정렬
53
+ var durationA = new Date(a.endDate).getTime() - startTimeA;
54
+ var durationB = new Date(b.endDate).getTime() - startTimeB;
55
+ return durationA - durationB;
56
+ });
57
+ var parent = new Map();
58
+ var find = function (x) {
59
+ var currentParent = parent.get(x);
60
+ if (currentParent !== undefined && currentParent !== x) {
61
+ var root = find(currentParent);
62
+ parent.set(x, root);
63
+ return root;
64
+ }
65
+ return x;
66
+ };
67
+ var union = function (x, y) {
68
+ var rootX = find(x);
69
+ var rootY = find(y);
70
+ if (rootX !== rootY) {
71
+ parent.set(rootX, rootY);
72
+ }
73
+ };
74
+ // 초기화: 각 스케줄을 자기 자신의 parent로 설정
75
+ sortedSchedules.forEach(function (schedule) {
76
+ parent.set(schedule.id, schedule.id);
77
+ });
78
+ // 겹치는 스케줄들을 연결
79
+ for (var i = 0; i < sortedSchedules.length; i += 1) {
80
+ for (var j = i + 1; j < sortedSchedules.length; j += 1) {
81
+ var schedule1 = sortedSchedules[i];
82
+ var schedule2 = sortedSchedules[j];
83
+ var start1 = new Date(schedule1.startDate).getTime();
84
+ var end1 = new Date(schedule1.endDate).getTime();
85
+ var start2 = new Date(schedule2.startDate).getTime();
86
+ var end2 = new Date(schedule2.endDate).getTime();
87
+ // 시간 겹침 확인: (start1 < end2) && (start2 < end1)
88
+ if (start1 < end2 && start2 < end1) {
89
+ union(schedule1.id, schedule2.id);
90
+ }
91
+ }
92
+ }
93
+ // 같은 그룹에 속하는 스케줄들끼리 묶기
94
+ var groups = new Map();
95
+ sortedSchedules.forEach(function (schedule) {
96
+ var root = find(schedule.id);
97
+ if (!groups.has(root)) {
98
+ groups.set(root, []);
99
+ }
100
+ var group = groups.get(root);
101
+ if (group) {
102
+ group.push(schedule);
103
+ }
104
+ });
105
+ // 각 그룹 내에서 grid 위치 할당
106
+ var schedulesWithGrid = [];
107
+ groups.forEach(function (group) {
108
+ // 그룹 내에서 정렬
109
+ var sortedGroup = group.sort(function (a, b) {
110
+ var startTimeA = new Date(a.startDate).getTime();
111
+ var startTimeB = new Date(b.startDate).getTime();
112
+ if (startTimeA !== startTimeB) {
113
+ return startTimeA - startTimeB;
114
+ }
115
+ var durationA = new Date(a.endDate).getTime() - startTimeA;
116
+ var durationB = new Date(b.endDate).getTime() - startTimeB;
117
+ return durationA - durationB;
118
+ });
119
+ var totalColumns = sortedGroup.length;
120
+ sortedGroup.forEach(function (schedule, index) {
121
+ schedulesWithGrid.push(__assign(__assign({}, schedule), { gridColumn: index, totalColumns: totalColumns }));
122
+ });
123
+ });
124
+ return schedulesWithGrid;
125
+ }, [schedules]);
126
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: timedSchedulesWithGrid.map(function (schedule) {
127
+ var isSelected = selectedSchedules.some(function (s) { return s.id === (schedule === null || schedule === void 0 ? void 0 : schedule.id); });
128
+ var startDate = new Date(schedule.startDate);
129
+ var endDate = new Date(schedule.endDate);
130
+ // 시간을 UTC에서 로컬 시간으로 변환
131
+ var localStartHour = startDate.getHours();
132
+ var localEndHour = endDate.getHours();
133
+ var localStartMinutes = startDate.getMinutes();
134
+ var localEndMinutes = endDate.getMinutes();
135
+ // 시작 시간과 끝 시간 계산 (분 단위)
136
+ var startMinutes = localStartHour * 60 + localStartMinutes;
137
+ var endMinutes = localEndHour * 60 + localEndMinutes;
138
+ var duration = Math.max(endMinutes - startMinutes, 30); // 최소 30분
139
+ // 픽셀 단위로 변환 (각 시간은 60px)
140
+ var top = (startMinutes / 60) * 60;
141
+ var height = (duration / 60) * 60;
142
+ return ((0, jsx_runtime_1.jsx)(S_ScheduleItem, __assign({ "$top": top, "$height": height, "$gridColumn": schedule.gridColumn, "$totalColumns": schedule.totalColumns, "$isSelected": isSelected, "$isDraggable": isDraggable, draggable: isDraggable, onClick: function (e) {
143
+ e.stopPropagation();
144
+ onClick === null || onClick === void 0 ? void 0 : onClick(schedule, e);
145
+ }, onDragStart: function (e) { return handleScheduleDragStart === null || handleScheduleDragStart === void 0 ? void 0 : handleScheduleDragStart(schedule, e); }, onDragEnd: function () { return handleScheduleDragEnd === null || handleScheduleDragEnd === void 0 ? void 0 : handleScheduleDragEnd(); } }, { children: (0, jsx_runtime_1.jsxs)(S_ScheduleContent, { children: [(0, jsx_runtime_1.jsx)(S_ScheduleTime, { children: (0, jsx_runtime_1.jsx)(TextLabel_1.TextLabel, { styleTheme: "caption2Regular", text: "".concat((0, timeFormatUtils_1.formatTimeWithLocale)(localStartHour, localStartMinutes, i18n.language, t)), ellipsisMode: "use", singleLineMode: "use", colorTheme: isSelected ? 'sysTextWhite' : undefined }) }), (0, jsx_runtime_1.jsx)(S_ScheduleTitle, { children: (0, jsx_runtime_1.jsx)(TextLabel_1.TextLabel, { styleTheme: "caption2Bold", text: schedule.title, ellipsisMode: "use", singleLineMode: "use", colorTheme: isSelected ? 'sysTextWhite' : undefined }) })] }) }), schedule.id));
146
+ }) }));
147
+ };
148
+ exports.TimeBasedScheduleItem = TimeBasedScheduleItem;
149
+ var S_ScheduleItem = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background: ", ";\n border: 1px solid ", ";\n border-left: 2px solid ", ";\n border-radius: 4px;\n cursor: ", ";\n height: ", "px;\n left: ", ";\n overflow: hidden;\n position: absolute;\n top: ", "px;\n width: ", ";\n z-index: 2;\n\n &:active {\n background: ", ";\n cursor: ", ";\n }\n"], ["\n background: ", ";\n border: 1px solid ", ";\n border-left: 2px solid ", ";\n border-radius: 4px;\n cursor: ", ";\n height: ", "px;\n left: ", ";\n overflow: hidden;\n position: absolute;\n top: ", "px;\n width: ", ";\n z-index: 2;\n\n &:active {\n background: ", ";\n cursor: ", ";\n }\n"])), function (props) {
150
+ if (props.$isSelected)
151
+ return props.theme.ui_cpnt_sheet_base_06;
152
+ return props.theme.ui_cpnt_sheet_base;
153
+ }, function (_a) {
154
+ var theme = _a.theme;
155
+ return theme.ui_temp_white;
156
+ }, function (_a) {
157
+ var theme = _a.theme;
158
+ return theme.ui_temp_grey_02;
159
+ }, function (_a) {
160
+ var $isDraggable = _a.$isDraggable;
161
+ return ($isDraggable ? 'grab' : 'default');
162
+ }, function (_a) {
163
+ var $height = _a.$height;
164
+ return $height - 2;
165
+ }, function (_a) {
166
+ var $gridColumn = _a.$gridColumn, $totalColumns = _a.$totalColumns;
167
+ return "calc(".concat($gridColumn, " * (100% / ").concat($totalColumns, "))");
168
+ }, function (_a) {
169
+ var $top = _a.$top;
170
+ return $top;
171
+ }, function (_a) {
172
+ var $totalColumns = _a.$totalColumns;
173
+ return "calc(100% / ".concat($totalColumns, ")");
174
+ }, function (_a) {
175
+ var theme = _a.theme;
176
+ return theme.ui_cpnt_sheet_base_06;
177
+ }, function (_a) {
178
+ var $isDraggable = _a.$isDraggable;
179
+ return ($isDraggable ? 'grabbing' : 'default');
180
+ });
181
+ var S_ScheduleContent = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n padding: 4px 6px;\n"], ["\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n padding: 4px 6px;\n"])));
182
+ var S_ScheduleTitle = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n margin-bottom: 2px;\n"], ["\n margin-bottom: 2px;\n"])));
183
+ var S_ScheduleTime = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n margin-top: auto;\n"], ["\n margin-top: auto;\n"])));
184
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ interface WeeklyViewProps {
3
+ startOfWeek: 'sunday' | 'monday';
4
+ }
5
+ export declare const WeeklyView: React.FC<WeeklyViewProps>;
6
+ export {};
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.WeeklyView = void 0;
42
+ var jsx_runtime_1 = require("react/jsx-runtime");
43
+ var react_1 = require("react");
44
+ var react_i18next_1 = require("react-i18next");
45
+ var dateHelper_1 = require("../../../common/utils/dateHelper");
46
+ var styled_components_1 = __importStar(require("styled-components"));
47
+ var TextLabel_1 = require("../TextLabel");
48
+ var AllDaySchedulesSection_1 = require("./AllDaySchedulesSection");
49
+ var CalendarContext_1 = require("./CalendarContext");
50
+ var CurrentTimeIndicator_1 = require("./CurrentTimeIndicator");
51
+ var TimeBasedScheduleItem_1 = require("./TimeBasedScheduleItem");
52
+ var timeFormatUtils_1 = require("./timeFormatUtils");
53
+ var WeeklyView = function (_a) {
54
+ var startOfWeek = _a.startOfWeek;
55
+ var _b = (0, react_i18next_1.useTranslation)(), t = _b.t, i18n = _b.i18n;
56
+ var _c = (0, CalendarContext_1.useCalendarContext)(), selectedDate = _c.selectedDate, selectedSchedules = _c.selectedSchedules, displayAllDayScheduleMode = _c.displayAllDayScheduleMode, getSchedulesForDate = _c.getSchedulesForDate, isToday = _c.isToday, isDragOverDate = _c.isDragOverDate, handleDateDragOver = _c.handleDateDragOver, handleDateDragLeave = _c.handleDateDragLeave, handleDateDrop = _c.handleDateDrop, handleDateClick = _c.handleDateClick, handleScheduleDragStart = _c.handleScheduleDragStart, handleScheduleDragEnd = _c.handleScheduleDragEnd, isDraggable = _c.isDraggable, handleScheduleClick = _c.handleScheduleClick, getDayTextByDate = _c.getDayTextByDate;
57
+ // Generate calendar dates for weekly view
58
+ var calendarDates = (0, react_1.useMemo)(function () {
59
+ var dates = [];
60
+ var startIndex = startOfWeek === 'monday' ? 1 : 0;
61
+ var offset = (selectedDate.getDay() - startIndex + 7) % 7;
62
+ var weekStart = dateHelper_1.DateHelper.addDays(selectedDate, -offset);
63
+ for (var i = 0; i < 7; i += 1) {
64
+ dates.push(dateHelper_1.DateHelper.addDays(weekStart, i));
65
+ }
66
+ return dates;
67
+ }, [selectedDate, startOfWeek]);
68
+ return ((0, jsx_runtime_1.jsxs)(S_WeeklyContainer, { children: [(0, jsx_runtime_1.jsxs)(S_WeeklyHeader, { children: [(0, jsx_runtime_1.jsx)(S_TimeColumnHeader, {}), calendarDates.map(function (date, index) {
69
+ var dayText = getDayTextByDate(date);
70
+ var dateText = t('str_calendar_weekly_date', {
71
+ month: date.getMonth() + 1,
72
+ date: date.getDate(),
73
+ day: dayText
74
+ });
75
+ return ((0, jsx_runtime_1.jsx)(S_WeeklyDayHeader, __assign({ "$isToday": isToday(date) }, { children: (0, jsx_runtime_1.jsx)(TextLabel_1.TextLabel, { textAlign: "center", styleTheme: "caption2Bold", colorTheme: isToday(date) ? 'sysTextBrandPrimary' : 'sysTextTertiary', text: dateText }) }), index));
76
+ })] }), (0, jsx_runtime_1.jsx)(AllDaySchedulesSection_1.AllDaySchedulesSection, { calendarDates: calendarDates, displayAllDayScheduleMode: displayAllDayScheduleMode, getSchedulesForDate: getSchedulesForDate, handleDateDragOver: handleDateDragOver, handleDateDragLeave: handleDateDragLeave, handleDateDrop: handleDateDrop }), (0, jsx_runtime_1.jsxs)(S_WeeklyTimeGrid, __assign({ "$displayAllDayScheduleMode": displayAllDayScheduleMode }, { children: [(0, jsx_runtime_1.jsx)(CurrentTimeIndicator_1.CurrentTimeIndicator, { show: true, leftOffset: "80px" }), Array.from({ length: 24 }, function (_unused, hour) { return ((0, jsx_runtime_1.jsxs)(S_TimeRow, { children: [(0, jsx_runtime_1.jsx)(S_TimeLabel, { children: (0, jsx_runtime_1.jsx)(TextLabel_1.TextLabel, { styleTheme: "caption2Bold", text: (0, timeFormatUtils_1.formatTimeWithLocale)(hour, 0, i18n.language, t), colorTheme: "sysTextTertiary" }) }), (0, jsx_runtime_1.jsx)(S_TimeSlots, { children: calendarDates.map(function (date, dayIndex) {
77
+ var timeSlotDate = new Date(date);
78
+ timeSlotDate.setHours(hour, 0, 0, 0);
79
+ var isDragOver = (isDragOverDate === null || isDragOverDate === void 0 ? void 0 : isDragOverDate.getTime()) === timeSlotDate.getTime();
80
+ return ((0, jsx_runtime_1.jsx)(S_TimeSlot, __assign({ "$isDragOver": isDragOver, "$isDraggable": isDraggable, onClick: function () { return handleDateClick(date, {}); }, onDragOver: function (e) { return handleDateDragOver(timeSlotDate, e); }, onDragLeave: handleDateDragLeave, onDrop: function (e) { return handleDateDrop(timeSlotDate, e); } }, { children: hour === 0 && ((0, jsx_runtime_1.jsx)(TimeBasedScheduleItem_1.TimeBasedScheduleItem, { schedules: getSchedulesForDate(date), selectedSchedules: selectedSchedules, isDraggable: isDraggable, onClick: handleScheduleClick, handleScheduleDragStart: handleScheduleDragStart, handleScheduleDragEnd: handleScheduleDragEnd })) }), dayIndex));
81
+ }) })] }, hour)); })] }))] }));
82
+ };
83
+ exports.WeeklyView = WeeklyView;
84
+ var S_WeeklyContainer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n height: 100%;\n"], ["\n display: flex;\n flex-direction: column;\n height: 100%;\n"])));
85
+ var S_WeeklyHeader = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: grid;\n grid-template-columns: 80px repeat(7, 1fr);\n"], ["\n display: grid;\n grid-template-columns: 80px repeat(7, 1fr);\n"])));
86
+ var S_TimeColumnHeader = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject([""], [""])));
87
+ var S_WeeklyDayHeader = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n padding: 12px 8px;\n text-align: center;\n"], ["\n padding: 12px 8px;\n text-align: center;\n"])));
88
+ var S_WeeklyTimeGrid = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n flex: 1;\n overflow-y: auto;\n position: relative;\n ", "\n"], ["\n flex: 1;\n overflow-y: auto;\n position: relative;\n ", "\n"])), function (_a) {
89
+ var $displayAllDayScheduleMode = _a.$displayAllDayScheduleMode;
90
+ return $displayAllDayScheduleMode === 'none' && (0, styled_components_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n border-top: 1px solid ", ";\n "], ["\n border-top: 1px solid ", ";\n "])), function (_a) {
91
+ var theme = _a.theme;
92
+ return theme.ui_cpnt_divider;
93
+ });
94
+ });
95
+ var S_TimeRow = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n display: grid;\n grid-template-columns: 80px repeat(7, 1fr);\n height: 60px;\n"], ["\n display: grid;\n grid-template-columns: 80px repeat(7, 1fr);\n height: 60px;\n"])));
96
+ var S_TimeLabel = styled_components_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n align-items: center;\n border-bottom: 1px solid ", ";\n border-right: 1px solid ", ";\n display: flex;\n justify-content: center;\n padding: 8px;\n"], ["\n align-items: center;\n border-bottom: 1px solid ", ";\n border-right: 1px solid ", ";\n display: flex;\n justify-content: center;\n padding: 8px;\n"])), function (_a) {
97
+ var theme = _a.theme;
98
+ return theme.ui_cpnt_divider;
99
+ }, function (_a) {
100
+ var theme = _a.theme;
101
+ return theme.ui_cpnt_divider;
102
+ });
103
+ var S_TimeSlots = styled_components_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n display: contents;\n"], ["\n display: contents;\n"])));
104
+ var S_TimeSlot = styled_components_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n background: ", ";\n border-bottom: 1px solid ", ";\n border-right: 1px solid ", ";\n cursor: default;\n min-width: 0;\n overflow: visible;\n position: relative;\n\n &:hover {\n background: ", ";\n }\n"], ["\n background: ", ";\n border-bottom: 1px solid ", ";\n border-right: 1px solid ", ";\n cursor: default;\n min-width: 0;\n overflow: visible;\n position: relative;\n\n &:hover {\n background: ", ";\n }\n"])), function (props) { return (props.$isDragOver ? props.theme.ui_cpnt_sheet_base : 'transparent'); }, function (_a) {
105
+ var theme = _a.theme;
106
+ return theme.ui_cpnt_divider;
107
+ }, function (_a) {
108
+ var theme = _a.theme;
109
+ return theme.ui_cpnt_divider;
110
+ }, function (_a) {
111
+ var theme = _a.theme;
112
+ return theme.ui_cpnt_sheet_base;
113
+ });
114
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10;
@@ -0,0 +1,13 @@
1
+ import type { Schedule } from './types';
2
+ import type React from 'react';
3
+ interface YearlyViewProps {
4
+ selectedDate: Date;
5
+ getMonthDates: (year: number, month: number) => Date[];
6
+ getDayTextByDate: (date: Date) => string;
7
+ startOfWeek: 'sunday' | 'monday';
8
+ isToday: (date: Date) => boolean;
9
+ handleDateClick: (date: Date) => void;
10
+ getSchedulesForDate: (date: Date) => Schedule[];
11
+ }
12
+ export declare const YearlyView: React.FC<YearlyViewProps>;
13
+ export {};