@cuemath/leap 3.3.37 → 3.4.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/assets/line-icons/icons/after-noon.js.map +1 -1
- package/dist/assets/line-icons/icons/alert.js.map +1 -1
- package/dist/assets/line-icons/icons/apple-icon-white.js.map +1 -1
- package/dist/assets/line-icons/icons/apple-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/back.js.map +1 -1
- package/dist/assets/line-icons/icons/back2.js.map +1 -1
- package/dist/assets/line-icons/icons/bin.js.map +1 -1
- package/dist/assets/line-icons/icons/bin2.js.map +1 -1
- package/dist/assets/line-icons/icons/book-closed.js.map +1 -1
- package/dist/assets/line-icons/icons/book.js.map +1 -1
- package/dist/assets/line-icons/icons/book2.js.map +1 -1
- package/dist/assets/line-icons/icons/bookmark-stroke-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/bookmark.js.map +1 -1
- package/dist/assets/line-icons/icons/bulb.js.map +1 -1
- package/dist/assets/line-icons/icons/bulb2.js.map +1 -1
- package/dist/assets/line-icons/icons/calculator.js.map +1 -1
- package/dist/assets/line-icons/icons/calendar.js.map +1 -1
- package/dist/assets/line-icons/icons/carat-left.js.map +1 -1
- package/dist/assets/line-icons/icons/carat-right.js.map +1 -1
- package/dist/assets/line-icons/icons/chat.js.map +1 -1
- package/dist/assets/line-icons/icons/check.js.map +1 -1
- package/dist/assets/line-icons/icons/check2.js.map +1 -1
- package/dist/assets/line-icons/icons/chevron-down.js.map +1 -1
- package/dist/assets/line-icons/icons/chevron-left.js.map +1 -1
- package/dist/assets/line-icons/icons/chevron-right.js.map +1 -1
- package/dist/assets/line-icons/icons/circle-back.js.map +1 -1
- package/dist/assets/line-icons/icons/clear-all.js.map +1 -1
- package/dist/assets/line-icons/icons/clipboard.js.map +1 -1
- package/dist/assets/line-icons/icons/clock.js.map +1 -1
- package/dist/assets/line-icons/icons/clock2.js.map +1 -1
- package/dist/assets/line-icons/icons/closed-eye.js.map +1 -1
- package/dist/assets/line-icons/icons/code.js.map +1 -1
- package/dist/assets/line-icons/icons/copy.js.map +1 -1
- package/dist/assets/line-icons/icons/cross.js.map +1 -1
- package/dist/assets/line-icons/icons/cue-board-filled.js.map +1 -1
- package/dist/assets/line-icons/icons/cue-board.js.map +1 -1
- package/dist/assets/line-icons/icons/cue-coin.js.map +1 -1
- package/dist/assets/line-icons/icons/cue-rocket.js.map +1 -1
- package/dist/assets/line-icons/icons/cuemath-logo.js.map +1 -1
- package/dist/assets/line-icons/icons/cursor.js.map +1 -1
- package/dist/assets/line-icons/icons/dash-arrow.js.map +1 -1
- package/dist/assets/line-icons/icons/down.js.map +1 -1
- package/dist/assets/line-icons/icons/download.js.map +1 -1
- package/dist/assets/line-icons/icons/draft.js.map +1 -1
- package/dist/assets/line-icons/icons/drag.js.map +1 -1
- package/dist/assets/line-icons/icons/edit-star.js.map +1 -1
- package/dist/assets/line-icons/icons/edit.js.map +1 -1
- package/dist/assets/line-icons/icons/edit2.js.map +1 -1
- package/dist/assets/line-icons/icons/equation.js.map +1 -1
- package/dist/assets/line-icons/icons/eraser.js.map +1 -1
- package/dist/assets/line-icons/icons/evening.js.map +1 -1
- package/dist/assets/line-icons/icons/exclamation.js.map +1 -1
- package/dist/assets/line-icons/icons/eye.js.map +1 -1
- package/dist/assets/line-icons/icons/eye2.js.map +1 -1
- package/dist/assets/line-icons/icons/game.js.map +1 -1
- package/dist/assets/line-icons/icons/google-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/grid-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/hand.js.map +1 -1
- package/dist/assets/line-icons/icons/help.js.map +1 -1
- package/dist/assets/line-icons/icons/highlighter.js.map +1 -1
- package/dist/assets/line-icons/icons/hint-fill.js.map +1 -1
- package/dist/assets/line-icons/icons/home.js.map +1 -1
- package/dist/assets/line-icons/icons/home2.js.map +1 -1
- package/dist/assets/line-icons/icons/image.js.map +1 -1
- package/dist/assets/line-icons/icons/important.js.map +1 -1
- package/dist/assets/line-icons/icons/info.js.map +1 -1
- package/dist/assets/line-icons/icons/info2.js.map +1 -1
- package/dist/assets/line-icons/icons/left.js.map +1 -1
- package/dist/assets/line-icons/icons/link.js.map +1 -1
- package/dist/assets/line-icons/icons/lock.js.map +1 -1
- package/dist/assets/line-icons/icons/lock2.js.map +1 -1
- package/dist/assets/line-icons/icons/lock3.js.map +1 -1
- package/dist/assets/line-icons/icons/minus.js.map +1 -1
- package/dist/assets/line-icons/icons/minus2.js.map +1 -1
- package/dist/assets/line-icons/icons/mistake.js.map +1 -1
- package/dist/assets/line-icons/icons/mobile.js.map +1 -1
- package/dist/assets/line-icons/icons/more-vertical.js.map +1 -1
- package/dist/assets/line-icons/icons/morning.js.map +1 -1
- package/dist/assets/line-icons/icons/next.js.map +1 -1
- package/dist/assets/line-icons/icons/next2.js.map +1 -1
- package/dist/assets/line-icons/icons/pan.js.map +1 -1
- package/dist/assets/line-icons/icons/pencil.js.map +1 -1
- package/dist/assets/line-icons/icons/play.js.map +1 -1
- package/dist/assets/line-icons/icons/play2.js.map +1 -1
- package/dist/assets/line-icons/icons/plus.js.map +1 -1
- package/dist/assets/line-icons/icons/plus2.js.map +1 -1
- package/dist/assets/line-icons/icons/pointer.js.map +1 -1
- package/dist/assets/line-icons/icons/practice.js.map +1 -1
- package/dist/assets/line-icons/icons/progress.js.map +1 -1
- package/dist/assets/line-icons/icons/puzzle-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/puzzle2.js.map +1 -1
- package/dist/assets/line-icons/icons/question-letter.js.map +1 -1
- package/dist/assets/line-icons/icons/question.js.map +1 -1
- package/dist/assets/line-icons/icons/redo.js.map +1 -1
- package/dist/assets/line-icons/icons/right.js.map +1 -1
- package/dist/assets/line-icons/icons/ruler.js.map +1 -1
- package/dist/assets/line-icons/icons/screen-grab-filled.js.map +1 -1
- package/dist/assets/line-icons/icons/screen-grab.js.map +1 -1
- package/dist/assets/line-icons/icons/scribble.js.map +1 -1
- package/dist/assets/line-icons/icons/search.js.map +1 -1
- package/dist/assets/line-icons/icons/share.js.map +1 -1
- package/dist/assets/line-icons/icons/sheet.js.map +1 -1
- package/dist/assets/line-icons/icons/sketch.js.map +1 -1
- package/dist/assets/line-icons/icons/skip-colored.js.map +1 -1
- package/dist/assets/line-icons/icons/skip.js.map +1 -1
- package/dist/assets/line-icons/icons/skip2.js.map +1 -1
- package/dist/assets/line-icons/icons/square-checked-grid.js.map +1 -1
- package/dist/assets/line-icons/icons/square-dots.js.map +1 -1
- package/dist/assets/line-icons/icons/square-grid.js.map +1 -1
- package/dist/assets/line-icons/icons/square2-grid.js.map +1 -1
- package/dist/assets/line-icons/icons/star.js.map +1 -1
- package/dist/assets/line-icons/icons/star2.js.map +1 -1
- package/dist/assets/line-icons/icons/star3.js.map +1 -1
- package/dist/assets/line-icons/icons/status.js.map +1 -1
- package/dist/assets/line-icons/icons/sticker-filled.js.map +1 -1
- package/dist/assets/line-icons/icons/sticker.js.map +1 -1
- package/dist/assets/line-icons/icons/striked-eye.js.map +1 -1
- package/dist/assets/line-icons/icons/switch-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/text-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/tick.js.map +1 -1
- package/dist/assets/line-icons/icons/tile.js.map +1 -1
- package/dist/assets/line-icons/icons/tri-dots.js.map +1 -1
- package/dist/assets/line-icons/icons/tri-grid.js.map +1 -1
- package/dist/assets/line-icons/icons/tri2-dots.js.map +1 -1
- package/dist/assets/line-icons/icons/tri2-grid.js.map +1 -1
- package/dist/assets/line-icons/icons/trophy.js.map +1 -1
- package/dist/assets/line-icons/icons/tutoring.js.map +1 -1
- package/dist/assets/line-icons/icons/undo.js.map +1 -1
- package/dist/assets/line-icons/icons/unlock.js.map +1 -1
- package/dist/assets/line-icons/icons/unlock2.js.map +1 -1
- package/dist/assets/line-icons/icons/up.js.map +1 -1
- package/dist/assets/line-icons/icons/upload.js.map +1 -1
- package/dist/assets/line-icons/icons/user.js.map +1 -1
- package/dist/assets/line-icons/icons/user2.js.map +1 -1
- package/dist/assets/line-icons/icons/wins-common-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/wins-epic-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/wins-legendary-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/wins-mystery-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/wins-mythic-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/wins-rare-icon.js.map +1 -1
- package/dist/assets/line-icons/icons/zoom-in.js.map +1 -1
- package/dist/assets/line-icons/icons/zoom-out.js.map +1 -1
- package/dist/features/auth/account-selector/account-selector.js.map +1 -1
- package/dist/features/auth/account-selector/comps/compact-header/account-selector-header.js.map +1 -1
- package/dist/features/auth/comps/animated-avatar-message/animated-avatar-message.js.map +1 -1
- package/dist/features/auth/comps/animated-avatar-message/animated-text/animated-text.js.map +1 -1
- package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js.map +1 -1
- package/dist/features/auth/comps/auth-static-panel/auth-static-panel.js.map +1 -1
- package/dist/features/auth/comps/input-status-icon/input-status-icon.js.map +1 -1
- package/dist/features/auth/comps/linear-progress-bar/linear-progress-bar.js.map +1 -1
- package/dist/features/auth/comps/otp-input/otp-input.js +1 -7
- package/dist/features/auth/comps/otp-input/otp-input.js.map +1 -1
- package/dist/features/auth/comps/pill-button/pill-button.js.map +1 -1
- package/dist/features/auth/comps/resend-otp/resend-otp.js.map +1 -1
- package/dist/features/auth/comps/selectable-info-card/selectable-info-card.js.map +1 -1
- package/dist/features/auth/comps/tabs/tab-tem/tab-item.js.map +1 -1
- package/dist/features/auth/comps/tabs/tabs-styled.js.map +1 -1
- package/dist/features/auth/comps/tabs/tabs.js.map +1 -1
- package/dist/features/auth/comps/user-list/user-item/user-item.js.map +1 -1
- package/dist/features/auth/comps/user-list/user-list.js.map +1 -1
- package/dist/features/auth/forgot-password/otp-form/otp-form.js.map +1 -1
- package/dist/features/auth/forgot-password/reset-password-form/reset-password-form.js.map +1 -1
- package/dist/features/auth/forgot-password/user-identifier-form/user-identifier-form.js.map +1 -1
- package/dist/features/auth/login/identifier-otp-form/identifier-otp-form.js.map +1 -1
- package/dist/features/auth/login/social-account-not-found/social-account-not-found.js.map +1 -1
- package/dist/features/auth/login/social-login-methods/social-login-methods.js.map +1 -1
- package/dist/features/auth/login/username-password-form/username-password-form.js.map +1 -1
- package/dist/features/auth/pla-signup/onboarding-guide/onboarding-guide.js.map +1 -1
- package/dist/features/auth/pla-signup/signup-options/signup-options.js.map +1 -1
- package/dist/features/auth/signup/circular-step-wrapper/circular-step-wrapper.js.map +1 -1
- package/dist/features/auth/signup/claim-user-account/claim-user-account.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/country-selector/country-code-button.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/country-selector/country-list-menu.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/country-selector/country-selector.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/custom-input-field.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/date-picker-input/date-picker-input.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/grade-input/grade-input.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/input-wrapper/input-wrapper.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/password-toggle/password-toggle.js.map +1 -1
- package/dist/features/auth/signup/signup-methods/signup-methods.js.map +1 -1
- package/dist/features/auth/signup/user-type-selector/user-type-card/user-type-card.js.map +1 -1
- package/dist/features/auth/signup/user-type-selector/user-type-selector.js.map +1 -1
- package/dist/features/auth/signup-unavailable/signup-unavailable-view.js.map +1 -1
- package/dist/features/auth/signup-unavailable/signup-unavailable.js.map +1 -1
- package/dist/features/av/av-preview/av-preview.js.map +1 -1
- package/dist/features/av/av-preview/hooks/use-media-devices.js.map +1 -1
- package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker-context.js.map +1 -1
- package/dist/features/blockers/multi-tab-blocker/multi-tab-blocker.js.map +1 -1
- package/dist/features/blockers/multi-tab-blocker/use-is-tab-blocked.js.map +1 -1
- package/dist/features/chapters/chapter/chapter.js.map +1 -1
- package/dist/features/chapters/chapter/comps/chapter-banner/chapter-banner.js.map +1 -1
- package/dist/features/chapters/chapter/comps/core-lessons/core-lessons.js.map +1 -1
- package/dist/features/chapters/chapter/comps/supplementary-resources/supplementary-resources.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item-styled.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapter-item/chapter-item.js.map +1 -1
- package/dist/features/chapters/chapters-list/chapters-list.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/block-section.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-action.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-header.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block-utils.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/chapter-block/chapter-block.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item-utils.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-item.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/question-overview.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/sat-sheet-summary.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/sat-sheet-summary/summary-module.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/student-actions/student-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sat-sheet-item/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/reward-n-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions-utils.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/student-actions/student-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item-icon.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item-utils.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/block-section/sheet-item/sheet-item.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/comps/chapter-progress.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/comps/tab-section.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/constants/puzzle-card.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/lpar-chapter-banner/chapter-banner.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/lpar-chapter-banner/lpar-chapter-banner-styled.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/lpar-chapter.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/cue-coins.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card-styled.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-card/puzzle-card.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-section-utils.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/puzzle-section/puzzle-section.js.map +1 -1
- package/dist/features/chapters/lpar-chapter/utils/index.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/block-section.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/chapter-block/chapter-block.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/rewards-n-actions.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/student-actions.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/rewards-n-actions/teacher-actions.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/sheet-info.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/block-section/sheet-item/sheet-item.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/extra-practice-section/extra-practice-section.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/lpar-milestone-chapter.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card-util.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-card.js.map +1 -1
- package/dist/features/chapters/lpar-milestone-chapter/puzzle-section/puzzle-section.js.map +1 -1
- package/dist/features/chapters-v2/api/chapter.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/block-sections/block-section-view.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/block-sections/block-sections.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner-styled.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/chapter-banner/chapter-banner.js.map +1 -1
- package/dist/features/chapters-v2/chapter-details/chapter-details.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/node-card-tags.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/node-card.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-option.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/node-menu-options/node-menu-options.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/student-actions/student-actions.js.map +1 -1
- package/dist/features/chapters-v2/comps/node-card/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/chapters-v2/comps/sat-mock-test/sat-mock-test.js.map +1 -1
- package/dist/features/chapters-v2/comps/tag/tag.js.map +1 -1
- package/dist/features/chapters-v2/utils/index.js.map +1 -1
- package/dist/features/chapters-v2/utils/node-card-utils.js.map +1 -1
- package/dist/features/chapters-v2/utils/sat-sheet-utils.js.map +1 -1
- package/dist/features/circle-games/comps/info-bar/info-bar.js.map +1 -1
- package/dist/features/circle-games/game-launcher/api/get-content-for-today/get-circle-home-api.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/card-container/card-container-styled.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/card-container/card-container.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/carousel/carousel.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card-styled.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/segmented-game-card/segmented-game-card.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/constants.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/infinite-button/infinite-mode-launcher-button.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/spl-events-text/spl-events-text.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode/table-mode.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode-star/table-mode-star-styled.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-mode-star/table-mode-star.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/table-segment-star/table-segment-star.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js.map +1 -1
- package/dist/features/circle-games/game-launcher/dal/use-get-circle-home-details-dal/helper.js.map +1 -1
- package/dist/features/circle-games/game-launcher/dal/use-get-circle-home-details-dal/use-get-circle-home-details-dal.js.map +1 -1
- package/dist/features/circle-games/game-launcher/game-launcher.js.map +1 -1
- package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js.map +1 -1
- package/dist/features/circle-games/game-launcher/hooks/use-table-infinite-launcher-journey/use-table-infinite-launcher-journey.js.map +1 -1
- package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js.map +1 -1
- package/dist/features/circle-games/games/tutorial/tutorial.js.map +1 -1
- package/dist/features/circle-games/games/tutorial/video-progress-bar/video-progress-bar-styled.js.map +1 -1
- package/dist/features/circle-games/games/tutorial/video-progress-bar/video-progress-bar.js.map +1 -1
- package/dist/features/circle-games/games/web-view/hooks/use-webview-games.js.map +1 -1
- package/dist/features/circle-games/games/web-view/web-view-types.js.map +1 -1
- package/dist/features/circle-games/games/web-view/web-view.js.map +1 -1
- package/dist/features/circle-games/hooks/use-circle-sounds/use-circle-sounds.js.map +1 -1
- package/dist/features/circle-games/leaderboard/api/get-leaderboard/get-leaderboard.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/banner/banner.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/leaderboard-item/leaderboard-item.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/navigation-button/navigation-button.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/progress-item/progress-item.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/progress-list-item/progress-list-item.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/streak-reduction-infobar/streak-reduction-infobar.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/timer/timer.js.map +1 -1
- package/dist/features/circle-games/leaderboard/comps/with-grade/with-grade.js.map +1 -1
- package/dist/features/circle-games/leaderboard/dal/use-get-leaderboard-dal/use-get-leaderboard-dal.js.map +1 -1
- package/dist/features/circle-games/leaderboard/hooks/use-timer/use-timer.js.map +1 -1
- package/dist/features/circle-games/leaderboard/leaderboard.js.map +1 -1
- package/dist/features/circle-games/sign-up/api/use-create-user-api/use-create-user-api.js.map +1 -1
- package/dist/features/circle-games/sign-up/api/use-update-user-api/use-update-user-api.js.map +1 -1
- package/dist/features/circle-games/sign-up/api/use-update-username-api/use-update-username-api.js.map +1 -1
- package/dist/features/circle-games/sign-up/api/use-validate-username-api/use-username-availability-get.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/circular-steps/circular-steps.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/grade-input/grade-input.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/input-wrapper/input-wrapper.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/select-user-grade/select-user-grade.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/spinner/spinner.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/splash-screen/splash-screen.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/username-input/username-input.js.map +1 -1
- package/dist/features/circle-games/sign-up/constants.js.map +1 -1
- package/dist/features/circle-games/sign-up/dal/create-user-dal/create-user-dal.js.map +1 -1
- package/dist/features/circle-games/sign-up/dal/update-user-dal/update-user-dal.js.map +1 -1
- package/dist/features/circle-games/sign-up/dal/update-username-dal/update-username-dal.js.map +1 -1
- package/dist/features/circle-games/sign-up/dal/validate-username-dal/validate-username-dal.js.map +1 -1
- package/dist/features/circle-games/sign-up/helper.js.map +1 -1
- package/dist/features/circle-games/sign-up/sign-up.js.map +1 -1
- package/dist/features/communication/hooks/use-inclass-message-broker/use-inclass-message-broker.js.map +1 -1
- package/dist/features/communication/hooks/use-trial-session-message-broker/use-trial-session-message-broker.js.map +1 -1
- package/dist/features/communication/pub-sub/core.js.map +1 -1
- package/dist/features/communication/pub-sub/hooks.js.map +1 -1
- package/dist/features/cue-canvas/bottombar/homework-controls.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-context.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas-provider.js.map +1 -1
- package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
- package/dist/features/cue-canvas/cue-cavas-styled.js.map +1 -1
- package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js.map +1 -1
- package/dist/features/cue-canvas/hooks/use-config-updater.js.map +1 -1
- package/dist/features/cue-canvas/hooks/use-height-extender.js.map +1 -1
- package/dist/features/cue-canvas/hooks/use-upload-helper.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/homework/homework-menu.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/homework/homework-request.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/homework/homework.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/filter-selection-menu.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/filters-section.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/filters.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/hooks/use-fetch-cue-canvas-activity.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/launch-puzzle.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/puzzle-menu.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/puzzles/puzzles.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/sidebar-styled.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/sidebar.js.map +1 -1
- package/dist/features/cue-canvas/sidebar/tiles/tile.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/color-palette.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/color-picker-menu.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/grid-menu.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/icon-map.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/pen-tool-menu.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/tool.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
- package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js.map +1 -1
- package/dist/features/extra-practice/extra-practice.js.map +1 -1
- package/dist/features/extra-practice/list/list-constants.js.map +1 -1
- package/dist/features/extra-practice/list/list.js.map +1 -1
- package/dist/features/homework/card-menu-options.js.map +1 -1
- package/dist/features/homework/card-title.js.map +1 -1
- package/dist/features/homework/homework-card-view.js.map +1 -1
- package/dist/features/homework/homework-card.js.map +1 -1
- package/dist/features/homework/hw-card-list/api/get-homeworks.js.map +1 -1
- package/dist/features/homework/hw-card-list/hw-card-list-view.js.map +1 -1
- package/dist/features/homework/hw-card-list/hw-card-list.js.map +1 -1
- package/dist/features/homework/node-progress.js.map +1 -1
- package/dist/features/homework/utils.js.map +1 -1
- package/dist/features/hooks/use-auto-play-permission/use-auto-play-permission-context-provider.js.map +1 -1
- package/dist/features/journey/comps/coachmark/coachmark-utils.js.map +1 -1
- package/dist/features/journey/comps/coachmark/coachmark.js.map +1 -1
- package/dist/features/journey/hooks/use-chapter-page-journey/use-challenge-arena-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-chapter-page-journey/use-chapter-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-chapter-page-journey/use-download-block-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-chapter-page-journey/use-download-node-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-get-eligible-journeys-via-route.js.map +1 -1
- package/dist/features/journey/hooks/use-home-page-journey/tooltip-item.js.map +1 -1
- package/dist/features/journey/hooks/use-home-page-journey/use-home-page-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-puzzles-journey/use-puzzle-assigned.js.map +1 -1
- package/dist/features/journey/hooks/use-puzzles-journey/use-puzzle-attempt-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-puzzles-journey/use-puzzle-dashboard-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-puzzles-journey/use-puzzle-intro-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-puzzles-journey/use-puzzle-progress-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-puzzles-journey/use-puzzle-review-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-puzzles-journey/use-puzzle-unassign-journey.js.map +1 -1
- package/dist/features/journey/hooks/use-puzzles-journey/use-teacher-puzzle-assigned-journey.js.map +1 -1
- package/dist/features/journey/use-journey/journey-context-provider.js.map +1 -1
- package/dist/features/journey/use-journey/journey-styled.js.map +1 -1
- package/dist/features/journey/use-journey/use-journey.js.map +1 -1
- package/dist/features/journey/user-journey-api/user-journey-api.js.map +1 -1
- package/dist/features/maintenance/maintenance.js.map +1 -1
- package/dist/features/milestone/create/api/goal-submit.js.map +1 -1
- package/dist/features/milestone/create/api/milestone-bulk.js.map +1 -1
- package/dist/features/milestone/create/api/milestone-config.js.map +1 -1
- package/dist/features/milestone/create/api/milestone-submit.js.map +1 -1
- package/dist/features/milestone/create/api/recommended-chapters.js.map +1 -1
- package/dist/features/milestone/create/comps/add-custom-chapter/add-custom-chapter.js.map +1 -1
- package/dist/features/milestone/create/comps/add-custom-chapter/course-catalog.js.map +1 -1
- package/dist/features/milestone/create/comps/add-custom-chapter/hooks/use-catalog-helpers.js.map +1 -1
- package/dist/features/milestone/create/comps/add-custom-chapter/search-chapter/search-chapters.js.map +1 -1
- package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/selected-chapter-item.js.map +1 -1
- package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/selected-chapters.js.map +1 -1
- package/dist/features/milestone/create/comps/add-custom-chapter/selected-chapters/tags-render.js.map +1 -1
- package/dist/features/milestone/create/comps/body-layout/body-layout.js.map +1 -1
- package/dist/features/milestone/create/comps/chapter-item/chapter-item-styled.js.map +1 -1
- package/dist/features/milestone/create/comps/chapter-item/chapter-item.js.map +1 -1
- package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/category-card.js.map +1 -1
- package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-category/chapter-category-container.js.map +1 -1
- package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapter-selection.js.map +1 -1
- package/dist/features/milestone/create/comps/chapters-selection-step/chapter-selection-step-v2/chapters-list.js.map +1 -1
- package/dist/features/milestone/create/comps/chapters-selection-step/chapters-selection-step.js.map +1 -1
- package/dist/features/milestone/create/comps/chapters-selection-step/use-chapter-list-update.js.map +1 -1
- package/dist/features/milestone/create/comps/chapters-selection-step/utils.js.map +1 -1
- package/dist/features/milestone/create/comps/class-details-step/class-details-selectors.js.map +1 -1
- package/dist/features/milestone/create/comps/class-details-step/class-details-step.js.map +1 -1
- package/dist/features/milestone/create/comps/class-details-step/class-details-utils.js.map +1 -1
- package/dist/features/milestone/create/comps/confirmation-modals/chapter-clearance-confirmation.js.map +1 -1
- package/dist/features/milestone/create/comps/confirmation-modals/goal-creation-confirmation-utils.js.map +1 -1
- package/dist/features/milestone/create/comps/confirmation-modals/goal-creation-confirmation.js.map +1 -1
- package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector-view.js.map +1 -1
- package/dist/features/milestone/create/comps/goal-completion-date-selector/goal-completion-date-selector.js.map +1 -1
- package/dist/features/milestone/create/comps/info-points/info-points.js.map +1 -1
- package/dist/features/milestone/create/comps/milestone-progress/milestone-progress.js.map +1 -1
- package/dist/features/milestone/create/comps/sheets-list/sheets-list.js.map +1 -1
- package/dist/features/milestone/create/comps/test-type-step/category-component-styled.js.map +1 -1
- package/dist/features/milestone/create/comps/test-type-step/category-component.js.map +1 -1
- package/dist/features/milestone/create/comps/test-type-step/test-type-step-constants.js.map +1 -1
- package/dist/features/milestone/create/comps/test-type-step/test-type-step.js.map +1 -1
- package/dist/features/milestone/create/comps/test-type-step/test-type-utils.js.map +1 -1
- package/dist/features/milestone/create/milestone-create-components-map.js.map +1 -1
- package/dist/features/milestone/create/milestone-create-container.js.map +1 -1
- package/dist/features/milestone/create/milestone-create-context.js.map +1 -1
- package/dist/features/milestone/create/milestone-create-helpers.js.map +1 -1
- package/dist/features/milestone/create/milestone-create-hooks.js.map +1 -1
- package/dist/features/milestone/create/milestone-create-styled.js.map +1 -1
- package/dist/features/milestone/create/milestone-create.js.map +1 -1
- package/dist/features/milestone/create/submit-modal/submit-modal.js.map +1 -1
- package/dist/features/milestone/create/submit-modal/submit-with-plan-modal/submit-with-plan-modal-util.js.map +1 -1
- package/dist/features/milestone/create/submit-modal/submit-with-plan-modal/submit-with-plan-modal.js.map +1 -1
- package/dist/features/milestone/create/submit-modal/use-submit-milestone.js.map +1 -1
- package/dist/features/milestone/edit/comps/edit-milestone-modal/api/get-milestone.js.map +1 -1
- package/dist/features/milestone/edit/comps/edit-milestone-modal/edit-milestone.js.map +1 -1
- package/dist/features/milestone/edit/comps/edit-milestone-modal/index.js.map +1 -1
- package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-container.js.map +1 -1
- package/dist/features/milestone/edit/goal-drafts/goal-draft-edit-helpers.js.map +1 -1
- package/dist/features/milestone/edit/goal-edit-container.js.map +1 -1
- package/dist/features/milestone/edit/goal-edit-helpers.js.map +1 -1
- package/dist/features/milestone/edit/milestone-edit-container.js.map +1 -1
- package/dist/features/milestone/edit/milestone-edit-helpers.js.map +1 -1
- package/dist/features/milestone/hooks/use-submit-goal-creation.js.map +1 -1
- package/dist/features/milestone/milestone-action-widget/milestone-action-widget.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/api/get-milestone-resources.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/api/get-milestones.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/api/get-past-milestone-count.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/api/get-tests-list.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/filter-milestones.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js +32 -32
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-list.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-loader/milestone-loader.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-ctas.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/goal-action-utils.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/goals/use-goal-draft-publish.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-info.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs-styled.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-tabs/milestone-tabs.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-utils.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget-styled.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/milestone-widget.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/milestone-widget/outcome/outcome.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list/no-active-milestone/no-active-milestone.js.map +1 -1
- package/dist/features/milestone/milestone-list-container/milestone-list-container.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/added-resource-and-filters.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/api/get-resource.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/comps/filter-item/filter-item.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/comps/resource-item/resource-item.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/resource-items/resource-items.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-assign/resources-assign.js.map +1 -1
- package/dist/features/milestone/milestone-resources/resources-list/resources-list.js.map +1 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-container.js.map +1 -1
- package/dist/features/milestone/milestone-tests/test-list-v2/test-list-view.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/api/preview-test-sheet.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/api/test-sheet-assign.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-item/chapter-item.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/chapter-selection/chapter-selection.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/difficulty-and-duration-selection.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-card-lottie-animation.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/difficulty-and-duration-selection/test-radio-card/test-radio-card.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/test-stages/test-preview/test-preview.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/tests-creation.js.map +1 -1
- package/dist/features/milestone/milestone-tests/tests-creation/utils/index.js.map +1 -1
- package/dist/features/milestone/outcome/api/milestone-outcome-config.js.map +1 -1
- package/dist/features/milestone/outcome/comps/achievement/achievement-constants.js.map +1 -1
- package/dist/features/milestone/outcome/comps/achievement/achievement-container.js.map +1 -1
- package/dist/features/milestone/outcome/comps/achievement/reason-submit-modal.js.map +1 -1
- package/dist/features/milestone/outcome/comps/achievement/share-instructions-modal.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/dynamic-input-handler.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/input-handler.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/milestone-outcome-collection-container.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/outcome-form/outcome-form.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/rank-inputs/index.js.map +1 -1
- package/dist/features/milestone/outcome/comps/outcome-collection/score-marks-input/index.js.map +1 -1
- package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-container.js.map +1 -1
- package/dist/features/milestone/outcome/comps/past-milestone/past-milestone-form.js.map +1 -1
- package/dist/features/milestone/outcome/comps/past-milestone/question.js +1 -5
- package/dist/features/milestone/outcome/comps/past-milestone/question.js.map +1 -1
- package/dist/features/milestone/outcome/milestone-outcome-container.js.map +1 -1
- package/dist/features/milestone/start/milestone-start.js.map +1 -1
- package/dist/features/parent-dashboard/api/get-student-profile-summary.js.map +1 -1
- package/dist/features/parent-dashboard/api/parent-home.js.map +1 -1
- package/dist/features/parent-dashboard/comps/billing-information/billing-information.js.map +1 -1
- package/dist/features/parent-dashboard/comps/compact-header/compact-header.js.map +1 -1
- package/dist/features/parent-dashboard/comps/cuemath-app-features/cuemath-app-features-constants.js.map +1 -1
- package/dist/features/parent-dashboard/comps/math-practice/math-practice.js.map +1 -1
- package/dist/features/parent-dashboard/comps/next-steps/next-steps-constants.js.map +1 -1
- package/dist/features/parent-dashboard/comps/pla-first-session-introduction/pla-first-session-introduction.js.map +1 -1
- package/dist/features/parent-dashboard/comps/session-status/hooks/use-session-status-config.js.map +1 -1
- package/dist/features/parent-dashboard/comps/session-status/session-status.js.map +1 -1
- package/dist/features/parent-dashboard/comps/session-summary/session-summary-constants.js.map +1 -1
- package/dist/features/parent-dashboard/comps/session-summary/session-summary.js.map +1 -1
- package/dist/features/parent-dashboard/comps/session-summary/summary-card/summary-card.js.map +1 -1
- package/dist/features/parent-dashboard/comps/upcoming-sessions/upcoming-sessions.js.map +1 -1
- package/dist/features/parent-dashboard/hooks/use-parent-home-data.js.map +1 -1
- package/dist/features/parent-dashboard/hooks/use-switch-user-journey.js.map +1 -1
- package/dist/features/parent-dashboard/modals/cancel-subscription/cancel-subscription.js.map +1 -1
- package/dist/features/parent-dashboard/modals/cancellation-reason/cancellation-reason.js.map +1 -1
- package/dist/features/parent-dashboard/modals/hooks/use-pla-model-handlers.js.map +1 -1
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary-helpers.js.map +1 -1
- package/dist/features/parent-dashboard/modals/student-profile-summary/student-profile-summary.js.map +1 -1
- package/dist/features/parent-dashboard/modals/tutor-change/tutor-change.js.map +1 -1
- package/dist/features/parent-dashboard/parent-dashboard-types.js.map +1 -1
- package/dist/features/parent-dashboard/parent-dashboard-view.js.map +1 -1
- package/dist/features/parent-dashboard/parent-dashboard.js.map +1 -1
- package/dist/features/pointer-sync/hooks/use-pointer-sync.js.map +1 -1
- package/dist/features/pointer-sync/pointer.js.map +1 -1
- package/dist/features/post-game-stats/accuracy/accuracy-comps.js.map +1 -1
- package/dist/features/post-game-stats/accuracy/accuracy.js.map +1 -1
- package/dist/features/post-game-stats/clock/clock.js.map +1 -1
- package/dist/features/post-game-stats/digital-meter/digital-meter.js.map +1 -1
- package/dist/features/post-game-stats/number-count-animation/number-count-animation.js.map +1 -1
- package/dist/features/post-game-stats/points/points.js.map +1 -1
- package/dist/features/post-game-stats/post-game-stats.js.map +1 -1
- package/dist/features/post-game-stats/score/score.js.map +1 -1
- package/dist/features/post-game-stats/streak/streak.js.map +1 -1
- package/dist/features/puzzles/api/puzzle-assign.js.map +1 -1
- package/dist/features/puzzles/api/puzzle-dashboard.js.map +1 -1
- package/dist/features/puzzles/app/puzzle-app-styled.js.map +1 -1
- package/dist/features/puzzles/app/puzzle-app-view.js.map +1 -1
- package/dist/features/puzzles/app/puzzle-app.js.map +1 -1
- package/dist/features/puzzles/comps/puzzle-card-styled.js.map +1 -1
- package/dist/features/puzzles/comps/puzzle-card.js.map +1 -1
- package/dist/features/puzzles/puzzle-container/puzzle-container-styled.js.map +1 -1
- package/dist/features/puzzles/puzzle-container/puzzle-container-view.js.map +1 -1
- package/dist/features/puzzles/puzzle-container/puzzle-container.js.map +1 -1
- package/dist/features/puzzles/puzzle-dashboard/puzzle-dashboard.js.map +1 -1
- package/dist/features/puzzles/puzzle-feedback-celebration/puzzle-feedback-celebration.js.map +1 -1
- package/dist/features/puzzles/utils/puzzle-pattern.js.map +1 -1
- package/dist/features/recent-chapters/api/get-recent-chapters.js.map +1 -1
- package/dist/features/recent-chapters/recent-chapters.js.map +1 -1
- package/dist/features/sheet-tools/desmos-calculator/desmos-calculator.js.map +1 -1
- package/dist/features/sheet-tools/tool-header/tool-header.js +14 -14
- package/dist/features/sheet-tools/tool-header/tool-header.js.map +1 -1
- package/dist/features/sheet-v2/resource-list/resource-list.js.map +1 -1
- package/dist/features/sheets/comps/sheet-button/index.js.map +1 -1
- package/dist/features/sheets/comps/sheet-button/styled.js.map +1 -1
- package/dist/features/sheets/constants/sheet.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/menu-element.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/context-menu-helper/target-element.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/lesson-item-cta-info.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/lesson-item-styled.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/lesson-item-utils.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/lesson-item-view.js.map +1 -1
- package/dist/features/sheets/lessons-list/lesson-item/lesson-item.js.map +1 -1
- package/dist/features/sheets/lessons-list/lessons-list.js.map +1 -1
- package/dist/features/sheets/reference-sheet/reference-sheet.js.map +1 -1
- package/dist/features/sheets/resources-list/resource-item/context-menu-helper/menu-element.js.map +1 -1
- package/dist/features/sheets/resources-list/resource-item/resource-item.js.map +1 -1
- package/dist/features/sheets/resources-list/resource-item/utils.js.map +1 -1
- package/dist/features/sheets/resources-list/resources-list.js.map +1 -1
- package/dist/features/sheets/resources-list/styled.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/context-menu-helper/menu-element/menu-element.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/context-menu-helper/target-element/target-element.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions-utils.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/student-actions/student-actions.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/sheet-item-icon.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/sheet-item-tag.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/sheet-item-utils.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheet-item/sheet-item.js.map +1 -1
- package/dist/features/sheets/sheets-list/sheets-list.js.map +1 -1
- package/dist/features/sheets/utils/is-v3-worksheet.js.map +1 -1
- package/dist/features/stickers/sticker-selector/comps/sticker/sticker.js.map +1 -1
- package/dist/features/stickers/sticker-selector/comps/stiker-selector-grid/sticker-selector-grid.js.map +1 -1
- package/dist/features/stickers/sticker-selector/sticker-selector.js.map +1 -1
- package/dist/features/stickers/stickers-effects/stickers-effects-animations.js.map +1 -1
- package/dist/features/stickers/stickers-effects/stickers-effects-helper.js.map +1 -1
- package/dist/features/stickers/stickers-effects/stickers-effects-styled.js.map +1 -1
- package/dist/features/stickers/stickers-effects/stickers-effects.js.map +1 -1
- package/dist/features/student-details/class-details/class-details.js.map +1 -1
- package/dist/features/student-details/student-details-utils.js.map +1 -1
- package/dist/features/student-details/student-details.js.map +1 -1
- package/dist/features/student-details/wins-preview/wins-preview.js.map +1 -1
- package/dist/features/talk-meter/hooks/use-talk-meter.js.map +1 -1
- package/dist/features/talk-meter/ripple/index.js.map +1 -1
- package/dist/features/talk-meter/talk-meter-view/talk-meter-view.js.map +1 -1
- package/dist/features/talk-meter/talk-meter.js.map +1 -1
- package/dist/features/trial-session/api/course-stream.js.map +1 -1
- package/dist/features/trial-session/api/trial-home.js.map +1 -1
- package/dist/features/trial-session/api/trial-nodes.js.map +1 -1
- package/dist/features/trial-session/api/trial-pricing.js.map +1 -1
- package/dist/features/trial-session/comps/about-cuemath/index.js.map +1 -1
- package/dist/features/trial-session/comps/av-panels/student-av-panel/student-av-panel.js.map +1 -1
- package/dist/features/trial-session/comps/av-panels/teacher-av-panel/teacher-av-panel.js.map +1 -1
- package/dist/features/trial-session/comps/background-grid/background-grid-styled.js.map +1 -1
- package/dist/features/trial-session/comps/background-grid/background-grid-utils.js.map +1 -1
- package/dist/features/trial-session/comps/background-grid/background-grid.js.map +1 -1
- package/dist/features/trial-session/comps/class-preference/class-preference.js.map +1 -1
- package/dist/features/trial-session/comps/clock/clock.js.map +1 -1
- package/dist/features/trial-session/comps/countdown-progress-bar/countdown-progress-bar.js.map +1 -1
- package/dist/features/trial-session/comps/cue-tips/cues/index.js.map +1 -1
- package/dist/features/trial-session/comps/cue-tips/tips/index.js.map +1 -1
- package/dist/features/trial-session/comps/learning-plan/index.js.map +1 -1
- package/dist/features/trial-session/comps/learning-plan/use-learning-plan-scroll-sync.js.map +1 -1
- package/dist/features/trial-session/comps/learning-session/learning-session-constants.js.map +1 -1
- package/dist/features/trial-session/comps/learning-session/learning-session-styled.js.map +1 -1
- package/dist/features/trial-session/comps/navigation-bar/index.js.map +1 -1
- package/dist/features/trial-session/comps/offering-information/offering-information-constants.js.map +1 -1
- package/dist/features/trial-session/comps/pricing/board-comp.js.map +1 -1
- package/dist/features/trial-session/comps/pricing/india-pricing/index.js.map +1 -1
- package/dist/features/trial-session/comps/pricing/pricing-cards.js.map +1 -1
- package/dist/features/trial-session/comps/pricing/pricing-styled.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals-view.js.map +1 -1
- package/dist/features/trial-session/comps/school-goals/school-goals.js.map +1 -1
- package/dist/features/trial-session/comps/session-insights/session-insights.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/report-404/report-404.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/report-information/report-card.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/report-information/report-information-styled.js.map +1 -1
- package/dist/features/trial-session/comps/session-report/report-information/report-information.js.map +1 -1
- package/dist/features/trial-session/comps/slide-header/index.js.map +1 -1
- package/dist/features/trial-session/comps/solutions/index.js.map +1 -1
- package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
- package/dist/features/trial-session/comps/student-info/student-info.js.map +1 -1
- package/dist/features/trial-session/comps/student-profile/student-profile-highlights/student-profile-highlights.js.map +1 -1
- package/dist/features/trial-session/comps/student-profile/student-profile-utils.js.map +1 -1
- package/dist/features/trial-session/comps/student-profile/student-profile.js.map +1 -1
- package/dist/features/trial-session/comps/teacher-intro/teacher-profile/teacher-profile.js.map +1 -1
- package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
- package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game-launch-screen/trial-circle-game-launch-screen-styled.js.map +1 -1
- package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game-launch-screen/trial-circle-game-launch-screen.js.map +1 -1
- package/dist/features/trial-session/comps/trial-circle-game/trial-circle-game.js.map +1 -1
- package/dist/features/trial-session/comps/worksheet/worksheet.js.map +1 -1
- package/dist/features/trial-session/context/trial-session-context.js.map +1 -1
- package/dist/features/trial-session/helper.js.map +1 -1
- package/dist/features/trial-session/hooks/use-left-panel-button-state.js.map +1 -1
- package/dist/features/trial-session/hooks/use-slide-config-update.js.map +1 -1
- package/dist/features/trial-session/hooks/use-trial-session-navigation.js.map +1 -1
- package/dist/features/trial-session/left-panel/index.js.map +1 -1
- package/dist/features/trial-session/right-panel/slide-components-map.js.map +1 -1
- package/dist/features/trial-session/trial-session-types.js.map +1 -1
- package/dist/features/trial-session/trial-session-view.js.map +1 -1
- package/dist/features/trial-session/trial-session.js.map +1 -1
- package/dist/features/ui/accordion/accordion-items/accordion-items-styled.js.map +1 -1
- package/dist/features/ui/accordion/accordion-items/accordion-items.js.map +1 -1
- package/dist/features/ui/accordion/accordion.js.map +1 -1
- package/dist/features/ui/accordion-section/accordion-section-styled.js.map +1 -1
- package/dist/features/ui/accordion-section/accordion-section.js +8 -8
- package/dist/features/ui/accordion-section/accordion-section.js.map +1 -1
- package/dist/features/ui/animated-arc/animated-arc-styled.js.map +1 -1
- package/dist/features/ui/animated-arc/animated-arc.js.map +1 -1
- package/dist/features/ui/arc-button/arc-button-styled.js.map +1 -1
- package/dist/features/ui/arc-button/arc-button.js.map +1 -1
- package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
- package/dist/features/ui/arrow-tooltip/comps/tooltip-body-styled.js.map +1 -1
- package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js.map +1 -1
- package/dist/features/ui/avatar/avatar-mapping.js.map +1 -1
- package/dist/features/ui/avatar/avatar-types.js.map +1 -1
- package/dist/features/ui/avatar/avatar.js.map +1 -1
- package/dist/features/ui/avatar/layers/base/variant-1.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-1.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-10.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-11.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-12.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-13.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-14.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-15.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-16.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-17.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-18.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-2.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-3.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-4.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-5.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-6.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-7.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-8.js.map +1 -1
- package/dist/features/ui/avatar/layers/eyes/variant-9.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-1.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-10.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-2.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-3.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-4.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-5.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-6.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-7.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-8.js.map +1 -1
- package/dist/features/ui/avatar/layers/hair/variant-9.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-1.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-10.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-11.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-12.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-13.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-14.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-15.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-16.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-17.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-18.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-2.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-3.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-4.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-5.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-6.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-7.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-8.js.map +1 -1
- package/dist/features/ui/avatar/layers/mouth/variant-9.js.map +1 -1
- package/dist/features/ui/buttons/button/button-styled.js.map +1 -1
- package/dist/features/ui/buttons/button/button.js.map +1 -1
- package/dist/features/ui/buttons/clickable/clickable.js.map +1 -1
- package/dist/features/ui/buttons/icon-button/icon-button-styled.js.map +1 -1
- package/dist/features/ui/buttons/icon-button/icon-button.js.map +1 -1
- package/dist/features/ui/buttons/text-button/text-button-styled.js.map +1 -1
- package/dist/features/ui/buttons/text-button/text-button.js.map +1 -1
- package/dist/features/ui/callout/callout.js.map +1 -1
- package/dist/features/ui/carousal/carousal.js.map +1 -1
- package/dist/features/ui/context/use-tracking-context.js.map +1 -1
- package/dist/features/ui/context-menu/context-menu.js.map +1 -1
- package/dist/features/ui/dot-lottie-animations/dot-lottie-animation.js.map +1 -1
- package/dist/features/ui/drawer/drawer.js.map +1 -1
- package/dist/features/ui/error/error.js.map +1 -1
- package/dist/features/ui/grade-selector/grade-selector-styled.js.map +1 -1
- package/dist/features/ui/grade-selector/grade-selector.js.map +1 -1
- package/dist/features/ui/grade-selector/grade-tab.js.map +1 -1
- package/dist/features/ui/hooks/use-click-handler.js.map +1 -1
- package/dist/features/ui/hooks/use-context-menu-click-handler.js.map +1 -1
- package/dist/features/ui/hooks/use-response-handler.js.map +1 -1
- package/dist/features/ui/image/image.js.map +1 -1
- package/dist/features/ui/inputs/base-input/base-input-styled.js.map +1 -1
- package/dist/features/ui/inputs/base-input/base-input.js.map +1 -1
- package/dist/features/ui/inputs/base-select-input/base-select-input-styled.js.map +1 -1
- package/dist/features/ui/inputs/base-select-input/base-select-input.js.map +1 -1
- package/dist/features/ui/inputs/base-select-input/select-option/select-option.js.map +1 -1
- package/dist/features/ui/inputs/base-select-input/select-section/select-section.js.map +1 -1
- package/dist/features/ui/inputs/cascading-select-input/cascading-select-input.js.map +1 -1
- package/dist/features/ui/inputs/checkbox-input/checkbox-input-styled.js.map +1 -1
- package/dist/features/ui/inputs/checkbox-input/checkbox-input.js.map +1 -1
- package/dist/features/ui/inputs/checkbox-input-list/checkbox-input-list.js.map +1 -1
- package/dist/features/ui/inputs/google-places-search-input/google-places-search-input.js.map +1 -1
- package/dist/features/ui/inputs/num-range-input/num-range-input.js.map +1 -1
- package/dist/features/ui/inputs/percentile-input/percentile-input.js.map +1 -1
- package/dist/features/ui/inputs/percentile-input/percentile-styled.js.map +1 -1
- package/dist/features/ui/inputs/radio-input/radio-input.js.map +1 -1
- package/dist/features/ui/inputs/radio-input/radio-option/radio-option.js.map +1 -1
- package/dist/features/ui/inputs/searchable-input/searchable-input-styled.js.map +1 -1
- package/dist/features/ui/inputs/searchable-input/searchable-input.js.map +1 -1
- package/dist/features/ui/inputs/searchable-select-input/searchable-select-input.js.map +1 -1
- package/dist/features/ui/inputs/searchable-select-input/use-filtered-options.js.map +1 -1
- package/dist/features/ui/inputs/select-input/select-input.js.map +1 -1
- package/dist/features/ui/inputs/text-input/text-input-styled.js.map +1 -1
- package/dist/features/ui/inputs/text-input/text-input.js.map +1 -1
- package/dist/features/ui/layout/flex-view.js.map +1 -1
- package/dist/features/ui/loader/reverse-circular-bar/reverse-circular-bar.js.map +1 -1
- package/dist/features/ui/lottie-animation/lottie-animation.js.map +1 -1
- package/dist/features/ui/modals/modal-context.js.map +1 -1
- package/dist/features/ui/modals/modal-provider.js.map +1 -1
- package/dist/features/ui/modals/modal.js.map +1 -1
- package/dist/features/ui/modals/use-modal-actions.js.map +1 -1
- package/dist/features/ui/modals/use-modal-params.js.map +1 -1
- package/dist/features/ui/nudge/nudge.js.map +1 -1
- package/dist/features/ui/perfect-hits/perfect-hits-styled.js.map +1 -1
- package/dist/features/ui/perfect-hits/perfect-hits.js.map +1 -1
- package/dist/features/ui/portal/portal.js.map +1 -1
- package/dist/features/ui/radio-cards/radio-card-option/radio-card-option.js.map +1 -1
- package/dist/features/ui/radio-cards/radio-cards.js.map +1 -1
- package/dist/features/ui/section-list/section-list.js.map +1 -1
- package/dist/features/ui/selection-cards/selection-card-option/selection-card-option-styled.js.map +1 -1
- package/dist/features/ui/selection-cards/selection-card-option/selection-card-option.js.map +1 -1
- package/dist/features/ui/selection-cards/selection-cards.js.map +1 -1
- package/dist/features/ui/separator/separator.js.map +1 -1
- package/dist/features/ui/stepper/stepper-styled.js.map +1 -1
- package/dist/features/ui/stepper/stepper.js.map +1 -1
- package/dist/features/ui/streak-icon/streak-icon-styled.js.map +1 -1
- package/dist/features/ui/streak-icon/streak-icon.js.map +1 -1
- package/dist/features/ui/superscript/superscript-styled.js.map +1 -1
- package/dist/features/ui/superscript/superscript.js.map +1 -1
- package/dist/features/ui/tab/tab-styled.js.map +1 -1
- package/dist/features/ui/tab/tab.js.map +1 -1
- package/dist/features/ui/tag/tag-styled.js.map +1 -1
- package/dist/features/ui/tag/tag.js.map +1 -1
- package/dist/features/ui/text/text.js.map +1 -1
- package/dist/features/ui/theme/z-index.js.map +1 -1
- package/dist/features/ui/time-left-timeline/time-left-timeline-styled.js.map +1 -1
- package/dist/features/ui/time-left-timeline/time-left-timeline.js +11 -11
- package/dist/features/ui/time-left-timeline/time-left-timeline.js.map +1 -1
- package/dist/features/ui/video/index.js.map +1 -1
- package/dist/features/wins-dashboard/belts-elements-stickers/belts-elements-stickers.js.map +1 -1
- package/dist/features/wins-dashboard/belts-elements-stickers/belts.js.map +1 -1
- package/dist/features/wins-dashboard/belts-elements-stickers/elements.js +17 -17
- package/dist/features/wins-dashboard/belts-elements-stickers/elements.js.map +1 -1
- package/dist/features/wins-dashboard/belts-elements-stickers/progress-bar-horizontal.js.map +1 -1
- package/dist/features/wins-dashboard/belts-elements-stickers/reward-elements.js.map +1 -1
- package/dist/features/wins-dashboard/constants.js.map +1 -1
- package/dist/features/wins-dashboard/header/wins-header.js.map +1 -1
- package/dist/features/wins-dashboard/student-badges/animated-tabbar.js.map +1 -1
- package/dist/features/wins-dashboard/student-badges/hooks/use-student-badge-list-hook.js.map +1 -1
- package/dist/features/wins-dashboard/student-badges/student-badge.js.map +1 -1
- package/dist/features/wins-dashboard/student-badges/student-badges-lists.js.map +1 -1
- package/dist/features/worksheet/learnosity-preloader/learnosity-preloader-context.js.map +1 -1
- package/dist/features/worksheet/learnosity-preloader/learnosity-preloader.js.map +1 -1
- package/dist/features/worksheet/learnosity-preloader/use-download-script.js.map +1 -1
- package/dist/features/worksheet/learnosity-preloader/use-is-learnosity-loaded.js.map +1 -1
- package/dist/features/worksheet/user-pointer-pin/hooks/use-user-location.js.map +1 -1
- package/dist/features/worksheet/user-pointer-pin/user-pin.js.map +1 -1
- package/dist/features/worksheet/worksheet/api/attempt-responses.js.map +1 -1
- package/dist/features/worksheet/worksheet/hooks/use-create-imperative-handle.js.map +1 -1
- package/dist/features/worksheet/worksheet/hooks/use-learnosity-append.js.map +1 -1
- package/dist/features/worksheet/worksheet/hooks/use-learnosity.js.map +1 -1
- package/dist/features/worksheet/worksheet/hooks/use-s3-helper.js.map +1 -1
- package/dist/features/worksheet/worksheet/hooks/use-time-on-questions.js.map +1 -1
- package/dist/features/worksheet/worksheet/hooks/use-worksheet-data-helper.js.map +1 -1
- package/dist/features/worksheet/worksheet/question-tips.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-behavior-helper.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-intervention.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review-available.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-review.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/exit-ticket-student-submission.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-assignment.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/blockers/optional-items-skip.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-blocker/worksheet-blocker.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-container.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-helpers.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-navigation/worksheet-item-navigation.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number-styled.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-item-number/worksheet-item-number.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-navigation.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-navigation/worksheet-section-navigation/worksheet-section-navigation.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-permissions/error.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/header/header-tags.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/header/header.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/header/validated-animation.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/learnosity-question.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop-styled.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/question-backdrop/question-backdrop.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/subjective-feedback.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/subjective-review.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question-styled.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-controller/use-handler-callbacks.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-controller/worksheet-questions-controller.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-questions-summary/worksheet-questions-summary.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-sidebar/navigator.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-sidebar/question-guide.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-sidebar/sidebar.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-summary/worksheet-summary.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-summary-controller/worksheet-summary-controller.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-types.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/api/get-dynamic-sheet.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/api/get-preview-worksheet.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/dynamic-worksheet-preview/dynamic-worksheet-preview.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/hooks/use-worksheet-layout.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/worksheet-preview-styled.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/worksheet-preview-view.js.map +1 -1
- package/dist/features/worksheet/worksheet-preview/worksheet-preview.js.map +1 -1
- package/dist/index.d.ts +161 -159
- package/package.json +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teacher-actions.js","sources":["../../../../../../../src/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"teacher-actions.js","sources":["../../../../../../../src/features/sheets/sheets-list/sheet-item/reward-n-actions/teacher-actions/teacher-actions.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { useCallback, useMemo } from 'react';\n\nimport Eye2Icon from '../../../../../../assets/line-icons/icons/eye2';\nimport Button from '../../../../../ui/buttons/button/button';\nimport IconButton from '../../../../../ui/buttons/icon-button/icon-button';\nimport ContextMenu from '../../../../../ui/context-menu/context-menu';\nimport { useUIContext } from '../../../../../ui/context/context';\nimport MenuElement from '../context-menu-helper/menu-element/menu-element';\nimport TargetElement from '../context-menu-helper/target-element/target-element';\nimport type { IRewardNActionsProps, TTrackEventPayloadProps } from '../reward-n-actions-types';\nimport { TEACHER_MENU_OPTIONS } from './teacher-actions-constant';\n\nconst TeacherActions: FC<IRewardNActionsProps> = ({\n sheet,\n isDefocused,\n isLastSheet,\n ...restTeacherActions\n}) => {\n const {\n teacherId,\n milestoneId,\n section,\n onReview,\n onPreview,\n onReset,\n onChangeLocation,\n onMarkAsFamiliar,\n onUnlock,\n onUnAssignSheet,\n } = restTeacherActions;\n const { permissions, user_node_id: userNodeId, node_id: nodeId } = sheet;\n const {\n can_teacher_review: canTeacherReview,\n can_reset: canReset,\n can_change_attempt_location: canChangeAttemptLocation,\n can_mark_familiar: canMarkFamiliar,\n can_unlock: canUnlock,\n can_unassign: canUnAssign,\n } = permissions;\n\n const { onEvent: trackEvent } = useUIContext();\n\n const trackEventPayload = useMemo(() => {\n const payload: TTrackEventPayloadProps = {\n teacher_id: teacherId,\n node_id: nodeId,\n user_node_id: userNodeId,\n };\n\n if (section) {\n payload.section = section;\n }\n\n if (milestoneId) {\n payload.milestone_id = milestoneId;\n }\n\n return payload;\n }, [milestoneId, nodeId, section, teacherId, userNodeId]);\n\n const handleTrackEvent = useCallback(\n (cta: string) => {\n const payload: TTrackEventPayloadProps = {\n ...trackEventPayload,\n cta,\n };\n\n trackEvent('clicked', payload);\n },\n [trackEvent, trackEventPayload],\n );\n\n const handleOnSheetView = useCallback(() => {\n if (canTeacherReview && typeof onReview === 'function') {\n if (!userNodeId) {\n throw new Error('No required id is present to open the sheet.');\n }\n\n onReview(userNodeId);\n\n return;\n }\n\n if (typeof onPreview === 'function') {\n onPreview(sheet);\n\n return;\n }\n\n throw new Error('No callback provided. If provided it must be a function');\n }, [canTeacherReview, onPreview, onReview, sheet, userNodeId]);\n\n const handleOnMenuOptionSelection = (selectedOption: string) => {\n handleTrackEvent(selectedOption);\n switch (selectedOption) {\n case TEACHER_MENU_OPTIONS.CHANGE_LOCATION:\n if (typeof onChangeLocation !== 'function') {\n throw new Error('onChangeLocation must be a function');\n }\n\n onChangeLocation(sheet);\n\n return;\n\n case TEACHER_MENU_OPTIONS.UNASSIGN:\n if (typeof onUnAssignSheet !== 'function') {\n throw new Error('onUnAssignSheet must be a function');\n }\n\n if (!userNodeId) {\n throw new Error('No user node id is present to unassign the sheet.');\n }\n onUnAssignSheet(sheet);\n\n return;\n\n case TEACHER_MENU_OPTIONS.MARK_AS_FAMILIAR:\n if (typeof onMarkAsFamiliar !== 'function') {\n throw new Error('onMarkAsFamiliar must be a function');\n }\n\n onMarkAsFamiliar(nodeId);\n\n return;\n\n default:\n if (typeof onReset !== 'function') {\n throw new Error('onReset must be a function');\n }\n\n onReset(sheet);\n\n return;\n }\n };\n\n const handleOnUnlock = () => {\n if (typeof onUnlock !== 'function') {\n throw new Error('onUnlock must be a function');\n }\n\n onUnlock(nodeId);\n };\n\n const renderContextMenu =\n canReset || (!isDefocused && canChangeAttemptLocation) || canMarkFamiliar || canUnAssign;\n\n const options = useMemo(\n () => [\n {\n show: !isDefocused && canChangeAttemptLocation,\n label: TEACHER_MENU_OPTIONS.CHANGE_LOCATION,\n },\n {\n show: canReset,\n label: TEACHER_MENU_OPTIONS.RESET_PROGRESS,\n },\n {\n show: canMarkFamiliar,\n label: TEACHER_MENU_OPTIONS.MARK_AS_FAMILIAR,\n },\n {\n show: canUnAssign,\n label: TEACHER_MENU_OPTIONS.UNASSIGN,\n },\n ],\n [isDefocused, canChangeAttemptLocation, canReset, canMarkFamiliar, canUnAssign],\n );\n\n return (\n <>\n {canUnlock && (\n <Button\n renderAs=\"primary\"\n label=\"Assign\"\n size=\"xsmall\"\n widthX={7}\n onClick={handleOnUnlock}\n analyticsProps={trackEventPayload}\n shape=\"square\"\n />\n )}\n\n <IconButton\n Icon={Eye2Icon}\n renderAs=\"secondary\"\n analyticsLabel={'Review'}\n onClick={handleOnSheetView}\n />\n\n {renderContextMenu && (\n <ContextMenu\n targetElement={\n <TargetElement analyticsLabel=\"Sheet menu\" analyticsProps={trackEventPayload} />\n }\n menuElement={\n <MenuElement\n options={options}\n handleOnMenuOptionSelection={handleOnMenuOptionSelection}\n />\n }\n menuOffset={10}\n menuZIndex={1}\n placeTop={isLastSheet}\n />\n )}\n </>\n );\n};\n\nexport default TeacherActions;\n"],"names":["TeacherActions","sheet","isDefocused","isLastSheet","restTeacherActions","teacherId","milestoneId","section","onReview","onPreview","onReset","onChangeLocation","onMarkAsFamiliar","onUnlock","onUnAssignSheet","permissions","userNodeId","nodeId","canTeacherReview","canReset","canChangeAttemptLocation","canMarkFamiliar","canUnlock","canUnAssign","trackEvent","useUIContext","trackEventPayload","useMemo","payload","handleTrackEvent","useCallback","cta","handleOnSheetView","handleOnMenuOptionSelection","selectedOption","TEACHER_MENU_OPTIONS","handleOnUnlock","renderContextMenu","options","jsxs","Fragment","jsx","Button","IconButton","Eye2Icon","ContextMenu","TargetElement","MenuElement"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sheet-item-icon.js","sources":["../../../../../src/features/sheets/sheets-list/sheet-item/sheet-item-icon.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"sheet-item-icon.js","sources":["../../../../../src/features/sheets/sheets-list/sheet-item/sheet-item-icon.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\nimport LockIcon from '../../../../assets/line-icons/icons/lock';\nimport UnlockIcon from '../../../../assets/line-icons/icons/unlock';\nimport { PUZZLE_CARD_STATE } from '../../../chapters/lpar-chapter/constants/puzzle-card';\nimport { SHEET_STATE } from '../../constants/sheet';\nimport * as Styled from './sheet-item-styled';\nimport type { TSheetStateProps } from './sheet-item-types';\n\nconst { MASTERED, PROFICIENT, FAMILIAR, IN_PROGRESS, NOT_STARTED, RE_ATTEMPT, COMPLETED } =\n SHEET_STATE;\nconst { UNLOCKED } = PUZZLE_CARD_STATE;\nconst {\n MASTERED_BADGE,\n MASTERED_SHIELD_GREEN,\n LEARNED_SHIELD_GREEN,\n LEARNT,\n PRACTICED_SHIELD_GREEN,\n PROFICIENT_BADGE,\n} = ILLUSTRATIONS;\n\nconst UNLOCK_ICON_STATES = [NOT_STARTED, UNLOCKED];\n\ninterface ISheetItemIconProps {\n state: TSheetStateProps | typeof UNLOCKED;\n isLessonItem?: boolean;\n width?: number;\n height?: number;\n gap?: number;\n gutter?: number;\n}\n\nconst SheetItemIcon: FC<ISheetItemIconProps> = ({\n state,\n width,\n height,\n gap,\n gutter: paddingLR,\n isLessonItem,\n}) => {\n const theme = useTheme();\n const { gutter } = theme.layout;\n\n if (state === MASTERED)\n return (\n <Styled.SheetStateImage\n $width={width}\n $height={height}\n $gap={gap}\n $gutter={paddingLR}\n src={isLessonItem ? MASTERED_SHIELD_GREEN : MASTERED_BADGE}\n alt=\"Mastered\"\n />\n );\n\n if (state === PROFICIENT)\n return (\n <Styled.SheetStateImage\n $width={width}\n $height={height}\n $gap={gap}\n $gutter={paddingLR}\n src={isLessonItem ? PRACTICED_SHIELD_GREEN : PROFICIENT_BADGE}\n alt=\"Proficient\"\n />\n );\n\n if (state === FAMILIAR || state === COMPLETED)\n return (\n <Styled.SheetStateImage\n $width={width}\n $height={height}\n $gap={gap}\n $gutter={paddingLR}\n src={isLessonItem ? LEARNED_SHIELD_GREEN : LEARNT}\n alt=\"Proficient\"\n />\n );\n\n if (state === IN_PROGRESS)\n return (\n <Styled.SheetStateImage\n $width={width}\n $height={height}\n src={ILLUSTRATIONS.PLAY}\n alt=\"Green Play Button\"\n $gap={gap ?? gutter * 0.375}\n $gutter={paddingLR ?? gutter * 0.5}\n />\n );\n\n if (state === RE_ATTEMPT) {\n return (\n <Styled.ExclamationWarningIcon stroke=\"red\" width={width ?? '24'} height={height ?? '24'} />\n );\n }\n\n if (UNLOCK_ICON_STATES.includes(state))\n return <UnlockIcon width={width ?? '24'} height={height ?? '24'} />;\n\n //* Default state is \"LOCKED\"\n return <LockIcon width={width ?? '24'} height={height ?? '24'} />;\n};\n\nexport default SheetItemIcon;\n"],"names":["MASTERED","PROFICIENT","FAMILIAR","IN_PROGRESS","NOT_STARTED","RE_ATTEMPT","COMPLETED","SHEET_STATE","UNLOCKED","PUZZLE_CARD_STATE","MASTERED_BADGE","MASTERED_SHIELD_GREEN","LEARNED_SHIELD_GREEN","LEARNT","PRACTICED_SHIELD_GREEN","PROFICIENT_BADGE","ILLUSTRATIONS","UNLOCK_ICON_STATES","SheetItemIcon","state","width","height","gap","paddingLR","isLessonItem","theme","useTheme","gutter","jsx","Styled.SheetStateImage","Styled.ExclamationWarningIcon","UnlockIcon","LockIcon"],"mappings":";;;;;;;;AAWA,MAAM,EAAE,UAAAA,GAAU,YAAAC,GAAY,UAAAC,GAAU,aAAAC,GAAa,aAAAC,GAAa,YAAAC,GAAY,WAAAC,EAC5E,IAAAC,GACI,EAAE,UAAAC,EAAa,IAAAC,GACf;AAAA,EACJ,gBAAAC;AAAA,EACA,uBAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,QAAAC;AAAA,EACA,wBAAAC;AAAA,EACA,kBAAAC;AACF,IAAIC,GAEEC,IAAqB,CAACb,GAAaI,CAAQ,GAW3CU,IAAyC,CAAC;AAAA,EAC9C,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,KAAAC;AAAA,EACA,QAAQC;AAAA,EACR,cAAAC;AACF,MAAM;AACJ,QAAMC,IAAQC,KACR,EAAE,QAAAC,EAAO,IAAIF,EAAM;AAEzB,SAAIN,MAAUnB,IAEV,gBAAA4B;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,QAAQT;AAAA,MACR,SAASC;AAAA,MACT,MAAMC;AAAA,MACN,SAASC;AAAA,MACT,KAAKC,IAAeb,IAAwBD;AAAA,MAC5C,KAAI;AAAA,IAAA;AAAA,EAAA,IAINS,MAAUlB,IAEV,gBAAA2B;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,QAAQT;AAAA,MACR,SAASC;AAAA,MACT,MAAMC;AAAA,MACN,SAASC;AAAA,MACT,KAAKC,IAAeV,IAAyBC;AAAA,MAC7C,KAAI;AAAA,IAAA;AAAA,EAAA,IAINI,MAAUjB,KAAYiB,MAAUb,IAEhC,gBAAAsB;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,QAAQT;AAAA,MACR,SAASC;AAAA,MACT,MAAMC;AAAA,MACN,SAASC;AAAA,MACT,KAAKC,IAAeZ,IAAuBC;AAAA,MAC3C,KAAI;AAAA,IAAA;AAAA,EAAA,IAINM,MAAUhB,IAEV,gBAAAyB;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,QAAQT;AAAA,MACR,SAASC;AAAA,MACT,KAAKL,EAAc;AAAA,MACnB,KAAI;AAAA,MACJ,MAAMM,KAAOK,IAAS;AAAA,MACtB,SAASJ,KAAaI,IAAS;AAAA,IAAA;AAAA,EAAA,IAIjCR,MAAUd,IAEV,gBAAAuB,EAACE,GAAA,EAA8B,QAAO,OAAM,OAAOV,KAAS,MAAM,QAAQC,KAAU,KAAM,CAAA,IAI1FJ,EAAmB,SAASE,CAAK,sBAC3BY,GAAW,EAAA,OAAOX,KAAS,MAAM,QAAQC,KAAU,KAAM,CAAA,sBAG3DW,GAAS,EAAA,OAAOZ,KAAS,MAAM,QAAQC,KAAU,KAAM,CAAA;AACjE;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sheet-item-tag.js","sources":["../../../../../src/features/sheets/sheets-list/sheet-item/sheet-item-tag.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"sheet-item-tag.js","sources":["../../../../../src/features/sheets/sheets-list/sheet-item/sheet-item-tag.tsx"],"sourcesContent":["import { pluralize } from 'humanize-plus';\nimport type { FC } from 'react';\n\nimport { NODE_TYPE, SHEET_ATTEMPT_LOCATION_MAP } from '../../constants/sheet';\nimport * as Styled from './sheet-item-styled';\nimport type { ISheetItemTagProps } from './sheet-item-types';\n\nconst SheetItemTag: FC<ISheetItemTagProps> = ({\n nodeType,\n sheetTime,\n totalQuestions,\n attemptLocation,\n}) => {\n if (nodeType === NODE_TYPE.DYNAMIC) {\n const questionsText = `${totalQuestions} ${pluralize(totalQuestions, 'question')}`;\n\n return (\n <Styled.DynamicNodeTypeWrapper>\n <Styled.SheetNodeType $renderAs=\"eyebrow2\" $align=\"center\">\n {SHEET_ATTEMPT_LOCATION_MAP[attemptLocation]}\n </Styled.SheetNodeType>\n\n <Styled.SheetNodeType $renderAs=\"eyebrow2\" $align=\"center\">\n {sheetTime} min\n </Styled.SheetNodeType>\n <Styled.SheetNodeType $renderAs=\"eyebrow2\" $align=\"center\">\n {questionsText}\n </Styled.SheetNodeType>\n </Styled.DynamicNodeTypeWrapper>\n );\n }\n\n return (\n <Styled.SheetNodeType $renderAs=\"eyebrow2\" $align=\"center\">\n {nodeType}\n </Styled.SheetNodeType>\n );\n};\n\nexport default SheetItemTag;\n"],"names":["SheetItemTag","nodeType","sheetTime","totalQuestions","attemptLocation","NODE_TYPE","questionsText","pluralize","jsxs","Styled.DynamicNodeTypeWrapper","jsx","Styled.SheetNodeType","SHEET_ATTEMPT_LOCATION_MAP"],"mappings":";;;;AAOA,MAAMA,IAAuC,CAAC;AAAA,EAC5C,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,iBAAAC;AACF,MAAM;AACA,MAAAH,MAAaI,EAAU,SAAS;AAClC,UAAMC,IAAgB,GAAGH,CAAc,IAAII,EAAAA,UAAUJ,GAAgB,UAAU,CAAC;AAG9E,WAAA,gBAAAK,EAACC,GAAA,EACC,UAAA;AAAA,MAAC,gBAAAC,EAAAC,GAAA,EAAqB,WAAU,YAAW,QAAO,UAC/C,UAA2BC,EAAAR,CAAe,GAC7C;AAAA,wBAECO,GAAA,EAAqB,WAAU,YAAW,QAAO,UAC/C,UAAA;AAAA,QAAAT;AAAA,QAAU;AAAA,MAAA,GACb;AAAA,MACA,gBAAAQ,EAACC,GAAA,EAAqB,WAAU,YAAW,QAAO,UAC/C,UACHL,GAAA;AAAA,IACF,EAAA,CAAA;AAAA,EAEJ;AAGE,SAAA,gBAAAI,EAACC,GAAA,EAAqB,WAAU,YAAW,QAAO,UAC/C,UACHV,EAAA,CAAA;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sheet-item-utils.js","sources":["../../../../../src/features/sheets/sheets-list/sheet-item/sheet-item-utils.ts"],"sourcesContent":["import type { TLPARSheetAttemptLocation } from '../../../chapters/lpar-chapter/block-section/sheet-item/sheet-item-type';\nimport
|
|
1
|
+
{"version":3,"file":"sheet-item-utils.js","sources":["../../../../../src/features/sheets/sheets-list/sheet-item/sheet-item-utils.ts"],"sourcesContent":["import type { TLPARSheetAttemptLocation } from '../../../chapters/lpar-chapter/block-section/sheet-item/sheet-item-type';\nimport { getLocationBasedTag } from '../../../chapters/lpar-chapter/block-section/sheet-item/sheet-item-utils';\nimport { COMPLETED_SHEET_STATE } from '../../constants/sheet';\nimport type { ISheetItemProps } from './sheet-item-types';\n\ninterface IGenerateTopicBasedSheetStatementProps {\n (topics: ISheetItemProps['topics']): string;\n}\n\nconst generateTopicBasedSheetStatement: IGenerateTopicBasedSheetStatementProps = topics => {\n if (!topics?.length) return '';\n\n const totalTopicsCount = topics.length;\n const truncatedTopics = topics.slice(0, 3); //* Showing only first 3 topics.\n const nonTruncatedTopicsCount = totalTopicsCount - truncatedTopics.length;\n\n const joinedChapterName = truncatedTopics\n .map(({ chapter_name: chapterName }) => chapterName)\n .join(', ');\n\n return nonTruncatedTopicsCount > 0\n ? `${joinedChapterName} + ${nonTruncatedTopicsCount}`\n : joinedChapterName;\n};\n\ninterface IGenerateTestSheetStatementProps {\n topics: ISheetItemProps['topics'];\n attemptLocation: TLPARSheetAttemptLocation;\n sheetStatement: string;\n canAttempt: boolean;\n state: ISheetItemProps['state'];\n}\n\nconst getSheetStatement = (attemptLocation: TLPARSheetAttemptLocation, sheetStatement: string) => {\n const locationTag = getLocationBasedTag(attemptLocation);\n\n return `${locationTag} • ${sheetStatement}`;\n};\n\nconst getTestSheetStatement = (val: IGenerateTestSheetStatementProps) => {\n const { topics, sheetStatement, canAttempt, state, attemptLocation } = val;\n\n const returnSheetStatement = !canAttempt && !COMPLETED_SHEET_STATE.includes(state);\n\n if (returnSheetStatement) return getSheetStatement(attemptLocation, sheetStatement);\n\n return generateTopicBasedSheetStatement(topics);\n};\n\nexport { getTestSheetStatement, generateTopicBasedSheetStatement, getSheetStatement };\n"],"names":["generateTopicBasedSheetStatement","topics","totalTopicsCount","truncatedTopics","nonTruncatedTopicsCount","joinedChapterName","chapterName","getSheetStatement","attemptLocation","sheetStatement","getLocationBasedTag","getTestSheetStatement","val","canAttempt","state","COMPLETED_SHEET_STATE"],"mappings":";;AASA,MAAMA,IAA2E,CAAUC,MAAA;AACrF,MAAA,EAACA,KAAA,QAAAA,EAAQ,QAAe,QAAA;AAE5B,QAAMC,IAAmBD,EAAO,QAC1BE,IAAkBF,EAAO,MAAM,GAAG,CAAC,GACnCG,IAA0BF,IAAmBC,EAAgB,QAE7DE,IAAoBF,EACvB,IAAI,CAAC,EAAE,cAAcG,EAAA,MAAkBA,CAAW,EAClD,KAAK,IAAI;AAEZ,SAAOF,IAA0B,IAC7B,GAAGC,CAAiB,MAAMD,CAAuB,KACjDC;AACN,GAUME,IAAoB,CAACC,GAA4CC,MAG9D,GAFaC,EAAoBF,CAAe,CAElC,MAAMC,CAAc,IAGrCE,IAAwB,CAACC,MAA0C;AACvE,QAAM,EAAE,QAAAX,GAAQ,gBAAAQ,GAAgB,YAAAI,GAAY,OAAAC,GAAO,iBAAAN,EAAoB,IAAAI;AAIvE,SAF6B,CAACC,KAAc,CAACE,EAAsB,SAASD,CAAK,IAEhDP,EAAkBC,GAAiBC,CAAc,IAE3ET,EAAiCC,CAAM;AAChD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sheet-item.js","sources":["../../../../../src/features/sheets/sheets-list/sheet-item/sheet-item.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"sheet-item.js","sources":["../../../../../src/features/sheets/sheets-list/sheet-item/sheet-item.tsx"],"sourcesContent":["import { useMemo, type FC } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport { SHEET_STATE } from '../../constants/sheet';\nimport RewardNActions from './reward-n-actions/reward-n-actions';\nimport SheetItemIcon from './sheet-item-icon';\nimport * as Styled from './sheet-item-styled';\nimport SheetItemTag from './sheet-item-tag';\nimport type { ISheetItemProps } from './sheet-item-types';\nimport { getSheetStatement, getTestSheetStatement } from './sheet-item-utils';\n\nconst SheetItem: FC<ISheetItemProps> = ({\n userType,\n renderNodeTypeTag,\n renderTestSheetStatement,\n ...restSheetItemProps\n}) => {\n const {\n isLastSheet,\n teacherId,\n milestoneId,\n section,\n isDefocused,\n onStart,\n onResume,\n onReattempt,\n onPreview,\n onReview,\n onReset,\n onChangeLocation,\n onMarkAsFamiliar,\n onUnlock,\n onUnAssignSheet,\n ...sheet //* This only gets sheet information.\n } = restSheetItemProps;\n\n const theme = useTheme();\n const { gutter } = theme.layout;\n\n const {\n is_subjective: isSubjective,\n node_type: nodeType,\n permissions,\n sheet_statement: sheetStatement,\n state,\n title,\n sheet_time: sheetTime,\n items: questionsList,\n topics,\n attempt_location: attemptLocation,\n } = sheet;\n const { can_attempt: canAttempt } = permissions;\n\n //* Memoizing props that change only via api data.\n const isLocked = useMemo(() => state === SHEET_STATE.LOCKED, [state]);\n const totalSheetTime = useMemo(() => (sheetTime && Math.ceil(sheetTime / 60)) || 0, [sheetTime]);\n\n const testSheetStatement = getTestSheetStatement({\n topics,\n attemptLocation,\n sheetStatement,\n state,\n canAttempt,\n });\n const sheetStatementToRender = renderTestSheetStatement\n ? testSheetStatement\n : getSheetStatement(attemptLocation, sheetStatement);\n\n return (\n <FlexView $flexDirection=\"row\" $flexGap={gutter * 0.75}>\n <Styled.SheetStateIconWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $disabled={isDefocused || isLocked}\n >\n <SheetItemIcon state={state} />\n </Styled.SheetStateIconWrapper>\n\n <Styled.SheetItemBodyWrapper $flexDirection=\"row\" $flexGapX={1}>\n <Styled.SheetPrimaryContentWrapper\n $flexGap={gutter * 0.25}\n $disabled={isDefocused || isLocked}\n >\n <FlexView>\n <Text $renderAs=\"cta2\">{title}</Text>\n <Text $renderAs=\"body2\" $color=\"BLACK_75\">\n {sheetStatementToRender}\n </Text>\n </FlexView>\n\n {renderNodeTypeTag && (\n <FlexView $flexDirection=\"row\">\n <SheetItemTag\n nodeType={nodeType}\n attemptLocation={attemptLocation}\n sheetTime={totalSheetTime}\n totalQuestions={questionsList?.length ?? 0}\n />\n </FlexView>\n )}\n </Styled.SheetPrimaryContentWrapper>\n\n <RewardNActions\n sheet={sheet}\n isDefocused={isDefocused}\n isLastSheet={isLastSheet}\n isSubjective={isSubjective}\n teacherId={teacherId}\n milestoneId={milestoneId}\n section={section}\n userType={userType}\n onChangeLocation={onChangeLocation}\n onPreview={onPreview}\n onReset={onReset}\n onReview={onReview}\n onStart={onStart}\n onReattempt={onReattempt}\n onResume={onResume}\n onMarkAsFamiliar={onMarkAsFamiliar}\n onUnlock={onUnlock}\n onUnAssignSheet={onUnAssignSheet}\n nodeType={nodeType}\n />\n </Styled.SheetItemBodyWrapper>\n </FlexView>\n );\n};\n\nexport default SheetItem;\n"],"names":["SheetItem","userType","renderNodeTypeTag","renderTestSheetStatement","restSheetItemProps","isLastSheet","teacherId","milestoneId","section","isDefocused","onStart","onResume","onReattempt","onPreview","onReview","onReset","onChangeLocation","onMarkAsFamiliar","onUnlock","onUnAssignSheet","sheet","theme","useTheme","gutter","isSubjective","nodeType","permissions","sheetStatement","state","title","sheetTime","questionsList","topics","attemptLocation","canAttempt","isLocked","useMemo","SHEET_STATE","totalSheetTime","testSheetStatement","getTestSheetStatement","sheetStatementToRender","getSheetStatement","FlexView","jsx","Styled.SheetStateIconWrapper","SheetItemIcon","Styled.SheetItemBodyWrapper","jsxs","Styled.SheetPrimaryContentWrapper","Text","SheetItemTag","RewardNActions"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sheets-list.js","sources":["../../../../src/features/sheets/sheets-list/sheets-list.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"sheets-list.js","sources":["../../../../src/features/sheets/sheets-list/sheets-list.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { useLayoutEffect, useRef } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport Text from '../../ui/text/text';\nimport SheetItem from './sheet-item/sheet-item';\nimport * as Styled from './sheets-list-styled';\nimport type { ISheetsListProps } from './sheets-list-types';\n\nconst SheetsList: FC<ISheetsListProps> = ({\n sheets,\n emptySheetsText,\n renderNodeTypeTag,\n ...restSheetsListProps\n}) => {\n const {\n userType,\n is_defocused: isDefocused,\n renderTestSheetStatement,\n teacherId,\n milestoneId,\n section,\n ...sheetItemCallbacks\n } = restSheetsListProps;\n\n const sheetsLength = sheets?.length;\n const sheetsContainerRef = useRef<HTMLDivElement>(null);\n const maxHeightRef = useRef(0);\n\n useLayoutEffect(() => {\n if (sheetsContainerRef.current) {\n sheetsContainerRef.current.style.height = 'auto';\n\n const newHeight = sheetsContainerRef.current.clientHeight;\n\n if (newHeight > maxHeightRef.current) {\n maxHeightRef.current = newHeight;\n }\n\n sheetsContainerRef.current.style.height = `${maxHeightRef.current}px`;\n }\n }, [sheetsLength]);\n const theme = useTheme();\n\n return (\n <FlexView ref={sheetsContainerRef} $flexGap={theme.layout.gutter * 1.25}>\n {sheetsLength ? (\n sheets.map((sheet, idx) => {\n const { worksheet_id: worksheetId, node_id: nodeId } = sheet;\n const lastSheet = idx === sheetsLength - 1;\n\n return (\n <SheetItem\n isDefocused={isDefocused}\n isLastSheet={lastSheet}\n key={`${worksheetId}_${nodeId}_${idx}`}\n renderNodeTypeTag={renderNodeTypeTag}\n renderTestSheetStatement={renderTestSheetStatement}\n userType={userType}\n teacherId={teacherId}\n milestoneId={milestoneId}\n section={section}\n {...sheetItemCallbacks}\n {...sheet}\n />\n );\n })\n ) : (\n <Styled.NoSheetsWarningCard>\n <Text $renderAs=\"body2\" $color=\"BLACK_75\">\n {emptySheetsText}\n </Text>\n </Styled.NoSheetsWarningCard>\n )}\n </FlexView>\n );\n};\n\nexport default SheetsList;\n"],"names":["SheetsList","sheets","emptySheetsText","renderNodeTypeTag","restSheetsListProps","userType","isDefocused","renderTestSheetStatement","teacherId","milestoneId","section","sheetItemCallbacks","sheetsLength","sheetsContainerRef","useRef","maxHeightRef","useLayoutEffect","newHeight","theme","useTheme","jsx","FlexView","sheet","idx","worksheetId","nodeId","lastSheet","SheetItem","Styled.NoSheetsWarningCard","Text","SheetsList$1"],"mappings":";;;;;;;AAUA,MAAMA,IAAmC,CAAC;AAAA,EACxC,QAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACE,QAAA;AAAA,IACJ,UAAAC;AAAA,IACA,cAAcC;AAAA,IACd,0BAAAC;AAAA,IACA,WAAAC;AAAA,IACA,aAAAC;AAAA,IACA,SAAAC;AAAA,IACA,GAAGC;AAAA,EACD,IAAAP,GAEEQ,IAAeX,KAAA,gBAAAA,EAAQ,QACvBY,IAAqBC,EAAuB,IAAI,GAChDC,IAAeD,EAAO,CAAC;AAE7B,EAAAE,EAAgB,MAAM;AACpB,QAAIH,EAAmB,SAAS;AACX,MAAAA,EAAA,QAAQ,MAAM,SAAS;AAEpC,YAAAI,IAAYJ,EAAmB,QAAQ;AAEzC,MAAAI,IAAYF,EAAa,YAC3BA,EAAa,UAAUE,IAGzBJ,EAAmB,QAAQ,MAAM,SAAS,GAAGE,EAAa,OAAO;AAAA,IACnE;AAAA,EAAA,GACC,CAACH,CAAY,CAAC;AACjB,QAAMM,IAAQC;AAEd,SACG,gBAAAC,EAAAC,GAAA,EAAS,KAAKR,GAAoB,UAAUK,EAAM,OAAO,SAAS,MAChE,UACCN,IAAAX,EAAO,IAAI,CAACqB,GAAOC,MAAQ;AACzB,UAAM,EAAE,cAAcC,GAAa,SAASC,MAAWH,GACjDI,IAAYH,MAAQX,IAAe;AAGvC,WAAA,gBAAAQ;AAAA,MAACO;AAAA,MAAA;AAAA,QACC,aAAArB;AAAA,QACA,aAAaoB;AAAA,QAEb,mBAAAvB;AAAA,QACA,0BAAAI;AAAA,QACA,UAAAF;AAAA,QACA,WAAAG;AAAA,QACA,aAAAC;AAAA,QACA,SAAAC;AAAA,QACC,GAAGC;AAAA,QACH,GAAGW;AAAA,MAAA;AAAA,MARC,GAAGE,CAAW,IAAIC,CAAM,IAAIF,CAAG;AAAA,IAAA;AAAA,EAStC,CAEH,IAEA,gBAAAH,EAAAQ,GAAA,EACC,UAAA,gBAAAR,EAACS,GAAK,EAAA,WAAU,SAAQ,QAAO,YAC5B,UAAA3B,EAAA,CACH,GACF,EAEJ,CAAA;AAEJ,GAEA4B,IAAe9B;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-v3-worksheet.js","sources":["../../../../src/features/sheets/utils/is-v3-worksheet.ts"],"sourcesContent":["import type { TNodeTypes } from '../../../types/models/worksheet';\nimport
|
|
1
|
+
{"version":3,"file":"is-v3-worksheet.js","sources":["../../../../src/features/sheets/utils/is-v3-worksheet.ts"],"sourcesContent":["import type { TNodeTypes } from '../../../types/models/worksheet';\nimport { NODE_TYPE } from '../constants/sheet';\nimport type { TNodeTypeProps } from '../sheets-list/sheet-item/sheet-item-types';\n\nconst SAT_V3_NODE_TYPES: TNodeTypeProps[] = [\n 'SAT_MATH_ASSESSMENT',\n 'SAT_ENGLISH_ASSESSMENT',\n 'SAT_MATH_RECAP',\n 'SAT_MATH_LEARNING',\n 'SAT_ENGLISH_LEARNING',\n];\nconst WORKSHEET_V3_NODE_TYPES: TNodeTypeProps[] = [\n ...SAT_V3_NODE_TYPES,\n NODE_TYPE.REMEDIAL,\n NODE_TYPE.LEGACY,\n NODE_TYPE.RECAP,\n NODE_TYPE.GENERAL,\n NODE_TYPE.LEVEL3,\n NODE_TYPE.LEVEL2,\n NODE_TYPE.REVISION,\n NODE_TYPE.TARGET_PRACTICE,\n NODE_TYPE.EXTRA_PRACTICE,\n NODE_TYPE.PRACTICE,\n NODE_TYPE.LEARNING,\n NODE_TYPE.PUZZLE_EASY,\n NODE_TYPE.PUZZLE_MEDIUM,\n NODE_TYPE.PUZZLE_HARD,\n NODE_TYPE.CHAPTER_ASSESSMENT,\n NODE_TYPE.ASSESSMENT,\n NODE_TYPE.MASTERY,\n NODE_TYPE.TRIAL_DIAGNOSTIC,\n NODE_TYPE.DYNAMIC,\n NODE_TYPE.TURING_ASSESSMENT,\n NODE_TYPE.TURING_PRACTICE,\n NODE_TYPE.DIAGNOSTIC,\n NODE_TYPE.SUBJECTIVE,\n NODE_TYPE.TURING_SUBJECTIVE,\n];\n\nexport const ASSESSMENT_NODE_TYPES: TNodeTypes[] = [\n NODE_TYPE.SAT_ENGLISH_ASSESSMENT,\n NODE_TYPE.SAT_MATH_ASSESSMENT,\n NODE_TYPE.ASSESSMENT,\n NODE_TYPE.CHAPTER_ASSESSMENT,\n NODE_TYPE.MASTERY,\n NODE_TYPE.TURING_ASSESSMENT,\n NODE_TYPE.DYNAMIC,\n NODE_TYPE.DIAGNOSTIC,\n NODE_TYPE.TURING_ASSESSMENT,\n];\n\nexport const TRIAL_V3_NODE_TYPES: TNodeTypes[] = [\n NODE_TYPE.TRIAL_BASIC,\n NODE_TYPE.TRIAL_INTERMEDIATE,\n NODE_TYPE.TRIAL_ADVANCED,\n NODE_TYPE.TRIAL_DIAGNOSTIC,\n];\n\nexport { WORKSHEET_V3_NODE_TYPES };\n"],"names":["SAT_V3_NODE_TYPES","WORKSHEET_V3_NODE_TYPES","NODE_TYPE","ASSESSMENT_NODE_TYPES","TRIAL_V3_NODE_TYPES"],"mappings":";AAIA,MAAMA,IAAsC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GACMC,IAA4C;AAAA,EAChD,GAAGD;AAAA,EACHE,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ,GAEaC,IAAsC;AAAA,EACjDD,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ,GAEaE,IAAoC;AAAA,EAC/CF,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AAAA,EACVA,EAAU;AACZ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sticker.js","sources":["../../../../../../src/features/stickers/sticker-selector/comps/sticker/sticker.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"sticker.js","sources":["../../../../../../src/features/stickers/sticker-selector/comps/sticker/sticker.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { memo, useCallback, useRef, useState } from 'react';\n\nimport LottieAnimation from '../../../../ui/lottie-animation/lottie-animation';\nimport type { ILottieAnimationRef } from '../../../../ui/lottie-animation/types';\nimport * as Styled from './sticker-styled';\nimport type { IStickerProps } from './sticker-types';\n\nconst renderSettings = {\n renderer: 'canvas' as const,\n};\n\nconst Sticker: FC<IStickerProps> = ({ emoji, lottieUrl, size = 48, onClick, disabled = false }) => {\n const [isHovered, setIsHovered] = useState(false);\n const [lottieState, setLottieState] = useState<'idle' | 'loaded' | 'error'>('idle');\n const lottieRef = useRef<ILottieAnimationRef>(null);\n\n const handleLottieReady = useCallback(() => {\n setLottieState('loaded');\n lottieRef.current?.play();\n }, []);\n\n const handleLottieError = useCallback(() => {\n setLottieState('error');\n }, []);\n\n const handleMouseEnter = useCallback(() => {\n setIsHovered(true);\n\n if (lottieState === 'loaded') {\n lottieRef.current?.play();\n }\n }, [lottieState]);\n\n const handleMouseLeave = useCallback(() => {\n setIsHovered(false);\n lottieRef.current?.goToAndStop(0, true);\n }, []);\n\n const hideStaticEmoji = isHovered && lottieState === 'loaded';\n\n return (\n <Styled.StickerContainer\n $size={size}\n $disabled={disabled}\n onPointerEnter={disabled ? undefined : handleMouseEnter}\n onPointerLeave={disabled ? undefined : handleMouseLeave}\n onClick={disabled ? undefined : onClick}\n >\n <Styled.StaticEmoji $size={size} $visible={!hideStaticEmoji}>\n {emoji}\n </Styled.StaticEmoji>\n\n <Styled.LottieContainer $size={size} $visible={hideStaticEmoji}>\n {isHovered && lottieUrl && (\n <LottieAnimation\n ref={lottieRef}\n src={lottieUrl}\n width=\"100%\"\n height=\"100%\"\n settings={renderSettings}\n onRender={handleLottieReady}\n onError={handleLottieError}\n />\n )}\n </Styled.LottieContainer>\n </Styled.StickerContainer>\n );\n};\n\nexport default memo(Sticker);\n"],"names":["renderSettings","Sticker","emoji","lottieUrl","size","onClick","disabled","isHovered","setIsHovered","useState","lottieState","setLottieState","lottieRef","useRef","handleLottieReady","useCallback","_a","handleLottieError","handleMouseEnter","handleMouseLeave","hideStaticEmoji","jsxs","Styled.StickerContainer","jsx","Styled.StaticEmoji","Styled.LottieContainer","LottieAnimation","Sticker$1","memo"],"mappings":";;;;AAQA,MAAMA,IAAiB;AAAA,EACrB,UAAU;AACZ,GAEMC,IAA6B,CAAC,EAAE,OAAAC,GAAO,WAAAC,GAAW,MAAAC,IAAO,IAAI,SAAAC,GAAS,UAAAC,IAAW,SAAY;AACjG,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1C,CAACC,GAAaC,CAAc,IAAIF,EAAsC,MAAM,GAC5EG,IAAYC,EAA4B,IAAI,GAE5CC,IAAoBC,EAAY,MAAM;;AAC1C,IAAAJ,EAAe,QAAQ,IACvBK,IAAAJ,EAAU,YAAV,QAAAI,EAAmB;AAAA,EACrB,GAAG,CAAE,CAAA,GAECC,IAAoBF,EAAY,MAAM;AAC1C,IAAAJ,EAAe,OAAO;AAAA,EACxB,GAAG,CAAE,CAAA,GAECO,IAAmBH,EAAY,MAAM;;AACzC,IAAAP,EAAa,EAAI,GAEbE,MAAgB,cAClBM,IAAAJ,EAAU,YAAV,QAAAI,EAAmB;AAAA,EACrB,GACC,CAACN,CAAW,CAAC,GAEVS,IAAmBJ,EAAY,MAAM;;AACzC,IAAAP,EAAa,EAAK,IACRQ,IAAAJ,EAAA,YAAA,QAAAI,EAAS,YAAY,GAAG;AAAA,EACpC,GAAG,CAAE,CAAA,GAECI,IAAkBb,KAAaG,MAAgB;AAGnD,SAAA,gBAAAW;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,OAAOlB;AAAA,MACP,WAAWE;AAAA,MACX,gBAAgBA,IAAW,SAAYY;AAAA,MACvC,gBAAgBZ,IAAW,SAAYa;AAAA,MACvC,SAASb,IAAW,SAAYD;AAAA,MAEhC,UAAA;AAAA,QAAC,gBAAAkB,EAAAC,GAAA,EAAmB,OAAOpB,GAAM,UAAU,CAACgB,GACzC,UACHlB,GAAA;AAAA,QAEA,gBAAAqB,EAACE,GAAA,EAAuB,OAAOrB,GAAM,UAAUgB,GAC5C,UAAAb,KAAaJ,KACZ,gBAAAoB;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,KAAKd;AAAA,YACL,KAAKT;AAAA,YACL,OAAM;AAAA,YACN,QAAO;AAAA,YACP,UAAUH;AAAA,YACV,UAAUc;AAAA,YACV,SAASG;AAAA,UAAA;AAAA,QAAA,GAGf;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN,GAEeU,IAAAC,EAAK3B,CAAO;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sticker-selector-grid.js","sources":["../../../../../../src/features/stickers/sticker-selector/comps/stiker-selector-grid/sticker-selector-grid.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"sticker-selector-grid.js","sources":["../../../../../../src/features/stickers/sticker-selector/comps/stiker-selector-grid/sticker-selector-grid.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { memo } from 'react';\n\nimport { STICKERS_DATA } from '../../../constants';\nimport Sticker from '../sticker/sticker';\nimport * as Styled from './sticker-selector-grid-styled';\nimport type { IStickerSelectorGridProps } from './sticker-selector-grid-types';\n\nconst StickerSelectorGrid: FC<IStickerSelectorGridProps> = ({\n columns = 4,\n gap = 8,\n stickerSize = 72,\n onStickerClick,\n disabled = false,\n}) => {\n return (\n <Styled.StickerGridContainer $width=\"350px\" $height=\"400px\" $disabled={disabled}>\n <Styled.StickerGrid $columns={columns} $gap={gap}>\n {STICKERS_DATA.map(sticker => (\n <Sticker\n key={sticker.id}\n emoji={sticker.emoji}\n lottieUrl={sticker.lottieUrl}\n size={stickerSize}\n onClick={() => onStickerClick(sticker)}\n disabled={disabled}\n />\n ))}\n </Styled.StickerGrid>\n </Styled.StickerGridContainer>\n );\n};\n\nexport default memo(StickerSelectorGrid);\n"],"names":["StickerSelectorGrid","columns","gap","stickerSize","onStickerClick","disabled","jsx","Styled.StickerGridContainer","Styled.StickerGrid","STICKERS_DATA","sticker","Sticker","StickerSelectorGrid$1","memo"],"mappings":";;;;;AAQA,MAAMA,IAAqD,CAAC;AAAA,EAC1D,SAAAC,IAAU;AAAA,EACV,KAAAC,IAAM;AAAA,EACN,aAAAC,IAAc;AAAA,EACd,gBAAAC;AAAA,EACA,UAAAC,IAAW;AACb,MAEI,gBAAAC,EAACC,GAAA,EAA4B,QAAO,SAAQ,SAAQ,SAAQ,WAAWF,GACrE,4BAACG,GAAA,EAAmB,UAAUP,GAAS,MAAMC,GAC1C,UAAAO,EAAc,IAAI,CACjBC,MAAA,gBAAAJ;AAAA,EAACK;AAAA,EAAA;AAAA,IAEC,OAAOD,EAAQ;AAAA,IACf,WAAWA,EAAQ;AAAA,IACnB,MAAMP;AAAA,IACN,SAAS,MAAMC,EAAeM,CAAO;AAAA,IACrC,UAAAL;AAAA,EAAA;AAAA,EALKK,EAAQ;AAAA,CAOhB,GACH,EACF,CAAA,GAIWE,IAAAC,EAAKb,CAAmB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sticker-selector.js","sources":["../../../../src/features/stickers/sticker-selector/sticker-selector.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"sticker-selector.js","sources":["../../../../src/features/stickers/sticker-selector/sticker-selector.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { memo, useMemo, useState, useCallback } from 'react';\n\nimport ArrowTooltip from '../../ui/arrow-tooltip/arrow-tooltip';\nimport type { IStickerData } from '../stickers-types';\nimport StickerSelectorGrid from './comps/stiker-selector-grid/sticker-selector-grid';\nimport * as Styled from './sticker-selector-styled';\nimport type { IStickerSelectorProps } from './sticker-selector-types';\n\nconst StickerSelector: FC<IStickerSelectorProps> = ({\n triggerNode,\n onStickerSend,\n gridConfig,\n tooltipConfig,\n visible,\n}) => {\n const { columns = 4, gap = 8, stickerSize = 48 } = gridConfig;\n const {\n isAnimated,\n arrowColor,\n arrowSize,\n arrowXCoOrdinates,\n arrowYCoOrdinates,\n backgroundColor,\n borderColor,\n position = 'bottom',\n renderAs = 'primary',\n textVariant,\n tooltipOffset,\n tooltipXCoOrdinates,\n tooltipYCoOrdinates,\n width,\n widthX,\n zIndex,\n parentWidth,\n isBlocking = false,\n } = tooltipConfig;\n\n const [isTemporarilyDisabled, setIsTemporarilyDisabled] = useState(false);\n\n const handleStickerSend = useCallback(\n (sticker: IStickerData) => {\n if (isTemporarilyDisabled) return;\n\n onStickerSend?.(sticker);\n setIsTemporarilyDisabled(true);\n\n const timeout = setTimeout(() => {\n setIsTemporarilyDisabled(false);\n }, 5000);\n\n return () => clearTimeout(timeout);\n },\n [onStickerSend, isTemporarilyDisabled],\n );\n\n const tooltipItem = useMemo(\n () => (\n <StickerSelectorGrid\n columns={columns}\n gap={gap}\n stickerSize={stickerSize}\n onStickerClick={handleStickerSend}\n disabled={isTemporarilyDisabled}\n />\n ),\n [columns, gap, stickerSize, handleStickerSend, isTemporarilyDisabled],\n );\n\n const triggerEle = useMemo(() => {\n return (\n <Styled.TriggerWrapper $disabled={isTemporarilyDisabled}>{triggerNode}</Styled.TriggerWrapper>\n );\n }, [isTemporarilyDisabled, triggerNode]);\n\n return (\n <ArrowTooltip\n children={triggerEle}\n alwaysVisible\n hidden={!visible}\n tooltipItem={tooltipItem}\n renderAs={renderAs}\n position={position}\n isBlocking={isBlocking}\n isAnimated={isAnimated}\n zIndex={zIndex}\n width={width}\n widthX={widthX}\n parentWidth={parentWidth}\n backgroundColor={backgroundColor}\n borderColor={borderColor}\n textVariant={textVariant}\n tooltipOffset={tooltipOffset}\n arrowColor={arrowColor}\n arrowSize={arrowSize}\n arrowXCoOrdinates={arrowXCoOrdinates}\n arrowYCoOrdinates={arrowYCoOrdinates}\n tooltipXCoOrdinates={tooltipXCoOrdinates}\n tooltipYCoOrdinates={tooltipYCoOrdinates}\n />\n );\n};\n\nexport default memo(StickerSelector);\n"],"names":["StickerSelector","triggerNode","onStickerSend","gridConfig","tooltipConfig","visible","columns","gap","stickerSize","isAnimated","arrowColor","arrowSize","arrowXCoOrdinates","arrowYCoOrdinates","backgroundColor","borderColor","position","renderAs","textVariant","tooltipOffset","tooltipXCoOrdinates","tooltipYCoOrdinates","width","widthX","zIndex","parentWidth","isBlocking","isTemporarilyDisabled","setIsTemporarilyDisabled","useState","handleStickerSend","useCallback","sticker","timeout","tooltipItem","useMemo","jsx","StickerSelectorGrid","triggerEle","Styled.TriggerWrapper","ArrowTooltip","stickerSelector","memo"],"mappings":";;;;;AASA,MAAMA,IAA6C,CAAC;AAAA,EAClD,aAAAC;AAAA,EACA,eAAAC;AAAA,EACA,YAAAC;AAAA,EACA,eAAAC;AAAA,EACA,SAAAC;AACF,MAAM;AACJ,QAAM,EAAE,SAAAC,IAAU,GAAG,KAAAC,IAAM,GAAG,aAAAC,IAAc,GAAO,IAAAL,GAC7C;AAAA,IACJ,YAAAM;AAAA,IACA,YAAAC;AAAA,IACA,WAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,UAAAC,IAAW;AAAA,IACX,aAAAC;AAAA,IACA,eAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,QAAAC;AAAA,IACA,QAAAC;AAAA,IACA,aAAAC;AAAA,IACA,YAAAC,IAAa;AAAA,EACX,IAAAtB,GAEE,CAACuB,GAAuBC,CAAwB,IAAIC,EAAS,EAAK,GAElEC,IAAoBC;AAAA,IACxB,CAACC,MAA0B;AACzB,UAAIL,EAAuB;AAE3B,MAAAzB,KAAA,QAAAA,EAAgB8B,IAChBJ,EAAyB,EAAI;AAEvB,YAAAK,IAAU,WAAW,MAAM;AAC/B,QAAAL,EAAyB,EAAK;AAAA,SAC7B,GAAI;AAEA,aAAA,MAAM,aAAaK,CAAO;AAAA,IACnC;AAAA,IACA,CAAC/B,GAAeyB,CAAqB;AAAA,EAAA,GAGjCO,IAAcC;AAAA,IAClB,MACE,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAA/B;AAAA,QACA,KAAAC;AAAA,QACA,aAAAC;AAAA,QACA,gBAAgBsB;AAAA,QAChB,UAAUH;AAAA,MAAA;AAAA,IACZ;AAAA,IAEF,CAACrB,GAASC,GAAKC,GAAasB,GAAmBH,CAAqB;AAAA,EAAA,GAGhEW,IAAaH,EAAQ,wBAEtBI,GAAA,EAAsB,WAAWZ,GAAwB,UAAY1B,EAAA,CAAA,GAEvE,CAAC0B,GAAuB1B,CAAW,CAAC;AAGrC,SAAA,gBAAAmC;AAAA,IAACI;AAAA,IAAA;AAAA,MACC,UAAUF;AAAA,MACV,eAAa;AAAA,MACb,QAAQ,CAACjC;AAAA,MACT,aAAA6B;AAAA,MACA,UAAAjB;AAAA,MACA,UAAAD;AAAA,MACA,YAAAU;AAAA,MACA,YAAAjB;AAAA,MACA,QAAAe;AAAA,MACA,OAAAF;AAAA,MACA,QAAAC;AAAA,MACA,aAAAE;AAAA,MACA,iBAAAX;AAAA,MACA,aAAAC;AAAA,MACA,aAAAG;AAAA,MACA,eAAAC;AAAA,MACA,YAAAT;AAAA,MACA,WAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,qBAAAO;AAAA,MACA,qBAAAC;AAAA,IAAA;AAAA,EAAA;AAGN,GAEeoB,IAAAC,EAAK1C,CAAe;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stickers-effects-animations.js","sources":["../../../../src/features/stickers/stickers-effects/stickers-effects-animations.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"stickers-effects-animations.js","sources":["../../../../src/features/stickers/stickers-effects/stickers-effects-animations.ts"],"sourcesContent":["import { keyframes, css } from 'styled-components';\n\nimport { randomizeDuration } from './stickers-effects-helper';\nimport type { IStickersProps } from './stickers-effects-types';\n\nconst fadeOutEaseIn = keyframes`\n 0% {\n opacity: 1;\n visibility: visible;\n }\n 80% {\n opacity: 0.5;\n }\n 100% {\n opacity: 0;\n visibility: visible;\n }\n`;\n\nconst floatUp = keyframes`\n 0% {\n transform: translateY(0vh);\n visibility: visible;\n }\n 100% {\n transform: translateY(-100vh);\n visibility: visible;\n }\n`;\n\nconst fallDown = keyframes`\n 0% {\n transform: translateY(0vh);\n visibility: visible;\n }\n 100% {\n transform: translateY(100vh);\n visibility: visible;\n }\n`;\n\nconst burstFromEdges = keyframes`\n 0% {\n transform: translateX(var(--from-x)) translateY(var(--from-y)) scale(1);\n visibility: visible;\n }\n 100% {\n transform: translateX(0vw) translateY(0vh) scale(1.25);\n visibility: visible;\n }\n`;\n\nconst popExpand = keyframes`\n 0% {\n transform: translateX(0) translateY(0vh);\n visibility: visible;\n }\n 35% {\n transform: translateX(0) translateY(-50vh) scale(1.25);\n }\n 60% {\n transform: translateX(var(--from-x)) translateY(var(--from-y)) scale(1.25);\n }\n 100% {\n transform: translateX(var(--from-x)) translateY(-110vh) scale(1.25);\n visibility: visible;\n }\n`;\n\nexport const effectAnimations: Record<\n IStickersProps['effect'],\n (duration: number) => ReturnType<typeof css>\n> = {\n 'float-up': (duration: number) => css`\n animation:\n ${floatUp} ${randomizeDuration(duration)}ms ease-out forwards,\n ${fadeOutEaseIn} ${randomizeDuration(duration)}ms ease-in forwards;\n `,\n 'fall-down': (duration: number) => css`\n animation:\n ${fallDown} ${randomizeDuration(duration)}ms ease-out forwards,\n ${fadeOutEaseIn} ${randomizeDuration(duration)}ms ease-in forwards;\n `,\n 'burst-from-edges': (duration: number) => css`\n animation:\n ${burstFromEdges} ${randomizeDuration(duration)}ms linear forwards,\n ${fadeOutEaseIn} ${randomizeDuration(duration)}ms ease-in forwards;\n `,\n 'pop-expand': (duration: number) => css`\n animation:\n ${popExpand} ${duration}ms cubic-bezier(0.5, 0.1, 0.7, 1) forwards,\n ${fadeOutEaseIn} ${duration}ms ease-in forwards;\n `,\n};\n"],"names":["fadeOutEaseIn","keyframes","floatUp","fallDown","burstFromEdges","popExpand","effectAnimations","duration","css","randomizeDuration"],"mappings":";;AAKA,MAAMA,IAAgBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAchBC,IAAUD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAWVE,IAAWF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAWXG,IAAiBH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAWjBI,IAAYJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAiBLK,IAGT;AAAA,EACF,YAAY,CAACC,MAAqBC;AAAA;AAAA,QAE5BN,CAAO,IAAIO,EAAkBF,CAAQ,CAAC;AAAA,QACtCP,CAAa,IAAIS,EAAkBF,CAAQ,CAAC;AAAA;AAAA,EAElD,aAAa,CAACA,MAAqBC;AAAA;AAAA,QAE7BL,CAAQ,IAAIM,EAAkBF,CAAQ,CAAC;AAAA,QACvCP,CAAa,IAAIS,EAAkBF,CAAQ,CAAC;AAAA;AAAA,EAElD,oBAAoB,CAACA,MAAqBC;AAAA;AAAA,QAEpCJ,CAAc,IAAIK,EAAkBF,CAAQ,CAAC;AAAA,QAC7CP,CAAa,IAAIS,EAAkBF,CAAQ,CAAC;AAAA;AAAA,EAElD,cAAc,CAACA,MAAqBC;AAAA;AAAA,QAE9BH,CAAS,IAAIE,CAAQ;AAAA,QACrBP,CAAa,IAAIO,CAAQ;AAAA;AAEjC;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stickers-effects-helper.js","sources":["../../../../src/features/stickers/stickers-effects/stickers-effects-helper.ts"],"sourcesContent":["import type { TStickerData, IGenerateStickersData } from './stickers-effects-types';\n\
|
|
1
|
+
{"version":3,"file":"stickers-effects-helper.js","sources":["../../../../src/features/stickers/stickers-effects/stickers-effects-helper.ts"],"sourcesContent":["import { STICKERS_DATA } from '../constants';\nimport type { TStickerData, IGenerateStickersData } from './stickers-effects-types';\n\nconst getBurstPosition = (\n index: number,\n total: number,\n): {\n fromX: string;\n fromY: string;\n x: number;\n y: number;\n} => {\n const countPerSide = Math.ceil(total / 4);\n const sideIndex = Math.floor(index / countPerSide);\n const pos = index % countPerSide;\n\n const sides = ['top', 'right', 'bottom', 'left'] as const;\n const side = sides[sideIndex] ?? 'left';\n\n const basePercent = ((pos + 0.5) / countPerSide) * 100;\n const jitter = (Math.random() - 0.5) * 25;\n const edgePercent = Math.min(Math.max(basePercent + jitter, 0), 100);\n\n const centerX = 45 + Math.random() * 10;\n const centerY = 45 + Math.random() * 10;\n\n let fromX = 0;\n let fromY = 0;\n\n switch (side) {\n case 'top':\n fromX = edgePercent - centerX;\n fromY = -centerY + jitter;\n break;\n case 'right':\n fromX = 100 - centerX + jitter;\n fromY = edgePercent - centerY;\n break;\n case 'bottom':\n fromX = edgePercent - centerX;\n fromY = 100 - centerY + jitter;\n break;\n case 'left':\n fromX = -centerX + jitter;\n fromY = edgePercent - centerY;\n break;\n }\n\n return {\n fromX: `${fromX}vw`,\n fromY: `${fromY}vh`,\n x: centerX,\n y: centerY,\n };\n};\n\nconst getRandomNonOverlappingPositions = (count: number, buffer = 10): number[] => {\n const used: number[] = [];\n let attempts = 0;\n const maxAttempts = count;\n\n while (used.length < count && attempts < maxAttempts) {\n const value = Math.floor(Math.random() * (100 - 2 * buffer) + buffer);\n\n if (used.every(v => Math.abs(v - value) >= buffer)) {\n used.push(value);\n }\n attempts++;\n }\n\n while (used.length < count) {\n used.push(Math.floor(Math.random() * (100 - 2 * buffer) + buffer));\n }\n\n return used;\n};\n\nexport function generateStickerData({\n count,\n effect,\n stickerId,\n minSize,\n maxSize,\n}: IGenerateStickersData): TStickerData[] {\n const buffer = (100 / count) * 2;\n const getSize = () => Math.random() * (maxSize - minSize) + minSize;\n const result: TStickerData[] = [];\n const xPositions = ['float-up', 'fall-down'].includes(effect)\n ? getRandomNonOverlappingPositions(count, buffer)\n : [];\n\n for (let i = 0; i < count; i++) {\n const { emoji: sticker = '', lottieUrl: lottie } =\n STICKERS_DATA.find(({ id }) => id === stickerId) || {};\n\n const size = getSize();\n const x = xPositions[i]!;\n const common = { id: stickerId, sticker, size };\n\n switch (effect) {\n case 'float-up':\n result.push({\n ...common,\n x,\n y: 110 + (Math.random() - 0.5) * size,\n lottie: lottie,\n });\n break;\n\n case 'fall-down':\n result.push({\n ...common,\n x,\n y: -10 + (Math.random() - 0.5) * size,\n lottie: lottie,\n });\n break;\n\n case 'burst-from-edges': {\n // eslint-disable-next-line @typescript-eslint/no-shadow\n const { x, y, fromX, fromY } = getBurstPosition(i, count);\n\n result.push({\n ...common,\n x,\n y,\n fromX,\n fromY,\n size,\n lottie: lottie,\n });\n break;\n }\n\n case 'pop-expand':\n result.push({\n ...common,\n x: 50,\n y: 100,\n fromX: `${(Math.random() - 0.5) * 27.5}vw`,\n fromY: `${-50 - Math.random() * 27.5}vh`,\n lottie: lottie,\n });\n break;\n\n default:\n result.push({\n ...common,\n x: Math.random() * 100,\n y: Math.random() * 100,\n });\n }\n }\n\n return result;\n}\n\nexport const randomizeDuration = (base: number, variancePercent = 0.2): number => {\n const delta = base * variancePercent;\n const min = base - delta;\n const max = base + delta;\n\n return Math.floor(Math.random() * (max - min + 1)) + min;\n};\n"],"names":["getBurstPosition","index","total","countPerSide","sideIndex","pos","side","basePercent","jitter","edgePercent","centerX","centerY","fromX","fromY","getRandomNonOverlappingPositions","count","buffer","used","attempts","maxAttempts","value","v","generateStickerData","effect","stickerId","minSize","maxSize","getSize","result","xPositions","i","sticker","lottie","STICKERS_DATA","id","size","x","common","y","randomizeDuration","base","variancePercent","delta","min","max"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stickers-effects-styled.js","sources":["../../../../src/features/stickers/stickers-effects/stickers-effects-styled.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"stickers-effects-styled.js","sources":["../../../../src/features/stickers/stickers-effects/stickers-effects-styled.ts"],"sourcesContent":["import styled, { css } from 'styled-components';\n\nimport { effectAnimations } from './stickers-effects-animations';\nimport type { IStickersProps } from './stickers-effects-types';\n\nexport const Container = styled.div`\n position: relative;\n width: 100vw;\n height: 100vh;\n background: transparent;\n pointer-events: none;\n`;\n\nexport const Sticker = styled.div<{\n effect: IStickersProps['effect'];\n duration: number;\n delay?: number;\n fromX?: string;\n fromY?: string;\n x: number;\n y: number;\n size: number;\n}>`\n position: absolute;\n z-index: 10;\n\n left: ${({ x }) => `${x}%`};\n top: ${({ y }) => `${y}%`};\n width: ${({ size }) => `${size}px`};\n height: ${({ size }) => `${size}px`};\n font-size: ${({ size }) => `${size}px`};\n\n pointer-events: none;\n visibility: hidden;\n animation-fill-mode: both;\n\n ${({ effect, duration, delay = 0, fromX, fromY }) => css`\n ${effectAnimations[effect](duration)}\n animation-delay: ${delay}ms;\n\n ${fromX &&\n fromY &&\n css`\n --from-x: ${fromX};\n --from-y: ${fromY};\n `}\n `}\n`;\n"],"names":["Container","styled","Sticker","x","y","size","effect","duration","delay","fromX","fromY","css","effectAnimations"],"mappings":";;AAKO,MAAMA,IAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAQnBC,IAAUD,EAAO;AAAA;AAAA;AAAA;AAAA,UAapB,CAAC,EAAE,GAAAE,EAAQ,MAAA,GAAGA,CAAC,GAAG;AAAA,SACnB,CAAC,EAAE,GAAAC,EAAQ,MAAA,GAAGA,CAAC,GAAG;AAAA,WAChB,CAAC,EAAE,MAAAC,EAAW,MAAA,GAAGA,CAAI,IAAI;AAAA,YACxB,CAAC,EAAE,MAAAA,EAAW,MAAA,GAAGA,CAAI,IAAI;AAAA,eACtB,CAAC,EAAE,MAAAA,EAAW,MAAA,GAAGA,CAAI,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMpC,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,OAAAC,IAAQ,GAAG,OAAAC,GAAO,OAAAC,EAAY,MAAAC;AAAA,MACjDC,EAAiBN,CAAM,EAAEC,CAAQ,CAAC;AAAA,uBACjBC,CAAK;AAAA;AAAA,MAEtBC,KACFC,KACAC;AAAA,kBACcF,CAAK;AAAA,kBACLC,CAAK;AAAA,KAClB;AAAA,GACF;AAAA;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stickers-effects.js","sources":["../../../../src/features/stickers/stickers-effects/stickers-effects.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"stickers-effects.js","sources":["../../../../src/features/stickers/stickers-effects/stickers-effects.tsx"],"sourcesContent":["import type { Data } from '@lottiefiles/dotlottie-web';\nimport { memo, useEffect, useState, type FC } from 'react';\n\nimport DotLottieAnimation from '../../ui/dot-lottie-animations/dot-lottie-animation';\nimport { preloadLottieFile } from './stickers-effects-cache';\nimport { generateStickerData } from './stickers-effects-helper';\nimport * as Styled from './stickers-effects-styled';\nimport type { TStickerData, IStickersProps } from './stickers-effects-types';\n\nconst StickerWithFallback: FC<{\n url?: string;\n sticker: string;\n size: number;\n}> = memo(({ url, sticker, size }) => {\n const [data, setData] = useState<Data>();\n const [failed, setFailed] = useState(false);\n const renderSettings = {\n loop: true,\n autoplay: true,\n };\n\n useEffect(() => {\n let isMounted = true;\n\n if (!url) return;\n\n preloadLottieFile(url)\n .then(result => {\n if (isMounted) {\n if (result) {\n setData(result);\n } else {\n setFailed(true);\n }\n }\n })\n .catch(() => {\n if (isMounted) setFailed(true);\n });\n\n return () => {\n isMounted = false;\n };\n }, [url]);\n\n if (!url || failed || !data) {\n return <>{sticker}</>;\n }\n\n return (\n <DotLottieAnimation\n data={data}\n width={size}\n height={size}\n settings={renderSettings}\n onError={() => setFailed(true)}\n />\n );\n});\n\nconst StickersEffects: FC<IStickersProps> = ({ stickerId, effect, count, duration }) => {\n const [stickersData, setStickersData] = useState<ReturnType<typeof generateStickerData>>([]);\n\n useEffect(() => {\n const stickerData = generateStickerData({\n count,\n effect,\n stickerId,\n minSize: 48,\n maxSize: 72,\n });\n\n setStickersData(stickerData);\n\n const timeout = setTimeout(() => setStickersData([]), duration);\n\n return () => clearTimeout(timeout);\n }, [effect, count, duration, stickerId]);\n\n return (\n <Styled.Container>\n {stickersData.map((data: TStickerData, i) => {\n const { id, sticker, lottie, x, y, size, fromX, fromY } = data;\n\n return (\n <Styled.Sticker\n key={`${id}-${i}`}\n effect={effect}\n duration={duration}\n delay={500}\n fromX={fromX}\n fromY={fromY}\n x={x}\n y={y}\n size={size}\n >\n <StickerWithFallback url={lottie} sticker={sticker} size={size} />\n </Styled.Sticker>\n );\n })}\n </Styled.Container>\n );\n};\n\nexport default memo(StickersEffects);\n"],"names":["StickerWithFallback","memo","url","sticker","size","data","setData","useState","failed","setFailed","renderSettings","useEffect","isMounted","preloadLottieFile","result","jsx","DotLottieAnimation","StickersEffects","stickerId","effect","count","duration","stickersData","setStickersData","stickerData","generateStickerData","timeout","Styled.Container","i","id","lottie","x","y","fromX","fromY","Styled.Sticker","stickersEffects"],"mappings":";;;;;;AASA,MAAMA,IAIDC,EAAK,CAAC,EAAE,KAAAC,GAAK,SAAAC,GAAS,MAAAC,QAAW;AACpC,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAe,GACjC,CAACC,GAAQC,CAAS,IAAIF,EAAS,EAAK,GACpCG,IAAiB;AAAA,IACrB,MAAM;AAAA,IACN,UAAU;AAAA,EAAA;AA2BZ,SAxBAC,EAAU,MAAM;AACd,QAAIC,IAAY;AAEhB,QAAKV;AAEa,aAAAW,EAAAX,CAAG,EAClB,KAAK,CAAUY,MAAA;AACd,QAAIF,MACEE,IACFR,EAAQQ,CAAM,IAEdL,EAAU,EAAI;AAAA,MAElB,CACD,EACA,MAAM,MAAM;AACP,QAAAG,OAAqB,EAAI;AAAA,MAAA,CAC9B,GAEI,MAAM;AACC,QAAAA,IAAA;AAAA,MAAA;AAAA,EACd,GACC,CAACV,CAAG,CAAC,GAEJ,CAACA,KAAOM,KAAU,CAACH,2BACX,UAAQF,EAAA,CAAA,IAIlB,gBAAAY;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAAX;AAAA,MACA,OAAOD;AAAA,MACP,QAAQA;AAAA,MACR,UAAUM;AAAA,MACV,SAAS,MAAMD,EAAU,EAAI;AAAA,IAAA;AAAA,EAAA;AAGnC,CAAC,GAEKQ,IAAsC,CAAC,EAAE,WAAAC,GAAW,QAAAC,GAAQ,OAAAC,GAAO,UAAAC,QAAe;AACtF,QAAM,CAACC,GAAcC,CAAe,IAAIhB,EAAiD,CAAE,CAAA;AAE3F,SAAAI,EAAU,MAAM;AACd,UAAMa,IAAcC,EAAoB;AAAA,MACtC,OAAAL;AAAA,MACA,QAAAD;AAAA,MACA,WAAAD;AAAA,MACA,SAAS;AAAA,MACT,SAAS;AAAA,IAAA,CACV;AAED,IAAAK,EAAgBC,CAAW;AAE3B,UAAME,IAAU,WAAW,MAAMH,EAAgB,CAAE,CAAA,GAAGF,CAAQ;AAEvD,WAAA,MAAM,aAAaK,CAAO;AAAA,KAChC,CAACP,GAAQC,GAAOC,GAAUH,CAAS,CAAC,GAGrC,gBAAAH,EAACY,GAAA,EACE,YAAa,IAAI,CAACtB,GAAoBuB,MAAM;AACrC,UAAA,EAAE,IAAAC,GAAI,SAAA1B,GAAS,QAAA2B,GAAQ,GAAAC,GAAG,GAAAC,GAAG,MAAA5B,GAAM,OAAA6B,GAAO,OAAAC,EAAU,IAAA7B;AAGxD,WAAA,gBAAAU;AAAA,MAACoB;AAAAA,MAAA;AAAA,QAEC,QAAAhB;AAAA,QACA,UAAAE;AAAA,QACA,OAAO;AAAA,QACP,OAAAY;AAAA,QACA,OAAAC;AAAA,QACA,GAAAH;AAAA,QACA,GAAAC;AAAA,QACA,MAAA5B;AAAA,QAEA,UAAC,gBAAAW,EAAAf,GAAA,EAAoB,KAAK8B,GAAQ,SAAA3B,GAAkB,MAAAC,GAAY;AAAA,MAAA;AAAA,MAV3D,GAAGyB,CAAE,IAAID,CAAC;AAAA,IAAA;AAAA,EAapB,CAAA,EACH,CAAA;AAEJ,GAEeQ,IAAAnC,EAAKgB,CAAe;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-details.js","sources":["../../../../src/features/student-details/class-details/class-details.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"class-details.js","sources":["../../../../src/features/student-details/class-details/class-details.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { memo } from 'react';\n\nimport FlexView from '../../ui/layout/flex-view';\nimport Text from '../../ui/text/text';\nimport type { IClassDetails } from './class-details-types';\nimport { getClassTime, getFormattedEndTime } from './class-details-utils';\n\nconst ClassDetails: FC<IClassDetails> = memo(({ classStatus }) => {\n const {\n slot_tag: slotTag,\n in_class: inClass,\n ongoing,\n class_duration: classDuration,\n class_start_ts: classStartTS,\n extended_time: extendedTime,\n next_class_time: nextClassTime,\n } = classStatus;\n\n const noUpcomingClass = !nextClassTime || (slotTag === 'PTM' && !inClass);\n const formattedTime = nextClassTime && !ongoing ? getFormattedEndTime(nextClassTime) : undefined;\n const ongoingClassTime =\n ongoing && classStartTS\n ? getClassTime(classStartTS, classDuration, extendedTime || 0)\n : undefined;\n\n const title = ongoing\n ? 'Ongoing class:'\n : noUpcomingClass\n ? 'No upcoming class, schedule with your tutor'\n : 'Upcoming class:';\n const classTime = ongoingClassTime ? ongoingClassTime : formattedTime;\n\n return (\n <FlexView\n $widthX={16.84375}\n $heightX={3.6875}\n $background=\"WHITE_1\"\n $gutterX={1}\n $justifyContent=\"center\"\n >\n <FlexView $flexGap={4}>\n <Text $renderAs=\"ab2\" $color=\"BLACK_T_87\">\n {title}\n </Text>\n\n {(ongoingClassTime || formattedTime) && (\n <Text $renderAs=\"ac2\" $color=\"BLACK_T_87\">\n {classTime}\n </Text>\n )}\n </FlexView>\n </FlexView>\n );\n});\n\nexport default ClassDetails;\n"],"names":["ClassDetails","memo","classStatus","slotTag","inClass","ongoing","classDuration","classStartTS","extendedTime","nextClassTime","noUpcomingClass","formattedTime","getFormattedEndTime","ongoingClassTime","getClassTime","jsx","FlexView","jsxs","Text"],"mappings":";;;;;AAQA,MAAMA,IAAkCC,EAAK,CAAC,EAAE,aAAAC,QAAkB;AAC1D,QAAA;AAAA,IACJ,UAAUC;AAAA,IACV,UAAUC;AAAA,IACV,SAAAC;AAAA,IACA,gBAAgBC;AAAA,IAChB,gBAAgBC;AAAA,IAChB,eAAeC;AAAA,IACf,iBAAiBC;AAAA,EACf,IAAAP,GAEEQ,IAAkB,CAACD,KAAkBN,MAAY,SAAS,CAACC,GAC3DO,IAAgBF,KAAiB,CAACJ,IAAUO,EAAoBH,CAAa,IAAI,QACjFI,IACJR,KAAWE,IACPO,EAAaP,GAAcD,GAAeE,KAAgB,CAAC,IAC3D;AAUJ,SAAA,gBAAAO;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAS;AAAA,MACT,UAAU;AAAA,MACV,aAAY;AAAA,MACZ,UAAU;AAAA,MACV,iBAAgB;AAAA,MAEhB,UAAA,gBAAAC,EAACD,GAAS,EAAA,UAAU,GAClB,UAAA;AAAA,QAAA,gBAAAD,EAACG,GAAK,EAAA,WAAU,OAAM,QAAO,cAC1B,UAjBKb,IACV,mBACAK,IACE,gDACA,mBAcA;AAAA,SAEEG,KAAoBF,MACnB,gBAAAI,EAAAG,GAAA,EAAK,WAAU,OAAM,QAAO,cAC1B,UAjBOL,KAAsCF,EAkBhD,CAAA;AAAA,MAAA,GAEJ;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"student-details-utils.js","sources":["../../../src/features/student-details/student-details-utils.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"student-details-utils.js","sources":["../../../src/features/student-details/student-details-utils.ts"],"sourcesContent":["import { ILLUSTRATIONS } from '../../assets/illustrations/illustrations';\nimport type { TUserTypes } from '../ui/types';\n\nconst { ALIEN_1, ALIEN_2, ALIEN_3, ALIEN_4 } = ILLUSTRATIONS;\n\nconst getRandomAlien = () => {\n const aliens = [ALIEN_1, ALIEN_2, ALIEN_3, ALIEN_4];\n\n return aliens[Math.floor(Math.random() * aliens.length)];\n};\n\nconst getStudentWelcomeMessage = (userType: TUserTypes) => {\n const today = new Date();\n const timeNow = today.toLocaleTimeString();\n let greetingMessage;\n\n if (timeNow >= '00:00:00' && timeNow < '12:00:00') {\n greetingMessage = 'Good morning';\n } else if (timeNow >= '12:00:00' && timeNow < '17:00:00') {\n greetingMessage = 'Good afternoon';\n } else if (timeNow >= '17:00:00' && timeNow < '24:00:00') {\n greetingMessage = 'Good evening';\n } else {\n greetingMessage = `${userType === 'TEACHER' ? 'Greetings' : 'Hello'}, `;\n }\n\n return greetingMessage;\n};\n\nexport { getRandomAlien, getStudentWelcomeMessage };\n"],"names":["ALIEN_1","ALIEN_2","ALIEN_3","ALIEN_4","ILLUSTRATIONS","getRandomAlien","aliens","getStudentWelcomeMessage","userType","timeNow","greetingMessage"],"mappings":";AAGA,MAAM,EAAE,SAAAA,GAAS,SAAAC,GAAS,SAAAC,GAAS,SAAAC,MAAYC,GAEzCC,IAAiB,MAAM;AAC3B,QAAMC,IAAS,CAACN,GAASC,GAASC,GAASC,CAAO;AAE3C,SAAAG,EAAO,KAAK,MAAM,KAAK,WAAWA,EAAO,MAAM,CAAC;AACzD,GAEMC,IAA2B,CAACC,MAAyB;AAEnD,QAAAC,yBADY,QACI;AAClB,MAAAC;AAEA,SAAAD,KAAW,cAAcA,IAAU,aACnBC,IAAA,iBACTD,KAAW,cAAcA,IAAU,aAC1BC,IAAA,mBACTD,KAAW,cAAcA,IAAU,aAC1BC,IAAA,iBAElBA,IAAkB,GAAGF,MAAa,YAAY,cAAc,OAAO,MAG9DE;AACT;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"student-details.js","sources":["../../../src/features/student-details/student-details.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"student-details.js","sources":["../../../src/features/student-details/student-details.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { memo } from 'react';\n\nimport FlexView from '../ui/layout/flex-view';\nimport Text from '../ui/text/text';\nimport ClassDetails from './class-details/class-details';\nimport * as Styled from './student-details-styled';\nimport type { IStudentDetailsProps } from './student-details-types';\nimport { getStudentWelcomeMessage } from './student-details-utils';\nimport WinsPreview from './wins-preview/wins-preview';\n\nconst StudentDetails: FC<IStudentDetailsProps> = memo(props => {\n const { rewardsHome, studentName, userType, alienUrl, classStatus, onWinsClick } = props;\n const greetingsMessage = getStudentWelcomeMessage(userType);\n const isStudent = userType === 'STUDENT';\n\n return (\n <Styled.Wrapper>\n <FlexView $width=\"100%\" $height=\"100%\">\n <Styled.BackgroundBox />\n </FlexView>\n\n <Styled.AvatarWrapper\n $flexDirection=\"row\"\n $alignItems=\"center\"\n $widthX={20.625}\n $heightX={3.75}\n >\n {(!isStudent || !classStatus) && (\n <>\n <FlexView $widthX={3.71875} $heightX={3.6875} $background=\"WHITE\">\n <Styled.Avatar $alienUrl={alienUrl} />\n </FlexView>\n\n <Styled.StudentNameWrapper\n $justifyContent=\"center\"\n $widthX={16.875}\n $heightX={3.6875}\n $background=\"WHITE\"\n >\n <Text $renderAs=\"h6\">{greetingsMessage}</Text>\n <Styled.StudentName $renderAs=\"h5\">\n <span>{studentName}</span>!\n </Styled.StudentName>\n </Styled.StudentNameWrapper>\n </>\n )}\n\n {isStudent && classStatus && <ClassDetails classStatus={classStatus} />}\n </Styled.AvatarWrapper>\n\n <WinsPreview onWinsClick={onWinsClick} rewardsHome={rewardsHome} />\n </Styled.Wrapper>\n );\n});\n\nexport default StudentDetails;\n"],"names":["StudentDetails","memo","props","rewardsHome","studentName","userType","alienUrl","classStatus","onWinsClick","greetingsMessage","getStudentWelcomeMessage","isStudent","jsxs","Styled.Wrapper","jsx","FlexView","Styled.BackgroundBox","Styled.AvatarWrapper","Fragment","Styled.Avatar","Styled.StudentNameWrapper","Text","Styled.StudentName","ClassDetails","WinsPreview","StudentDetails$1"],"mappings":";;;;;;;;AAWA,MAAMA,IAA2CC,EAAK,CAASC,MAAA;AAC7D,QAAM,EAAE,aAAAC,GAAa,aAAAC,GAAa,UAAAC,GAAU,UAAAC,GAAU,aAAAC,GAAa,aAAAC,EAAgB,IAAAN,GAC7EO,IAAmBC,EAAyBL,CAAQ,GACpDM,IAAYN,MAAa;AAG7B,SAAA,gBAAAO,EAACC,GAAA,EACC,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAS,QAAO,QAAO,SAAQ,QAC9B,UAAC,gBAAAD,EAAAE,GAAA,CAAA,CAAqB,EACxB,CAAA;AAAA,IAEA,gBAAAJ;AAAA,MAACK;AAAAA,MAAA;AAAA,QACC,gBAAe;AAAA,QACf,aAAY;AAAA,QACZ,SAAS;AAAA,QACT,UAAU;AAAA,QAER,UAAA;AAAA,WAAC,CAAAN,KAAa,CAACJ,MAEb,gBAAAK,EAAAM,GAAA,EAAA,UAAA;AAAA,YAAA,gBAAAJ,EAACC,GAAS,EAAA,SAAS,SAAS,UAAU,QAAQ,aAAY,SACxD,UAAA,gBAAAD,EAACK,GAAA,EAAc,WAAWb,EAAU,CAAA,GACtC;AAAA,YAEA,gBAAAM;AAAA,cAACQ;AAAAA,cAAA;AAAA,gBACC,iBAAgB;AAAA,gBAChB,SAAS;AAAA,gBACT,UAAU;AAAA,gBACV,aAAY;AAAA,gBAEZ,UAAA;AAAA,kBAAC,gBAAAN,EAAAO,GAAA,EAAK,WAAU,MAAM,UAAiBZ,GAAA;AAAA,kBACtC,gBAAAG,EAAAU,GAAA,EAAmB,WAAU,MAC5B,UAAA;AAAA,oBAAA,gBAAAR,EAAC,UAAM,UAAYV,EAAA,CAAA;AAAA,oBAAO;AAAA,kBAAA,GAC5B;AAAA,gBAAA;AAAA,cAAA;AAAA,YACF;AAAA,UAAA,GACF;AAAA,UAGDO,KAAaJ,KAAgB,gBAAAO,EAAAS,GAAA,EAAa,aAAAhB,EAA0B,CAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IACvE;AAAA,IAEA,gBAAAO,EAACU,GAAY,EAAA,aAAAhB,GAA0B,aAAAL,EAA0B,CAAA;AAAA,EACnE,EAAA,CAAA;AAEJ,CAAC,GAEDsB,IAAezB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wins-preview.js","sources":["../../../../src/features/student-details/wins-preview/wins-preview.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"wins-preview.js","sources":["../../../../src/features/student-details/wins-preview/wins-preview.tsx"],"sourcesContent":["import { useMemo, type FC } from 'react';\n\nimport { IMAGES } from '../../../assets/images/images';\nimport NextIcon from '../../../assets/line-icons/icons/next';\nimport { rewardBadgeUrl } from '../../sheets/sheets-list/sheet-item/reward-n-actions/reward-n-actions-utils';\nimport IconButton from '../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../ui/layout/flex-view';\nimport Text from '../../ui/text/text';\nimport { isNonEmptyArray } from '../../utils/utils';\nimport * as Styled from './wins-preview-styled';\nimport type { IWinsPreviewProps } from './wins-preview-types';\n\nconst coinsBadge = 'coins_badge';\n\nconst WinsPreview: FC<IWinsPreviewProps> = ({ onWinsClick, rewardsHome }) => {\n const {\n user_badges: userBadges,\n user_stickers: userStickers,\n user_rewards: userRewards,\n } = rewardsHome;\n\n const doesRewardsExist = isNonEmptyArray(userRewards);\n const doesBadgesExist = isNonEmptyArray(userBadges);\n const doesStickersExist = isNonEmptyArray(userStickers);\n\n const rewardElements = useMemo(\n () => userRewards?.filter(item => item.aggregate_for.type === coinsBadge),\n [userRewards],\n );\n const showRewardInfo = doesBadgesExist || doesRewardsExist || doesStickersExist;\n\n const { aggregate_for: aggregateFor } = rewardElements?.[0] || {};\n const { name: rewardElementName, type } = aggregateFor || {};\n\n const { name: stickerElementName } = userStickers?.[0] || {};\n const { image_url: badgeImageUrl, name: userBadgeName } = userBadges?.[0] || {};\n const rewardElementUrl = type === coinsBadge && rewardBadgeUrl(rewardElementName ?? '');\n\n const badgesDataToRender = useMemo(\n () =>\n [\n {\n renderElement: doesStickersExist,\n key: 'sticker-elements',\n image_src: IMAGES[stickerElementName ?? 'KUDOS'],\n image_alt: stickerElementName,\n },\n {\n renderElement: doesBadgesExist,\n key: 'badge-elements',\n image_src: badgeImageUrl ?? '',\n image_alt: userBadgeName,\n },\n {\n renderElement: doesRewardsExist,\n key: 'reward-elements',\n image_src: rewardElementUrl || '',\n image_alt: rewardElementName,\n },\n ].filter(item => item.renderElement),\n [\n badgeImageUrl,\n doesBadgesExist,\n doesRewardsExist,\n doesStickersExist,\n rewardElementName,\n rewardElementUrl,\n stickerElementName,\n userBadgeName,\n ],\n );\n\n if (!showRewardInfo) return null;\n\n return (\n <Styled.WinsWrapper $flexDirection=\"row\" $widthX={15} $heightX={3.71875}>\n <FlexView $widthX={11.25} $flexDirection=\"row-reverse\" $heightX={3.75}>\n {badgesDataToRender.map(badgeData => {\n const { renderElement, key, image_src: imageSrc, image_alt: imageAlt } = badgeData;\n\n return (\n <Styled.WinsCardWrapper\n key={key}\n $alignItems=\"center\"\n $justifyContent=\"end\"\n $background={renderElement ? 'WHITE' : 'TRANSPARENT'}\n $display={renderElement}\n >\n {renderElement && <Styled.ImageWrapper src={imageSrc} alt={imageAlt} />}\n </Styled.WinsCardWrapper>\n );\n })}\n </FlexView>\n\n <Styled.AllWinsWrapper\n $alignItems=\"center\"\n $justifyContent=\"flex-end\"\n $flexGap={2}\n $widthX={3.75}\n $background=\"WHITE\"\n >\n <IconButton\n Icon={NextIcon}\n size=\"xsmall\"\n renderAs=\"secondary\"\n analyticsLabel=\"All wins\"\n customBgColor=\"TRANSPARENT\"\n onClick={onWinsClick}\n />\n <Text $renderAs=\"body3\">All wins</Text>\n </Styled.AllWinsWrapper>\n </Styled.WinsWrapper>\n );\n};\n\nexport default WinsPreview;\n"],"names":["coinsBadge","WinsPreview","onWinsClick","rewardsHome","userBadges","userStickers","userRewards","doesRewardsExist","isNonEmptyArray","doesBadgesExist","doesStickersExist","rewardElements","useMemo","item","showRewardInfo","aggregateFor","rewardElementName","type","stickerElementName","badgeImageUrl","userBadgeName","rewardElementUrl","rewardBadgeUrl","badgesDataToRender","IMAGES","jsxs","Styled.WinsWrapper","jsx","FlexView","badgeData","renderElement","key","imageSrc","imageAlt","Styled.WinsCardWrapper","Styled.ImageWrapper","Styled.AllWinsWrapper","IconButton","NextIcon","Text"],"mappings":";;;;;;;;;;AAYA,MAAMA,IAAa,eAEbC,IAAqC,CAAC,EAAE,aAAAC,GAAa,aAAAC,QAAkB;AACrE,QAAA;AAAA,IACJ,aAAaC;AAAA,IACb,eAAeC;AAAA,IACf,cAAcC;AAAA,EACZ,IAAAH,GAEEI,IAAmBC,EAAgBF,CAAW,GAC9CG,IAAkBD,EAAgBJ,CAAU,GAC5CM,IAAoBF,EAAgBH,CAAY,GAEhDM,IAAiBC;AAAA,IACrB,MAAMN,KAAA,gBAAAA,EAAa,OAAO,OAAQO,EAAK,cAAc,SAASb;AAAA,IAC9D,CAACM,CAAW;AAAA,EAAA,GAERQ,IAAiBL,KAAmBF,KAAoBG,GAExD,EAAE,eAAeK,EAAA,KAAiBJ,KAAA,gBAAAA,EAAiB,OAAM,IACzD,EAAE,MAAMK,GAAmB,MAAAC,EAAK,IAAIF,KAAgB,CAAA,GAEpD,EAAE,MAAMG,EAAA,KAAuBb,KAAA,gBAAAA,EAAe,OAAM,IACpD,EAAE,WAAWc,GAAe,MAAMC,OAAkBhB,KAAA,gBAAAA,EAAa,OAAM,IACvEiB,IAAmBJ,MAASjB,KAAcsB,EAAeN,KAAqB,EAAE,GAEhFO,IAAqBX;AAAA,IACzB,MACE;AAAA,MACE;AAAA,QACE,eAAeF;AAAA,QACf,KAAK;AAAA,QACL,WAAWc,EAAON,KAAsB,OAAO;AAAA,QAC/C,WAAWA;AAAA,MACb;AAAA,MACA;AAAA,QACE,eAAeT;AAAA,QACf,KAAK;AAAA,QACL,WAAWU,KAAiB;AAAA,QAC5B,WAAWC;AAAA,MACb;AAAA,MACA;AAAA,QACE,eAAeb;AAAA,QACf,KAAK;AAAA,QACL,WAAWc,KAAoB;AAAA,QAC/B,WAAWL;AAAA,MACb;AAAA,IACA,EAAA,OAAO,CAAQH,MAAAA,EAAK,aAAa;AAAA,IACrC;AAAA,MACEM;AAAA,MACAV;AAAA,MACAF;AAAA,MACAG;AAAA,MACAM;AAAA,MACAK;AAAA,MACAH;AAAA,MACAE;AAAA,IACF;AAAA,EAAA;AAGE,SAACN,IAGH,gBAAAW,EAACC,GAAA,EAAmB,gBAAe,OAAM,SAAS,IAAI,UAAU,SAC9D,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAS,SAAS,OAAO,gBAAe,eAAc,UAAU,MAC9D,UAAmBL,EAAA,IAAI,CAAaM,MAAA;AACnC,YAAM,EAAE,eAAAC,GAAe,KAAAC,GAAK,WAAWC,GAAU,WAAWC,EAAa,IAAAJ;AAGvE,aAAA,gBAAAF;AAAA,QAACO;AAAAA,QAAA;AAAA,UAEC,aAAY;AAAA,UACZ,iBAAgB;AAAA,UAChB,aAAaJ,IAAgB,UAAU;AAAA,UACvC,UAAUA;AAAA,UAET,UAAAA,uBAAkBK,GAAA,EAAoB,KAAKH,GAAU,KAAKC,GAAU;AAAA,QAAA;AAAA,QANhEF;AAAA,MAAA;AAAA,IASV,CAAA,GACH;AAAA,IAEA,gBAAAN;AAAA,MAACW;AAAAA,MAAA;AAAA,QACC,aAAY;AAAA,QACZ,iBAAgB;AAAA,QAChB,UAAU;AAAA,QACV,SAAS;AAAA,QACT,aAAY;AAAA,QAEZ,UAAA;AAAA,UAAA,gBAAAT;AAAA,YAACU;AAAA,YAAA;AAAA,cACC,MAAMC;AAAA,cACN,MAAK;AAAA,cACL,UAAS;AAAA,cACT,gBAAe;AAAA,cACf,eAAc;AAAA,cACd,SAASpC;AAAA,YAAA;AAAA,UACX;AAAA,UACC,gBAAAyB,EAAAY,GAAA,EAAK,WAAU,SAAQ,UAAQ,YAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAClC;AAAA,EACF,EAAA,CAAA,IAvC0B;AAyC9B;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-talk-meter.js","sources":["../../../../src/features/talk-meter/hooks/use-talk-meter.ts"],"sourcesContent":["import type { ITalkMeterHook, TMessageData } from '../talk-meter-types';\n\nimport { useAVActions, useAVMessage, useRemotePeers } from '@cuemath/av';\nimport { useRef, useMemo, useCallback, useState, useEffect } from 'react';\n\nimport { useUIContext } from '../../ui/context/context';\n\nconst ONE_MINUTE = 1000 * 60;\n\nexport const useTalkMeter = (props: ITalkMeterHook) => {\n const {\n userType,\n studentId,\n teacherId,\n classStartTime,\n avPackageEnabled,\n teacherClassroomId,\n teacherTalkTime,\n studentTalkTime,\n lastBatchReceivedNo,\n canDisplayBatch,\n classDuration = 0,\n onMessageReceive,\n onDismissMeter,\n } = props;\n\n const BATCH_ONE_MINUTE = Math.round(0.36 * (classDuration / 60));\n const BATCH_TWO_MINUTE = Math.round(0.73 * (classDuration / 60));\n const LAST_MINUTES = classDuration / 60 - 5;\n\n const getBatchToSendInfo = useCallback(\n (classStartFrom: Date, batchSeen: number) => {\n const now = Date.now();\n const classTS = classStartFrom.getTime();\n const diff = Math.abs(now - classTS);\n const minutes = Math.floor(diff / 1000 / 60);\n const canSendFirstBatch =\n (batchSeen === 0 || batchSeen === 1) &&\n minutes >= BATCH_ONE_MINUTE - 2 &&\n minutes <= BATCH_ONE_MINUTE;\n const canSendSecondBatch =\n (batchSeen === 1 || batchSeen === 2) &&\n minutes >= BATCH_TWO_MINUTE - 2 &&\n minutes <= BATCH_TWO_MINUTE;\n\n const lastMinutesLeft = minutes >= LAST_MINUTES;\n\n let batchNo = 0;\n let canDisplayTalkBatch = false;\n\n if (lastMinutesLeft) {\n batchNo = 0;\n } else if (canSendSecondBatch) {\n batchNo = 2;\n canDisplayTalkBatch = minutes >= BATCH_TWO_MINUTE;\n } else if (canSendFirstBatch) {\n batchNo = 1;\n canDisplayTalkBatch = minutes >= BATCH_ONE_MINUTE;\n }\n\n return {\n lastMinutesLeft,\n canSendBatch: canSendFirstBatch || canSendSecondBatch,\n batchNoToSend: batchNo,\n minutes,\n canDisplay: canDisplayTalkBatch,\n };\n },\n [BATCH_ONE_MINUTE, BATCH_TWO_MINUTE, LAST_MINUTES],\n );\n\n const [canAnimateIn, setCanAnimateIn] = useState(false);\n const [canAnimateOut, setCanAnimateOut] = useState(false);\n\n const { onEvent } = useUIContext();\n const { sendMessage } = useAVActions();\n\n const remotePeers = useRemotePeers();\n const studentPeerId = remotePeers.find(peer => peer.userId === studentId)?.id;\n const teacherPeerId = remotePeers.find(p => p.userType === 'teacher')?.id;\n\n const isTeacher = userType === 'TEACHER';\n\n const teacherTalkRef = useRef(teacherTalkTime);\n const studentTalkRef = useRef(studentTalkTime);\n const prevSentRef = useRef(0);\n\n const totalTalkTime = studentTalkRef.current + teacherTalkRef.current;\n const stdRatio = Math.ceil((studentTalkRef.current * 100) / totalTalkTime) || 0;\n const tchRatio = Math.floor((teacherTalkRef.current * 100) / totalTalkTime) || 0;\n\n const payload = useMemo(\n () => ({\n teacher_classroom_id: teacherClassroomId,\n teacher_id: teacherId,\n studentId: studentId,\n }),\n [studentId, teacherClassroomId, teacherId],\n );\n\n const handleDismiss = useCallback(() => {\n setCanAnimateOut(true);\n setCanAnimateIn(false);\n onDismissMeter();\n }, [onDismissMeter]);\n\n const trackEvent = useCallback(\n (eventName: string, data = {}) => {\n onEvent(eventName, { ...payload, ...data });\n },\n [onEvent, payload],\n );\n\n const sendBatch = useCallback(\n (batchNo: number) => {\n const EVENT_NAME = isTeacher ? 'TEACHER_TALK_TIME_UPDATED' : 'STUDENT_TALK_TIME_UPDATED';\n const speechTimePayload = isTeacher\n ? { teacher_speech_time: teacherTalkRef.current }\n : { student_speech_time: studentTalkRef.current };\n\n trackEvent('TALK_METER_BATCH_SENT', {\n batch_no: batchNo,\n ...speechTimePayload,\n });\n if (avPackageEnabled) {\n sendMessage(\n EVENT_NAME,\n {\n ...payload,\n ...speechTimePayload,\n batch_no: batchNo,\n },\n isTeacher ? studentPeerId : teacherPeerId,\n );\n }\n\n prevSentRef.current = studentTalkRef.current;\n },\n [avPackageEnabled, isTeacher, payload, sendMessage, studentPeerId, teacherPeerId, trackEvent],\n );\n\n useAVMessage<TMessageData>({\n type: isTeacher ? 'STUDENT_TALK_TIME_UPDATED' : 'TEACHER_TALK_TIME_UPDATED',\n onMessage: useCallback(\n (_, data) => {\n onMessageReceive(data);\n if (isTeacher) sendBatch(data.batch_no);\n },\n [isTeacher, onMessageReceive, sendBatch],\n ),\n });\n\n useEffect(() => {\n if (!canAnimateIn) {\n teacherTalkRef.current = teacherTalkTime;\n studentTalkRef.current = studentTalkTime;\n }\n }, [teacherTalkTime, studentTalkTime, canAnimateIn]);\n\n useEffect(() => {\n let dismissTimer: NodeJS.Timeout | undefined;\n\n if (canAnimateIn) {\n dismissTimer = setTimeout(() => {\n handleDismiss();\n }, ONE_MINUTE);\n }\n\n return () => {\n if (dismissTimer) clearTimeout(dismissTimer);\n };\n }, [canAnimateIn, handleDismiss]);\n\n useEffect(() => {\n let interval: NodeJS.Timeout | undefined;\n\n if (classStartTime && canDisplayBatch && !canAnimateIn) {\n interval = setInterval(() => {\n const { canDisplay } = getBatchToSendInfo(classStartTime, lastBatchReceivedNo);\n\n if (canDisplay) {\n trackEvent('TALK_METER_BATCH_DISPLAYED', {\n student_speech_time: studentTalkRef.current,\n teacher_speech_time: teacherTalkRef.current,\n batch_no: lastBatchReceivedNo,\n });\n setCanAnimateIn(true);\n setCanAnimateOut(false);\n }\n }, ONE_MINUTE / 30);\n }\n\n return () => {\n if (interval) {\n clearInterval(interval);\n }\n };\n }, [\n canAnimateIn,\n canDisplayBatch,\n classStartTime,\n getBatchToSendInfo,\n lastBatchReceivedNo,\n trackEvent,\n ]);\n\n useEffect(() => {\n let interval: NodeJS.Timeout | undefined;\n\n if (classStartTime && !isTeacher) {\n interval = setInterval(() => {\n const { lastMinutesLeft, canSendBatch, batchNoToSend } = getBatchToSendInfo(\n classStartTime,\n lastBatchReceivedNo,\n );\n\n if (lastMinutesLeft) {\n if (prevSentRef.current !== studentTalkRef.current) {\n sendBatch(batchNoToSend);\n }\n } else if (canSendBatch) {\n sendBatch(batchNoToSend);\n }\n }, ONE_MINUTE / 6);\n }\n\n return () => {\n if (interval) {\n clearInterval(interval);\n }\n };\n }, [classStartTime, getBatchToSendInfo, isTeacher, lastBatchReceivedNo, sendBatch]);\n\n return {\n canAnimateIn,\n canAnimateOut,\n stdRatio,\n tchRatio,\n handleDismiss,\n };\n};\n"],"names":["ONE_MINUTE","useTalkMeter","props","userType","studentId","teacherId","classStartTime","avPackageEnabled","teacherClassroomId","teacherTalkTime","studentTalkTime","lastBatchReceivedNo","canDisplayBatch","classDuration","onMessageReceive","onDismissMeter","BATCH_ONE_MINUTE","BATCH_TWO_MINUTE","LAST_MINUTES","getBatchToSendInfo","useCallback","classStartFrom","batchSeen","now","classTS","diff","minutes","canSendFirstBatch","canSendSecondBatch","lastMinutesLeft","batchNo","canDisplayTalkBatch","canAnimateIn","setCanAnimateIn","useState","canAnimateOut","setCanAnimateOut","onEvent","useUIContext","sendMessage","useAVActions","remotePeers","useRemotePeers","studentPeerId","_a","peer","teacherPeerId","_b","p","isTeacher","teacherTalkRef","useRef","studentTalkRef","prevSentRef","totalTalkTime","stdRatio","tchRatio","payload","useMemo","handleDismiss","trackEvent","eventName","data","sendBatch","EVENT_NAME","speechTimePayload","useAVMessage","_","useEffect","dismissTimer","interval","canDisplay","canSendBatch","batchNoToSend"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-talk-meter.js","sources":["../../../../src/features/talk-meter/hooks/use-talk-meter.ts"],"sourcesContent":["import { useAVActions, useAVMessage, useRemotePeers } from '@cuemath/av';\nimport { useRef, useMemo, useCallback, useState, useEffect } from 'react';\n\nimport { useUIContext } from '../../ui/context/context';\nimport type { ITalkMeterHook, TMessageData } from '../talk-meter-types';\n\nconst ONE_MINUTE = 1000 * 60;\n\nexport const useTalkMeter = (props: ITalkMeterHook) => {\n const {\n userType,\n studentId,\n teacherId,\n classStartTime,\n avPackageEnabled,\n teacherClassroomId,\n teacherTalkTime,\n studentTalkTime,\n lastBatchReceivedNo,\n canDisplayBatch,\n classDuration = 0,\n onMessageReceive,\n onDismissMeter,\n } = props;\n\n const BATCH_ONE_MINUTE = Math.round(0.36 * (classDuration / 60));\n const BATCH_TWO_MINUTE = Math.round(0.73 * (classDuration / 60));\n const LAST_MINUTES = classDuration / 60 - 5;\n\n const getBatchToSendInfo = useCallback(\n (classStartFrom: Date, batchSeen: number) => {\n const now = Date.now();\n const classTS = classStartFrom.getTime();\n const diff = Math.abs(now - classTS);\n const minutes = Math.floor(diff / 1000 / 60);\n const canSendFirstBatch =\n (batchSeen === 0 || batchSeen === 1) &&\n minutes >= BATCH_ONE_MINUTE - 2 &&\n minutes <= BATCH_ONE_MINUTE;\n const canSendSecondBatch =\n (batchSeen === 1 || batchSeen === 2) &&\n minutes >= BATCH_TWO_MINUTE - 2 &&\n minutes <= BATCH_TWO_MINUTE;\n\n const lastMinutesLeft = minutes >= LAST_MINUTES;\n\n let batchNo = 0;\n let canDisplayTalkBatch = false;\n\n if (lastMinutesLeft) {\n batchNo = 0;\n } else if (canSendSecondBatch) {\n batchNo = 2;\n canDisplayTalkBatch = minutes >= BATCH_TWO_MINUTE;\n } else if (canSendFirstBatch) {\n batchNo = 1;\n canDisplayTalkBatch = minutes >= BATCH_ONE_MINUTE;\n }\n\n return {\n lastMinutesLeft,\n canSendBatch: canSendFirstBatch || canSendSecondBatch,\n batchNoToSend: batchNo,\n minutes,\n canDisplay: canDisplayTalkBatch,\n };\n },\n [BATCH_ONE_MINUTE, BATCH_TWO_MINUTE, LAST_MINUTES],\n );\n\n const [canAnimateIn, setCanAnimateIn] = useState(false);\n const [canAnimateOut, setCanAnimateOut] = useState(false);\n\n const { onEvent } = useUIContext();\n const { sendMessage } = useAVActions();\n\n const remotePeers = useRemotePeers();\n const studentPeerId = remotePeers.find(peer => peer.userId === studentId)?.id;\n const teacherPeerId = remotePeers.find(p => p.userType === 'teacher')?.id;\n\n const isTeacher = userType === 'TEACHER';\n\n const teacherTalkRef = useRef(teacherTalkTime);\n const studentTalkRef = useRef(studentTalkTime);\n const prevSentRef = useRef(0);\n\n const totalTalkTime = studentTalkRef.current + teacherTalkRef.current;\n const stdRatio = Math.ceil((studentTalkRef.current * 100) / totalTalkTime) || 0;\n const tchRatio = Math.floor((teacherTalkRef.current * 100) / totalTalkTime) || 0;\n\n const payload = useMemo(\n () => ({\n teacher_classroom_id: teacherClassroomId,\n teacher_id: teacherId,\n studentId: studentId,\n }),\n [studentId, teacherClassroomId, teacherId],\n );\n\n const handleDismiss = useCallback(() => {\n setCanAnimateOut(true);\n setCanAnimateIn(false);\n onDismissMeter();\n }, [onDismissMeter]);\n\n const trackEvent = useCallback(\n (eventName: string, data = {}) => {\n onEvent(eventName, { ...payload, ...data });\n },\n [onEvent, payload],\n );\n\n const sendBatch = useCallback(\n (batchNo: number) => {\n const EVENT_NAME = isTeacher ? 'TEACHER_TALK_TIME_UPDATED' : 'STUDENT_TALK_TIME_UPDATED';\n const speechTimePayload = isTeacher\n ? { teacher_speech_time: teacherTalkRef.current }\n : { student_speech_time: studentTalkRef.current };\n\n trackEvent('TALK_METER_BATCH_SENT', {\n batch_no: batchNo,\n ...speechTimePayload,\n });\n if (avPackageEnabled) {\n sendMessage(\n EVENT_NAME,\n {\n ...payload,\n ...speechTimePayload,\n batch_no: batchNo,\n },\n isTeacher ? studentPeerId : teacherPeerId,\n );\n }\n\n prevSentRef.current = studentTalkRef.current;\n },\n [avPackageEnabled, isTeacher, payload, sendMessage, studentPeerId, teacherPeerId, trackEvent],\n );\n\n useAVMessage<TMessageData>({\n type: isTeacher ? 'STUDENT_TALK_TIME_UPDATED' : 'TEACHER_TALK_TIME_UPDATED',\n onMessage: useCallback(\n (_, data) => {\n onMessageReceive(data);\n if (isTeacher) sendBatch(data.batch_no);\n },\n [isTeacher, onMessageReceive, sendBatch],\n ),\n });\n\n useEffect(() => {\n if (!canAnimateIn) {\n teacherTalkRef.current = teacherTalkTime;\n studentTalkRef.current = studentTalkTime;\n }\n }, [teacherTalkTime, studentTalkTime, canAnimateIn]);\n\n useEffect(() => {\n let dismissTimer: NodeJS.Timeout | undefined;\n\n if (canAnimateIn) {\n dismissTimer = setTimeout(() => {\n handleDismiss();\n }, ONE_MINUTE);\n }\n\n return () => {\n if (dismissTimer) clearTimeout(dismissTimer);\n };\n }, [canAnimateIn, handleDismiss]);\n\n useEffect(() => {\n let interval: NodeJS.Timeout | undefined;\n\n if (classStartTime && canDisplayBatch && !canAnimateIn) {\n interval = setInterval(() => {\n const { canDisplay } = getBatchToSendInfo(classStartTime, lastBatchReceivedNo);\n\n if (canDisplay) {\n trackEvent('TALK_METER_BATCH_DISPLAYED', {\n student_speech_time: studentTalkRef.current,\n teacher_speech_time: teacherTalkRef.current,\n batch_no: lastBatchReceivedNo,\n });\n setCanAnimateIn(true);\n setCanAnimateOut(false);\n }\n }, ONE_MINUTE / 30);\n }\n\n return () => {\n if (interval) {\n clearInterval(interval);\n }\n };\n }, [\n canAnimateIn,\n canDisplayBatch,\n classStartTime,\n getBatchToSendInfo,\n lastBatchReceivedNo,\n trackEvent,\n ]);\n\n useEffect(() => {\n let interval: NodeJS.Timeout | undefined;\n\n if (classStartTime && !isTeacher) {\n interval = setInterval(() => {\n const { lastMinutesLeft, canSendBatch, batchNoToSend } = getBatchToSendInfo(\n classStartTime,\n lastBatchReceivedNo,\n );\n\n if (lastMinutesLeft) {\n if (prevSentRef.current !== studentTalkRef.current) {\n sendBatch(batchNoToSend);\n }\n } else if (canSendBatch) {\n sendBatch(batchNoToSend);\n }\n }, ONE_MINUTE / 6);\n }\n\n return () => {\n if (interval) {\n clearInterval(interval);\n }\n };\n }, [classStartTime, getBatchToSendInfo, isTeacher, lastBatchReceivedNo, sendBatch]);\n\n return {\n canAnimateIn,\n canAnimateOut,\n stdRatio,\n tchRatio,\n handleDismiss,\n };\n};\n"],"names":["ONE_MINUTE","useTalkMeter","props","userType","studentId","teacherId","classStartTime","avPackageEnabled","teacherClassroomId","teacherTalkTime","studentTalkTime","lastBatchReceivedNo","canDisplayBatch","classDuration","onMessageReceive","onDismissMeter","BATCH_ONE_MINUTE","BATCH_TWO_MINUTE","LAST_MINUTES","getBatchToSendInfo","useCallback","classStartFrom","batchSeen","now","classTS","diff","minutes","canSendFirstBatch","canSendSecondBatch","lastMinutesLeft","batchNo","canDisplayTalkBatch","canAnimateIn","setCanAnimateIn","useState","canAnimateOut","setCanAnimateOut","onEvent","useUIContext","sendMessage","useAVActions","remotePeers","useRemotePeers","studentPeerId","_a","peer","teacherPeerId","_b","p","isTeacher","teacherTalkRef","useRef","studentTalkRef","prevSentRef","totalTalkTime","stdRatio","tchRatio","payload","useMemo","handleDismiss","trackEvent","eventName","data","sendBatch","EVENT_NAME","speechTimePayload","useAVMessage","_","useEffect","dismissTimer","interval","canDisplay","canSendBatch","batchNoToSend"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/features/talk-meter/ripple/index.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/features/talk-meter/ripple/index.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { useEffect, useRef, useCallback } from 'react';\nimport styled, { css, keyframes } from 'styled-components';\n\nimport { SOUNDS } from '../../../assets/sounds/sounds';\nimport { useUIContext } from '../../ui/context/context';\nimport FlexView from '../../ui/layout/flex-view';\nimport type { TColorNames } from '../../ui/types';\n\nconst rippleAnimation = keyframes`\n0% {\n opacity: 1;\n transform: scale(1);\n}\n50% {\n opacity: 0;\n transform: scale(1.10) scaleY(1.15);\n}\n100% {\n opacity: 0;\n transform: scale(1.10) scaleY(1.15);\n}\n`;\n\nconst RippleView = styled(FlexView)<{ $delay: number }>(\n ({ $delay }) => css`\n height: 104px;\n width: calc(100% - 24px);\n position: absolute;\n border-radius: 12px;\n z-index: 0;\n left: 0;\n right: 0;\n margin-left: auto;\n margin-right: auto;\n ${$delay > 0 &&\n css`\n animation-name: ${rippleAnimation};\n animation-delay: ${$delay || 0}ms;\n animation-duration: 1000ms;\n animation-iteration-count: infinite;\n animation-timing-function: ease-in;\n `};\n `,\n);\n\ninterface IRipple {\n delay: number;\n color: TColorNames;\n withAudio?: boolean;\n}\n\nconst Ripple: FC<IRipple> = props => {\n const { delay, color, withAudio = true } = props;\n const { onEvent: trackEvent } = useUIContext();\n const audioRef = useRef(new Audio(SOUNDS.ALERT));\n\n const playAudio = useCallback(() => {\n try {\n audioRef.current.play();\n } catch (err) {\n trackEvent('debug_log', {\n type: 'UNABLE TO PLAY SOUND IN TALK METER',\n error: JSON.stringify(err),\n });\n }\n }, [trackEvent]);\n\n useEffect(() => {\n let audioTimer: NodeJS.Timeout | null = null;\n\n if (withAudio) {\n audioTimer = setTimeout(() => {\n playAudio();\n }, delay);\n }\n\n return () => {\n if (audioTimer) clearTimeout(audioTimer);\n };\n }, [withAudio, delay, playAudio]);\n\n return <RippleView $delay={delay} $borderColor={color} />;\n};\n\nexport default Ripple;\n"],"names":["rippleAnimation","keyframes","RippleView","styled","FlexView","$delay","css","Ripple","props","delay","color","withAudio","trackEvent","useUIContext","audioRef","useRef","SOUNDS","playAudio","useCallback","err","useEffect","audioTimer","jsx"],"mappings":";;;;;;AASA,MAAMA,IAAkBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAelBC,IAAaC,EAAOC,CAAQ;AAAA,EAChC,CAAC,EAAE,QAAAC,EAAa,MAAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAUZD,IAAS,KACXC;AAAA,wBACoBN,CAAe;AAAA,yBACdK,KAAU,CAAC;AAAA;AAAA;AAAA;AAAA,KAI/B;AAAA;AAEL,GAQME,IAAsB,CAASC,MAAA;AACnC,QAAM,EAAE,OAAAC,GAAO,OAAAC,GAAO,WAAAC,IAAY,OAASH,GACrC,EAAE,SAASI,EAAW,IAAIC,EAAa,GACvCC,IAAWC,EAAO,IAAI,MAAMC,EAAO,KAAK,CAAC,GAEzCC,IAAYC,EAAY,MAAM;AAC9B,QAAA;AACF,MAAAJ,EAAS,QAAQ;aACVK,GAAK;AACZ,MAAAP,EAAW,aAAa;AAAA,QACtB,MAAM;AAAA,QACN,OAAO,KAAK,UAAUO,CAAG;AAAA,MAAA,CAC1B;AAAA,IACH;AAAA,EAAA,GACC,CAACP,CAAU,CAAC;AAEf,SAAAQ,EAAU,MAAM;AACd,QAAIC,IAAoC;AAExC,WAAIV,MACFU,IAAa,WAAW,MAAM;AAClB,MAAAJ;OACTR,CAAK,IAGH,MAAM;AACP,MAAAY,kBAAyBA,CAAU;AAAA,IAAA;AAAA,EAExC,GAAA,CAACV,GAAWF,GAAOQ,CAAS,CAAC,GAExB,gBAAAK,EAAApB,GAAA,EAAW,QAAQO,GAAO,cAAcC,EAAO,CAAA;AACzD;"}
|