@tipp/ui 1.6.34 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/index.cjs +19 -30
- package/dist/app/index.cjs.map +1 -1
- package/dist/app/index.js +69 -69
- package/dist/app/platform/coach-question-list.cjs +5 -10
- package/dist/app/platform/coach-question-list.cjs.map +1 -1
- package/dist/app/platform/coach-question-list.d.cts +1 -1
- package/dist/app/platform/coach-question-list.d.ts +1 -1
- package/dist/app/platform/coach-question-list.js +34 -34
- package/dist/app/platform/contents-card.cjs +5 -10
- package/dist/app/platform/contents-card.cjs.map +1 -1
- package/dist/app/platform/contents-card.js +34 -34
- package/dist/app/platform/curriculum-card.cjs +1 -2
- package/dist/app/platform/curriculum-card.cjs.map +1 -1
- package/dist/app/platform/curriculum-card.d.cts +1 -1
- package/dist/app/platform/curriculum-card.d.ts +1 -1
- package/dist/app/platform/curriculum-card.js +12 -12
- package/dist/app/platform/edit-coaching-time.cjs +7 -14
- package/dist/app/platform/edit-coaching-time.cjs.map +1 -1
- package/dist/app/platform/edit-coaching-time.d.cts +1 -1
- package/dist/app/platform/edit-coaching-time.d.ts +1 -1
- package/dist/app/platform/edit-coaching-time.js +52 -52
- package/dist/app/platform/edit-service-type.cjs +5 -10
- package/dist/app/platform/edit-service-type.cjs.map +1 -1
- package/dist/app/platform/edit-service-type.d.cts +1 -1
- package/dist/app/platform/edit-service-type.d.ts +1 -1
- package/dist/app/platform/edit-service-type.js +53 -53
- package/dist/app/platform/goal-manage-card-edit.cjs +6 -12
- package/dist/app/platform/goal-manage-card-edit.cjs.map +1 -1
- package/dist/app/platform/goal-manage-card-edit.d.cts +1 -1
- package/dist/app/platform/goal-manage-card-edit.d.ts +1 -1
- package/dist/app/platform/goal-manage-card-edit.js +52 -52
- package/dist/app/platform/goal-manage-card-read.cjs +7 -14
- package/dist/app/platform/goal-manage-card-read.cjs.map +1 -1
- package/dist/app/platform/goal-manage-card-read.d.cts +1 -1
- package/dist/app/platform/goal-manage-card-read.d.ts +1 -1
- package/dist/app/platform/goal-manage-card-read.js +34 -34
- package/dist/app/platform/on-offline-radio-card.cjs +5 -10
- package/dist/app/platform/on-offline-radio-card.cjs.map +1 -1
- package/dist/app/platform/on-offline-radio-card.d.cts +1 -1
- package/dist/app/platform/on-offline-radio-card.d.ts +1 -1
- package/dist/app/platform/on-offline-radio-card.js +52 -52
- package/dist/app/platform/report-card.cjs +11 -14
- package/dist/app/platform/report-card.cjs.map +1 -1
- package/dist/app/platform/report-card.d.cts +2 -1
- package/dist/app/platform/report-card.d.ts +2 -1
- package/dist/app/platform/report-card.js +34 -34
- package/dist/app/platform/reservation-card.cjs +10 -20
- package/dist/app/platform/reservation-card.cjs.map +1 -1
- package/dist/app/platform/reservation-card.d.cts +1 -1
- package/dist/app/platform/reservation-card.d.ts +1 -1
- package/dist/app/platform/reservation-card.js +53 -53
- package/dist/app/platform/session-card.cjs +8 -16
- package/dist/app/platform/session-card.cjs.map +1 -1
- package/dist/app/platform/session-card.d.cts +1 -1
- package/dist/app/platform/session-card.d.ts +1 -1
- package/dist/app/platform/session-card.js +55 -55
- package/dist/app/platform/session-review-simple-read.cjs +5 -10
- package/dist/app/platform/session-review-simple-read.cjs.map +1 -1
- package/dist/app/platform/session-review-simple-read.d.cts +1 -1
- package/dist/app/platform/session-review-simple-read.d.ts +1 -1
- package/dist/app/platform/session-review-simple-read.js +34 -34
- package/dist/app/platform/userInfos/coaching-customer-info/index.cjs +5 -10
- package/dist/app/platform/userInfos/coaching-customer-info/index.cjs.map +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/index.d.cts +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/index.d.ts +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/index.js +38 -38
- package/dist/app/platform/userInfos/coaching-customer-info/large.cjs +5 -10
- package/dist/app/platform/userInfos/coaching-customer-info/large.cjs.map +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/large.d.cts +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/large.d.ts +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/large.js +35 -35
- package/dist/app/platform/userInfos/coaching-customer-info/medium.cjs +5 -10
- package/dist/app/platform/userInfos/coaching-customer-info/medium.cjs.map +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/medium.d.cts +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/medium.d.ts +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/medium.js +35 -35
- package/dist/app/platform/userInfos/coaching-customer-info/small.cjs +5 -10
- package/dist/app/platform/userInfos/coaching-customer-info/small.cjs.map +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/small.d.cts +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/small.d.ts +1 -1
- package/dist/app/platform/userInfos/coaching-customer-info/small.js +34 -34
- package/dist/app/platform/userInfos/session-user-info-detail.cjs +5 -10
- package/dist/app/platform/userInfos/session-user-info-detail.cjs.map +1 -1
- package/dist/app/platform/userInfos/session-user-info-detail.d.cts +1 -1
- package/dist/app/platform/userInfos/session-user-info-detail.d.ts +1 -1
- package/dist/app/platform/userInfos/session-user-info-detail.js +35 -35
- package/dist/app/platform/userInfos/utils.cjs +5 -10
- package/dist/app/platform/userInfos/utils.cjs.map +1 -1
- package/dist/app/platform/userInfos/utils.d.cts +5 -5
- package/dist/app/platform/userInfos/utils.d.ts +5 -5
- package/dist/app/platform/userInfos/utils.js +34 -34
- package/dist/atoms/alert-dialog.js +1 -1
- package/dist/atoms/aspect-ratio.js +1 -1
- package/dist/atoms/auto-sizing-input.cjs.map +1 -1
- package/dist/atoms/auto-sizing-input.js +2 -2
- package/dist/atoms/avatar.cjs.map +1 -1
- package/dist/atoms/avatar.d.cts +1 -1
- package/dist/atoms/avatar.d.ts +1 -1
- package/dist/atoms/avatar.js +2 -2
- package/dist/atoms/badge.cjs.map +1 -1
- package/dist/atoms/badge.d.cts +2 -2
- package/dist/atoms/badge.d.ts +2 -2
- package/dist/atoms/badge.js +2 -2
- package/dist/atoms/blockquote.js +1 -1
- package/dist/atoms/box.js +1 -1
- package/dist/atoms/bullet-text.cjs +1 -2
- package/dist/atoms/bullet-text.cjs.map +1 -1
- package/dist/atoms/bullet-text.d.cts +1 -1
- package/dist/atoms/bullet-text.d.ts +1 -1
- package/dist/atoms/bullet-text.js +3 -3
- package/dist/atoms/button.cjs +1 -2
- package/dist/atoms/button.cjs.map +1 -1
- package/dist/atoms/button.d.cts +3 -3
- package/dist/atoms/button.d.ts +3 -3
- package/dist/atoms/button.js +2 -2
- package/dist/atoms/call-out.js +1 -1
- package/dist/atoms/card.cjs +1 -2
- package/dist/atoms/card.cjs.map +1 -1
- package/dist/atoms/card.d.cts +7 -7
- package/dist/atoms/card.d.ts +7 -7
- package/dist/atoms/card.js +2 -2
- package/dist/atoms/check-box-card.js +1 -1
- package/dist/atoms/check-box-group.d.cts +1 -1
- package/dist/atoms/check-box-group.d.ts +1 -1
- package/dist/atoms/check-box-group.js +2 -2
- package/dist/atoms/check-box.cjs.map +1 -1
- package/dist/atoms/check-box.d.cts +1 -1
- package/dist/atoms/check-box.d.ts +1 -1
- package/dist/atoms/check-box.js +2 -2
- package/dist/atoms/code.js +1 -1
- package/dist/atoms/collapse.cjs +2 -4
- package/dist/atoms/collapse.cjs.map +1 -1
- package/dist/atoms/collapse.d.cts +1 -1
- package/dist/atoms/collapse.d.ts +1 -1
- package/dist/atoms/collapse.js +2 -2
- package/dist/atoms/container.js +1 -1
- package/dist/atoms/data-list.js +1 -1
- package/dist/atoms/dialog.cjs.map +1 -1
- package/dist/atoms/dialog.d.cts +4 -4
- package/dist/atoms/dialog.d.ts +4 -4
- package/dist/atoms/dialog.js +4 -4
- package/dist/atoms/drawer.cjs.map +1 -1
- package/dist/atoms/drawer.d.cts +3 -3
- package/dist/atoms/drawer.d.ts +3 -3
- package/dist/atoms/drawer.js +4 -4
- package/dist/atoms/dropdown-menu.d.cts +1 -1
- package/dist/atoms/dropdown-menu.d.ts +1 -1
- package/dist/atoms/dropdown-menu.js +2 -2
- package/dist/atoms/ellipsis-tooltip.cjs +1 -2
- package/dist/atoms/ellipsis-tooltip.cjs.map +1 -1
- package/dist/atoms/ellipsis-tooltip.d.cts +1 -1
- package/dist/atoms/ellipsis-tooltip.d.ts +1 -1
- package/dist/atoms/ellipsis-tooltip.js +3 -3
- package/dist/atoms/em.js +1 -1
- package/dist/atoms/field-error-wrapper.cjs +1 -2
- package/dist/atoms/field-error-wrapper.cjs.map +1 -1
- package/dist/atoms/field-error-wrapper.d.cts +1 -1
- package/dist/atoms/field-error-wrapper.d.ts +1 -1
- package/dist/atoms/field-error-wrapper.js +3 -3
- package/dist/atoms/flex.js +1 -1
- package/dist/atoms/grid.js +1 -1
- package/dist/atoms/heading.cjs.map +1 -1
- package/dist/atoms/heading.d.cts +1 -1
- package/dist/atoms/heading.d.ts +1 -1
- package/dist/atoms/heading.js +2 -2
- package/dist/atoms/hover-card.js +1 -1
- package/dist/atoms/icon-button.js +1 -1
- package/dist/atoms/index.cjs +11 -21
- package/dist/atoms/index.cjs.map +1 -1
- package/dist/atoms/index.d.cts +0 -1
- package/dist/atoms/index.d.ts +0 -1
- package/dist/atoms/index.js +33 -33
- package/dist/atoms/inset.js +1 -1
- package/dist/atoms/kbd.js +1 -1
- package/dist/atoms/link.cjs.map +1 -1
- package/dist/atoms/link.d.cts +1 -1
- package/dist/atoms/link.d.ts +1 -1
- package/dist/atoms/link.js +2 -2
- package/dist/atoms/pagination.cjs +4 -8
- package/dist/atoms/pagination.cjs.map +1 -1
- package/dist/atoms/pagination.d.cts +1 -1
- package/dist/atoms/pagination.d.ts +1 -1
- package/dist/atoms/pagination.js +10 -10
- package/dist/atoms/popover.js +1 -1
- package/dist/atoms/progress.js +1 -1
- package/dist/atoms/quote.js +1 -1
- package/dist/atoms/radio-cards.js +1 -1
- package/dist/atoms/radio-group.js +1 -1
- package/dist/atoms/radio.js +1 -1
- package/dist/atoms/scroll-area.js +1 -1
- package/dist/atoms/section.js +1 -1
- package/dist/atoms/segmented-control.js +1 -1
- package/dist/atoms/select.cjs.map +1 -1
- package/dist/atoms/select.d.cts +2 -2
- package/dist/atoms/select.d.ts +2 -2
- package/dist/atoms/select.js +2 -2
- package/dist/atoms/separator.js +1 -1
- package/dist/atoms/skeleton.js +1 -1
- package/dist/atoms/spinner.js +1 -1
- package/dist/atoms/strong.js +1 -1
- package/dist/atoms/switch.js +1 -1
- package/dist/atoms/tab-nav.js +1 -1
- package/dist/atoms/tabs.js +1 -1
- package/dist/atoms/text-area.cjs +1 -2
- package/dist/atoms/text-area.cjs.map +1 -1
- package/dist/atoms/text-area.d.cts +1 -1
- package/dist/atoms/text-area.d.ts +1 -1
- package/dist/atoms/text-area.js +2 -2
- package/dist/atoms/text-field.cjs +1 -2
- package/dist/atoms/text-field.cjs.map +1 -1
- package/dist/atoms/text-field.d.cts +1 -1
- package/dist/atoms/text-field.d.ts +1 -1
- package/dist/atoms/text-field.js +2 -2
- package/dist/atoms/toast.cjs +1 -1
- package/dist/atoms/toast.cjs.map +1 -1
- package/dist/atoms/toast.d.cts +1 -1
- package/dist/atoms/toast.d.ts +1 -1
- package/dist/atoms/toast.js +2 -2
- package/dist/atoms/tooltip.js +1 -1
- package/dist/atoms/typo.cjs +1 -2
- package/dist/atoms/typo.cjs.map +1 -1
- package/dist/atoms/typo.js +2 -2
- package/dist/charts/chart-default-props.js +1 -1
- package/dist/charts/horizontal-bar-chart.cjs.map +1 -1
- package/dist/charts/horizontal-bar-chart.d.cts +1 -1
- package/dist/charts/horizontal-bar-chart.d.ts +1 -1
- package/dist/charts/horizontal-bar-chart.js +2 -2
- package/dist/charts/index.cjs.map +1 -1
- package/dist/charts/index.js +2 -2
- package/dist/{chunk-T6CF4F7J.js → chunk-25Q6QLSN.js} +2 -2
- package/dist/{chunk-B6JJT4VK.js → chunk-2K4GU6TT.js} +9 -9
- package/dist/chunk-2K4GU6TT.js.map +1 -0
- package/dist/{chunk-N552FDTV.js → chunk-2NMEKWO5.js} +1 -1
- package/dist/{chunk-BSTJBBEX.js → chunk-2TPQQBUQ.js} +2 -2
- package/dist/{chunk-6DZ4VE36.js → chunk-2YVZI7DP.js} +8 -8
- package/dist/chunk-2YVZI7DP.js.map +1 -0
- package/dist/{chunk-CFMW7GOI.js → chunk-3C7F3YXP.js} +2 -2
- package/dist/chunk-3C7F3YXP.js.map +1 -0
- package/dist/{chunk-DDXBIVPL.js → chunk-3CVQG5IO.js} +5 -5
- package/dist/chunk-3CVQG5IO.js.map +1 -0
- package/dist/{chunk-EW6OPYEW.js → chunk-3F45OPXG.js} +3 -4
- package/dist/{chunk-EW6OPYEW.js.map → chunk-3F45OPXG.js.map} +1 -1
- package/dist/{chunk-QDZS4B6A.js → chunk-3FEMWCWV.js} +2 -2
- package/dist/{chunk-HJB3AASV.js → chunk-3IT3NVK6.js} +2 -2
- package/dist/chunk-3IT3NVK6.js.map +1 -0
- package/dist/{chunk-ZWVC35OM.js → chunk-3UJOUGH3.js} +5 -5
- package/dist/chunk-3UJOUGH3.js.map +1 -0
- package/dist/{chunk-6ZKTBMRW.js → chunk-3XXTLSLM.js} +4 -4
- package/dist/chunk-3XXTLSLM.js.map +1 -0
- package/dist/chunk-44Y6LSNA.js +54 -0
- package/dist/chunk-44Y6LSNA.js.map +1 -0
- package/dist/{chunk-ZLRO6VGF.js → chunk-45DIMUO4.js} +3 -3
- package/dist/chunk-45DIMUO4.js.map +1 -0
- package/dist/{chunk-5L3GY3OV.js → chunk-45VFASWZ.js} +4 -4
- package/dist/chunk-45VFASWZ.js.map +1 -0
- package/dist/chunk-4LYUNBCH.js +174 -0
- package/dist/chunk-4LYUNBCH.js.map +1 -0
- package/dist/{chunk-ME5XT4JY.js → chunk-4NBRGUIC.js} +10 -11
- package/dist/chunk-4NBRGUIC.js.map +1 -0
- package/dist/{chunk-4UV3GA6V.js → chunk-4QWYV2QX.js} +4 -4
- package/dist/chunk-4QWYV2QX.js.map +1 -0
- package/dist/{chunk-M6RP7E5E.js → chunk-4YKESXWQ.js} +17 -9
- package/dist/chunk-4YKESXWQ.js.map +1 -0
- package/dist/{chunk-DALP6AI5.js → chunk-54C63CWN.js} +7 -7
- package/dist/chunk-54C63CWN.js.map +1 -0
- package/dist/{chunk-PHGPKAXK.js → chunk-5DTCJF6D.js} +12 -13
- package/dist/chunk-5DTCJF6D.js.map +1 -0
- package/dist/{chunk-VOQU7ZOV.js → chunk-5KDNSBO5.js} +3 -4
- package/dist/{chunk-VOQU7ZOV.js.map → chunk-5KDNSBO5.js.map} +1 -1
- package/dist/{chunk-YPYQISJB.js → chunk-5VWEW4M2.js} +4 -4
- package/dist/chunk-5VWEW4M2.js.map +1 -0
- package/dist/{chunk-QJ6K6ITU.js → chunk-6OQQUSCX.js} +24 -27
- package/dist/chunk-6OQQUSCX.js.map +1 -0
- package/dist/{chunk-ERDNB5SX.js → chunk-75ENC5RS.js} +5 -5
- package/dist/chunk-75ENC5RS.js.map +1 -0
- package/dist/{chunk-GEWPH2WM.js → chunk-7IX5IEPU.js} +5 -5
- package/dist/chunk-7IX5IEPU.js.map +1 -0
- package/dist/{chunk-5T7XMKLA.js → chunk-7VJB7OZ3.js} +11 -11
- package/dist/chunk-7VJB7OZ3.js.map +1 -0
- package/dist/{chunk-TD45ZF7D.js → chunk-ACG3G2CH.js} +1 -1
- package/dist/chunk-ACG3G2CH.js.map +1 -0
- package/dist/{chunk-UQVTXKJY.js → chunk-AEPCBZF7.js} +5 -5
- package/dist/chunk-AEPCBZF7.js.map +1 -0
- package/dist/{chunk-Q5AFRGVP.js → chunk-AFPH32MF.js} +3 -4
- package/dist/chunk-AFPH32MF.js.map +1 -0
- package/dist/{chunk-THHUFQEU.js → chunk-AJU5NJ2C.js} +4 -4
- package/dist/chunk-AJU5NJ2C.js.map +1 -0
- package/dist/{chunk-ZZYFULUQ.js → chunk-AP52M2Z5.js} +2 -2
- package/dist/{chunk-ZZYFULUQ.js.map → chunk-AP52M2Z5.js.map} +1 -1
- package/dist/chunk-BFLGQQJZ.js +30 -0
- package/dist/chunk-BFLGQQJZ.js.map +1 -0
- package/dist/{chunk-USAO24JU.js → chunk-BR6BA3US.js} +8 -9
- package/dist/chunk-BR6BA3US.js.map +1 -0
- package/dist/{chunk-ZXQZRIRS.js → chunk-BXX3B3E4.js} +3 -5
- package/dist/{chunk-ZXQZRIRS.js.map → chunk-BXX3B3E4.js.map} +1 -1
- package/dist/{chunk-6RT2RUZ2.js → chunk-BZVP23R4.js} +11 -11
- package/dist/chunk-BZVP23R4.js.map +1 -0
- package/dist/{chunk-7LJELULM.js → chunk-CJ272WFS.js} +3 -3
- package/dist/chunk-CJ272WFS.js.map +1 -0
- package/dist/chunk-CQSOA3HY.js +144 -0
- package/dist/chunk-CQSOA3HY.js.map +1 -0
- package/dist/{chunk-I7VFM7I6.js → chunk-D6WG5BHL.js} +7 -7
- package/dist/chunk-D6WG5BHL.js.map +1 -0
- package/dist/{chunk-DEQLZ43V.js → chunk-D7TN4S75.js} +12 -12
- package/dist/chunk-D7TN4S75.js.map +1 -0
- package/dist/{chunk-UNTA4JJU.js → chunk-DDUKEE5E.js} +2 -2
- package/dist/chunk-DFXO2GOC.js +144 -0
- package/dist/chunk-DFXO2GOC.js.map +1 -0
- package/dist/{chunk-LHCDPZ5E.js → chunk-DGAB7BIE.js} +2 -2
- package/dist/chunk-DGAB7BIE.js.map +1 -0
- package/dist/{chunk-VKGTIYVH.js → chunk-DQGB3JQA.js} +5 -5
- package/dist/chunk-DQGB3JQA.js.map +1 -0
- package/dist/{chunk-QUHTO7MY.js → chunk-E3T66HOA.js} +2 -2
- package/dist/chunk-E3T66HOA.js.map +1 -0
- package/dist/{chunk-4JBL5FRI.js → chunk-ECLZ3IGO.js} +4 -4
- package/dist/chunk-ECLZ3IGO.js.map +1 -0
- package/dist/{chunk-4DB5HWFL.js → chunk-EJ3JNXLY.js} +6 -6
- package/dist/chunk-EJ3JNXLY.js.map +1 -0
- package/dist/{chunk-6ZAP57FO.js → chunk-ESHEHOVH.js} +5 -6
- package/dist/chunk-ESHEHOVH.js.map +1 -0
- package/dist/{chunk-2YJ3EG6A.js → chunk-F5MKSWHL.js} +8 -9
- package/dist/chunk-F5MKSWHL.js.map +1 -0
- package/dist/{chunk-JYJA2PMG.js → chunk-FC7WH2S6.js} +2 -2
- package/dist/chunk-FC7WH2S6.js.map +1 -0
- package/dist/{chunk-EWD4AO5N.js → chunk-FCIHNIOH.js} +2 -2
- package/dist/chunk-FCIHNIOH.js.map +1 -0
- package/dist/chunk-FEGPGG5R.js +30 -0
- package/dist/chunk-FEGPGG5R.js.map +1 -0
- package/dist/{chunk-ACWGF5TI.js → chunk-FV26PAOO.js} +17 -22
- package/dist/chunk-FV26PAOO.js.map +1 -0
- package/dist/{chunk-CWJ6DC27.js → chunk-GSU262TZ.js} +3 -3
- package/dist/chunk-GSU262TZ.js.map +1 -0
- package/dist/{chunk-2ZQK7NTN.js → chunk-HEDMSFPW.js} +3 -4
- package/dist/{chunk-2ZQK7NTN.js.map → chunk-HEDMSFPW.js.map} +1 -1
- package/dist/{chunk-3WSZRTAF.js → chunk-HLFTU725.js} +2 -2
- package/dist/{chunk-P442X52N.js → chunk-HOKENHFD.js} +17 -20
- package/dist/chunk-HOKENHFD.js.map +1 -0
- package/dist/{chunk-4WFMOFN2.js → chunk-HYE34QEM.js} +2 -2
- package/dist/chunk-I2ZOU3LX.js +106 -0
- package/dist/chunk-I2ZOU3LX.js.map +1 -0
- package/dist/{chunk-CYYWMYE7.js → chunk-IFRA465K.js} +3 -3
- package/dist/chunk-IFRA465K.js.map +1 -0
- package/dist/{chunk-5RXSBHAF.js → chunk-IIN3YNMK.js} +17 -20
- package/dist/chunk-IIN3YNMK.js.map +1 -0
- package/dist/{chunk-EDTEVEJW.js → chunk-IJOOKMKQ.js} +2 -3
- package/dist/chunk-IJOOKMKQ.js.map +1 -0
- package/dist/{chunk-FBOJKLC6.js → chunk-JDE7356R.js} +4 -4
- package/dist/chunk-JDE7356R.js.map +1 -0
- package/dist/{chunk-ABZVJJ4O.js → chunk-JKNCADEB.js} +7 -7
- package/dist/chunk-JKNCADEB.js.map +1 -0
- package/dist/chunk-JLT3GUBP.js +144 -0
- package/dist/chunk-JLT3GUBP.js.map +1 -0
- package/dist/chunk-JMS4TRIK.js +64 -0
- package/dist/chunk-JMS4TRIK.js.map +1 -0
- package/dist/{chunk-GFP2V4TL.js → chunk-K2BK4S2S.js} +6 -9
- package/dist/chunk-K2BK4S2S.js.map +1 -0
- package/dist/{chunk-2CZ4RJLO.js → chunk-K3EDEQP6.js} +10 -12
- package/dist/chunk-K3EDEQP6.js.map +1 -0
- package/dist/chunk-KXEHA6WD.js +63 -0
- package/dist/chunk-KXEHA6WD.js.map +1 -0
- package/dist/{chunk-5BLH4FQG.js → chunk-L44AC52S.js} +10 -10
- package/dist/chunk-L44AC52S.js.map +1 -0
- package/dist/chunk-LD4TLEWG.js +74 -0
- package/dist/chunk-LD4TLEWG.js.map +1 -0
- package/dist/chunk-LFZ22PRA.js +281 -0
- package/dist/chunk-LFZ22PRA.js.map +1 -0
- package/dist/{chunk-52MVZ6AN.js → chunk-LH57PIY2.js} +3 -4
- package/dist/chunk-LH57PIY2.js.map +1 -0
- package/dist/{chunk-NAL2USH5.js → chunk-LMWTEDYS.js} +3 -3
- package/dist/chunk-LMWTEDYS.js.map +1 -0
- package/dist/{chunk-TL3L4CLE.js → chunk-M7C3ID36.js} +3 -3
- package/dist/chunk-M7C3ID36.js.map +1 -0
- package/dist/{chunk-UFYNSPJQ.js → chunk-MEKWBVXE.js} +2 -2
- package/dist/{chunk-YQBY5R2B.js → chunk-MLMYWZZN.js} +3 -3
- package/dist/chunk-MLMYWZZN.js.map +1 -0
- package/dist/{chunk-VR25ARRS.js → chunk-MRJJFTNX.js} +18 -10
- package/dist/chunk-MRJJFTNX.js.map +1 -0
- package/dist/{chunk-AVIKUC4O.js → chunk-N73QW7HF.js} +21 -24
- package/dist/chunk-N73QW7HF.js.map +1 -0
- package/dist/chunk-NBPRKG6W.js +106 -0
- package/dist/chunk-NBPRKG6W.js.map +1 -0
- package/dist/{chunk-E2X4TL7Q.js → chunk-NFDQJVFA.js} +3 -5
- package/dist/chunk-NFDQJVFA.js.map +1 -0
- package/dist/chunk-NJ4N3VCI.js +174 -0
- package/dist/chunk-NJ4N3VCI.js.map +1 -0
- package/dist/{chunk-HH3EFLW7.js → chunk-NNPT6BV4.js} +8 -8
- package/dist/chunk-NNPT6BV4.js.map +1 -0
- package/dist/{chunk-SQRJHBUR.js → chunk-NVIBNWII.js} +3 -3
- package/dist/chunk-NVIBNWII.js.map +1 -0
- package/dist/{chunk-VGIX3A5R.js → chunk-NWJSLIQ3.js} +2 -3
- package/dist/{chunk-VGIX3A5R.js.map → chunk-NWJSLIQ3.js.map} +1 -1
- package/dist/chunk-OHIU6IRT.js +174 -0
- package/dist/chunk-OHIU6IRT.js.map +1 -0
- package/dist/chunk-PE4V3SCZ.js +145 -0
- package/dist/chunk-PE4V3SCZ.js.map +1 -0
- package/dist/chunk-PEIOKCXD.js +144 -0
- package/dist/chunk-PEIOKCXD.js.map +1 -0
- package/dist/chunk-PLAQRGID.js +281 -0
- package/dist/chunk-PLAQRGID.js.map +1 -0
- package/dist/{chunk-NDUKDKGB.js → chunk-PVL7SJYR.js} +2 -2
- package/dist/chunk-PWXFETED.js +146 -0
- package/dist/chunk-PWXFETED.js.map +1 -0
- package/dist/chunk-QMT5IFKD.js +64 -0
- package/dist/chunk-QMT5IFKD.js.map +1 -0
- package/dist/chunk-RIGG6NNZ.js +74 -0
- package/dist/chunk-RIGG6NNZ.js.map +1 -0
- package/dist/{chunk-JBD6YTS2.js → chunk-RMTJMZBQ.js} +2 -2
- package/dist/{chunk-FX7FMZ2U.js → chunk-RX5DC5KO.js} +2 -2
- package/dist/chunk-RX5DC5KO.js.map +1 -0
- package/dist/{chunk-EKDAZLCF.js → chunk-S52LOF3I.js} +21 -24
- package/dist/chunk-S52LOF3I.js.map +1 -0
- package/dist/chunk-S6DQEDBV.js +145 -0
- package/dist/chunk-S6DQEDBV.js.map +1 -0
- package/dist/{chunk-Y7FODBWF.js → chunk-SGMO4KBC.js} +1 -1
- package/dist/chunk-SGMO4KBC.js.map +1 -0
- package/dist/chunk-SK5CNDEL.js +57 -0
- package/dist/chunk-SK5CNDEL.js.map +1 -0
- package/dist/{chunk-LEA3N4OQ.js → chunk-SLXXCM56.js} +2 -2
- package/dist/chunk-SLXXCM56.js.map +1 -0
- package/dist/{chunk-MRSCXF6Z.js → chunk-SMXAOGFW.js} +5 -5
- package/dist/chunk-SMXAOGFW.js.map +1 -0
- package/dist/chunk-SSNESKAJ.js +23 -0
- package/dist/chunk-SSNESKAJ.js.map +1 -0
- package/dist/{chunk-A75U32HT.js → chunk-TPEIE4IP.js} +2 -2
- package/dist/{chunk-SIM6HKVI.js → chunk-TQOQC4PZ.js} +2 -2
- package/dist/chunk-TQOQC4PZ.js.map +1 -0
- package/dist/chunk-U7N2PWMO.js +33 -0
- package/dist/chunk-U7N2PWMO.js.map +1 -0
- package/dist/{chunk-I2CWZAD4.js → chunk-UOYF3DBN.js} +16 -6
- package/dist/chunk-UOYF3DBN.js.map +1 -0
- package/dist/chunk-UVACR5CC.js +174 -0
- package/dist/chunk-UVACR5CC.js.map +1 -0
- package/dist/chunk-VTWZCX6H.js +281 -0
- package/dist/chunk-VTWZCX6H.js.map +1 -0
- package/dist/{chunk-4H4QYQFF.js → chunk-WDUSQ6HR.js} +3 -3
- package/dist/chunk-WDUSQ6HR.js.map +1 -0
- package/dist/{chunk-HRYQ7IES.js → chunk-X2Q6QPMS.js} +8 -8
- package/dist/chunk-X2Q6QPMS.js.map +1 -0
- package/dist/{chunk-WEU6WLM4.js → chunk-XB2HSI2J.js} +7 -7
- package/dist/chunk-XB2HSI2J.js.map +1 -0
- package/dist/{chunk-UZMOWHC3.js → chunk-XD3KUE4Q.js} +2 -2
- package/dist/{chunk-52JHLCMQ.js → chunk-XTHDFSN3.js} +2 -2
- package/dist/chunk-XTHDFSN3.js.map +1 -0
- package/dist/chunk-YAKVZPPI.js +39 -0
- package/dist/chunk-YAKVZPPI.js.map +1 -0
- package/dist/{chunk-WKFZ5MMN.js → chunk-YXO6QOFA.js} +3 -3
- package/dist/chunk-YXO6QOFA.js.map +1 -0
- package/dist/chunk-ZEAJABLA.js +146 -0
- package/dist/chunk-ZEAJABLA.js.map +1 -0
- package/dist/chunk-ZJTONHYI.js +144 -0
- package/dist/chunk-ZJTONHYI.js.map +1 -0
- package/dist/{chunk-W4GH6ZKK.js → chunk-ZM763HMC.js} +2 -2
- package/dist/{chunk-7WJGYLRQ.js → chunk-ZMYDQLD7.js} +6 -6
- package/dist/chunk-ZMYDQLD7.js.map +1 -0
- package/dist/chunk-ZN52UBYA.js +39 -0
- package/dist/{chunk-I7VFM7I6.js.map → chunk-ZN52UBYA.js.map} +1 -1
- package/dist/chunk-ZYELOUJG.js +63 -0
- package/dist/chunk-ZYELOUJG.js.map +1 -0
- package/dist/icon.js +8 -8
- package/dist/icons/call-end.js +1 -1
- package/dist/icons/camera-disabled.js +2 -2
- package/dist/icons/camera.js +2 -2
- package/dist/icons/close-panel-arrow.js +2 -2
- package/dist/icons/down.js +2 -2
- package/dist/icons/end-call.js +2 -2
- package/dist/icons/index.js +8 -8
- package/dist/icons/mic.js +2 -2
- package/dist/icons/phone-ring.js +2 -2
- package/dist/icons/up.js +2 -2
- package/dist/index.cjs +44 -65
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +62 -56
- package/dist/index.d.cts +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +72 -72
- package/dist/molecules/date-picker/date-picker-button.cjs +6 -12
- package/dist/molecules/date-picker/date-picker-button.cjs.map +1 -1
- package/dist/molecules/date-picker/date-picker-button.d.cts +1 -1
- package/dist/molecules/date-picker/date-picker-button.d.ts +1 -1
- package/dist/molecules/date-picker/date-picker-button.js +35 -35
- package/dist/molecules/date-picker/index.cjs.map +1 -1
- package/dist/molecules/date-picker/index.js +10 -10
- package/dist/molecules/dot-navigation.cjs +1 -2
- package/dist/molecules/dot-navigation.cjs.map +1 -1
- package/dist/molecules/dot-navigation.d.cts +1 -1
- package/dist/molecules/dot-navigation.d.ts +1 -1
- package/dist/molecules/dot-navigation.js +2 -2
- package/dist/molecules/download-card.cjs +1 -2
- package/dist/molecules/download-card.cjs.map +1 -1
- package/dist/molecules/download-card.d.cts +1 -1
- package/dist/molecules/download-card.d.ts +1 -1
- package/dist/molecules/download-card.js +4 -4
- package/dist/molecules/expand-table/index.cjs +12 -24
- package/dist/molecules/expand-table/index.cjs.map +1 -1
- package/dist/molecules/expand-table/index.d.cts +1 -1
- package/dist/molecules/expand-table/index.d.ts +1 -1
- package/dist/molecules/expand-table/index.js +35 -35
- package/dist/molecules/expand-table/row.cjs +7 -14
- package/dist/molecules/expand-table/row.cjs.map +1 -1
- package/dist/molecules/expand-table/row.d.cts +1 -1
- package/dist/molecules/expand-table/row.d.ts +1 -1
- package/dist/molecules/expand-table/row.js +34 -34
- package/dist/molecules/force-refresh.cjs +1 -2
- package/dist/molecules/force-refresh.cjs.map +1 -1
- package/dist/molecules/force-refresh.d.cts +1 -1
- package/dist/molecules/force-refresh.d.ts +1 -1
- package/dist/molecules/force-refresh.js +3 -3
- package/dist/molecules/form/form.cjs +1 -2
- package/dist/molecules/form/form.cjs.map +1 -1
- package/dist/molecules/form/form.d.cts +4 -4
- package/dist/molecules/form/form.d.ts +4 -4
- package/dist/molecules/form/form.js +4 -4
- package/dist/molecules/form/index.cjs +1 -2
- package/dist/molecules/form/index.cjs.map +1 -1
- package/dist/molecules/form/index.js +4 -4
- package/dist/molecules/ghost-post.cjs +1 -2
- package/dist/molecules/ghost-post.cjs.map +1 -1
- package/dist/molecules/ghost-post.d.cts +2 -2
- package/dist/molecules/ghost-post.d.ts +2 -2
- package/dist/molecules/ghost-post.js +5 -5
- package/dist/molecules/index.cjs +24 -42
- package/dist/molecules/index.cjs.map +1 -1
- package/dist/molecules/index.js +53 -53
- package/dist/molecules/learning-post.cjs +3 -6
- package/dist/molecules/learning-post.cjs.map +1 -1
- package/dist/molecules/learning-post.d.cts +3 -3
- package/dist/molecules/learning-post.d.ts +3 -3
- package/dist/molecules/learning-post.js +7 -7
- package/dist/molecules/navigation.cjs +5 -10
- package/dist/molecules/navigation.cjs.map +1 -1
- package/dist/molecules/navigation.d.cts +1 -1
- package/dist/molecules/navigation.d.ts +1 -1
- package/dist/molecules/navigation.js +34 -34
- package/dist/molecules/radio-button-card.cjs +5 -10
- package/dist/molecules/radio-button-card.cjs.map +1 -1
- package/dist/molecules/radio-button-card.d.cts +2 -2
- package/dist/molecules/radio-button-card.d.ts +2 -2
- package/dist/molecules/radio-button-card.js +34 -34
- package/dist/molecules/stepper.cjs +1 -2
- package/dist/molecules/stepper.cjs.map +1 -1
- package/dist/molecules/stepper.d.cts +4 -4
- package/dist/molecules/stepper.d.ts +4 -4
- package/dist/molecules/stepper.js +11 -11
- package/dist/molecules/tag-selector.cjs +14 -22
- package/dist/molecules/tag-selector.cjs.map +1 -1
- package/dist/molecules/tag-selector.d.cts +5 -5
- package/dist/molecules/tag-selector.d.ts +5 -5
- package/dist/molecules/tag-selector.js +34 -34
- package/dist/molecules/time-select.cjs +5 -10
- package/dist/molecules/time-select.cjs.map +1 -1
- package/dist/molecules/time-select.d.cts +1 -1
- package/dist/molecules/time-select.d.ts +1 -1
- package/dist/molecules/time-select.js +37 -37
- package/dist/test/button.test.js +1 -1
- package/dist/theme/portal-provider.cjs +3 -1
- package/dist/theme/portal-provider.cjs.map +1 -1
- package/dist/theme/portal-provider.d.cts +4 -4
- package/dist/theme/portal-provider.d.ts +4 -4
- package/dist/theme/portal-provider.js +2 -2
- package/dist/theme/theme-provider.cjs.map +1 -1
- package/dist/theme/theme-provider.d.cts +2 -2
- package/dist/theme/theme-provider.d.ts +2 -2
- package/dist/theme/theme-provider.js +2 -2
- package/dist/theme/use-theme.js +1 -1
- package/dist/ui-props/index.js +1 -1
- package/dist/utils/convert-button-size.d.cts +3 -3
- package/dist/utils/convert-button-size.d.ts +3 -3
- package/dist/utils/convert-button-size.js +1 -1
- package/dist/utils/get-cell-align.js +1 -1
- package/dist/utils/get-column-meta.js +2 -2
- package/dist/utils/get-time-options.cjs +1 -2
- package/dist/utils/get-time-options.cjs.map +1 -1
- package/dist/utils/get-time-options.js +2 -2
- package/dist/utils/index.cjs +3 -6
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.js +4 -4
- package/dist/utils/map-with-responsive.js +1 -1
- package/dist/utils/scroll-to.cjs +2 -4
- package/dist/utils/scroll-to.cjs.map +1 -1
- package/dist/utils/scroll-to.js +2 -2
- package/package.json +14 -14
- package/src/app/platform/coach-question-list.tsx +2 -2
- package/src/app/platform/contents-card.tsx +1 -1
- package/src/app/platform/curriculum-card.tsx +1 -1
- package/src/app/platform/edit-coaching-time.tsx +1 -1
- package/src/app/platform/edit-service-type.tsx +1 -1
- package/src/app/platform/goal-manage-card-edit.tsx +1 -1
- package/src/app/platform/goal-manage-card-read.tsx +1 -1
- package/src/app/platform/on-offline-radio-card.tsx +4 -4
- package/src/app/platform/report-card.tsx +8 -4
- package/src/app/platform/reservation-card.tsx +1 -1
- package/src/app/platform/session-card.tsx +2 -2
- package/src/app/platform/session-review-simple-read.tsx +2 -2
- package/src/app/platform/userInfos/coaching-customer-info/index.tsx +1 -1
- package/src/app/platform/userInfos/coaching-customer-info/large.tsx +1 -1
- package/src/app/platform/userInfos/coaching-customer-info/medium.tsx +1 -1
- package/src/app/platform/userInfos/coaching-customer-info/small.tsx +1 -1
- package/src/app/platform/userInfos/session-user-info-detail.tsx +3 -3
- package/src/app/platform/userInfos/utils.tsx +5 -5
- package/src/atoms/auto-sizing-input.tsx +1 -1
- package/src/atoms/avatar.tsx +1 -1
- package/src/atoms/badge.tsx +1 -1
- package/src/atoms/bullet-text.tsx +1 -1
- package/src/atoms/button.tsx +1 -1
- package/src/atoms/check-box.tsx +1 -1
- package/src/atoms/collapse.tsx +1 -1
- package/src/atoms/dialog.tsx +4 -4
- package/src/atoms/drawer.tsx +3 -3
- package/src/atoms/ellipsis-tooltip.tsx +1 -1
- package/src/atoms/field-error-wrapper.tsx +1 -1
- package/src/atoms/heading.tsx +1 -1
- package/src/atoms/link.tsx +1 -1
- package/src/atoms/pagination.tsx +1 -1
- package/src/atoms/select.tsx +1 -1
- package/src/atoms/toast.tsx +3 -2
- package/src/atoms/typo.tsx +1 -1
- package/src/charts/horizontal-bar-chart.tsx +1 -1
- package/src/molecules/date-picker/date-picker-button.tsx +1 -1
- package/src/molecules/date-picker/index.tsx +1 -1
- package/src/molecules/dot-navigation.tsx +1 -1
- package/src/molecules/download-card.tsx +1 -1
- package/src/molecules/expand-table/index.tsx +1 -1
- package/src/molecules/expand-table/row.tsx +1 -1
- package/src/molecules/force-refresh.tsx +2 -2
- package/src/molecules/form/form.tsx +4 -4
- package/src/molecules/ghost-post.tsx +2 -2
- package/src/molecules/learning-post.tsx +3 -3
- package/src/molecules/navigation.tsx +1 -1
- package/src/molecules/radio-button-card.tsx +2 -2
- package/src/molecules/stepper.tsx +8 -8
- package/src/molecules/tag-selector.tsx +11 -9
- package/src/molecules/time-select.tsx +1 -1
- package/src/theme/portal-provider.tsx +6 -4
- package/src/theme/theme-provider.tsx +2 -2
- package/dist/chunk-2CZ4RJLO.js.map +0 -1
- package/dist/chunk-2YJ3EG6A.js.map +0 -1
- package/dist/chunk-3D3QOYOC.js +0 -87
- package/dist/chunk-3D3QOYOC.js.map +0 -1
- package/dist/chunk-3J2KX4P6.js +0 -192
- package/dist/chunk-3J2KX4P6.js.map +0 -1
- package/dist/chunk-4DB5HWFL.js.map +0 -1
- package/dist/chunk-4H4QYQFF.js.map +0 -1
- package/dist/chunk-4JBL5FRI.js.map +0 -1
- package/dist/chunk-4UV3GA6V.js.map +0 -1
- package/dist/chunk-52JHLCMQ.js.map +0 -1
- package/dist/chunk-52MVZ6AN.js.map +0 -1
- package/dist/chunk-5BLH4FQG.js.map +0 -1
- package/dist/chunk-5L3GY3OV.js.map +0 -1
- package/dist/chunk-5RXSBHAF.js.map +0 -1
- package/dist/chunk-5T7XMKLA.js.map +0 -1
- package/dist/chunk-6DZ4VE36.js.map +0 -1
- package/dist/chunk-6RT2RUZ2.js.map +0 -1
- package/dist/chunk-6ZAP57FO.js.map +0 -1
- package/dist/chunk-6ZKTBMRW.js.map +0 -1
- package/dist/chunk-74O5ORS3.js +0 -87
- package/dist/chunk-74O5ORS3.js.map +0 -1
- package/dist/chunk-7LJELULM.js.map +0 -1
- package/dist/chunk-7WJGYLRQ.js.map +0 -1
- package/dist/chunk-ABZVJJ4O.js.map +0 -1
- package/dist/chunk-ACWGF5TI.js.map +0 -1
- package/dist/chunk-AVIKUC4O.js.map +0 -1
- package/dist/chunk-B6JJT4VK.js.map +0 -1
- package/dist/chunk-CFMW7GOI.js.map +0 -1
- package/dist/chunk-CO3KW264.js +0 -39
- package/dist/chunk-CO3KW264.js.map +0 -1
- package/dist/chunk-CWJ6DC27.js.map +0 -1
- package/dist/chunk-CYYWMYE7.js.map +0 -1
- package/dist/chunk-DALP6AI5.js.map +0 -1
- package/dist/chunk-DDXBIVPL.js.map +0 -1
- package/dist/chunk-DEF5OKZT.js +0 -169
- package/dist/chunk-DEF5OKZT.js.map +0 -1
- package/dist/chunk-DEQLZ43V.js.map +0 -1
- package/dist/chunk-E2X4TL7Q.js.map +0 -1
- package/dist/chunk-EDTEVEJW.js.map +0 -1
- package/dist/chunk-EKDAZLCF.js.map +0 -1
- package/dist/chunk-ERDNB5SX.js.map +0 -1
- package/dist/chunk-EWD4AO5N.js.map +0 -1
- package/dist/chunk-FBOJKLC6.js.map +0 -1
- package/dist/chunk-FX7FMZ2U.js.map +0 -1
- package/dist/chunk-GEWPH2WM.js.map +0 -1
- package/dist/chunk-GFP2V4TL.js.map +0 -1
- package/dist/chunk-HH3EFLW7.js.map +0 -1
- package/dist/chunk-HJB3AASV.js.map +0 -1
- package/dist/chunk-HRYQ7IES.js.map +0 -1
- package/dist/chunk-I2CWZAD4.js.map +0 -1
- package/dist/chunk-JAJC7VPU.js +0 -117
- package/dist/chunk-JAJC7VPU.js.map +0 -1
- package/dist/chunk-JC2D53VF.js +0 -165
- package/dist/chunk-JC2D53VF.js.map +0 -1
- package/dist/chunk-JYJA2PMG.js.map +0 -1
- package/dist/chunk-K5YQF7KJ.js +0 -87
- package/dist/chunk-K5YQF7KJ.js.map +0 -1
- package/dist/chunk-KBTV24Y4.js +0 -80
- package/dist/chunk-KBTV24Y4.js.map +0 -1
- package/dist/chunk-KGA3ZCJ5.js +0 -99
- package/dist/chunk-KGA3ZCJ5.js.map +0 -1
- package/dist/chunk-LEA3N4OQ.js.map +0 -1
- package/dist/chunk-LHCDPZ5E.js.map +0 -1
- package/dist/chunk-M6RP7E5E.js.map +0 -1
- package/dist/chunk-ME5XT4JY.js.map +0 -1
- package/dist/chunk-MRSCXF6Z.js.map +0 -1
- package/dist/chunk-NAL2USH5.js.map +0 -1
- package/dist/chunk-P442X52N.js.map +0 -1
- package/dist/chunk-PHGPKAXK.js.map +0 -1
- package/dist/chunk-Q5AFRGVP.js.map +0 -1
- package/dist/chunk-QJ6K6ITU.js.map +0 -1
- package/dist/chunk-QUEDUGJF.js +0 -196
- package/dist/chunk-QUEDUGJF.js.map +0 -1
- package/dist/chunk-QUHTO7MY.js.map +0 -1
- package/dist/chunk-RYOOMWGK.js +0 -192
- package/dist/chunk-RYOOMWGK.js.map +0 -1
- package/dist/chunk-SIM6HKVI.js.map +0 -1
- package/dist/chunk-SQRJHBUR.js.map +0 -1
- package/dist/chunk-TD45ZF7D.js.map +0 -1
- package/dist/chunk-THHUFQEU.js.map +0 -1
- package/dist/chunk-TL3L4CLE.js.map +0 -1
- package/dist/chunk-TNYJRBQW.js +0 -84
- package/dist/chunk-TNYJRBQW.js.map +0 -1
- package/dist/chunk-UQVTXKJY.js.map +0 -1
- package/dist/chunk-USAO24JU.js.map +0 -1
- package/dist/chunk-VKGTIYVH.js.map +0 -1
- package/dist/chunk-VR25ARRS.js.map +0 -1
- package/dist/chunk-WCX5NKJS.js +0 -84
- package/dist/chunk-WCX5NKJS.js.map +0 -1
- package/dist/chunk-WEU6WLM4.js.map +0 -1
- package/dist/chunk-WKFZ5MMN.js.map +0 -1
- package/dist/chunk-XWUFK43Q.js +0 -192
- package/dist/chunk-XWUFK43Q.js.map +0 -1
- package/dist/chunk-Y7FODBWF.js.map +0 -1
- package/dist/chunk-YPYQISJB.js.map +0 -1
- package/dist/chunk-YQBY5R2B.js.map +0 -1
- package/dist/chunk-ZLRO6VGF.js.map +0 -1
- package/dist/chunk-ZWVC35OM.js.map +0 -1
- /package/dist/{chunk-T6CF4F7J.js.map → chunk-25Q6QLSN.js.map} +0 -0
- /package/dist/{chunk-N552FDTV.js.map → chunk-2NMEKWO5.js.map} +0 -0
- /package/dist/{chunk-BSTJBBEX.js.map → chunk-2TPQQBUQ.js.map} +0 -0
- /package/dist/{chunk-QDZS4B6A.js.map → chunk-3FEMWCWV.js.map} +0 -0
- /package/dist/{chunk-UNTA4JJU.js.map → chunk-DDUKEE5E.js.map} +0 -0
- /package/dist/{chunk-3WSZRTAF.js.map → chunk-HLFTU725.js.map} +0 -0
- /package/dist/{chunk-4WFMOFN2.js.map → chunk-HYE34QEM.js.map} +0 -0
- /package/dist/{chunk-UFYNSPJQ.js.map → chunk-MEKWBVXE.js.map} +0 -0
- /package/dist/{chunk-NDUKDKGB.js.map → chunk-PVL7SJYR.js.map} +0 -0
- /package/dist/{chunk-JBD6YTS2.js.map → chunk-RMTJMZBQ.js.map} +0 -0
- /package/dist/{chunk-A75U32HT.js.map → chunk-TPEIE4IP.js.map} +0 -0
- /package/dist/{chunk-UZMOWHC3.js.map → chunk-XD3KUE4Q.js.map} +0 -0
- /package/dist/{chunk-W4GH6ZKK.js.map → chunk-ZM763HMC.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/molecules/tag-selector.tsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport {\n ChevronRightIcon,\n Cross1Icon,\n MagnifyingGlassIcon,\n} from '@radix-ui/react-icons';\nimport { Popover } from '../atoms/popover';\nimport { Flex } from '../atoms/flex';\nimport { Button } from '../atoms/button';\nimport type { BadgeProps } from '../atoms/badge';\nimport { Badge } from '../atoms/badge';\nimport { CheckIcon } from '../icon';\nimport { ScrollArea } from '../atoms/scroll-area';\nimport { Grid } from '../atoms/grid';\nimport type { TypoProps } from '../atoms';\nimport { AutoSizingInput, Typo } from '../atoms';\n\ntype ID = string;\ninterface Item {\n name: string;\n id: ID;\n}\n\nconst OPTION_HEIGHT = 32;\n\nexport interface TagSelectorProps<T extends Item> {\n options?: T[];\n selected?: ID[];\n placeholder?: string;\n disabled?: boolean;\n maxCount?: number;\n style?: React.CSSProperties;\n size?: 'large' | 'medium' | 'small';\n readOnly?: boolean;\n error?: boolean;\n\n onChange?: (selected: ID[]) => void;\n tagRender?: (item: T, onClickDelete?: () => void) => React.ReactNode;\n DropdownContainer?: DropdownContainer<T>;\n open?: boolean;\n dropdownItemRender?: (item: T) => React.ReactNode;\n}\ntype DropdownContainer<T> = (props: {\n items: T[];\n children: React.ReactNode;\n currentItem?: T;\n}) => React.ReactNode;\n\nconst DefaultDropdownContainer = (props: {\n children: React.ReactNode;\n}): React.ReactNode => {\n return props.children;\n};\n\nexport function TagSelector<T extends Item>(\n props: TagSelectorProps<T>\n): React.ReactNode {\n const {\n options = [],\n tagRender,\n placeholder,\n maxCount = 0,\n DropdownContainer = DefaultDropdownContainer,\n size = 'medium',\n readOnly,\n error,\n open: propsOpen,\n dropdownItemRender,\n } = props;\n // eslint-disable-next-line react/hook-use-state -- props에 따라 미사용 상태가 될 수 있음\n const [_selected, _setSelected] = useState<string[]>(props.selected || []);\n const selected = props.selected || _selected;\n const setSelected: (v: ID[]) => void = props.onChange || _setSelected;\n const [value, setValue] = useState<string>('');\n const [focusIndex, setFocusIndex] = useState<number | null>(null);\n const [open, setOpen] = useState(false);\n const [focus, setFocus] = useState(false);\n const fieldRef = useRef<HTMLInputElement>(null);\n const scrollRef = useRef<HTMLDivElement>(null);\n\n const closeRef = useRef<ReturnType<typeof setTimeout>>();\n\n const onFocus = useCallback(() => {\n clearTimeout(closeRef.current);\n setFocus(true);\n setOpen(true);\n }, []);\n\n const onBlur = useCallback(() => {\n closeRef.current = setTimeout(() => {\n setFocus(false);\n setOpen(false);\n setTimeout(() => {\n setValue('');\n }, 100);\n }, 300);\n }, []);\n\n const onChangeValue = useCallback<React.ChangeEventHandler<HTMLInputElement>>(\n (e) => {\n setValue(e.target.value);\n },\n []\n );\n\n const filteredOptions = useMemo<T[]>(() => {\n return options.filter((option) => {\n return option.name.includes(value);\n });\n }, [options, value]);\n\n const selectedItem = useMemo<T[]>(() => {\n const result = [] as T[];\n selected.forEach((id) => {\n const maybeItem = options.find((option) => option.id === id);\n if (maybeItem) result.push(maybeItem);\n });\n return result;\n }, [options, selected]);\n\n const onDelete = useCallback(\n (id: string) => {\n setSelected(selected.filter((el) => el !== id));\n },\n [selected, setSelected]\n );\n\n const onSelect = useCallback(\n (id: string) => {\n if (maxCount && selected.length + 1 > maxCount) return;\n setSelected([...selected, id]);\n },\n [maxCount, selected, setSelected]\n );\n\n const toggleItem = useCallback(\n (id: string) => {\n if (selected.includes(id)) {\n onDelete(id);\n } else {\n onSelect(id);\n }\n },\n [onDelete, onSelect, selected]\n );\n\n const setScroll = useCallback((index: number): void => {\n if (scrollRef.current) {\n const scrollTop = scrollRef.current.scrollTop;\n const clientHeight = scrollRef.current.clientHeight;\n const focusTop = index * OPTION_HEIGHT;\n if (focusTop < scrollTop) {\n scrollRef.current.scrollTop = focusTop;\n } else if (focusTop + OPTION_HEIGHT > scrollTop + clientHeight) {\n scrollRef.current.scrollTop = focusTop + OPTION_HEIGHT - clientHeight;\n }\n }\n }, []);\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n const key = e.key;\n\n switch (key) {\n case 'ArrowDown': {\n e.preventDefault();\n let newFocus = 0;\n if (typeof focusIndex === 'number') {\n newFocus = focusIndex + 1 >= options.length ? 0 : focusIndex + 1;\n }\n setFocusIndex(newFocus);\n setScroll(newFocus);\n break;\n }\n\n case 'ArrowUp': {\n e.preventDefault();\n let newFocus = 0;\n if (typeof focusIndex === 'number') {\n newFocus = focusIndex - 1 < 0 ? options.length - 1 : focusIndex - 1;\n }\n setFocusIndex(newFocus);\n setScroll(newFocus);\n break;\n }\n\n case 'Enter':\n setValue('');\n if (focusIndex !== null) {\n toggleItem(filteredOptions[focusIndex]?.id);\n }\n break;\n\n case 'Backspace':\n if (value.length === 0) {\n setSelected(selected.slice(0, -1));\n }\n break;\n\n case 'Escape':\n setOpen(false);\n break;\n }\n },\n [\n focusIndex,\n value.length,\n setScroll,\n options.length,\n toggleItem,\n filteredOptions,\n setSelected,\n selected,\n ]\n );\n\n const placeholderVisible = useMemo(() => {\n if (selectedItem.length) return false;\n if (value) return false;\n if (focus) return false;\n return true;\n }, [focus, selectedItem.length, value]);\n\n useEffect(() => {\n setFocusIndex(null);\n }, [open]);\n\n useEffect(() => {\n setFocusIndex(0);\n }, [filteredOptions]);\n\n const badgeSize = useMemo<BadgeProps['size']>(() => {\n switch (size) {\n case 'large':\n return 'large';\n case 'medium':\n case 'small':\n default:\n return 'small';\n }\n }, [size]);\n\n const placeholderVariant = useMemo<TypoProps['variant']>(() => {\n switch (size) {\n case 'large':\n return 'subtitle';\n case 'medium':\n default:\n return 'body';\n }\n }, [size]);\n\n const focusClassName = focus ? ' focused' : '';\n const readOnlyClassName = readOnly ? ' read-only' : '';\n const errorClassName = error ? ' error' : '';\n\n const readonlyContent = (\n <Flex gap=\"1\">\n {selectedItem.map((item) => {\n return tagRender ? (\n tagRender(item)\n ) : (\n <Badge key={item.id} size={badgeSize}>\n {item.name}\n </Badge>\n );\n })}\n </Flex>\n );\n\n const editContent = (\n <>\n <Flex\n align=\"center\"\n gap=\"1\"\n maxWidth=\"100%\"\n overflow=\"hidden\"\n wrap=\"wrap\"\n >\n {selectedItem.map((item) => {\n return tagRender ? (\n tagRender(item, () => {\n onDelete(item.id);\n })\n ) : (\n <Badge key={item.id} size={badgeSize}>\n {item.name}\n <Button\n onClick={() => {\n onDelete(item.id);\n }}\n variant=\"transparent\"\n >\n <Cross1Icon />\n </Button>\n </Badge>\n );\n })}\n {placeholderVisible ? (\n <Typo color=\"gray\" variant={placeholderVariant}>\n {placeholder}\n </Typo>\n ) : null}\n <AutoSizingInput\n onBlur={onBlur}\n onChange={onChangeValue}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n ref={fieldRef}\n value={value}\n />\n </Flex>\n {focus ? <MagnifyingGlassIcon /> : <ChevronRightIcon />}\n </>\n );\n return (\n <Popover.Root open={(Boolean(filteredOptions.length) && propsOpen) || open}>\n <Popover.Trigger style={{ position: 'relative' }}>\n <Grid\n align=\"center\"\n className={`tag-selector ${size} ${focusClassName}${readOnlyClassName}${errorClassName}`}\n columns=\"1fr auto\"\n gap=\"1\"\n onClick={() => !readOnly && fieldRef.current?.focus()}\n >\n {readOnly ? readonlyContent : editContent}\n </Grid>\n </Popover.Trigger>\n\n <Popover.Content\n onOpenAutoFocus={preventDefault}\n onTouchMove={stopPropagationTouch}\n onWheel={stopPropagationWheel}\n sticky=\"always\"\n >\n <DropdownContainer\n currentItem={filteredOptions[focusIndex || 0]}\n items={filteredOptions}\n >\n <ScrollArea\n ref={scrollRef}\n scrollbars=\"vertical\"\n style={{ height: OPTION_HEIGHT * 8 }}\n type=\"auto\"\n >\n <Flex direction=\"column\">\n {filteredOptions.map((item, i) => {\n const isSelected = Boolean(\n selected.find((el) => el === item.id)\n );\n const isFocus = i === focusIndex;\n\n return (\n <Button\n className={`tag-selector-button ${isFocus ? 'focused' : ''}`}\n key={item.id}\n onClick={() => {\n toggleItem(item.id);\n fieldRef.current?.focus();\n }}\n onMouseEnter={() => {\n setFocusIndex(i);\n }}\n variant={isSelected ? 'soft' : 'outline'}\n >\n <Flex justify=\"between\" width=\"100%\">\n {dropdownItemRender\n ? dropdownItemRender(item)\n : item.name}\n {isSelected ? <CheckIcon /> : null}\n </Flex>\n </Button>\n );\n })}\n </Flex>\n </ScrollArea>\n </DropdownContainer>\n </Popover.Content>\n </Popover.Root>\n );\n}\n\nconst stopPropagationTouch: React.TouchEventHandler<HTMLDivElement> = (\n e\n): void => {\n e.stopPropagation();\n};\n\nconst stopPropagationWheel: React.WheelEventHandler<HTMLDivElement> = (\n e\n): void => {\n e.stopPropagation();\n};\n\nconst preventDefault = (e: Event): void => {\n e.preventDefault();\n};\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Heading
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3IT3NVK6.js";
|
|
4
4
|
import {
|
|
5
5
|
IconButton
|
|
6
6
|
} from "./chunk-O3DNDMV3.js";
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
__objRest,
|
|
16
16
|
__spreadProps,
|
|
17
17
|
__spreadValues
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-2NMEKWO5.js";
|
|
19
19
|
|
|
20
20
|
// src/molecules/date-picker/index.tsx
|
|
21
21
|
import { forwardRef } from "react";
|
|
@@ -98,4 +98,4 @@ var renderCustomHeader = (props) => {
|
|
|
98
98
|
export {
|
|
99
99
|
DatePicker
|
|
100
100
|
};
|
|
101
|
-
//# sourceMappingURL=chunk-
|
|
101
|
+
//# sourceMappingURL=chunk-GSU262TZ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/molecules/date-picker/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any -- ReactPicker의 렌더러가 object를 return함 버그를 해결하기 위해 강제 assertion 사용 */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access -- ReactPicker의 렌더러가 object를 return함 버그를 해결하기 위해 강제 assertion 사용 */\nimport type { ElementRef } from 'react';\nimport React, { forwardRef } from 'react';\nimport type { DatePickerProps as ReactDatePickerProps } from 'react-datepicker';\nimport * as RDP from 'react-datepicker';\nimport { registerLocale, setDefaultLocale } from 'react-datepicker';\nimport { ko as fnKo } from 'date-fns/locale';\nimport { IconButton } from '../../atoms/icon-button';\nimport { Flex } from '../../atoms/flex';\nimport { ChevronLeftIcon, ChevronRightIcon } from '../../icon';\nimport { Heading } from '../../atoms/heading';\n\nregisterLocale('ko', fnKo);\nsetDefaultLocale('ko');\n\nexport type DatePickerProps = ReactDatePickerProps & {\n fullWidth?: boolean;\n};\ntype DatePickerRef = ElementRef<typeof ReactDatePicker>;\n\nconst ReactDatePicker = ((RDP.default as any).default ||\n (RDP.default as any) ||\n (RDP as any)) as typeof RDP.default;\n\nexport const DatePicker = forwardRef<DatePickerRef, DatePickerProps>(\n (props, ref): React.ReactNode => {\n const { fullWidth, ...rest } = props;\n const fullWidthClassName = fullWidth ? 'full-width' : '';\n return (\n <Flex p=\"0\" width=\"100%\">\n <ReactDatePicker\n dateFormat=\"YYYY/MM/dd\"\n nextMonthButtonLabel=\"다음 달\"\n placeholderText=\"YYYY/mm/dd\"\n popperProps={{ strategy: 'fixed' }}\n previousMonthButtonLabel=\"이전 달\"\n ref={ref}\n renderCustomHeader={renderCustomHeader}\n showPopperArrow={false}\n timeIntervals={10}\n {...rest}\n calendarClassName={`tipp_datePicker_calendar ${rest.calendarClassName || ''}`}\n timeCaption=\"시간\"\n wrapperClassName={`tipp_datePicker ${fullWidthClassName} ${rest.wrapperClassName || ''}`}\n />\n </Flex>\n );\n }\n);\n\nDatePicker.displayName = 'DatePicker';\n\nconst renderCustomHeader: ReactDatePickerProps['renderCustomHeader'] = (\n props\n) => {\n const {\n date,\n decreaseMonth,\n increaseMonth,\n prevMonthButtonDisabled,\n nextMonthButtonDisabled,\n } = props;\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- date가 undefined일 수 있음\n const year = date ? new Date(date).getFullYear() : '-';\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- date가 undefined일 수 있음\n const month = date ? new Date(date).getMonth() + 1 : '-';\n\n return (\n <Flex align=\"center\" justify=\"between\" pb=\"2\" pl=\"2\" pr=\"2\">\n <IconButton\n disabled={prevMonthButtonDisabled}\n onClick={decreaseMonth}\n type=\"button\"\n variant=\"ghost\"\n >\n <ChevronLeftIcon />\n </IconButton>\n <Flex gap=\"3\">\n <Heading variant=\"heading4\" weight=\"regular\">\n {year}년\n </Heading>\n <Heading variant=\"heading4\" weight=\"regular\">\n {month}월\n </Heading>\n </Flex>\n\n <IconButton\n disabled={nextMonthButtonDisabled}\n onClick={increaseMonth}\n type=\"button\"\n variant=\"ghost\"\n >\n <ChevronRightIcon />\n </IconButton>\n </Flex>\n );\n};\n\n// DatePicker.displayName = 'DatePicker';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAGA,SAAgB,kBAAkB;AAElC,YAAY,SAAS;AACrB,SAAS,gBAAgB,wBAAwB;AACjD,SAAS,MAAM,YAAY;AAwBnB,cAiDA,YAjDA;AAlBR,eAAe,MAAM,IAAI;AACzB,iBAAiB,IAAI;AAOrB,IAAM,kBAAwB,YAAgB,WACvC,eACJ;AAEI,IAAM,aAAa;AAAA,EACxB,CAAC,OAAO,QAAyB;AAC/B,UAA+B,YAAvB,YA3BZ,IA2BmC,IAAT,iBAAS,IAAT,CAAd;AACR,UAAM,qBAAqB,YAAY,eAAe;AACtD,WACE,oBAAC,QAAK,GAAE,KAAI,OAAM,QAChB;AAAA,MAAC;AAAA;AAAA,QACC,YAAW;AAAA,QACX,sBAAqB;AAAA,QACrB,iBAAgB;AAAA,QAChB,aAAa,EAAE,UAAU,QAAQ;AAAA,QACjC,0BAAyB;AAAA,QACzB;AAAA,QACA;AAAA,QACA,iBAAiB;AAAA,QACjB,eAAe;AAAA,SACX,OAVL;AAAA,QAWC,mBAAmB,4BAA4B,KAAK,qBAAqB,EAAE;AAAA,QAC3E,aAAY;AAAA,QACZ,kBAAkB,mBAAmB,kBAAkB,IAAI,KAAK,oBAAoB,EAAE;AAAA;AAAA,IACxF,GACF;AAAA,EAEJ;AACF;AAEA,WAAW,cAAc;AAEzB,IAAM,qBAAiE,CACrE,UACG;AACH,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAGJ,QAAM,OAAO,OAAO,IAAI,KAAK,IAAI,EAAE,YAAY,IAAI;AAEnD,QAAM,QAAQ,OAAO,IAAI,KAAK,IAAI,EAAE,SAAS,IAAI,IAAI;AAErD,SACE,qBAAC,QAAK,OAAM,UAAS,SAAQ,WAAU,IAAG,KAAI,IAAG,KAAI,IAAG,KACtD;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,UAAU;AAAA,QACV,SAAS;AAAA,QACT,MAAK;AAAA,QACL,SAAQ;AAAA,QAER,8BAAC,mBAAgB;AAAA;AAAA,IACnB;AAAA,IACA,qBAAC,QAAK,KAAI,KACR;AAAA,2BAAC,WAAQ,SAAQ,YAAW,QAAO,WAChC;AAAA;AAAA,QAAK;AAAA,SACR;AAAA,MACA,qBAAC,WAAQ,SAAQ,YAAW,QAAO,WAChC;AAAA;AAAA,QAAM;AAAA,SACT;AAAA,OACF;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,UAAU;AAAA,QACV,SAAS;AAAA,QACT,MAAK;AAAA,QACL,SAAQ;AAAA,QAER,8BAAC,oBAAiB;AAAA;AAAA,IACpB;AAAA,KACF;AAEJ;","names":[]}
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
__objRest,
|
|
3
3
|
__spreadProps,
|
|
4
4
|
__spreadValues
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-2NMEKWO5.js";
|
|
6
6
|
|
|
7
7
|
// src/atoms/card.tsx
|
|
8
8
|
import { forwardRef, useMemo } from "react";
|
|
@@ -14,8 +14,7 @@ var Card = forwardRef(
|
|
|
14
14
|
(props, forwardedRef) => {
|
|
15
15
|
const _a = props, { borderDisable, borderRadius, error } = _a, rest = __objRest(_a, ["borderDisable", "borderRadius", "error"]);
|
|
16
16
|
const borderInsetClassName = useMemo(() => {
|
|
17
|
-
if (!borderDisable)
|
|
18
|
-
return "";
|
|
17
|
+
if (!borderDisable) return "";
|
|
19
18
|
const { left, right, top, bottom } = borderDisable;
|
|
20
19
|
return [
|
|
21
20
|
left && "disable-inset-left",
|
|
@@ -44,4 +43,4 @@ Card.displayName = "Card";
|
|
|
44
43
|
export {
|
|
45
44
|
Card
|
|
46
45
|
};
|
|
47
|
-
//# sourceMappingURL=chunk-
|
|
46
|
+
//# sourceMappingURL=chunk-HEDMSFPW.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/atoms/card.tsx"],"sourcesContent":["import { forwardRef, useMemo } from 'react';\nimport {\n Card as RadixCard,\n type CardProps as RadixCardProps,\n} from '@radix-ui/themes';\n\nexport type CardProps = RadixCardProps & {\n borderRadius?: 'none';\n borderDisable?: {\n left?: boolean;\n right?: boolean;\n top?: boolean;\n bottom?: boolean;\n };\n error?: boolean;\n};\n\nexport const Card = forwardRef<HTMLDivElement, CardProps>(\n (props, forwardedRef) => {\n const { borderDisable, borderRadius, error, ...rest } = props;\n\n const borderInsetClassName = useMemo(() => {\n if (!borderDisable) return '';\n const { left, right, top, bottom } = borderDisable;\n return [\n left && 'disable-inset-left',\n right && 'disable-inset-right',\n top && 'disable-inset-top',\n bottom && 'disable-inset-bottom',\n ]\n .filter(Boolean)\n .join(' ');\n }, [borderDisable]);\n\n const errorClsName = useMemo(() => {\n return error ? ' error' : '';\n }, [error]);\n\n return (\n <RadixCard\n variant=\"surface\"\n {...rest}\n className={`${borderInsetClassName}${errorClsName} ${rest.className || ''}`}\n data-radius={borderRadius}\n ref={forwardedRef}\n />\n );\n }\n);\n\nCard.displayName = 'Card';\n"],"mappings":";;;;;;;AAAA,SAAS,YAAY,eAAe;AACpC;AAAA,EACE,QAAQ;AAAA,OAEH;AAmCD;AAtBC,IAAM,OAAO;AAAA,EAClB,CAAC,OAAO,iBAAiB;AACvB,UAAwD,YAAhD,iBAAe,cAAc,MAnBzC,IAmB4D,IAAT,iBAAS,IAAT,CAAvC,iBAAe,gBAAc;AAErC,UAAM,uBAAuB,QAAQ,MAAM;AACzC,UAAI,CAAC
|
|
1
|
+
{"version":3,"sources":["../src/atoms/card.tsx"],"sourcesContent":["import { forwardRef, useMemo } from 'react';\nimport {\n Card as RadixCard,\n type CardProps as RadixCardProps,\n} from '@radix-ui/themes';\n\nexport type CardProps = RadixCardProps & {\n borderRadius?: 'none';\n borderDisable?: {\n left?: boolean;\n right?: boolean;\n top?: boolean;\n bottom?: boolean;\n };\n error?: boolean;\n};\n\nexport const Card = forwardRef<HTMLDivElement, CardProps>(\n (props, forwardedRef) => {\n const { borderDisable, borderRadius, error, ...rest } = props;\n\n const borderInsetClassName = useMemo(() => {\n if (!borderDisable) return '';\n const { left, right, top, bottom } = borderDisable;\n return [\n left && 'disable-inset-left',\n right && 'disable-inset-right',\n top && 'disable-inset-top',\n bottom && 'disable-inset-bottom',\n ]\n .filter(Boolean)\n .join(' ');\n }, [borderDisable]);\n\n const errorClsName = useMemo(() => {\n return error ? ' error' : '';\n }, [error]);\n\n return (\n <RadixCard\n variant=\"surface\"\n {...rest}\n className={`${borderInsetClassName}${errorClsName} ${rest.className || ''}`}\n data-radius={borderRadius}\n ref={forwardedRef}\n />\n );\n }\n);\n\nCard.displayName = 'Card';\n"],"mappings":";;;;;;;AAAA,SAAS,YAAY,eAAe;AACpC;AAAA,EACE,QAAQ;AAAA,OAEH;AAmCD;AAtBC,IAAM,OAAO;AAAA,EAClB,CAAC,OAAO,iBAAiB;AACvB,UAAwD,YAAhD,iBAAe,cAAc,MAnBzC,IAmB4D,IAAT,iBAAS,IAAT,CAAvC,iBAAe,gBAAc;AAErC,UAAM,uBAAuB,QAAQ,MAAM;AACzC,UAAI,CAAC,cAAe,QAAO;AAC3B,YAAM,EAAE,MAAM,OAAO,KAAK,OAAO,IAAI;AACrC,aAAO;AAAA,QACL,QAAQ;AAAA,QACR,SAAS;AAAA,QACT,OAAO;AAAA,QACP,UAAU;AAAA,MACZ,EACG,OAAO,OAAO,EACd,KAAK,GAAG;AAAA,IACb,GAAG,CAAC,aAAa,CAAC;AAElB,UAAM,eAAe,QAAQ,MAAM;AACjC,aAAO,QAAQ,WAAW;AAAA,IAC5B,GAAG,CAAC,KAAK,CAAC;AAEV,WACE;AAAA,MAAC;AAAA;AAAA,QACC,SAAQ;AAAA,SACJ,OAFL;AAAA,QAGC,WAAW,GAAG,oBAAoB,GAAG,YAAY,IAAI,KAAK,aAAa,EAAE;AAAA,QACzE,eAAa;AAAA,QACb,KAAK;AAAA;AAAA,IACP;AAAA,EAEJ;AACF;AAEA,KAAK,cAAc;","names":[]}
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
__objRest,
|
|
3
3
|
__spreadProps,
|
|
4
4
|
__spreadValues
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-2NMEKWO5.js";
|
|
6
6
|
|
|
7
7
|
// src/icons/end-call.tsx
|
|
8
8
|
import * as React from "react";
|
|
@@ -47,4 +47,4 @@ EndCallIcon.displayName = "EndCallIcon";
|
|
|
47
47
|
export {
|
|
48
48
|
EndCallIcon
|
|
49
49
|
};
|
|
50
|
-
//# sourceMappingURL=chunk-
|
|
50
|
+
//# sourceMappingURL=chunk-HLFTU725.js.map
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
2
|
OnOfflineRadioCard
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-4QWYV2QX.js";
|
|
4
4
|
import {
|
|
5
5
|
DatePickerButton
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-ESHEHOVH.js";
|
|
7
7
|
import {
|
|
8
8
|
TimeSelect
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-5VWEW4M2.js";
|
|
10
10
|
import {
|
|
11
11
|
getTimeOption,
|
|
12
12
|
parseTimeOption
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-NWJSLIQ3.js";
|
|
14
14
|
import {
|
|
15
15
|
Form
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-PWXFETED.js";
|
|
17
17
|
import {
|
|
18
18
|
toast
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-IFRA465K.js";
|
|
20
20
|
import {
|
|
21
21
|
Inset
|
|
22
22
|
} from "./chunk-XQOL7UBI.js";
|
|
@@ -25,36 +25,36 @@ import {
|
|
|
25
25
|
} from "./chunk-EGEQY3KT.js";
|
|
26
26
|
import {
|
|
27
27
|
Heading
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-3IT3NVK6.js";
|
|
29
29
|
import {
|
|
30
30
|
Box
|
|
31
31
|
} from "./chunk-4Y5BEXVN.js";
|
|
32
32
|
import {
|
|
33
33
|
BulletText
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-LMWTEDYS.js";
|
|
35
35
|
import {
|
|
36
36
|
Typo
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-LH57PIY2.js";
|
|
38
38
|
import {
|
|
39
39
|
Flex
|
|
40
40
|
} from "./chunk-25HMMI7R.js";
|
|
41
41
|
import {
|
|
42
42
|
Button
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-AFPH32MF.js";
|
|
44
44
|
import {
|
|
45
45
|
Card
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-HEDMSFPW.js";
|
|
47
47
|
import {
|
|
48
48
|
ArrowRightIcon,
|
|
49
49
|
Cross1Icon
|
|
50
50
|
} from "./chunk-HLFG5ZTU.js";
|
|
51
51
|
import {
|
|
52
52
|
Badge
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-FCIHNIOH.js";
|
|
54
54
|
import {
|
|
55
55
|
__spreadProps,
|
|
56
56
|
__spreadValues
|
|
57
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-2NMEKWO5.js";
|
|
58
58
|
|
|
59
59
|
// src/app/platform/reservation-card.tsx
|
|
60
60
|
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
@@ -99,8 +99,7 @@ function ReservationCard(props) {
|
|
|
99
99
|
}, [defaultTime, defaultType, onClickCancel, onClickReserve, readonly]);
|
|
100
100
|
const onChangeDate = useCallback(
|
|
101
101
|
(newDate) => {
|
|
102
|
-
if (!newDate)
|
|
103
|
-
return;
|
|
102
|
+
if (!newDate) return;
|
|
104
103
|
const { hour = 0, minute = 0 } = time ? parseTimeOption(time) : {};
|
|
105
104
|
setEditValues((prev) => {
|
|
106
105
|
return __spreadProps(__spreadValues({}, prev), {
|
|
@@ -136,8 +135,7 @@ function ReservationCard(props) {
|
|
|
136
135
|
[date]
|
|
137
136
|
);
|
|
138
137
|
useEffect(() => {
|
|
139
|
-
if (!minTime || !editValues.date || readonly)
|
|
140
|
-
return;
|
|
138
|
+
if (!minTime || !editValues.date || readonly) return;
|
|
141
139
|
if (editValues.date < minTime) {
|
|
142
140
|
toast.warn("\uC120\uD0DD \uAC00\uB2A5\uD55C \uC2DC\uAC04\uB300\uB85C \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.");
|
|
143
141
|
setEditValues((prev) => {
|
|
@@ -148,8 +146,7 @@ function ReservationCard(props) {
|
|
|
148
146
|
}
|
|
149
147
|
}, [editValues, minTime, readonly]);
|
|
150
148
|
useEffect(() => {
|
|
151
|
-
if (!maxTime || !editValues.date || readonly)
|
|
152
|
-
return;
|
|
149
|
+
if (!maxTime || !editValues.date || readonly) return;
|
|
153
150
|
if (editValues.date > maxTime) {
|
|
154
151
|
toast.warn("\uC120\uD0DD \uAC00\uB2A5\uD55C \uC2DC\uAC04\uB300\uB85C \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.");
|
|
155
152
|
setEditValues((prev) => {
|
|
@@ -281,4 +278,4 @@ function ReservationCard(props) {
|
|
|
281
278
|
export {
|
|
282
279
|
ReservationCard
|
|
283
280
|
};
|
|
284
|
-
//# sourceMappingURL=chunk-
|
|
281
|
+
//# sourceMappingURL=chunk-HOKENHFD.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/app/platform/reservation-card.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { setHours, setMinutes } from 'date-fns';\nimport {\n Badge,\n Box,\n BulletText,\n Button,\n Card,\n Flex,\n Form,\n Grid,\n Heading,\n Inset,\n toast,\n Typo,\n} from '../../atoms';\nimport { ArrowRightIcon, Cross1Icon } from '../../icon';\nimport { DatePickerButton, TimeSelect } from '../../molecules';\nimport { getTimeOption, parseTimeOption } from '../../utils';\nimport { OnOfflineRadioCard } from './on-offline-radio-card';\n\ntype Type = 'onlineCoaching' | 'offlineCoaching';\n\ninterface Values {\n date?: Date;\n type?: Type;\n}\n\nexport interface ReservationCardProps {\n sessionNumber?: number;\n readonly?: boolean;\n defaultTime?: Date;\n defaultType?: Type;\n customerName?: string;\n error?: string;\n onClickCompleteSession?: () => void;\n onClickReserve?: () => void;\n onClickSave?: (values: Values) => void;\n onClickCancel?: () => void;\n minTime?: Date;\n maxTime?: Date;\n}\n\nexport function ReservationCard(\n props: ReservationCardProps\n): React.ReactNode {\n const {\n sessionNumber,\n customerName,\n readonly,\n defaultTime,\n defaultType,\n error,\n minTime,\n maxTime,\n onClickReserve,\n onClickCancel,\n onClickCompleteSession,\n } = props;\n\n const [editValues, setEditValues] = useState<Values>({\n date: props.defaultTime,\n type: props.defaultType,\n });\n\n const date = readonly ? defaultTime : editValues.date;\n const type = readonly ? defaultType : editValues.type;\n const time = date && getTimeOption(date);\n\n const onClickSave = useCallback(() => {\n props.onClickSave?.(editValues);\n }, [editValues, props]);\n\n const onClickReset = useCallback(() => {\n setEditValues({\n date: defaultTime,\n type: defaultType,\n });\n }, [defaultTime, defaultType]);\n\n const ActionButtons = useMemo(() => {\n if (readonly) {\n return (\n <Button onClick={onClickReserve} size=\"small\" variant=\"surface\">\n {defaultTime && defaultType ? '예약 수정하기' : '예약하기'}\n </Button>\n );\n }\n return (\n <Button color=\"gray\" onClick={onClickCancel} variant=\"transparent\">\n <Cross1Icon />\n </Button>\n );\n }, [defaultTime, defaultType, onClickCancel, onClickReserve, readonly]);\n\n const onChangeDate = useCallback(\n (newDate: Date | null) => {\n if (!newDate) return;\n const { hour = 0, minute = 0 } = time ? parseTimeOption(time) : {};\n setEditValues((prev) => {\n return {\n ...prev,\n date: setMinutes(setHours(newDate, hour), minute),\n };\n });\n },\n [time]\n );\n\n const onChangeType = useCallback((newType: string) => {\n setEditValues((prev) => {\n return {\n ...prev,\n type: newType as Type,\n };\n });\n }, []);\n\n const onChangeTime = useCallback(\n (v?: string) => {\n const { hour, minute } = parseTimeOption(v);\n if (typeof v === 'undefined') {\n setEditValues((prev) => {\n return {\n ...prev,\n date: v,\n };\n });\n }\n setEditValues((prev) => {\n return {\n ...prev,\n date: setMinutes(setHours(date || new Date(), hour), minute),\n };\n });\n },\n [date]\n );\n\n useEffect(() => {\n if (!minTime || !editValues.date || readonly) return;\n if (editValues.date < minTime) {\n toast.warn('선택 가능한 시간대로 변경되었습니다.');\n setEditValues((prev) => {\n return {\n ...prev,\n date: minTime,\n };\n });\n }\n }, [editValues, minTime, readonly]);\n\n useEffect(() => {\n if (!maxTime || !editValues.date || readonly) return;\n if (editValues.date > maxTime) {\n toast.warn('선택 가능한 시간대로 변경되었습니다.');\n setEditValues((prev) => {\n return {\n ...prev,\n date: maxTime,\n };\n });\n }\n }, [editValues, maxTime, readonly]);\n\n return (\n <Card\n error={Boolean(error)}\n size=\"3\"\n style={{ overflow: 'visible', contain: 'initial' }}\n >\n <Flex gap=\"3\" justify=\"between\" mb=\"5\">\n <Grid\n align=\"center\"\n columns={{ initial: '1', xs: 'auto 1fr' }}\n gapY=\"2\"\n >\n <Flex align=\"center\">\n <Heading variant=\"heading4\">\n {customerName || '-'}님 {sessionNumber || '-'}회차 세션\n </Heading>\n <Badge ml=\"2\">다음 세션</Badge>\n </Flex>\n {error ? (\n <BulletText color=\"red\" variant=\"caption\">\n {error}\n </BulletText>\n ) : null}\n </Grid>\n <Flex>{ActionButtons}</Flex>\n </Flex>\n\n <Box>\n <Form.Root\n onSubmit={(e) => {\n e.preventDefault();\n }}\n >\n <Flex direction=\"column\" gap=\"5\">\n <Form.Field name=\"date\">\n <Form.Label asChild>\n <Heading mb=\"2\" variant=\"heading5\" weight=\"regular\">\n 세션 일자와 시각\n </Heading>\n <Grid columns=\"1fr auto\" gap=\"4\">\n <DatePickerButton\n disabled={readonly}\n maxDate={maxTime}\n minDate={minTime}\n onChange={onChangeDate}\n placeholder=\"일자를 선택해주세요\"\n selected={date}\n size=\"large\"\n />\n <TimeSelect\n disabled={readonly}\n maxTime={maxTime}\n minTime={minTime}\n onValueChange={onChangeTime}\n size=\"3\"\n time={date}\n value={time}\n />\n </Grid>\n </Form.Label>\n </Form.Field>\n\n <Form.Field name=\"type\">\n <Form.Label asChild>\n <Heading mb=\"2\" variant=\"heading5\" weight=\"regular\">\n 온/오프라인 진행 여부\n </Heading>\n </Form.Label>\n <Form.Control asChild>\n <OnOfflineRadioCard\n disabled={readonly}\n onValueChange={onChangeType}\n size=\"1\"\n value={type}\n />\n </Form.Control>\n </Form.Field>\n\n {readonly ? null : (\n <Flex align=\"center\" gap=\"3\" justify=\"end\">\n <Button\n color=\"gray\"\n onClick={onClickReset}\n size=\"small\"\n variant=\"transparent\"\n >\n 초기화하기\n </Button>\n <Button onClick={onClickSave} size=\"small\">\n 저장하기\n </Button>\n </Flex>\n )}\n </Flex>\n </Form.Root>\n </Box>\n\n {readonly ? (\n <Inset clip=\"border-box\" side=\"bottom\">\n <Box\n mt=\"5\"\n px=\"5\"\n py=\"4\"\n style={{ backgroundColor: 'var(--accent-a3)' }}\n width=\"100%\"\n >\n <Flex align=\"center\" gap=\"4\" justify=\"center\">\n <Typo>{sessionNumber || '-'}회차 세션을 완료하셨나요?</Typo>\n <Button onClick={onClickCompleteSession} size=\"small\">\n 세션 종료하기\n <ArrowRightIcon />\n </Button>\n </Flex>\n </Box>\n </Inset>\n ) : null}\n </Card>\n );\n}\n"],"mappings":"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","names":[]}
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
__objRest,
|
|
3
3
|
__spreadProps,
|
|
4
4
|
__spreadValues
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-2NMEKWO5.js";
|
|
6
6
|
|
|
7
7
|
// src/atoms/dropdown-menu.tsx
|
|
8
8
|
import { DropdownMenu as RadixDropdownMenu } from "@radix-ui/themes";
|
|
@@ -31,4 +31,4 @@ var DropdownMenu = __spreadProps(__spreadValues({}, RadixDropdownMenu), {
|
|
|
31
31
|
export {
|
|
32
32
|
DropdownMenu
|
|
33
33
|
};
|
|
34
|
-
//# sourceMappingURL=chunk-
|
|
34
|
+
//# sourceMappingURL=chunk-HYE34QEM.js.map
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DataList
|
|
3
|
+
} from "./chunk-VTJZMOSP.js";
|
|
4
|
+
import {
|
|
5
|
+
Button
|
|
6
|
+
} from "./chunk-AFPH32MF.js";
|
|
7
|
+
|
|
8
|
+
// src/app/platform/userInfos/utils.tsx
|
|
9
|
+
import { format } from "date-fns";
|
|
10
|
+
import { CopyIcon } from "@radix-ui/react-icons";
|
|
11
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
12
|
+
var infoList = [
|
|
13
|
+
{ label: "\uC774\uB984", getValue: (customer) => customer == null ? void 0 : customer.username },
|
|
14
|
+
{ label: "\uC131\uBCC4", getValue: (customer) => customer == null ? void 0 : customer.gender },
|
|
15
|
+
{
|
|
16
|
+
label: "\uC0DD\uB144\uC6D4\uC77C",
|
|
17
|
+
getValue: (customer) => (customer == null ? void 0 : customer.birthdate) && format(customer.birthdate, "yyyy.MM.dd")
|
|
18
|
+
},
|
|
19
|
+
{ label: "\uBD80\uC11C", getValue: (customer) => customer == null ? void 0 : customer.team },
|
|
20
|
+
{ label: "\uC9C1\uCC45", getValue: (customer) => customer == null ? void 0 : customer.position },
|
|
21
|
+
{ label: "\uC9C1\uAE09", getValue: (customer) => customer == null ? void 0 : customer.level },
|
|
22
|
+
{ label: "\uC774\uBA54\uC77C", getValue: (customer) => customer == null ? void 0 : customer.email, copyable: true },
|
|
23
|
+
{
|
|
24
|
+
label: "\uC804\uD654\uBC88\uD638",
|
|
25
|
+
getValue: (customer) => customer == null ? void 0 : customer.phone,
|
|
26
|
+
render: (value) => {
|
|
27
|
+
return value == null ? void 0 : value.replace(/[^0-9]/g, "").replace(/^(\d{2,3})(\d{3,4})(\d{4})$/, `$1-$2-$3`);
|
|
28
|
+
},
|
|
29
|
+
copyable: true
|
|
30
|
+
}
|
|
31
|
+
];
|
|
32
|
+
var sessionStatusChecker = (value, session) => {
|
|
33
|
+
if ((session == null ? void 0 : session.state) === "inProgress") {
|
|
34
|
+
return value;
|
|
35
|
+
}
|
|
36
|
+
return "-";
|
|
37
|
+
};
|
|
38
|
+
var sessionList = [
|
|
39
|
+
{
|
|
40
|
+
label: "\uC9C4\uD589\uC911\uC778 \uC138\uC158",
|
|
41
|
+
getValue: (session) => {
|
|
42
|
+
const { currentSession, totalSession } = session || {};
|
|
43
|
+
if (currentSession && totalSession && currentSession > totalSession) {
|
|
44
|
+
return "-";
|
|
45
|
+
}
|
|
46
|
+
return sessionStatusChecker(
|
|
47
|
+
`${currentSession || "-"}\uD68C\uCC28/${totalSession || "-"}\uD68C\uCC28`,
|
|
48
|
+
session
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
label: "\uB2E4\uC74C \uC138\uC158 \uC77C\uC2DC",
|
|
54
|
+
getValue: (session) => sessionStatusChecker(
|
|
55
|
+
(session == null ? void 0 : session.nextSessionDate) ? format(session.nextSessionDate, "yyyy\uB144 MM\uC6D4 dd\uC77C HH\uC2DC mm\uBD84") : "-",
|
|
56
|
+
session
|
|
57
|
+
)
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
label: "\uB2E4\uC74C \uC138\uC158 \uCC38\uC5EC \uBC29\uC2DD",
|
|
61
|
+
getValue: (session) => sessionStatusChecker((session == null ? void 0 : session.nextSessionType) || "-", session)
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
label: "\uCF54\uCE6D \uB9CC\uB8CC \uAE30\uD55C",
|
|
65
|
+
getValue: (session) => (session == null ? void 0 : session.expiredAt) ? format(session.expiredAt, "yyyy\uB144 MM\uC6D4 dd\uC77C") : "-"
|
|
66
|
+
}
|
|
67
|
+
];
|
|
68
|
+
var renderItem = (args) => {
|
|
69
|
+
const { info, data, onClickCopy } = args;
|
|
70
|
+
const value = info.getValue(data);
|
|
71
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
72
|
+
info.render ? info.render(value) : value || "-",
|
|
73
|
+
info.copyable && value ? /* @__PURE__ */ jsx(CopyButton, { onClickCopy, value }) : null
|
|
74
|
+
] });
|
|
75
|
+
};
|
|
76
|
+
var renderDataListItem = (args) => {
|
|
77
|
+
const { info, data, onClickCopy } = args;
|
|
78
|
+
return /* @__PURE__ */ jsxs(DataList.Item, { children: [
|
|
79
|
+
/* @__PURE__ */ jsx(DataList.Label, { children: info.label }),
|
|
80
|
+
/* @__PURE__ */ jsx(DataList.Value, { children: renderItem({ info, data, onClickCopy }) })
|
|
81
|
+
] }, info.label);
|
|
82
|
+
};
|
|
83
|
+
function CopyButton(props) {
|
|
84
|
+
const { value, onClickCopy } = props;
|
|
85
|
+
return /* @__PURE__ */ jsx(
|
|
86
|
+
Button,
|
|
87
|
+
{
|
|
88
|
+
color: "gray",
|
|
89
|
+
onClick: () => {
|
|
90
|
+
onClickCopy(value);
|
|
91
|
+
},
|
|
92
|
+
style: { marginLeft: "0", marginTop: "0" },
|
|
93
|
+
variant: "transparent",
|
|
94
|
+
children: /* @__PURE__ */ jsx(CopyIcon, {})
|
|
95
|
+
}
|
|
96
|
+
);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export {
|
|
100
|
+
infoList,
|
|
101
|
+
sessionList,
|
|
102
|
+
renderItem,
|
|
103
|
+
renderDataListItem,
|
|
104
|
+
CopyButton
|
|
105
|
+
};
|
|
106
|
+
//# sourceMappingURL=chunk-I2ZOU3LX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/app/platform/userInfos/utils.tsx"],"sourcesContent":["import type { ProjectStatus } from '@tipp/biz-utils';\nimport { format } from 'date-fns';\nimport { CopyIcon } from '@radix-ui/react-icons';\nimport { Button, DataList } from '../../../atoms';\n\nexport interface CoachingCustomerInfoProps {\n customer?: Customer;\n session?: Session;\n children?: React.ReactNode;\n badge?: React.ReactNode;\n onClickCopy: (value: string) => void;\n}\n\nexport interface Customer {\n username?: string;\n email?: string;\n gender?: string;\n birthdate?: Date;\n phone?: string;\n company?: string;\n team?: string;\n position?: string;\n level: string;\n}\n\nexport interface Session {\n state?: ProjectStatus;\n totalSession?: number;\n currentSession?: number;\n nextSessionDate?: Date;\n nextSessionType?: string;\n expiredAt?: Date;\n}\n\nexport interface DataListItems<T> {\n label: string;\n getValue: (original?: T) => string | undefined;\n copyable?: boolean;\n render?: (value?: string) => React.ReactNode;\n}\n\nexport const infoList: DataListItems<Customer>[] = [\n { label: '이름', getValue: (customer) => customer?.username },\n { label: '성별', getValue: (customer) => customer?.gender },\n {\n label: '생년월일',\n getValue: (customer) =>\n customer?.birthdate && format(customer.birthdate, 'yyyy.MM.dd'),\n },\n { label: '부서', getValue: (customer) => customer?.team },\n { label: '직책', getValue: (customer) => customer?.position },\n { label: '직급', getValue: (customer) => customer?.level },\n { label: '이메일', getValue: (customer) => customer?.email, copyable: true },\n {\n label: '전화번호',\n getValue: (customer) => customer?.phone,\n render: (value) => {\n // 핸드폰 전화번호 형식으로 변환\n return (\n value\n ?.replace(/[^0-9]/g, '')\n // eslint-disable-next-line prefer-named-capture-group -- target es 변경하기 전이라서 이대로 둠\n .replace(/^(\\d{2,3})(\\d{3,4})(\\d{4})$/, `$1-$2-$3`)\n );\n },\n copyable: true,\n },\n];\n\nconst sessionStatusChecker = <T,>(value: T, session?: Session): T | string => {\n if (session?.state === 'inProgress') {\n return value;\n }\n return '-';\n};\n\nexport const sessionList: DataListItems<Session>[] = [\n {\n label: '진행중인 세션',\n getValue: (session) => {\n const { currentSession, totalSession } = session || {};\n if (currentSession && totalSession && currentSession > totalSession) {\n return '-';\n }\n\n return sessionStatusChecker(\n `${currentSession || '-'}회차/${totalSession || '-'}회차`,\n session\n );\n },\n },\n {\n label: '다음 세션 일시',\n getValue: (session) =>\n sessionStatusChecker(\n session?.nextSessionDate\n ? format(session.nextSessionDate, 'yyyy년 MM월 dd일 HH시 mm분')\n : '-',\n session\n ),\n },\n {\n label: '다음 세션 참여 방식',\n getValue: (session) =>\n sessionStatusChecker(session?.nextSessionType || '-', session),\n },\n {\n label: '코칭 만료 기한',\n getValue: (session) =>\n session?.expiredAt ? format(session.expiredAt, 'yyyy년 MM월 dd일') : '-',\n },\n];\n\nexport const renderItem = <T extends object>(args: {\n info: DataListItems<T>;\n data?: T;\n onClickCopy: (value: string) => void;\n}): React.ReactNode => {\n const { info, data, onClickCopy } = args;\n const value = info.getValue(data);\n return (\n <>\n {info.render ? info.render(value) : value || '-'}\n {info.copyable && value ? (\n <CopyButton onClickCopy={onClickCopy} value={value} />\n ) : null}\n </>\n );\n};\n\nexport const renderDataListItem = <T extends object>(args: {\n info: DataListItems<T>;\n data?: T;\n onClickCopy: (value: string) => void;\n}): React.ReactNode => {\n const { info, data, onClickCopy } = args;\n return (\n <DataList.Item key={info.label}>\n <DataList.Label>{info.label}</DataList.Label>\n <DataList.Value>{renderItem({ info, data, onClickCopy })}</DataList.Value>\n </DataList.Item>\n );\n};\n\nexport function CopyButton(props: {\n value: string;\n onClickCopy: (value: string) => void;\n}): React.ReactNode {\n const { value, onClickCopy } = props;\n return (\n <Button\n color=\"gray\"\n onClick={() => {\n onClickCopy(value);\n }}\n style={{ marginLeft: '0', marginTop: '0' }}\n variant=\"transparent\"\n >\n <CopyIcon />\n </Button>\n );\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
__spreadValues
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-2NMEKWO5.js";
|
|
4
4
|
|
|
5
5
|
// src/atoms/toast.tsx
|
|
6
6
|
import { InfoCircledIcon } from "@radix-ui/react-icons";
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
} from "react-toastify";
|
|
10
10
|
import { toast } from "react-toastify";
|
|
11
11
|
import { jsx } from "react/jsx-runtime";
|
|
12
|
-
function CloseButton() {
|
|
12
|
+
function CloseButton(props) {
|
|
13
13
|
return null;
|
|
14
14
|
}
|
|
15
15
|
function ToastContainer(props) {
|
|
@@ -36,4 +36,4 @@ export {
|
|
|
36
36
|
ToastContainer,
|
|
37
37
|
toast
|
|
38
38
|
};
|
|
39
|
-
//# sourceMappingURL=chunk-
|
|
39
|
+
//# sourceMappingURL=chunk-IFRA465K.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/atoms/toast.tsx"],"sourcesContent":["import { InfoCircledIcon } from '@radix-ui/react-icons';\nimport {\n ToastContainer as ToastifyContainer,\n type ToastContainerProps,\n type CloseButtonProps,\n} from 'react-toastify';\n\nexport { toast } from 'react-toastify';\n\nfunction CloseButton(props: CloseButtonProps): React.ReactNode {\n return null;\n}\n\nexport function ToastContainer(props: ToastContainerProps): React.ReactNode {\n return (\n <ToastifyContainer\n autoClose={5000}\n closeButton={CloseButton}\n closeOnClick\n draggable\n hideProgressBar\n icon={<InfoCircledIcon />}\n newestOnTop\n pauseOnFocusLoss\n pauseOnHover\n position=\"bottom-right\"\n rtl={false}\n style={{ zIndex: 999999 }}\n {...props}\n />\n );\n}\n"],"mappings":";;;;;AAAA,SAAS,uBAAuB;AAChC;AAAA,EACE,kBAAkB;AAAA,OAGb;AAEP,SAAS,aAAa;AAcV;AAZZ,SAAS,YAAY,OAA0C;AAC7D,SAAO;AACT;AAEO,SAAS,eAAe,OAA6C;AAC1E,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,MACX,aAAa;AAAA,MACb,cAAY;AAAA,MACZ,WAAS;AAAA,MACT,iBAAe;AAAA,MACf,MAAM,oBAAC,mBAAgB;AAAA,MACvB,aAAW;AAAA,MACX,kBAAgB;AAAA,MAChB,cAAY;AAAA,MACZ,UAAS;AAAA,MACT,KAAK;AAAA,MACL,OAAO,EAAE,QAAQ,OAAO;AAAA,OACpB;AAAA,EACN;AAEJ;","names":[]}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
2
|
OnOfflineRadioCard
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-4QWYV2QX.js";
|
|
4
4
|
import {
|
|
5
5
|
DatePickerButton
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-ESHEHOVH.js";
|
|
7
7
|
import {
|
|
8
8
|
TimeSelect
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-5VWEW4M2.js";
|
|
10
10
|
import {
|
|
11
11
|
getTimeOption,
|
|
12
12
|
parseTimeOption
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-NWJSLIQ3.js";
|
|
14
14
|
import {
|
|
15
15
|
Form
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-PWXFETED.js";
|
|
17
17
|
import {
|
|
18
18
|
toast
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-IFRA465K.js";
|
|
20
20
|
import {
|
|
21
21
|
Grid
|
|
22
22
|
} from "./chunk-EGEQY3KT.js";
|
|
@@ -25,28 +25,28 @@ import {
|
|
|
25
25
|
} from "./chunk-XQOL7UBI.js";
|
|
26
26
|
import {
|
|
27
27
|
Heading
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-3IT3NVK6.js";
|
|
29
29
|
import {
|
|
30
30
|
Card
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-HEDMSFPW.js";
|
|
32
32
|
import {
|
|
33
33
|
Badge
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-FCIHNIOH.js";
|
|
35
35
|
import {
|
|
36
36
|
Box
|
|
37
37
|
} from "./chunk-4Y5BEXVN.js";
|
|
38
38
|
import {
|
|
39
39
|
BulletText
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-LMWTEDYS.js";
|
|
41
41
|
import {
|
|
42
42
|
Typo
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-LH57PIY2.js";
|
|
44
44
|
import {
|
|
45
45
|
Flex
|
|
46
46
|
} from "./chunk-25HMMI7R.js";
|
|
47
47
|
import {
|
|
48
48
|
Button
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-AFPH32MF.js";
|
|
50
50
|
import {
|
|
51
51
|
ArrowRightIcon,
|
|
52
52
|
Cross1Icon
|
|
@@ -54,7 +54,7 @@ import {
|
|
|
54
54
|
import {
|
|
55
55
|
__spreadProps,
|
|
56
56
|
__spreadValues
|
|
57
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-2NMEKWO5.js";
|
|
58
58
|
|
|
59
59
|
// src/app/platform/reservation-card.tsx
|
|
60
60
|
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
@@ -99,8 +99,7 @@ function ReservationCard(props) {
|
|
|
99
99
|
}, [defaultTime, defaultType, onClickCancel, onClickReserve, readonly]);
|
|
100
100
|
const onChangeDate = useCallback(
|
|
101
101
|
(newDate) => {
|
|
102
|
-
if (!newDate)
|
|
103
|
-
return;
|
|
102
|
+
if (!newDate) return;
|
|
104
103
|
const { hour = 0, minute = 0 } = time ? parseTimeOption(time) : {};
|
|
105
104
|
setEditValues((prev) => {
|
|
106
105
|
return __spreadProps(__spreadValues({}, prev), {
|
|
@@ -136,8 +135,7 @@ function ReservationCard(props) {
|
|
|
136
135
|
[date]
|
|
137
136
|
);
|
|
138
137
|
useEffect(() => {
|
|
139
|
-
if (!minTime || !editValues.date || readonly)
|
|
140
|
-
return;
|
|
138
|
+
if (!minTime || !editValues.date || readonly) return;
|
|
141
139
|
if (editValues.date < minTime) {
|
|
142
140
|
toast.warn("\uC120\uD0DD \uAC00\uB2A5\uD55C \uC2DC\uAC04\uB300\uB85C \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.");
|
|
143
141
|
setEditValues((prev) => {
|
|
@@ -148,8 +146,7 @@ function ReservationCard(props) {
|
|
|
148
146
|
}
|
|
149
147
|
}, [editValues, minTime, readonly]);
|
|
150
148
|
useEffect(() => {
|
|
151
|
-
if (!maxTime || !editValues.date || readonly)
|
|
152
|
-
return;
|
|
149
|
+
if (!maxTime || !editValues.date || readonly) return;
|
|
153
150
|
if (editValues.date > maxTime) {
|
|
154
151
|
toast.warn("\uC120\uD0DD \uAC00\uB2A5\uD55C \uC2DC\uAC04\uB300\uB85C \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.");
|
|
155
152
|
setEditValues((prev) => {
|
|
@@ -281,4 +278,4 @@ function ReservationCard(props) {
|
|
|
281
278
|
export {
|
|
282
279
|
ReservationCard
|
|
283
280
|
};
|
|
284
|
-
//# sourceMappingURL=chunk-
|
|
281
|
+
//# sourceMappingURL=chunk-IIN3YNMK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/app/platform/reservation-card.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { setHours, setMinutes } from 'date-fns';\nimport {\n Badge,\n Box,\n BulletText,\n Button,\n Card,\n Flex,\n Form,\n Grid,\n Heading,\n Inset,\n toast,\n Typo,\n} from '../../atoms';\nimport { ArrowRightIcon, Cross1Icon } from '../../icon';\nimport { DatePickerButton, TimeSelect } from '../../molecules';\nimport { getTimeOption, parseTimeOption } from '../../utils';\nimport { OnOfflineRadioCard } from './on-offline-radio-card';\n\ntype Type = 'onlineCoaching' | 'offlineCoaching';\n\ninterface Values {\n date?: Date;\n type?: Type;\n}\n\nexport interface ReservationCardProps {\n sessionNumber?: number;\n readonly?: boolean;\n defaultTime?: Date;\n defaultType?: Type;\n customerName?: string;\n error?: string;\n onClickCompleteSession?: () => void;\n onClickReserve?: () => void;\n onClickSave?: (values: Values) => void;\n onClickCancel?: () => void;\n minTime?: Date;\n maxTime?: Date;\n}\n\nexport function ReservationCard(\n props: ReservationCardProps\n): React.ReactNode {\n const {\n sessionNumber,\n customerName,\n readonly,\n defaultTime,\n defaultType,\n error,\n minTime,\n maxTime,\n onClickReserve,\n onClickCancel,\n onClickCompleteSession,\n } = props;\n\n const [editValues, setEditValues] = useState<Values>({\n date: props.defaultTime,\n type: props.defaultType,\n });\n\n const date = readonly ? defaultTime : editValues.date;\n const type = readonly ? defaultType : editValues.type;\n const time = date && getTimeOption(date);\n\n const onClickSave = useCallback(() => {\n props.onClickSave?.(editValues);\n }, [editValues, props]);\n\n const onClickReset = useCallback(() => {\n setEditValues({\n date: defaultTime,\n type: defaultType,\n });\n }, [defaultTime, defaultType]);\n\n const ActionButtons = useMemo(() => {\n if (readonly) {\n return (\n <Button onClick={onClickReserve} size=\"small\" variant=\"surface\">\n {defaultTime && defaultType ? '예약 수정하기' : '예약하기'}\n </Button>\n );\n }\n return (\n <Button color=\"gray\" onClick={onClickCancel} variant=\"transparent\">\n <Cross1Icon />\n </Button>\n );\n }, [defaultTime, defaultType, onClickCancel, onClickReserve, readonly]);\n\n const onChangeDate = useCallback(\n (newDate: Date | null) => {\n if (!newDate) return;\n const { hour = 0, minute = 0 } = time ? parseTimeOption(time) : {};\n setEditValues((prev) => {\n return {\n ...prev,\n date: setMinutes(setHours(newDate, hour), minute),\n };\n });\n },\n [time]\n );\n\n const onChangeType = useCallback((newType: string) => {\n setEditValues((prev) => {\n return {\n ...prev,\n type: newType as Type,\n };\n });\n }, []);\n\n const onChangeTime = useCallback(\n (v?: string) => {\n const { hour, minute } = parseTimeOption(v);\n if (typeof v === 'undefined') {\n setEditValues((prev) => {\n return {\n ...prev,\n date: v,\n };\n });\n }\n setEditValues((prev) => {\n return {\n ...prev,\n date: setMinutes(setHours(date || new Date(), hour), minute),\n };\n });\n },\n [date]\n );\n\n useEffect(() => {\n if (!minTime || !editValues.date || readonly) return;\n if (editValues.date < minTime) {\n toast.warn('선택 가능한 시간대로 변경되었습니다.');\n setEditValues((prev) => {\n return {\n ...prev,\n date: minTime,\n };\n });\n }\n }, [editValues, minTime, readonly]);\n\n useEffect(() => {\n if (!maxTime || !editValues.date || readonly) return;\n if (editValues.date > maxTime) {\n toast.warn('선택 가능한 시간대로 변경되었습니다.');\n setEditValues((prev) => {\n return {\n ...prev,\n date: maxTime,\n };\n });\n }\n }, [editValues, maxTime, readonly]);\n\n return (\n <Card\n error={Boolean(error)}\n size=\"3\"\n style={{ overflow: 'visible', contain: 'initial' }}\n >\n <Flex gap=\"3\" justify=\"between\" mb=\"5\">\n <Grid\n align=\"center\"\n columns={{ initial: '1', xs: 'auto 1fr' }}\n gapY=\"2\"\n >\n <Flex align=\"center\">\n <Heading variant=\"heading4\">\n {customerName || '-'}님 {sessionNumber || '-'}회차 세션\n </Heading>\n <Badge ml=\"2\">다음 세션</Badge>\n </Flex>\n {error ? (\n <BulletText color=\"red\" variant=\"caption\">\n {error}\n </BulletText>\n ) : null}\n </Grid>\n <Flex>{ActionButtons}</Flex>\n </Flex>\n\n <Box>\n <Form.Root\n onSubmit={(e) => {\n e.preventDefault();\n }}\n >\n <Flex direction=\"column\" gap=\"5\">\n <Form.Field name=\"date\">\n <Form.Label asChild>\n <Heading mb=\"2\" variant=\"heading5\" weight=\"regular\">\n 세션 일자와 시각\n </Heading>\n <Grid columns=\"1fr auto\" gap=\"4\">\n <DatePickerButton\n disabled={readonly}\n maxDate={maxTime}\n minDate={minTime}\n onChange={onChangeDate}\n placeholder=\"일자를 선택해주세요\"\n selected={date}\n size=\"large\"\n />\n <TimeSelect\n disabled={readonly}\n maxTime={maxTime}\n minTime={minTime}\n onValueChange={onChangeTime}\n size=\"3\"\n time={date}\n value={time}\n />\n </Grid>\n </Form.Label>\n </Form.Field>\n\n <Form.Field name=\"type\">\n <Form.Label asChild>\n <Heading mb=\"2\" variant=\"heading5\" weight=\"regular\">\n 온/오프라인 진행 여부\n </Heading>\n </Form.Label>\n <Form.Control asChild>\n <OnOfflineRadioCard\n disabled={readonly}\n onValueChange={onChangeType}\n size=\"1\"\n value={type}\n />\n </Form.Control>\n </Form.Field>\n\n {readonly ? null : (\n <Flex align=\"center\" gap=\"3\" justify=\"end\">\n <Button\n color=\"gray\"\n onClick={onClickReset}\n size=\"small\"\n variant=\"transparent\"\n >\n 초기화하기\n </Button>\n <Button onClick={onClickSave} size=\"small\">\n 저장하기\n </Button>\n </Flex>\n )}\n </Flex>\n </Form.Root>\n </Box>\n\n {readonly ? (\n <Inset clip=\"border-box\" side=\"bottom\">\n <Box\n mt=\"5\"\n px=\"5\"\n py=\"4\"\n style={{ backgroundColor: 'var(--accent-a3)' }}\n width=\"100%\"\n >\n <Flex align=\"center\" gap=\"4\" justify=\"center\">\n <Typo>{sessionNumber || '-'}회차 세션을 완료하셨나요?</Typo>\n <Button onClick={onClickCompleteSession} size=\"small\">\n 세션 종료하기\n <ArrowRightIcon />\n </Button>\n </Flex>\n </Box>\n </Inset>\n ) : null}\n </Card>\n );\n}\n"],"mappings":"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","names":[]}
|
|
@@ -28,8 +28,7 @@ function DotNavigation(props) {
|
|
|
28
28
|
onChangeDotIndex == null ? void 0 : onChangeDotIndex(currentDot);
|
|
29
29
|
}, [currentDot, onChangeDotIndex]);
|
|
30
30
|
useEffect(() => {
|
|
31
|
-
if (typeof dotIndex === "undefined")
|
|
32
|
-
return;
|
|
31
|
+
if (typeof dotIndex === "undefined") return;
|
|
33
32
|
setCurrentDot(dotIndex);
|
|
34
33
|
}, [dotIndex]);
|
|
35
34
|
return /* @__PURE__ */ jsx(Flex, { children: dotCount ? Array.from({ length: dotCount }, (_, i) => i).map((_, index) => {
|
|
@@ -55,4 +54,4 @@ function DotNavigation(props) {
|
|
|
55
54
|
export {
|
|
56
55
|
DotNavigation
|
|
57
56
|
};
|
|
58
|
-
//# sourceMappingURL=chunk-
|
|
57
|
+
//# sourceMappingURL=chunk-IJOOKMKQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/molecules/dot-navigation.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport { DotFilledIcon } from '@radix-ui/react-icons';\nimport { Flex } from '../atoms/flex';\n\nexport interface DotNavigationProps {\n /** 전체 점 갯수 */\n dotCount?: number;\n /** 점 클릭 시 */\n onClick?: (index: number) => void;\n /** 현재 선택된 점 */\n dotIndex?: number;\n /** 기본 점 위치 */\n defaultDotIndex?: number;\n /** 선택된 점 변경 시 실행 */\n onChangeDotIndex?: (index: number) => void;\n}\n\nexport function DotNavigation(props: DotNavigationProps): React.ReactNode {\n const { dotCount, onClick, dotIndex, defaultDotIndex, onChangeDotIndex } =\n props;\n\n const [currentDot, setCurrentDot] = useState<number>(\n () => defaultDotIndex ?? dotIndex ?? 0\n );\n\n const onClickDot = useCallback(\n (i: number) => {\n if (onClick) {\n onClick(i);\n } else {\n setCurrentDot(i);\n }\n },\n [onClick]\n );\n\n useEffect(() => {\n onChangeDotIndex?.(currentDot);\n }, [currentDot, onChangeDotIndex]);\n\n useEffect(() => {\n if (typeof dotIndex === 'undefined') return;\n setCurrentDot(dotIndex);\n }, [dotIndex]);\n\n return (\n <Flex>\n {dotCount\n ? Array.from({ length: dotCount }, (_, i) => i).map((_, index) => {\n const isSelected = currentDot === index;\n return (\n <DotFilledIcon\n height=\"24px\"\n // eslint-disable-next-line react/no-array-index-key -- index외의 키가 없음\n key={index}\n onClick={() => {\n onClickDot(index);\n }}\n opacity={isSelected ? undefined : 0.25}\n style={{\n cursor: 'pointer',\n }}\n width=\"24px\"\n />\n );\n })\n : null}\n </Flex>\n );\n}\n"],"mappings":";;;;;AAAA,SAAgB,aAAa,WAAW,gBAAgB;AACxD,SAAS,qBAAqB;AAkDhB;AAlCP,SAAS,cAAc,OAA4C;AACxE,QAAM,EAAE,UAAU,SAAS,UAAU,iBAAiB,iBAAiB,IACrE;AAEF,QAAM,CAAC,YAAY,aAAa,IAAI;AAAA,IAClC,MAAG;AAtBP;AAsBU,+DAAmB,aAAnB,YAA+B;AAAA;AAAA,EACvC;AAEA,QAAM,aAAa;AAAA,IACjB,CAAC,MAAc;AACb,UAAI,SAAS;AACX,gBAAQ,CAAC;AAAA,MACX,OAAO;AACL,sBAAc,CAAC;AAAA,MACjB;AAAA,IACF;AAAA,IACA,CAAC,OAAO;AAAA,EACV;AAEA,YAAU,MAAM;AACd,yDAAmB;AAAA,EACrB,GAAG,CAAC,YAAY,gBAAgB,CAAC;AAEjC,YAAU,MAAM;AACd,QAAI,OAAO,aAAa,YAAa;AACrC,kBAAc,QAAQ;AAAA,EACxB,GAAG,CAAC,QAAQ,CAAC;AAEb,SACE,oBAAC,QACE,qBACG,MAAM,KAAK,EAAE,QAAQ,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,UAAU;AAC9D,UAAM,aAAa,eAAe;AAClC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,QAAO;AAAA,QAGP,SAAS,MAAM;AACb,qBAAW,KAAK;AAAA,QAClB;AAAA,QACA,SAAS,aAAa,SAAY;AAAA,QAClC,OAAO;AAAA,UACL,QAAQ;AAAA,QACV;AAAA,QACA,OAAM;AAAA;AAAA,MARD;AAAA,IASP;AAAA,EAEJ,CAAC,IACD,MACN;AAEJ;","names":[]}
|
|
@@ -2,13 +2,13 @@ import {
|
|
|
2
2
|
infoList,
|
|
3
3
|
renderDataListItem,
|
|
4
4
|
sessionList
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-E3T66HOA.js";
|
|
6
6
|
import {
|
|
7
7
|
DataList
|
|
8
8
|
} from "./chunk-VTJZMOSP.js";
|
|
9
9
|
import {
|
|
10
10
|
Heading
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-3IT3NVK6.js";
|
|
12
12
|
import {
|
|
13
13
|
Separator
|
|
14
14
|
} from "./chunk-HYITAA4J.js";
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
} from "./chunk-25HMMI7R.js";
|
|
21
21
|
import {
|
|
22
22
|
Card
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-HEDMSFPW.js";
|
|
24
24
|
|
|
25
25
|
// src/app/platform/userInfos/coaching-customer-info/large.tsx
|
|
26
26
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -61,4 +61,4 @@ function CoachingCustomerInfoLarge({
|
|
|
61
61
|
export {
|
|
62
62
|
CoachingCustomerInfoLarge
|
|
63
63
|
};
|
|
64
|
-
//# sourceMappingURL=chunk-
|
|
64
|
+
//# sourceMappingURL=chunk-JDE7356R.js.map
|