{"version":3,"sources":["vendor/ember-cli/app-prefix.js","vosaic/about/route.js","vosaic/about/template.js","vosaic/accept-invitation/controller.js","vosaic/accept-invitation/route.js","vosaic/accept-invitation/template.js","vosaic/accept-payment/cc/controller.js","vosaic/accept-payment/cc/route.js","vosaic/accept-payment/cc/template.js","vosaic/accept-payment/index/controller.js","vosaic/accept-payment/index/route.js","vosaic/accept-payment/index/template.js","vosaic/account-suspended/controller.js","vosaic/account-suspended/route.js","vosaic/account-suspended/template.js","vosaic/accounts/add-users/route.js","vosaic/accounts/add-users/template.js","vosaic/accounts/aicoach/controller.js","vosaic/accounts/aicoach/route.js","vosaic/accounts/aicoach/template.js","vosaic/accounts/backups/controller.js","vosaic/accounts/backups/route.js","vosaic/accounts/backups/template.js","vosaic/accounts/basic-information/controller.js","vosaic/accounts/basic-information/route.js","vosaic/accounts/basic-information/template.js","vosaic/accounts/change-password/controller.js","vosaic/accounts/change-password/route.js","vosaic/accounts/change-password/template.js","vosaic/accounts/controller.js","vosaic/accounts/features/controller.js","vosaic/accounts/features/route.js","vosaic/accounts/features/template.js","vosaic/accounts/goals/route.js","vosaic/accounts/goals/template.js","vosaic/accounts/lti/controller.js","vosaic/accounts/lti/edit/controller.js","vosaic/accounts/lti/edit/route.js","vosaic/accounts/lti/edit/template.js","vosaic/accounts/lti/new/controller.js","vosaic/accounts/lti/new/route.js","vosaic/accounts/lti/new/template.js","vosaic/accounts/lti/route.js","vosaic/accounts/lti/template.js","vosaic/accounts/payment-history/route.js","vosaic/accounts/payment-history/template.js","vosaic/accounts/payments-and-plans/controller.js","vosaic/accounts/payments-and-plans/route.js","vosaic/accounts/payments-and-plans/template.js","vosaic/accounts/purchase/controller.js","vosaic/accounts/purchase/payment/controller.js","vosaic/accounts/purchase/payment/route.js","vosaic/accounts/purchase/payment/template.js","vosaic/accounts/purchase/route.js","vosaic/accounts/purchase/template.js","vosaic/accounts/route.js","vosaic/accounts/saml/controller.js","vosaic/accounts/saml/route.js","vosaic/accounts/saml/template.js","vosaic/accounts/template.js","vosaic/accounts/verify-email/controller.js","vosaic/accounts/verify-email/route.js","vosaic/accounts/verify-email/template.js","vosaic/adapters/aicoach-configuration.js","vosaic/adapters/aicoach.js","vosaic/adapters/annotation.js","vosaic/adapters/application.js","vosaic/adapters/button.js","vosaic/adapters/folder.js","vosaic/adapters/form.js","vosaic/adapters/grade.js","vosaic/adapters/line-item.js","vosaic/adapters/org-engagement.js","vosaic/adapters/organization.js","vosaic/adapters/pricing-tier.js","vosaic/adapters/prompt.js","vosaic/adapters/saml-configuration.js","vosaic/adapters/speaker.js","vosaic/adapters/supporting-document.js","vosaic/adapters/transcript-part.js","vosaic/adapters/usermoment.js","vosaic/adapters/userprofile.js","vosaic/adapters/video-comment.js","vosaic/adapters/video-view-track.js","vosaic/app.js","vosaic/application/controller.js","vosaic/application/template.js","vosaic/auth/controller.js","vosaic/auth/route.js","vosaic/auth/template.js","vosaic/authenticators/lti.js","vosaic/authenticators/oauth2expires.js","vosaic/authenticators/oauth2manual-refresh-exp.js","vosaic/authenticators/oauth2manual-refresh.js","vosaic/authenticators/oauth2refresh.js","vosaic/authenticators/oidc-token.js","vosaic/authenticators/org-refresh.js","vosaic/authenticators/saml.js","vosaic/component-managers/glimmer.js","vosaic/components/_register-view.js","vosaic/components/account-type-badge/index.js","vosaic/components/accounts-basic-information-view/index.js","vosaic/components/accounts-change-password-view/index.js","vosaic/components/accounts-reset-password-view/index.js","vosaic/components/ai-goals/index.js","vosaic/components/ai-mate-summary/index.js","vosaic/components/ai-report-grid/index.js","vosaic/components/alert-form-errors/index.js","vosaic/components/basic-dropdown-content.js","vosaic/components/basic-dropdown-trigger.js","vosaic/components/basic-dropdown-wormhole.js","vosaic/components/basic-dropdown.js","vosaic/components/button-color-choice/index.js","vosaic/components/button-with-dropdown-item/index.js","vosaic/components/button-with-dropdown/index.js","vosaic/components/cmodal-confirm-action/index.js","vosaic/components/cmodal-delete-all-moments/index.js","vosaic/components/cmodal-delete-button/index.js","vosaic/components/cmodal-delete-moment-with-annotations/index.js","vosaic/components/cmodal-delete-org-warning/index.js","vosaic/components/cmodal-delete-video-warning/index.js","vosaic/components/cmodal-form-change-warning/index.js","vosaic/components/cmodal-share-private-form-warning/index.js","vosaic/components/cmodal-too-many-buttons/index.js","vosaic/components/content-editable.js","vosaic/components/custom-learner-group-add-users/index.js","vosaic/components/custom-learner-group-list-item-member/index.js","vosaic/components/custom-learner-group-list-item/index.js","vosaic/components/draggable-object-target.js","vosaic/components/draggable-object.js","vosaic/components/drawer-help/index.js","vosaic/components/editable-text/index.js","vosaic/components/ember-power-select.js","vosaic/components/engagement-summary-cards/index.js","vosaic/components/expiration-notification/index.js","vosaic/components/file-dropzone.js","vosaic/components/filter-by-date/index.js","vosaic/components/form-button-lister/index.js","vosaic/components/form-filters/index.js","vosaic/components/goals-report/index.js","vosaic/components/group-filters/index.js","vosaic/components/group-list/index.js","vosaic/components/group-selector/index.js","vosaic/components/input-button-dropdown-item/index.js","vosaic/components/input-button-dropdown/index.js","vosaic/components/input-button/index.js","vosaic/components/input-check-radio/index.js","vosaic/components/input-component/index.js","vosaic/components/lti-autocreate-users/index.js","vosaic/components/lti-deeplink-grade/index.js","vosaic/components/lti-edit/index.js","vosaic/components/make-payment/index.js","vosaic/components/marked-momnets-charts/index.js","vosaic/components/modal-add-annotation/index.js","vosaic/components/modal-add-video-to-folder/index.js","vosaic/components/modal-auto-code/index.js","vosaic/components/modal-batch-upload/index.js","vosaic/components/modal-bulk-confirm-delete/index.js","vosaic/components/modal-bulk-edit/index.js","vosaic/components/modal-categories/index.js","vosaic/components/modal-compilation-video/index.js","vosaic/components/modal-confirm-delete/index.js","vosaic/components/modal-context/index.js","vosaic/components/modal-corrupted-video/index.js","vosaic/components/modal-delete-all-video-moments/index.js","vosaic/components/modal-delete-folder/index.js","vosaic/components/modal-download-csv/index.js","vosaic/components/modal-download-pdf/index.js","vosaic/components/modal-due-date/index.js","vosaic/components/modal-edit-button/index.js","vosaic/components/modal-edit-folder/index.js","vosaic/components/modal-edit-prompt/index.js","vosaic/components/modal-edit-video/index.js","vosaic/components/modal-generic-confirm-delete/index.js","vosaic/components/modal-global-prompt-multiselect/index.js","vosaic/components/modal-goal-review/index.js","vosaic/components/modal-group-change-warning/index.js","vosaic/components/modal-group-confirm-delete/index.js","vosaic/components/modal-import-xml/index.js","vosaic/components/modal-logout-notice/index.js","vosaic/components/modal-manage-domain-blacklist/index.js","vosaic/components/modal-more-info/index.js","vosaic/components/modal-org-expired/index.js","vosaic/components/modal-org-users/index.js","vosaic/components/modal-pick-cameras/index.js","vosaic/components/modal-print-quote/index.js","vosaic/components/modal-project-add-folder/index.js","vosaic/components/modal-project-sharing/index.js","vosaic/components/modal-project-video-sharing/index.js","vosaic/components/modal-purchase-users/index.js","vosaic/components/modal-renew-warning/index.js","vosaic/components/modal-report-warning/index.js","vosaic/components/modal-request-info/index.js","vosaic/components/modal-request-invoice/index.js","vosaic/components/modal-run-goal-analysis/index.js","vosaic/components/modal-save-form-as/index.js","vosaic/components/modal-save-moment-error/index.js","vosaic/components/modal-schedule-meeting/index.js","vosaic/components/modal-send-email/index.js","vosaic/components/modal-share-folder/index.js","vosaic/components/modal-share-goal/index.js","vosaic/components/modal-share-with-group/index.js","vosaic/components/modal-share-with-users/index.js","vosaic/components/modal-stitch-video/index.js","vosaic/components/modal-upload/index.js","vosaic/components/modal-users-batch-upload/index.js","vosaic/components/modal-video-list-download/index.js","vosaic/components/modal-video-play/index.js","vosaic/components/modal-video-processing/index.js","vosaic/components/modal-video-uploading/index.js","vosaic/components/modal-video-views/index.js","vosaic/components/modal-watch-hotkeys/index.js","vosaic/components/model-not-found/index.js","vosaic/components/moment-annotation/index.js","vosaic/components/moment-display-name/index.js","vosaic/components/moment-tag/index.js","vosaic/components/org-email-domains-field/index.js","vosaic/components/org-engagement-table/index.js","vosaic/components/org-list-edit/index.js","vosaic/components/org-list/index.js","vosaic/components/org-switcher/index.js","vosaic/components/org-usages/index.js","vosaic/components/org-user-edit/index.js","vosaic/components/org-user-filters/index.js","vosaic/components/org-user-list/index.js","vosaic/components/paid-seats-summary/index.js","vosaic/components/power-select-multiple.js","vosaic/components/power-select-multiple/input.js","vosaic/components/power-select-multiple/trigger.js","vosaic/components/power-select.js","vosaic/components/power-select/before-options.js","vosaic/components/power-select/input.js","vosaic/components/power-select/label.js","vosaic/components/power-select/no-matches-message.js","vosaic/components/power-select/options.js","vosaic/components/power-select/placeholder.js","vosaic/components/power-select/power-select-group.js","vosaic/components/power-select/search-message.js","vosaic/components/power-select/trigger.js","vosaic/components/project-browser/index.js","vosaic/components/project-list-item/index.js","vosaic/components/project-list/index.js","vosaic/components/prompt-lister/index.js","vosaic/components/query-report-graph/index.js","vosaic/components/register-view/index.js","vosaic/components/renew-thanks/index.js","vosaic/components/report-grid-competency-matrix/index.js","vosaic/components/report-grid-observer-summary/index.js","vosaic/components/report-grid-program-summary/index.js","vosaic/components/report-grid/index.js","vosaic/components/report-subnav-editor/index.js","vosaic/components/saml-signup-view/index.js","vosaic/components/search-filter-status/index.js","vosaic/components/sortable-objects.js","vosaic/components/speaker-row/index.js","vosaic/components/speaker-stats/index.js","vosaic/components/supporting-documents-list/index.js","vosaic/components/tab-navigation/index.js","vosaic/components/textarea-component/index.js","vosaic/components/timeline-visibility-settings/index.js","vosaic/components/top-nav/index.js","vosaic/components/transcript-part/index.js","vosaic/components/trial-promo/index.js","vosaic/components/user-selector/index.js","vosaic/components/video-comments/index.js","vosaic/components/video-dashboard-graph/index.js","vosaic/components/video-dashboard-report-grid/index.js","vosaic/components/video-filter-toolbar/index.js","vosaic/components/video-folder-view/index.js","vosaic/components/video-grade/index.js","vosaic/components/video-index-action-btn/index.js","vosaic/components/video-list-view/index.js","vosaic/components/video-live-player/index.js","vosaic/components/video-not-found/index.js","vosaic/components/video-object-comment/index.js","vosaic/components/video-object/index.js","vosaic/components/video-player-button/index.js","vosaic/components/video-player-comment/index.js","vosaic/components/video-player-form-button/index.js","vosaic/components/video-player-form-nav/index.js","vosaic/components/video-player-moment-item/index.js","vosaic/components/video-player-moments/index.js","vosaic/components/video-player-playhead-thumb/index.js","vosaic/components/video-player-preload-bar/index.js","vosaic/components/video-player-sidebar/index.js","vosaic/components/video-player-timeline-moment-z/index.js","vosaic/components/video-player-timeline-z/index.js","vosaic/components/video-player-volume/index.js","vosaic/components/video-player-zoom-thumb/index.js","vosaic/components/video-player/index.js","vosaic/components/video-recorder-device-select/index.js","vosaic/components/video-seek/index.js","vosaic/components/video-stats/index.js","vosaic/components/video-status/index.js","vosaic/components/video-transcript-preview/index.js","vosaic/components/video-upload-view/index.js","vosaic/components/videos-index-view/index.js","vosaic/components/videos-new-view/index.js","vosaic/components/videos-view/index.js","vosaic/components/vosaic-multiselect-checkboxes/index.js","vosaic/components/x-option/index.js","vosaic/components/x-select/index.js","vosaic/confirm-email/confirm/controller.js","vosaic/confirm-email/confirm/route.js","vosaic/confirm-email/confirm/template.js","vosaic/confirm-email/send/controller.js","vosaic/confirm-email/send/route.js","vosaic/confirm-email/send/template.js","vosaic/constants.js","vosaic/controllers/videos/deleted.js","vosaic/data-adapter.js","vosaic/date-helpers/service.js","vosaic/decorators/model-validator.js","vosaic/decorators/object-validator.js","vosaic/deprecation-workflow.js","vosaic/devtest/route.js","vosaic/devtest/template.js","vosaic/devtest/zoomticks/controller.js","vosaic/devtest/zoomticks/route.js","vosaic/devtest/zoomticks/template.js","vosaic/ember-web-api/adapters/web-api.js","vosaic/ember-web-api/serializers/web-api.js","vosaic/forms/controller.js","vosaic/forms/edit/controller.js","vosaic/forms/edit/route.js","vosaic/forms/edit/template.js","vosaic/forms/not-found/controller.js","vosaic/forms/not-found/route.js","vosaic/forms/not-found/template.js","vosaic/forms/route.js","vosaic/forms/template.js","vosaic/groups/controller.js","vosaic/groups/edit/controller.js","vosaic/groups/edit/route.js","vosaic/groups/edit/template.js","vosaic/groups/new/controller.js","vosaic/groups/new/route.js","vosaic/groups/new/template.js","vosaic/groups/not-found/controller.js","vosaic/groups/not-found/route.js","vosaic/groups/not-found/template.js","vosaic/groups/route.js","vosaic/groups/template.js","vosaic/helper-objects/moment-bundle.js","vosaic/helper-objects/record-model.js","vosaic/helper-objects/upload-model.js","vosaic/helper-objects/view-model.js","vosaic/helpers/-base.js","vosaic/helpers/and.js","vosaic/helpers/animated-svg.js","vosaic/helpers/app-version.js","vosaic/helpers/array-contains.js","vosaic/helpers/assign.js","vosaic/helpers/disable-edit-role.js","vosaic/helpers/display-group-names.js","vosaic/helpers/duration-format.js","vosaic/helpers/element.js","vosaic/helpers/ember-power-select-is-equal.js","vosaic/helpers/ember-power-select-is-group.js","vosaic/helpers/ember-power-select-is-selected-present.js","vosaic/helpers/encode-uri-component.js","vosaic/helpers/ensure-safe-component.js","vosaic/helpers/eq.js","vosaic/helpers/equal.js","vosaic/helpers/feature-flag.js","vosaic/helpers/file-queue.js","vosaic/helpers/format-money.js","vosaic/helpers/format-number.js","vosaic/helpers/get-aria-current.js","vosaic/helpers/get-folder-owner.js","vosaic/helpers/get-form-owner.js","vosaic/helpers/greater.js","vosaic/helpers/gt.js","vosaic/helpers/gte.js","vosaic/helpers/html-safe.js","vosaic/helpers/id-display-name.js","vosaic/helpers/if-not-last.js","vosaic/helpers/is-after.js","vosaic/helpers/is-array.js","vosaic/helpers/is-before.js","vosaic/helpers/is-between.js","vosaic/helpers/is-empty.js","vosaic/helpers/is-equal.js","vosaic/helpers/is-same-or-after.js","vosaic/helpers/is-same-or-before.js","vosaic/helpers/is-same.js","vosaic/helpers/less-than.js","vosaic/helpers/lt.js","vosaic/helpers/lte.js","vosaic/helpers/moment-add.js","vosaic/helpers/moment-calendar.js","vosaic/helpers/moment-counter.js","vosaic/helpers/moment-diff.js","vosaic/helpers/moment-duration.js","vosaic/helpers/moment-format.js","vosaic/helpers/moment-from-now.js","vosaic/helpers/moment-from.js","vosaic/helpers/moment-subtract.js","vosaic/helpers/moment-to-date.js","vosaic/helpers/moment-to-now.js","vosaic/helpers/moment-to.js","vosaic/helpers/moment.js","vosaic/helpers/not-eq.js","vosaic/helpers/not.js","vosaic/helpers/now.js","vosaic/helpers/one-index.js","vosaic/helpers/or.js","vosaic/helpers/page-title.js","vosaic/helpers/pluralize.js","vosaic/helpers/safe-style.js","vosaic/helpers/singularize.js","vosaic/helpers/string-if-true.js","vosaic/helpers/svg-with-base.js","vosaic/helpers/unix.js","vosaic/helpers/utc.js","vosaic/helpers/video-status-display.js","vosaic/helpers/xor.js","vosaic/initializers/app-version.js","vosaic/initializers/coordinator-setup.js","vosaic/initializers/ember-data.js","vosaic/initializers/ember-simple-auth.js","vosaic/initializers/model-locale.js","vosaic/initializers/register-version.js","vosaic/initializers/vosaic-store.js","vosaic/instance-initializers/global-error-handler.js","vosaic/instance-initializers/idle-timeout.js","vosaic/live/controller.js","vosaic/live/route.js","vosaic/live/template.js","vosaic/login/forgot-password-sent/route.js","vosaic/login/forgot-password-sent/template.js","vosaic/login/forgot-password/controller.js","vosaic/login/forgot-password/route.js","vosaic/login/forgot-password/template.js","vosaic/login/index/controller.js","vosaic/login/index/route.js","vosaic/login/index/template.js","vosaic/lti/confirm/controller.js","vosaic/lti/confirm/route.js","vosaic/lti/confirm/template.js","vosaic/lti/controller.js","vosaic/lti/deeplinking/controller.js","vosaic/lti/deeplinking/route.js","vosaic/lti/deeplinking/template.js","vosaic/lti/register/controller.js","vosaic/lti/register/route.js","vosaic/lti/register/template.js","vosaic/lti/route.js","vosaic/mixins/google-pageview.js","vosaic/models/account.js","vosaic/models/aicoach-configuration.js","vosaic/models/aicoach.js","vosaic/models/annotation.js","vosaic/models/appinfo.js","vosaic/models/button.js","vosaic/models/category.js","vosaic/models/code.js","vosaic/models/domain-blacklist.js","vosaic/models/feature.js","vosaic/models/folder.js","vosaic/models/form.js","vosaic/models/goal.js","vosaic/models/grade.js","vosaic/models/group.js","vosaic/models/industry.js","vosaic/models/line-item.js","vosaic/models/lti-configuration.js","vosaic/models/moment.js","vosaic/models/org-engagement.js","vosaic/models/organization.js","vosaic/models/password.js","vosaic/models/payment.js","vosaic/models/paymentspring-renew.js","vosaic/models/permission.js","vosaic/models/pricing-plan-detail.js","vosaic/models/pricing-plan.js","vosaic/models/pricing-tier.js","vosaic/models/project.js","vosaic/models/prompt.js","vosaic/models/report.js","vosaic/models/saml-configuration.js","vosaic/models/speaker.js","vosaic/models/supporting-document.js","vosaic/models/tag.js","vosaic/models/threshold.js","vosaic/models/transcript-part.js","vosaic/models/transcript.js","vosaic/models/user.js","vosaic/models/usermoment.js","vosaic/models/userprofile.js","vosaic/models/video-comment.js","vosaic/models/video-view-track.js","vosaic/models/video.js","vosaic/modifiers/basic-dropdown-trigger.js","vosaic/modifiers/content-editable.js","vosaic/modifiers/did-insert.js","vosaic/modifiers/did-update.js","vosaic/modifiers/on-overflow-y.js","vosaic/modifiers/setup-calendly.js","vosaic/modifiers/style.js","vosaic/modifiers/trap-modal-focus.js","vosaic/modifiers/will-destroy.js","vosaic/not-found/route.js","vosaic/not-found/template.js","vosaic/password/reset/controller.js","vosaic/password/reset/route.js","vosaic/password/reset/template.js","vosaic/projects/controller.js","vosaic/projects/edit/controller.js","vosaic/projects/edit/route.js","vosaic/projects/edit/template.js","vosaic/projects/new/controller.js","vosaic/projects/new/route.js","vosaic/projects/new/template.js","vosaic/projects/not-found/controller.js","vosaic/projects/not-found/template.js","vosaic/projects/route.js","vosaic/projects/template.js","vosaic/register/controller.js","vosaic/register/route.js","vosaic/register/template.js","vosaic/reports/ai-report/controller.js","vosaic/reports/ai-report/route.js","vosaic/reports/ai-report/template.js","vosaic/reports/controller.js","vosaic/reports/dashboard/controller.js","vosaic/reports/dashboard/route.js","vosaic/reports/dashboard/template.js","vosaic/reports/new/controller.js","vosaic/reports/new/route.js","vosaic/reports/new/template.js","vosaic/reports/route.js","vosaic/reports/template.js","vosaic/reports/view/controller.js","vosaic/reports/view/route.js","vosaic/reports/view/template.js","vosaic/router.js","vosaic/routes/application.js","vosaic/routes/index.js","vosaic/routes/login.js","vosaic/routes/logout.js","vosaic/sales/controller.js","vosaic/sales/dashboard/controller.js","vosaic/sales/dashboard/route.js","vosaic/sales/dashboard/template.js","vosaic/sales/edit/controller.js","vosaic/sales/edit/route.js","vosaic/sales/edit/template.js","vosaic/sales/engagement/controller.js","vosaic/sales/engagement/route.js","vosaic/sales/engagement/template.js","vosaic/sales/new/controller.js","vosaic/sales/new/route.js","vosaic/sales/new/template.js","vosaic/sales/route.js","vosaic/sales/template.js","vosaic/serializers/application.js","vosaic/serializers/button.js","vosaic/serializers/org-engagement.js","vosaic/serializers/organization.js","vosaic/serializers/video.js","vosaic/services/-ensure-registered.js","vosaic/services/accessible-tabs.js","vosaic/services/account-suspension.js","vosaic/services/ai-access.js","vosaic/services/annotation-state.js","vosaic/services/authorizer.js","vosaic/services/button-suggester.js","vosaic/services/can-i.js","vosaic/services/can-org.js","vosaic/services/constants.js","vosaic/services/cookies.js","vosaic/services/current-user.js","vosaic/services/drag-coordinator.js","vosaic/services/dropdown.js","vosaic/services/duration-guesser.js","vosaic/services/error-extractor.js","vosaic/services/error-janitor.js","vosaic/services/export-data.js","vosaic/services/export-poller.js","vosaic/services/features.js","vosaic/services/file-importer.js","vosaic/services/file-queue.js","vosaic/services/file-reader.js","vosaic/services/focus-trap.js","vosaic/services/form-helper.js","vosaic/services/hotkey.js","vosaic/services/idle-timeout.js","vosaic/services/indexed-db.js","vosaic/services/live-streaming.js","vosaic/services/login-success.js","vosaic/services/manage-dropdowns.js","vosaic/services/modal-helper.js","vosaic/services/model-reloader.js","vosaic/services/moment-manager.js","vosaic/services/moment.js","vosaic/services/page-title.js","vosaic/services/playlist.js","vosaic/services/playstate-manager.js","vosaic/services/protected-route.js","vosaic/services/record-state-manager.js","vosaic/services/renewal-manager.js","vosaic/services/require-email-confirmation.js","vosaic/services/return-focus.js","vosaic/services/role-checker.js","vosaic/services/route-permission-checker.js","vosaic/services/saml-configuration.js","vosaic/services/scroll-helper.js","vosaic/services/session.js","vosaic/services/sockets.js","vosaic/services/store.js","vosaic/services/string-decoder.js","vosaic/services/string-generator.js","vosaic/services/subscription-expiry.js","vosaic/services/superadmin-impersonate.js","vosaic/services/tick-counter.js","vosaic/services/toggle-show.js","vosaic/services/token-awaiter.js","vosaic/services/token-memory.js","vosaic/services/transcript-poller.js","vosaic/services/update-notifier.js","vosaic/services/upload-credentials.js","vosaic/services/user-badge.js","vosaic/services/video-transcode-status.js","vosaic/services/video-uploader.js","vosaic/services/videos-filter-helper.js","vosaic/services/voice-helpers.js","vosaic/session-stores/application.js","vosaic/templates/components/payment-heading.js","vosaic/templates/index.js","vosaic/templates/logout.js","vosaic/templates/videos-loading.js","vosaic/transforms/boolean.js","vosaic/transforms/date-only.js","vosaic/transforms/date.js","vosaic/transforms/number.js","vosaic/transforms/string.js","vosaic/tutorials/controller.js","vosaic/tutorials/route.js","vosaic/tutorials/template.js","vosaic/tutorials/watch/route.js","vosaic/tutorials/watch/template.js","vosaic/users/controller.js","vosaic/users/edit/controller.js","vosaic/users/edit/route.js","vosaic/users/edit/template.js","vosaic/users/new/controller.js","vosaic/users/new/route.js","vosaic/users/new/template.js","vosaic/users/not-found/controller.js","vosaic/users/not-found/route.js","vosaic/users/not-found/template.js","vosaic/users/route.js","vosaic/users/template.js","vosaic/utils/consume-new-report-filter-visibility.js","vosaic/utils/email-domains.js","vosaic/utils/inject.js","vosaic/utils/is-fastboot.js","vosaic/utils/location.js","vosaic/utils/objects-are-equal.js","vosaic/utils/search-match.js","vosaic/utils/timeline-visibility-copy.js","vosaic/videos/controller.js","vosaic/videos/deleted/route.js","vosaic/videos/deleted/template.js","vosaic/videos/new/controller.js","vosaic/videos/new/route.js","vosaic/videos/new/template.js","vosaic/videos/not-found/route.js","vosaic/videos/not-found/template.js","vosaic/videos/route.js","vosaic/videos/template.js","vosaic/videos/upload/controller.js","vosaic/videos/upload/route.js","vosaic/videos/upload/template.js","vosaic/videos/view/controller.js","vosaic/videos/view/route.js","vosaic/videos/view/template.js","vosaic/watch/controller.js","vosaic/watch/route.js","vosaic/watch/template.js","vosaic/watch/withai/controller.js","vosaic/watch/withai/route.js","vosaic/watch/withai/template.js","vosaic/watch/withform/controller.js","vosaic/watch/withform/route.js","vosaic/watch/withform/template.js","vosaic/watch/withmoments/controller.js","vosaic/watch/withmoments/playlist/controller.js","vosaic/watch/withmoments/playlist/route.js","vosaic/watch/withmoments/route.js","vosaic/watch/withmoments/template.js","vosaic/watch/withtranscript/controller.js","vosaic/watch/withtranscript/route.js","vosaic/watch/withtranscript/template.js","vendor/ember-cli/app-suffix.js","vendor/ember-cli/app-config.js","vendor/ember-cli/app-boot.js"],"sourcesContent":["'use strict';\n\n\n","define(\"vosaic/about/route\", [\"exports\", \"@ember/routing/route\", \"@ember/service\"], function (_exports, _route, _service) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n var _class, _descriptor;\n 0; //eaimeta@70e063a35619d71f0,\"@ember/routing/route\",0,\"@ember/service\"eaimeta@70e063a35619d71f\n function _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }\n function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\n function _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\n function _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, (\"value\" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }\n function _initializerWarningHelper(r, e) { throw Error(\"Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.\"); }\n let AboutRoute = _exports.default = (_class = class AboutRoute extends _route.default {\n constructor(...args) {\n super(...args);\n _initializerDefineProperty(this, \"store\", _descriptor, this);\n }\n model() {\n const info = this.store.findRecord('appinfo', 'about');\n return info;\n }\n }, _descriptor = _applyDecoratedDescriptor(_class.prototype, \"store\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _class);\n});","define(\"vosaic/about/template\", [\"exports\", \"@ember/template-factory\"], function (_exports, _templateFactory) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n 0; //eaimeta@70e063a35619d71f0,\"@ember/template-factory\"eaimeta@70e063a35619d71f\n var _default = _exports.default = (0, _templateFactory.createTemplateFactory)(\n /*\n {{page-title 'About'}}\n
| Build Date | \n{{moment-format @model.buildDate 'M/DD/YY h:mm a'}} | \n
| Version | \n{{@model.fullVersion}} | \n
| VCS Version | \n{{@model.vcsRevision}} | \n
Below are the existing backups. Each backup ZIP file contains up to 25 videos. You can download them individually or download all backups as a single ZIP file.
\n {{else}}\nNo backups have been created yet.
\n {{/if}}\nMaximum number of backups reached. Please delete existing\n backups to create new ones.
\n {{else}}\n {{#if this.backupCreated}}\n \nBackup Creation in Process. Backups will start appearing below shortly. It's safe to navigate away from this page.
\n {{else}}\n \n {{/if}}\n {{/if}}\n| Backup files created {{moment-format backupGroup.createdAt 'MM/DD/YYYY h:mm a'}}\n {{#if (eq this.deletingBackup backupGroup.timestamp)}}\n \n {{else}}\n \n {{/if}}\n \n | \n|
|---|---|
| File Name | \nAction | \n
| \n \n {{file.fileName}}\n | \n\n \n {{#if (eq this.downloadingFile file)}}\n \n {{else}}\n \n {{/if}}\n | \n
| \n | \n {{#if (eq this.downloadingAll backupGroup)}}\n \n {{else}}\n \n {{/if}}\n | \n
An email with a link to create a new password has been sent.\n Please check your spam/junk folders, and follow\n instructions to create a password.
\n {{else}}\n\n To use our iOS app, or to log in outside of your LMS,\n you'll need to create a password.
\nOnce done, you'll be able to log in to your Vosaic account through your\n LMS, using Vosaic's iOS app, and/or by visiting Vosaic.com directly.\n
\n {{#if @model.viewModel.resetRequested}}\n \n {{else}}\n \n {{/if}}\n {{/if}}\n {{else}}\n{{feature.textBlurb}}
\n {{#if feature.price}}\nPrice {{feature.price}}
\n {{/if}}\nSingle sign-on (SSO) allows users of your Vosaic account to log in\n using your existing SAML-enabled ID provider, such as Active\n Directory, OneLogin, Google Apps, and many more. This means users do\n not have to keep track of yet another email and password. It also\n makes provisioning new users a breeze.
\n \nLTI allows users to log into Vosaic using their existing Canvas,\n Brightspace, or other Learning Management System (LMS) accounts.
\n \nBatch uploading allows you to upload multiple video files at a\n time. The file name of the video will become the video name and\n all uploaded videos will belong to the current user.
\nThis feature allows users in Learner, Educator, or Administrator\n roles to live stream videos that are being recorded using built in\n webcam, or plugged in camera. This feature works only when\n recording in a browser.
\nTo learn more about this feature, please visit:
\nSingle sign-on (SSO) allows users of your Vosaic account to log\n in using your existing SAML-enabled ID provider, such as Active\n Directory, OneLogin, PingIdentity, Okta, and many more. This means\n users do not have to keep track of yet another email and password.\n It also makes provisioning new users a breeze.
\nTo enable SSO you'll need to have following information ready:
\nNeed help? Have questions? Please\n contact us\n and we'll help you get started.
\nActivation Fee: $0.00 one time fee
\nThis feature allows users in Learner, Educator, or Adminstrator\n roles to live stream videos that are being recorded using built in\n webcam, or plugged in camera. This feature works only when\n recording in a browser.
\nTo learn more about this feature, please visit:
\nPurchase: $0.00/year
\n \nAdd Reporting feature to be able to generate repots across\n multiple videos.
\nTo learn more about this feature, please visit:
\nPurchase: $0.00/year
\n \n\n You have not set any goals yet. Go to a video you uploaded and click the\n AI Mate tab to set a goal.
\n Note: You must be in a Learner role or above to upload videos and set goals.\n
Use the link below to automatically add Vosaic as a tool in your LMS.\n Important:\n Vosaic only supports\n LTI 1.3\n or\n LTI Advantage.
\nhttps://vosaic.com/lti\n \n {{this.linkCopied}}| Name | \nProvider | \nClient ID | \n\n |
|---|---|---|---|
| {{config.name}} | \n{{config.platform}} | \n{{config.clientId}} | \n\n | \n
Need Help?\n Here are some instructions:
\n \nYour LMS will need following information from\n us\n in order to establish and maintain connections via LTI:
\nvosaic.comhttps://vosaic.com/videoshttps://vosaic.com/lti/deeplinkinghttps://vosaic.com/api/v1/jwkshttps://vosaic.com/ltiloginhttps://vosaic.com/openidhttps://vosaic.com/api/v1/jwks| Payment Date | \nPackage | \nAmount | \nInvoice | \n
|---|---|---|---|
| 02/02/2015 | \nBasic | \n$3,500.00 | \nView/Print Invoice | \n
| 02/02/2014 | \nBasic | \n$3,500.00 | \nView/Print Invoice | \n
| 02/02/2015 | \nBasic | \n$3,500.00 | \nView/Print Invoice | \n
| Paid Seats | \nUploaded Minutes | \nMinutes Limit | \nExpiration Date | \nAction | \n
|---|---|---|---|---|
| {{@model.viewModel.userLimit}} | \n{{@model.viewModel.uploadedMinutes}} | \n{{@model.viewModel.planMinutes}} | \n{{moment-format @model.viewModel.expiration 'M/DD/YYYY'}} | \n \n\n | \n
Vosaic provides secure cloud access and allows you to code,\n share, and collaborate on your projects from anywhere, anytime.\n Learn more\n about Vosaic, or\n
| Plan | \nSubscription Years | \nTotal | \nSubscribe | \n
|---|---|---|---|
| {{this.model.planName}} | \n\n \n \n | \n{{format-money this.total}} | \n\n \n | \n
| \n Need more than 5 paid seats? Request a Renewal Quote\n | \n|||
Uploading {{this.videoUploader.videoTitle}}
\n \nTimeout Reset: {{moment-format this.idleTimeout.resetTime 'h:mm:ss'}}
\nAfter watching the video, answer the questions below to set a goal.\n
\nFor more information, visit Instructional Coaching Group - PEERS Goals
'\n @modal='moreinfo'\n @onCancel={{this.cancelMoreInfo}}\n @myUser={{@myUser}}\n @focusInitiator='link-more-info'\n />\n\"Students were mostly engaged and asked good questions, but some lost focus during transitions.\"
\n\"Engagement was high, but some focus was lost during transitions.\"
'\n @onCancel={{this.cancelMoreInfo}}\n @myUser={{@myUser}}\n @focusInitiator='link-q2-example'\n />\n\"Tighten those transitions and keep everyone actively involved with quick, purposeful tasks.\"
\n\"Tighten transitions with quick tasks to keep all students actively involved.\"
'\n @onCancel={{this.cancelMoreInfo}}\n @myUser={{@myUser}}\n @focusInitiator='link-q3-example'\n />\n\"By the end of the month, each student will contribute at least 2 follow-up questions during group discussions in 3 out of 4 reading sessions.\"
\n\"Aim for 100% participation: each student asks at least one follow-up question during discussions.\"
'\n @onCancel={{this.cancelMoreInfo}}\n @myUser={{@myUser}}\n @focusInitiator='link-q4-example'\n />\n */\n {\n \"id\": \"PjmLI0Cd\",\n \"block\": \"[[[11,0],[24,0,\\\"text-white p-x-xxs\\\"],[4,[38,1],[[30,0,[\\\"onInsert\\\"]]],null],[12],[1,\\\"\\\\n \\\"],[10,\\\"h3\\\"],[14,0,\\\"lead m-b-none font-weight-bold text-success-ally\\\"],[12],[1,\\\"Set a Goal\\\"],[13],[1,\\\"\\\\n \\\"],[10,2],[12],[1,\\\"After watching the video, answer the questions below to set a goal.\\\\n \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn-link text-success-ally p-a-none\\\"],[24,5,\\\"vertical-align: baseline;\\\"],[24,1,\\\"link-more-info\\\"],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[28,[37,6],[[30,0,[\\\"onShowMoreInfo\\\"]],\\\"moreinfo\\\"],null]],null],[12],[1,\\\"Learn more about setting goals.\\\"],[13],[13],[1,\\\"\\\\n \\\"],[10,\\\"hr\\\"],[12],[13],[1,\\\"\\\\n \\\"],[10,\\\"fieldset\\\"],[14,0,\\\"m-b-xxs\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"legend\\\"],[14,0,\\\"p m-b-xs\\\"],[12],[10,1],[14,0,\\\"text-uppercase smaller font-weight-bold text-success-ally\\\"],[12],[1,\\\"Question 1:\\\"],[13],[10,\\\"br\\\"],[12],[13],[1,\\\"\\\\n \\\"],[41,[30,0,[\\\"q1Answer\\\"]],[[[1,\\\"✓\\\"]],[]],null],[1,\\\"\\\\n \\\"],[1,[30,0,[\\\"q1\\\"]]],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"radio-group m-b-xs\\\"],[12],[1,\\\"\\\\n\\\"],[42,[28,[37,14],[[28,[37,14],[[28,[37,15],[1,2,3,4,5],null]],null]],null],null,[[[1,\\\" \\\"],[8,[39,16],null,[[\\\"@class\\\",\\\"@name\\\",\\\"@value\\\",\\\"@boundProperty\\\",\\\"@type\\\",\\\"@labelText\\\",\\\"@labelClass\\\",\\\"@onChange\\\"],[\\\"c-radio m-r-xs\\\",\\\"radio-q1\\\",[30,1],[30,0,[\\\"q1Answer\\\"]],\\\"radio\\\",[30,1],\\\"text-white font-weight-bold\\\",[28,[37,6],[[30,0,[\\\"onUpdateQ1Answer\\\"]],[30,1]],null]]],null],[1,\\\"\\\\n\\\"]],[1]],null],[1,\\\" \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"radio-group m-b-md\\\"],[12],[1,\\\"\\\\n\\\"],[42,[28,[37,14],[[28,[37,14],[[28,[37,15],[6,7,8,9,10],null]],null]],null],null,[[[1,\\\" \\\"],[8,[39,16],null,[[\\\"@class\\\",\\\"@name\\\",\\\"@value\\\",\\\"@boundProperty\\\",\\\"@type\\\",\\\"@labelText\\\",\\\"@labelClass\\\",\\\"@onChange\\\"],[\\\"c-radio m-r-xs\\\",\\\"radio-q1\\\",[30,2],[30,0,[\\\"q1Answer\\\"]],\\\"radio\\\",[30,2],\\\"text-white font-weight-bold\\\",[28,[37,6],[[30,0,[\\\"onUpdateQ1Answer\\\"]],[30,2]],null]]],null],[1,\\\"\\\\n\\\"]],[2]],null],[1,\\\" \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,\\\"fieldset\\\"],[14,0,\\\"m-b-none\\\"],[12],[1,\\\"\\\\n\\\\n \\\"],[10,\\\"legend\\\"],[14,0,\\\"p m-b-none\\\"],[12],[10,1],[14,0,\\\"text-uppercase smaller font-weight-bold text-success-ally\\\"],[12],[1,\\\" Question 2:\\\"],[13],[10,\\\"br\\\"],[12],[13],[1,\\\"\\\\n \\\"],[41,[30,0,[\\\"q2Answer\\\"]],[[[1,\\\"✓\\\"]],[]],null],[1,\\\"\\\\n \\\"],[1,[30,0,[\\\"q2\\\"]]],[1,\\\"\\\\n \\\"],[10,1],[14,0,\\\"display-block small text-info\\\"],[12],[1,\\\"Do your best to answer\\\\n succinctly and directly.\\\\n \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn-sm btn-link text-success-ally p-a-none\\\"],[24,1,\\\"link-q2-example\\\"],[24,5,\\\"vertical-align: baseline;\\\"],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[28,[37,6],[[30,0,[\\\"onShowMoreInfo\\\"]],\\\"q2\\\"],null]],null],[12],[1,\\\"[Example]\\\"],[13],[13],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"form-group m-b-md m-t-none\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,17],null,[[\\\"@name\\\",\\\"@placeholder\\\",\\\"@labelText\\\",\\\"@formControlClass\\\",\\\"@value\\\",\\\"@rows\\\",\\\"@onChange\\\",\\\"@maxlength\\\",\\\"@showCounter\\\"],[\\\"q2\\\",\\\"Answer\\\",\\\"\\\",\\\"bg-inverse\\\",[30,0,[\\\"q2Answer\\\"]],4,[28,[37,6],[[28,[37,18],[[30,0,[\\\"q2Answer\\\"]]],null]],null],250,true]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,\\\"fieldset\\\"],[14,0,\\\"m-b-none\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"legend\\\"],[14,0,\\\"p m-b-none\\\"],[12],[10,1],[14,0,\\\"text-uppercase smaller font-weight-bold text-success-ally\\\"],[12],[1,\\\"Question 3:\\\"],[13],[10,\\\"br\\\"],[12],[13],[1,\\\"\\\\n \\\"],[41,[30,0,[\\\"q3Answer\\\"]],[[[1,\\\"✓\\\"]],[]],null],[1,\\\"\\\\n \\\"],[1,[30,0,[\\\"q3\\\"]]],[1,\\\"\\\\n \\\"],[10,1],[14,0,\\\"display-block small text-info\\\"],[12],[1,\\\"Do your best to answer\\\\n succinctly and directly.\\\\n \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn-sm btn-link text-success-ally p-a-none\\\"],[24,1,\\\"link-q3-example\\\"],[24,5,\\\"vertical-align: baseline;\\\"],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[28,[37,6],[[30,0,[\\\"onShowMoreInfo\\\"]],\\\"q3\\\"],null]],null],[12],[1,\\\"[Example]\\\"],[13],[13],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"form-group m-b-md m-t-none\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,17],null,[[\\\"@name\\\",\\\"@placeholder\\\",\\\"@labelText\\\",\\\"@formControlClass\\\",\\\"@value\\\",\\\"@rows\\\",\\\"@onChange\\\",\\\"@maxlength\\\",\\\"@showCounter\\\"],[\\\"q3\\\",\\\"Answer\\\",\\\"\\\",\\\"bg-inverse\\\",[30,0,[\\\"q3Answer\\\"]],4,[28,[37,6],[[28,[37,18],[[30,0,[\\\"q3Answer\\\"]]],null]],null],250,true]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,\\\"fieldset\\\"],[14,0,\\\"m-b-none\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"legend\\\"],[14,0,\\\"p m-b-none\\\"],[12],[10,1],[14,0,\\\"text-uppercase smaller font-weight-bold text-success-ally\\\"],[12],[1,\\\"Question 4:\\\"],[13],[10,\\\"br\\\"],[12],[13],[1,\\\"\\\\n \\\"],[41,[30,0,[\\\"q4Answer\\\"]],[[[1,\\\"✓\\\"]],[]],null],[1,\\\"\\\\n \\\"],[1,[30,0,[\\\"q4\\\"]]],[1,\\\"\\\\n \\\"],[10,1],[14,0,\\\"display-block small text-info\\\"],[12],[1,\\\"Do your best to answer\\\\n succinctly and directly.\\\\n \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn-sm btn-link text-success-ally p-a-none\\\"],[24,1,\\\"link-q4-example\\\"],[24,5,\\\"vertical-align: baseline;\\\"],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[28,[37,6],[[30,0,[\\\"onShowMoreInfo\\\"]],\\\"q4\\\"],null]],null],[12],[1,\\\"[Example]\\\"],[13],[13],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"form-group m-b-md m-t-none\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,17],null,[[\\\"@name\\\",\\\"@placeholder\\\",\\\"@labelText\\\",\\\"@formControlClass\\\",\\\"@value\\\",\\\"@rows\\\",\\\"@onChange\\\",\\\"@maxlength\\\",\\\"@showCounter\\\"],[\\\"q4\\\",\\\"I want my students to...\\\",\\\"\\\",\\\"bg-inverse\\\",[30,0,[\\\"q4Answer\\\"]],4,[28,[37,6],[[28,[37,18],[[30,0,[\\\"q4Answer\\\"]]],null]],null],250,true]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,\\\"fieldset\\\"],[14,0,\\\"m-b-xs\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"legend\\\"],[14,0,\\\"p m-b-none\\\"],[12],[10,1],[14,0,\\\"text-uppercase smaller font-weight-bold text-success-ally\\\"],[12],[1,\\\"Question 5:\\\"],[13],[10,\\\"br\\\"],[12],[13],[1,\\\"\\\\n \\\"],[41,[30,0,[\\\"q5Answer\\\"]],[[[1,\\\"✓\\\"]],[]],null],[1,\\\"\\\\n \\\"],[1,[30,0,[\\\"q5\\\"]]],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"radio-group m-b-md\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,16],null,[[\\\"@class\\\",\\\"@name\\\",\\\"@value\\\",\\\"@boundProperty\\\",\\\"@type\\\",\\\"@labelText\\\",\\\"@labelClass\\\",\\\"@onChange\\\"],[\\\"c-radio m-r-xs\\\",\\\"radio-q5\\\",\\\"yes\\\",[30,0,[\\\"q5Answer\\\"]],\\\"radio\\\",\\\"Yes\\\",\\\"text-white\\\\n font-weight-bold\\\",[28,[37,6],[[30,0,[\\\"onUpdateQ5Answer\\\"]],\\\"yes\\\"],null]]],null],[1,\\\"\\\\n \\\"],[8,[39,16],null,[[\\\"@class\\\",\\\"@name\\\",\\\"@value\\\",\\\"@boundProperty\\\",\\\"@type\\\",\\\"@labelText\\\",\\\"@labelClass\\\",\\\"@onChange\\\"],[\\\"c-radio m-r-xs\\\",\\\"radio-q5\\\",\\\"no\\\",[30,0,[\\\"q5Answer\\\"]],\\\"radio\\\",\\\"No\\\",\\\"text-white\\\\n font-weight-bold\\\",[28,[37,6],[[30,0,[\\\"onUpdateQ5Answer\\\"]],\\\"no\\\"],null]]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"],[41,[28,[37,19],[[30,0,[\\\"q5Answer\\\"]],\\\"no\\\"],null],[[[1,\\\" \\\"],[10,2],[14,0,\\\"alert alert-info p-a-xxs\\\"],[12],[1,\\\"Creating goals that are\\\\n student-focused will result in improved learning outcomes for students.\\\\n Take a moment to rewrite your answer to the question above, or leave it\\\\n as is to get a suggestion.\\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\" \\\"],[13],[1,\\\"\\\\n \\\"],[10,\\\"fieldset\\\"],[14,0,\\\"m-b-xxs\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"legend\\\"],[14,0,\\\"p m-b-none\\\"],[12],[10,1],[14,0,\\\"text-uppercase smaller font-weight-bold text-success-ally\\\"],[12],[1,\\\"Question 6:\\\"],[13],[10,\\\"br\\\"],[12],[13],[1,\\\"\\\\n \\\"],[41,[30,0,[\\\"q6Answer\\\"]],[[[1,\\\"✓\\\"]],[]],null],[1,\\\"\\\\n \\\"],[1,[30,0,[\\\"q6\\\"]]],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"radio-group m-b-md\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,16],null,[[\\\"@class\\\",\\\"@name\\\",\\\"@value\\\",\\\"@boundProperty\\\",\\\"@type\\\",\\\"@labelText\\\",\\\"@labelClass\\\",\\\"@onChange\\\"],[\\\"c-radio m-r-xs\\\",\\\"radio-q6\\\",\\\"yes\\\",[30,0,[\\\"q6Answer\\\"]],\\\"radio\\\",\\\"Yes\\\",\\\"text-white font-weight-bold\\\",[28,[37,6],[[30,0,[\\\"onUpdateQ6Answer\\\"]],\\\"yes\\\"],null]]],null],[1,\\\"\\\\n \\\"],[8,[39,16],null,[[\\\"@class\\\",\\\"@name\\\",\\\"@value\\\",\\\"@boundProperty\\\",\\\"@type\\\",\\\"@labelText\\\",\\\"@labelClass\\\",\\\"@onChange\\\"],[\\\"c-radio m-r-xs\\\",\\\"radio-q6\\\",\\\"no\\\",[30,0,[\\\"q6Answer\\\"]],\\\"radio\\\",\\\"No\\\",\\\"text-white\\\\n font-weight-bold\\\",[28,[37,6],[[30,0,[\\\"onUpdateQ6Answer\\\"]],\\\"no\\\"],null]]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"],[41,[28,[37,19],[[30,0,[\\\"q6Answer\\\"]],\\\"no\\\"],null],[[[1,\\\" \\\"],[10,2],[14,0,\\\"alert alert-info p-a-xxs\\\"],[12],[1,\\\"Having a goal that you care about will\\\\n help you achieve it. Consider rewriting your answer to the question\\\\n above, or leave it as is to get a suggestion.\\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\" \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"m-b-lg\\\"],[12],[1,\\\"\\\\n\\\"],[41,[30,3],[[[1,\\\" \\\"],[10,\\\"button\\\"],[14,0,\\\"btn btn-success font-weight-bold\\\"],[14,4,\\\"button\\\"],[12],[10,\\\"img\\\"],[15,\\\"src\\\",[29,[\\\"/assets/images/\\\",[28,[37,21],[\\\"logo-loader-white\\\"],null],\\\".svg\\\"]]],[14,\\\"alt\\\",\\\"Loading\\\"],[14,5,\\\"width:20px; height:20px;\\\"],[12],[13],[1,\\\"\\\\n Generating Goal\\\"],[13],[1,\\\"\\\\n\\\"]],[]],[[[1,\\\" \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn-success font-weight-bold\\\"],[16,\\\"disabled\\\",[30,0,[\\\"isSubmitDisabled\\\"]]],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[30,0,[\\\"onSubmitSurvey\\\"]]],null],[12],[1,\\\"Create New Goal\\\"],[13],[1,\\\"\\\\n \\\"],[41,[30,0,[\\\"isSubmitDisabled\\\"]],[[[10,1],[14,0,\\\"text-info m-l-xs\\\"],[12],[1,\\\"Please answer\\\\n all questions to submit.\\\"],[13]],[]],null],[1,\\\"\\\\n\\\"]],[]]],[1,\\\" \\\"],[13],[1,\\\"\\\\n\\\"],[13],[1,\\\"\\\\n\\\"],[8,[39,22],null,[[\\\"@shouldShow\\\",\\\"@infoTitle\\\",\\\"@infoText\\\",\\\"@modal\\\",\\\"@onCancel\\\",\\\"@myUser\\\",\\\"@focusInitiator\\\"],[[30,0,[\\\"isShowingMoreInfo\\\"]],\\\"Goals Checklist\\\",\\\"Focus on creating PEERS Goals. They are designed to be more effective than traditional goals by ensuring goals are meaningful, achievable, and aligned with student needs.
For more information, visit Instructional Coaching Group - PEERS Goals
\\\",\\\"moreinfo\\\",[30,0,[\\\"cancelMoreInfo\\\"]],[30,4],\\\"link-more-info\\\"]],null],[1,\\\"\\\\n\\\"],[8,[39,22],null,[[\\\"@shouldShow\\\",\\\"@modal\\\",\\\"@infoTitle\\\",\\\"@infoText\\\",\\\"@onCancel\\\",\\\"@myUser\\\",\\\"@focusInitiator\\\"],[[30,0,[\\\"isShowingQ2Example\\\"]],\\\"q2\\\",[30,0,[\\\"q2\\\"]],\\\"Examples of succinct and direct answers:
\\\\\\\"Students were mostly engaged and asked good questions, but some lost focus during transitions.\\\\\\\"
\\\\n\\\\\\\"Engagement was high, but some focus was lost during transitions.\\\\\\\"
\\\",[30,0,[\\\"cancelMoreInfo\\\"]],[30,4],\\\"link-q2-example\\\"]],null],[1,\\\"\\\\n\\\"],[8,[39,22],null,[[\\\"@shouldShow\\\",\\\"@modal\\\",\\\"@infoTitle\\\",\\\"@infoText\\\",\\\"@onCancel\\\",\\\"@myUser\\\",\\\"@focusInitiator\\\"],[[30,0,[\\\"isShowingQ3Example\\\"]],\\\"q3\\\",[30,0,[\\\"q3\\\"]],\\\"Examples of succinct and direct answers:
\\\\\\\"Tighten those transitions and keep everyone actively involved with quick, purposeful tasks.\\\\\\\"
\\\\n\\\\\\\"Tighten transitions with quick tasks to keep all students actively involved.\\\\\\\"
\\\",[30,0,[\\\"cancelMoreInfo\\\"]],[30,4],\\\"link-q3-example\\\"]],null],[1,\\\"\\\\n\\\"],[8,[39,22],null,[[\\\"@shouldShow\\\",\\\"@modal\\\",\\\"@infoTitle\\\",\\\"@infoText\\\",\\\"@onCancel\\\",\\\"@myUser\\\",\\\"@focusInitiator\\\"],[[30,0,[\\\"isShowingQ4Example\\\"]],\\\"q4\\\",[30,0,[\\\"q4\\\"]],\\\"Examples of succinct and direct answers:
\\\\\\\"By the end of the month, each student will contribute at least 2 follow-up questions during group discussions in 3 out of 4 reading sessions.\\\\\\\"
\\\\n\\\\\\\"Aim for 100% participation: each student asks at least one follow-up question during discussions.\\\\\\\"
\\\",[30,0,[\\\"cancelMoreInfo\\\"]],[30,4],\\\"link-q4-example\\\"]],null]],[\\\"number\\\",\\\"number\\\",\\\"@submittingGoalForm\\\",\\\"@myUser\\\"],[\\\"div\\\",\\\"did-insert\\\",\\\"h3\\\",\\\"p\\\",\\\"button\\\",\\\"on\\\",\\\"fn\\\",\\\"hr\\\",\\\"fieldset\\\",\\\"legend\\\",\\\"span\\\",\\\"br\\\",\\\"if\\\",\\\"each\\\",\\\"-track-array\\\",\\\"array\\\",\\\"input-check-radio\\\",\\\"textarea-component\\\",\\\"mut\\\",\\\"equal\\\",\\\"img\\\",\\\"animated-svg\\\",\\\"modal-more-info\\\"]]\",\n \"moduleName\": \"vosaic/components/ai-goals/index.hbs\",\n \"isStrictMode\": false\n });\n let AiGoals = _exports.default = (_class = class AiGoals extends _component2.default {\n constructor(...args) {\n super(...args);\n _initializerDefineProperty(this, \"q1Answer\", _descriptor, this);\n _initializerDefineProperty(this, \"q2Answer\", _descriptor2, this);\n _initializerDefineProperty(this, \"q3Answer\", _descriptor3, this);\n _initializerDefineProperty(this, \"q4Answer\", _descriptor4, this);\n _initializerDefineProperty(this, \"q5Answer\", _descriptor5, this);\n _initializerDefineProperty(this, \"q6Answer\", _descriptor6, this);\n _initializerDefineProperty(this, \"isShowingMoreInfo\", _descriptor7, this);\n _initializerDefineProperty(this, \"isShowingQ2Example\", _descriptor8, this);\n _initializerDefineProperty(this, \"isShowingQ3Example\", _descriptor9, this);\n _initializerDefineProperty(this, \"isShowingQ4Example\", _descriptor0, this);\n }\n get q1() {\n return 'On a scale of 1 - 10 how close was that class to your ideal class?';\n }\n get q2() {\n return 'Why did you pick that number?';\n }\n get q3() {\n return 'What would have to change to move it closer to a 10?';\n }\n get q4() {\n return 'What would you like your students to do that they are not doing now?';\n }\n get q5() {\n return 'Do you want that to be your goal?';\n }\n get q6() {\n return 'If that was your goal, would you really care about the goal?';\n }\n get isSubmitDisabled() {\n return this.q1Answer === null || this.q2Answer === '' || this.q3Answer === '' || this.q4Answer === '' || this.q5Answer === null || this.q6Answer === null;\n }\n get promptIntro() {\n return `Review the answers provided by the teacher, and suggest moments that agree and disagree with their answers. Start with a summary of the video under a heading \"Video Summary:\". Suggested moments should be in an unordered list under a heading \"Moments to Review:\". `;\n }\n get q5Prompt() {\n if (this.q5Answer === 'yes') {\n return `Reiterate the answer to question 4, and follow it up with a suggestion of that goal but rewriten to define a clear metric to track progress as outlined here https://www.instructionalcoaching.com/peers-goals/ and wrap it in a div with id='suggested-goals'`;\n } else {\n return `Suggest a goal that's based on the answer to question 4 and make sure the goal defines a clear metric to track progress as outlined here https://www.instructionalcoaching.com/peers-goals/ and wrap it in a div with id='suggested-goals'.`;\n }\n }\n get createPrompt() {\n return `${this.promptIntro}. Under the heading \"Goal:\", ${this.q5Prompt}. Under \"Something to Try:\" include a bulleted list of researh-based techniques that can be used to achive the goal. Under \"Research\" cite research papers you used to suggest techniques above. Do not reiterate any part of this prompt in your responses. Question 3: ${this.q3} Answer: ${this.q3Answer}. Question 4: ${this.q4} Answer: ${this.q4Answer}.`;\n }\n onInsert() {\n // populate response based on active goal goalForm\n this.args.activeGoal?.goalForm.forEach(goalFormItem => {\n switch (goalFormItem.question) {\n case this.q1:\n this.q1Answer = parseInt(goalFormItem.answer) || null;\n break;\n case this.q2:\n this.q2Answer = goalFormItem.answer;\n break;\n case this.q3:\n this.q3Answer = goalFormItem.answer;\n break;\n case this.q4:\n this.q4Answer = goalFormItem.answer;\n break;\n case this.q5:\n this.q5Answer = goalFormItem.answer;\n break;\n case this.q6:\n this.q6Answer = goalFormItem.answer;\n break;\n }\n });\n }\n onUpdateQ1Answer(number) {\n this.q1Answer = number;\n }\n onUpdateQ5Answer(number) {\n this.q5Answer = number;\n }\n onUpdateQ6Answer(number) {\n this.q6Answer = number;\n }\n onShowMoreInfo(modal) {\n if (modal === 'moreinfo') {\n this.isShowingMoreInfo = true;\n } else if (modal === 'q2') {\n this.isShowingQ2Example = true;\n } else if (modal === 'q3') {\n this.isShowingQ3Example = true;\n } else if (modal === 'q4') {\n this.isShowingQ4Example = true;\n }\n }\n cancelMoreInfo(modal) {\n if (modal === 'moreinfo') {\n this.isShowingMoreInfo = false;\n } else if (modal === 'q2') {\n this.isShowingQ2Example = false;\n } else if (modal === 'q3') {\n this.isShowingQ3Example = false;\n } else if (modal === 'q4') {\n this.isShowingQ4Example = false;\n }\n }\n onSubmitSurvey() {\n let goalForm = [{\n questionNumber: 1,\n question: this.q1,\n answer: this.q1Answer\n }, {\n questionNumber: 2,\n question: this.q2,\n answer: this.q2Answer\n }, {\n questionNumber: 3,\n question: this.q3,\n answer: this.q3Answer\n }, {\n questionNumber: 4,\n question: this.q4,\n answer: this.q4Answer\n }, {\n questionNumber: 5,\n question: this.q5,\n answer: this.q5Answer\n }, {\n questionNumber: 6,\n question: this.q6,\n answer: this.q6Answer\n }];\n this.args.onSubmitGoalResponses(goalForm);\n }\n }, _descriptor = _applyDecoratedDescriptor(_class.prototype, \"q1Answer\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return null;\n }\n }), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"q2Answer\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return '';\n }\n }), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"q3Answer\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return '';\n }\n }), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"q4Answer\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return '';\n }\n }), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, \"q5Answer\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return null;\n }\n }), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, \"q6Answer\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return null;\n }\n }), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, \"isShowingMoreInfo\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, \"isShowingQ2Example\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _descriptor9 = _applyDecoratedDescriptor(_class.prototype, \"isShowingQ3Example\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _descriptor0 = _applyDecoratedDescriptor(_class.prototype, \"isShowingQ4Example\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _applyDecoratedDescriptor(_class.prototype, \"onInsert\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onInsert\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"onUpdateQ1Answer\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onUpdateQ1Answer\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"onUpdateQ5Answer\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onUpdateQ5Answer\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"onUpdateQ6Answer\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onUpdateQ6Answer\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"onShowMoreInfo\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onShowMoreInfo\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"cancelMoreInfo\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"cancelMoreInfo\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"onSubmitSurvey\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onSubmitSurvey\"), _class.prototype), _class);\n (0, _component.setComponentTemplate)(__COLOCATED_TEMPLATE__, AiGoals);\n});","define(\"vosaic/components/ai-mate-summary/index\", [\"exports\", \"@ember/component\", \"@glimmer/component\", \"@ember/template\", \"@ember/object\", \"@ember/service\", \"@ember/template-factory\"], function (_exports, _component, _component2, _template, _object, _service, _templateFactory) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n var _class, _descriptor, _descriptor2;\n 0; //eaimeta@70e063a35619d71f0,\"@glimmer/component\",0,\"@ember/template\",0,\"@ember/object\",0,\"@ember/service\",0,\"@ember/template-factory\",0,\"@ember/component\"eaimeta@70e063a35619d71f\n function _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }\n function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\n function _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\n function _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, (\"value\" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }\n function _initializerWarningHelper(r, e) { throw Error(\"Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.\"); }\n const __COLOCATED_TEMPLATE__ = (0, _templateFactory.createTemplateFactory)(\n /*\n {{#if @isEnabled}}\n| {{#if @isGoalReport}}Follow Up Video{{else}}Video Name{{/if}}\n \n | \n{{#if @isGoalReport}}Reviewed On{{else}}Created On{{/if}}\n | \n {{#if @isGoalReport}}{{else}}\nUser | \nPrompt Type | \nPrompt | \n {{/if}}\nResponse | \n
|---|---|---|---|---|---|
| {{moment-format record.createdAt 'MM/DD/YYYY h:mm a'}} | \n {{#if @isGoalReport}}{{else}}\n{{record.createdByUser}} | \n{{record.promptType}} | \n{{record.prompt}} | \n {{/if}}\n\n \n | \n
To prevent you from deleting yourself, you can't delete an\n organization while you're impersonating.
\nThis action cannot be undone. All videos, users, forms, groups will\n be deleted permanently.
\nTo confirm you want to do this, please type the name of the\n organization exactly, then click the Delete button.
\nTo delete this video please go to Edit Video Details and uncheck the option \"Prevent video from being deleted\". Note: only users in Educator or Administrator roles who have access to this video have access to that option.
\n {{else}}\nDeleting a video removes it permanently from Vosaic, including all of its markup and supporting documents. You can not undo this.
\n {{/if}}\n\n The form selected has been shared with specific group(s). By selecting it here you will make this form public. Public forms are visible to anyone in the organization.\n \n Are you sure you want to make this form public? This action can not be undone.\n
\n \n \n \n */\n {\n \"id\": \"+MUrrtxr\",\n \"block\": \"[[[1,\\\"\\\\n \\\"],[10,\\\"h4\\\"],[14,0,\\\"m-t-lg\\\"],[14,\\\"tabindex\\\",\\\"0\\\"],[12],[1,\\\"Are you sure you want to use this form?\\\"],[13],[1,\\\"\\\\n\\\\n \\\"],[10,2],[12],[1,\\\"\\\\n The form selected has been shared with specific group(s). By selecting it here you will make this form public. Public forms are visible to anyone in the organization.\\\\n\\\\n \\\"],[10,\\\"strong\\\"],[12],[1,\\\"Are you sure you want to make this form public? This action can not be undone\\\"],[13],[1,\\\".\\\\n \\\"],[13],[1,\\\"\\\\n\\\\n\\\\n\\\"]],[],[\\\"h4\\\",\\\"p\\\",\\\"strong\\\"]]\",\n \"moduleName\": \"vosaic/components/cmodal-form-change-warning/index.hbs\",\n \"isStrictMode\": false\n });\n var _default = _exports.default = (0, _component.setComponentTemplate)(__COLOCATED_TEMPLATE__, (0, _templateOnly.default)(undefined, \"cmodal-form-change-warning\"));\n});","define(\"vosaic/components/cmodal-share-private-form-warning/index\", [\"exports\", \"@ember/component\", \"@ember/component/template-only\", \"@ember/template-factory\"], function (_exports, _component, _templateOnly, _templateFactory) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n 0; //eaimeta@70e063a35619d71f0,\"@ember/component/template-only\",0,\"@ember/template-factory\",0,\"@ember/component\"eaimeta@70e063a35619d71f\n const __COLOCATED_TEMPLATE__ = (0, _templateFactory.createTemplateFactory)(\n /*\n \n\n The group(s) selected do not have access to the form \"{{id-display-name @videoFormId @forms}}\", which is used in this video. By sharing this video\n with selected group(s) you will make the \"{{id-display-name @videoFormId @forms}}\" form public. Public forms are visible to anyone in the organization.\n
\n {{else if @showSharePrivateFormUserMessage}}\n\n The user(s) selected do not have access to any of the groups the form \"{{id-display-name @videoFormId @forms}}\" has been shared with. By sharing this video\n with selected user(s) you will make the \"{{id-display-name @videoFormId @forms}}\" form public. Public forms are visible to anyone in the organization.\n
\n {{else}}\n\n This video is using a private form \"{{id-display-name @videoFormId @forms}}\". By sharing this video\n you will make the \"{{id-display-name @videoFormId @forms}}\" form public. Public forms are visible to anyone in the organization.\n
\n {{/if}}\n \n */\n {\n \"id\": \"SlF6ow5j\",\n \"block\": \"[[[1,\\\"\\\\n \\\"],[10,\\\"h4\\\"],[14,0,\\\"m-t-lg\\\"],[14,\\\"tabindex\\\",\\\"0\\\"],[12],[1,\\\"Are you sure you want to share this video?\\\"],[13],[1,\\\"\\\\n\\\\n\\\"],[41,[30,1],[[[1,\\\" \\\"],[10,2],[12],[1,\\\"\\\\n The group(s) selected do not have access to the form \\\\\\\"\\\"],[10,\\\"strong\\\"],[12],[1,[28,[35,4],[[30,2],[30,3]],null]],[13],[1,\\\"\\\\\\\", which is used in this video. By sharing this video\\\\n with selected group(s) you will make the \\\\\\\"\\\"],[10,\\\"strong\\\"],[12],[1,[28,[35,4],[[30,2],[30,3]],null]],[13],[1,\\\"\\\\\\\" form public. Public forms are visible to anyone in the organization.\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],[[[41,[30,4],[[[1,\\\" \\\"],[10,2],[12],[1,\\\"\\\\n The user(s) selected do not have access to any of the groups the form \\\\\\\"\\\"],[10,\\\"strong\\\"],[12],[1,[28,[35,4],[[30,2],[30,3]],null]],[13],[1,\\\"\\\\\\\" has been shared with. By sharing this video\\\\n with selected user(s) you will make the \\\\\\\"\\\"],[10,\\\"strong\\\"],[12],[1,[28,[35,4],[[30,2],[30,3]],null]],[13],[1,\\\"\\\\\\\" form public. Public forms are visible to anyone in the organization.\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],[[[1,\\\" \\\"],[10,2],[12],[1,\\\"\\\\n This video is using a private form \\\\\\\"\\\"],[10,\\\"strong\\\"],[12],[1,[28,[35,4],[[30,2],[30,3]],null]],[13],[1,\\\"\\\\\\\". By sharing this video\\\\n you will make the \\\\\\\"\\\"],[10,\\\"strong\\\"],[12],[1,[28,[35,4],[[30,2],[30,3]],null]],[13],[1,\\\"\\\\\\\" form public. Public forms are visible to anyone in the organization.\\\\n \\\"],[13],[1,\\\"\\\\n \\\"]],[]]]],[]]]],[\\\"@sharedWithDifferentGroup\\\",\\\"@videoFormId\\\",\\\"@forms\\\",\\\"@showSharePrivateFormUserMessage\\\"],[\\\"h4\\\",\\\"if\\\",\\\"p\\\",\\\"strong\\\",\\\"id-display-name\\\"]]\",\n \"moduleName\": \"vosaic/components/cmodal-share-private-form-warning/index.hbs\",\n \"isStrictMode\": false\n });\n var _default = _exports.default = (0, _component.setComponentTemplate)(__COLOCATED_TEMPLATE__, (0, _templateOnly.default)(undefined, \"cmodal-share-private-form-warning\"));\n});","define(\"vosaic/components/cmodal-too-many-buttons/index\", [\"exports\", \"@ember/component\", \"@ember/component/template-only\", \"@ember/template-factory\"], function (_exports, _component, _templateOnly, _templateFactory) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n 0; //eaimeta@70e063a35619d71f0,\"@ember/component/template-only\",0,\"@ember/template-factory\",0,\"@ember/component\"eaimeta@70e063a35619d71f\n const __COLOCATED_TEMPLATE__ = (0, _templateFactory.createTemplateFactory)(\n /*\n \n\n Allowed maximum of buttons per Form is {{ @maxButtons }}. If you want to add a new button, delete another button.\n
\n \n */\n {\n \"id\": \"2FySR9+1\",\n \"block\": \"[[[1,\\\"\\\\n\\\"],[10,\\\"h4\\\"],[14,0,\\\"m-t-lg\\\"],[14,\\\"tabindex\\\",\\\"0\\\"],[12],[1,\\\"You can't add any more buttons\\\"],[13],[1,\\\"\\\\n\\\\n\\\"],[10,2],[12],[1,\\\"\\\\n Allowed maximum of buttons per Form is \\\"],[1,[30,1]],[1,\\\". If you want to add a new button, delete another button.\\\\n\\\"],[13],[1,\\\"\\\\n\\\"]],[\\\"@maxButtons\\\"],[\\\"h4\\\",\\\"p\\\"]]\",\n \"moduleName\": \"vosaic/components/cmodal-too-many-buttons/index.hbs\",\n \"isStrictMode\": false\n });\n var _default = _exports.default = (0, _component.setComponentTemplate)(__COLOCATED_TEMPLATE__, (0, _templateOnly.default)(undefined, \"cmodal-too-many-buttons\"));\n});","define(\"vosaic/components/content-editable\", [\"exports\", \"ember-content-editable/components/content-editable\"], function (_exports, _contentEditable) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n Object.defineProperty(_exports, \"default\", {\n enumerable: true,\n get: function () {\n return _contentEditable.default;\n }\n });\n 0; //eaimeta@70e063a35619d71f0,\"ember-content-editable/components/content-editable\"eaimeta@70e063a35619d71f\n});","define(\"vosaic/components/custom-learner-group-add-users/index\", [\"exports\", \"@ember/component\", \"@ember/object\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/runloop\", \"@ember/template-factory\"], function (_exports, _component, _object, _component2, _tracking, _runloop, _templateFactory) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n var _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6;\n 0; //eaimeta@70e063a35619d71f0,\"@ember/object\",0,\"@glimmer/component\",0,\"@glimmer/tracking\",0,\"@ember/runloop\",0,\"@ember/template-factory\",0,\"@ember/component\"eaimeta@70e063a35619d71f\n function _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }\n function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\n function _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\n function _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, (\"value\" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }\n function _initializerWarningHelper(r, e) { throw Error(\"Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.\"); }\n const __COLOCATED_TEMPLATE__ = (0, _templateFactory.createTemplateFactory)(\n /*\n \n {{outlet}}\n */\n {\n \"id\": \"b/Zl1Kes\",\n \"block\": \"[[[10,\\\"fieldset\\\"],[14,0,\\\"m-b-md\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"legend\\\"],[12],[1,\\\"Add Users to \\\"],[1,[30,0,[\\\"groupName\\\"]]],[13],[1,\\\"\\\\n \\\"],[8,[39,2],null,[[\\\"@overridePadding\\\",\\\"@class\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@labelText\\\",\\\"@value\\\",\\\"@onValueChange\\\"],[\\\"p-x-none\\\",\\\"m-b-none m-t-xs\\\",\\\"text\\\",\\\"Search\\\",\\\"Search\\\",[30,0,[\\\"searchText\\\"]],[28,[37,3],[[28,[37,4],[[30,0,[\\\"searchText\\\"]]],null]],null]]],null],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"card btn-form-wrap overflow-hidden\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[15,0,[29,[\\\"pos-a full-width fixed-in-space transparent-bg text-xs-center p-t-lg\\\\n \\\",[52,[30,0,[\\\"showLoader\\\"]],\\\"in\\\"]]]],[12],[1,\\\"Saving...\\\"],[13],[1,\\\"\\\\n \\\"],[11,0],[24,1,\\\"group-users\\\"],[24,0,\\\"overflow-scroll overflow-y-scroll mini-scroll p-x-md\\\"],[4,[38,7],[[30,0,[\\\"setupScrollListener\\\"]]],null],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"c-inputs-stacked m-t-sm bordered\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,8],null,[[\\\"@options\\\",\\\"@labelProperty\\\",\\\"@updateSelectionValue\\\",\\\"@onchange\\\",\\\"@selection\\\"],[[30,0,[\\\"sortedFilteredUsers\\\"]],\\\"displayName\\\",false,[30,0,[\\\"updateSelection\\\"]],[30,0,[\\\"selectedUsers\\\"]]]],[[\\\"default\\\"],[[[[1,\\\"\\\\n\\\\n\\\"],[41,[28,[37,9],[[30,3],[30,0,[\\\"usersToDisplayCount\\\"]]],null],[[[1,\\\" \\\"],[10,\\\"label\\\"],[14,0,\\\"c-checkbox c-input border-b\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,11],[[4,[38,12],[\\\"click\\\",[30,0,[\\\"stopPropagation\\\"]]],null]],[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[30,2]]],null],[1,[30,1,[\\\"displayName\\\"]]],[1,\\\"\\\\n \\\"],[10,1],[14,0,\\\"c-indicator\\\"],[12],[13],[1,\\\"\\\\n \\\"],[10,\\\"small\\\"],[15,0,[29,[\\\"display-inline-block label label-pill pull-xs-right\\\\n \\\",[30,1,[\\\"roleLabel\\\"]]]]],[12],[1,[30,1,[\\\"friendlyRole\\\"]]],[1,\\\" \\\"],[13],[1,\\\"\\\\n \\\"],[10,\\\"small\\\"],[14,0,\\\"display-block\\\"],[12],[1,[30,1,[\\\"emailAddress\\\"]]],[13],[1,\\\"\\\\n\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\" \\\"]],[1,2,3]]]]],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"searchText\\\"]],[[],[]],[[[41,[28,[37,9],[[30,0,[\\\"usersToDisplayCount\\\"]],[30,0,[\\\"sortedFilteredUsers\\\",\\\"length\\\"]]],null],[[[1,\\\" \\\"],[10,0],[14,0,\\\"text-xs-center p-x-sm small\\\"],[14,1,\\\"group-users-load-more\\\"],[12],[1,\\\"Showing first\\\\n \\\"],[1,[30,0,[\\\"usersToDisplayCount\\\"]]],[1,\\\"\\\\n users.\\\\n \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn btn-default-outline btn-xs\\\"],[24,4,\\\"button\\\"],[4,[38,12],[\\\"click\\\",[30,0,[\\\"onShowMoreUsers\\\"]]],null],[12],[1,\\\"Load More\\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null]],[]]],[1,\\\" \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"],[13],[1,\\\"\\\\n\\\"],[46,[28,[37,17],null,null],null,null,null]],[\\\"user\\\",\\\"isSelected\\\",\\\"index\\\"],[\\\"fieldset\\\",\\\"legend\\\",\\\"input-component\\\",\\\"fn\\\",\\\"mut\\\",\\\"div\\\",\\\"if\\\",\\\"did-insert\\\",\\\"vosaic-multiselect-checkboxes\\\",\\\"less-than\\\",\\\"label\\\",\\\"input\\\",\\\"on\\\",\\\"span\\\",\\\"small\\\",\\\"button\\\",\\\"component\\\",\\\"-outlet\\\"]]\",\n \"moduleName\": \"vosaic/components/custom-learner-group-add-users/index.hbs\",\n \"isStrictMode\": false\n });\n const USERS_TO_SHOW = 50;\n const USERS_TO_LOAD = 25;\n const MIN_USER_LIMIT_TO_SHOW_LOADER = 200;\n let CustomLearnerGroupAddUsersComponent = _exports.default = (_class = class CustomLearnerGroupAddUsersComponent extends _component2.default {\n constructor(...args) {\n super(...args);\n _initializerDefineProperty(this, \"eligibleUsersWithInGroup\", _descriptor, this);\n _initializerDefineProperty(this, \"selectedUsers\", _descriptor2, this);\n _initializerDefineProperty(this, \"searchText\", _descriptor3, this);\n _initializerDefineProperty(this, \"usersToDisplayCount\", _descriptor4, this);\n _initializerDefineProperty(this, \"showLoader\", _descriptor5, this);\n _initializerDefineProperty(this, \"hideLoader\", _descriptor6, this);\n }\n // constructor() {\n // super(...arguments);\n // this.updateSelectedUsers();\n // this.recordOriginalGroupMembers();\n // }\n\n get groupName() {\n //doing this here because constructor is not called when group is changed\n this.updateSelectedUsers();\n return this.args.group.name;\n }\n get sortedUsers() {\n return this.eligibleUsersWithInGroup.sort((a, b) => {\n const nameA = a.displayName.toLowerCase();\n const nameB = b.displayName.toLowerCase();\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n const emailA = (a.emailAddress || '').toLowerCase();\n const emailB = (b.emailAddress || '').toLowerCase();\n if (emailA < emailB) {\n return -1;\n }\n if (emailA > emailB) {\n return 1;\n }\n return 0;\n });\n }\n get eligibleUsers() {\n return this.args.users.filter(user => user.firstName && user.lastName && !user.isDeleted);\n }\n get sortedFilteredUsers() {\n const searchText = this.searchText.toLowerCase().trim();\n // eslint-disable-next-line no-control-regex\n const rforeign = /[^\\u0000-\\u007f]/;\n const maxLength = 3;\n const searchTextMin = rforeign.test(searchText) ? 1 : maxLength;\n if (searchText && searchText.length > searchTextMin) {\n return this.sortedUsers.filter(user => {\n const nameMatch = user.displayName.toLowerCase().includes(searchText);\n const emailMatch = (user.emailAddress || '').toLowerCase().includes(searchText);\n const roleMatch = (user.friendlyRole || '').toLowerCase().includes(searchText);\n return nameMatch || emailMatch || roleMatch;\n });\n }\n return this.sortedUsers.slice(0, this.usersToDisplayCount);\n }\n\n /**\n * Observes the selectedUsers (from multi-select checkboxes) and updates the group members\n * accordingly.\n *\n * It would be easier to clear() the groupMembers, then add all the selected users, but that\n * causes the groupMembers property to be updated twice in an ember.run cycle, raising a warning.\n */\n // selectedUsersObserver: observer('selectedUsers.[]', function () {\n // let selectedUsers = this.selectedUsers;\n // if (selectedUsers) {\n // var groupMembers = this.get('group.members');\n\n // selectedUsers.forEach(function (user) {\n // let alreadyHas = !!groupMembers.find(el => el.id === user.get('id'));\n // if (alreadyHas === false) {\n // groupMembers.pushObject(user);\n // }\n // });\n\n // groupMembers.forEach(function (user) {\n // if (user) {\n // let alreadyHas = !!selectedUsers.find(el => el.id === user.get('id'));\n // if (alreadyHas === false) {\n // groupMembers.removeObject(user);\n // }\n // }\n // });\n // }\n // }),\n\n // /**\n // * Observes when group members change. Like when you add/remove group members\n // */\n // groupMembersObserver: observer(\n // 'eligibleUsers',\n // 'group.members',\n // 'group.members.[]',\n // function () {\n // once(this, 'updateSelectedUsers');\n // }\n // ),\n\n async updateSelectedUsers() {\n try {\n for (const user of this.eligibleUsers) {\n const inGroup = await user.isInGroup(this.args.group.id);\n user.inGroup = inGroup;\n }\n this.eligibleUsersWithInGroup = this.eligibleUsers;\n this.selectedUsers = this.eligibleUsers.filter(el => el.inGroup);\n } catch (e) {\n return;\n }\n }\n // newSelection is the array of users. Value is the person selected. operation is the result\n updateSelection(newSelection, value, operation) {\n /* we want to show a loader on large user accounts. Being conservative with 200 */\n if (this.args.users.length > MIN_USER_LIMIT_TO_SHOW_LOADER) {\n this.showLoader = true;\n }\n const group = this.args.group;\n const groupMembers = this.args.group.members;\n const isBeingAdded = operation === 'added';\n if (isBeingAdded) {\n value.groups.push(group);\n groupMembers.push(value);\n } else {\n value.groups.splice(value.groups.indexOf(group), 1);\n groupMembers.splice(groupMembers.indexOf(value), 1);\n }\n this.updateSelectedUsers();\n this.args.onSaveUserAddedOrRemoved().then(() => {\n if (this.hideLoader) {\n this.showLoader = false;\n }\n });\n }\n setupScrollListener(element) {\n element.addEventListener('scroll', () => {\n if (element.scrollTop + element.clientHeight >= element.scrollHeight) {\n this.onShowMoreUsers();\n }\n });\n }\n onShowMoreUsers() {\n this.usersToDisplayCount = this.usersToDisplayCount + USERS_TO_LOAD;\n }\n\n //prevents the parent element from scrolling when the user checks a checkbox that is in the middle of the scrollable area\n stopPropagation(event) {\n event.stopPropagation();\n const parentElement = event.target.closest('.overflow-scroll');\n if (parentElement) {\n // Capture the current scroll position\n const currentScrollTop = parentElement.scrollTop;\n\n // Restore the scroll position after the event\n (0, _runloop.later)(() => {\n parentElement.scrollTop = currentScrollTop;\n }, 0); // Use `later` to ensure this runs after the event is processed\n }\n }\n }, _descriptor = _applyDecoratedDescriptor(_class.prototype, \"eligibleUsersWithInGroup\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return [];\n }\n }), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"selectedUsers\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return [];\n }\n }), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"searchText\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return '';\n }\n }), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"usersToDisplayCount\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return USERS_TO_SHOW;\n }\n }), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, \"showLoader\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, \"hideLoader\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return this.args.hideLoader;\n }\n }), _applyDecoratedDescriptor(_class.prototype, \"updateSelection\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"updateSelection\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"setupScrollListener\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"setupScrollListener\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"onShowMoreUsers\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onShowMoreUsers\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"stopPropagation\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"stopPropagation\"), _class.prototype), _class);\n (0, _component.setComponentTemplate)(__COLOCATED_TEMPLATE__, CustomLearnerGroupAddUsersComponent);\n});","define(\"vosaic/components/custom-learner-group-list-item-member/index\", [\"exports\", \"@ember/component\", \"@ember/object\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/service\", \"@ember/array\", \"@ember/template-factory\"], function (_exports, _component, _object, _component2, _tracking, _service, _array, _templateFactory) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n var _class, _descriptor, _descriptor2;\n 0; //eaimeta@70e063a35619d71f0,\"@ember/object\",0,\"@glimmer/component\",0,\"@glimmer/tracking\",0,\"@ember/service\",0,\"@ember/array\",0,\"@ember/template-factory\",0,\"@ember/component\"eaimeta@70e063a35619d71f\n function _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }\n function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\n function _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\n function _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, (\"value\" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }\n function _initializerWarningHelper(r, e) { throw Error(\"Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.\"); }\n const __COLOCATED_TEMPLATE__ = (0, _templateFactory.createTemplateFactory)(\n /*\n \n */\n {\n \"id\": \"wqpQzd8a\",\n \"block\": \"[[[11,0],[24,0,\\\"p-y-xs list-group-expandable-item\\\"],[4,[38,1],[[30,0,[\\\"onInsert\\\"]]],null],[12],[1,[30,1,[\\\"displayName\\\"]]],[1,\\\"\\\\n \\\"],[10,\\\"small\\\"],[12],[1,\\\"\\\\n \\\"],[10,1],[15,0,[29,[\\\"display-inline-block pull-xs-right label label-pill\\\\n \\\",[30,1,[\\\"roleLabel\\\"]]]]],[12],[1,[30,1,[\\\"friendlyRole\\\"]]],[13],[1,\\\"\\\\n \\\"],[10,1],[14,0,\\\"display-block\\\"],[12],[1,[30,1,[\\\"emailAddress\\\"]]],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"canBeGroupOwner\\\"]],[[[1,\\\" \\\"],[10,0],[14,0,\\\"c-inputs-stacked m-t-xs\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,5],null,[[\\\"@class\\\",\\\"@name\\\",\\\"@type\\\",\\\"@disabled\\\",\\\"@labelText\\\",\\\"@labelClass\\\",\\\"@value\\\",\\\"@onChange\\\"],[\\\"c-checkbox\\\",\\\"MakeGroupOwner\\\",\\\"checkbox\\\",[30,0,[\\\"isGroupOwner\\\"]],\\\"Group Owner\\\",\\\"text-success-ally-dark font-weight-bold small\\\",[30,0,[\\\"isGroupOwner\\\"]],[30,0,[\\\"onChangeGroupOwner\\\"]]]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[13]],[\\\"@member\\\"],[\\\"div\\\",\\\"did-insert\\\",\\\"small\\\",\\\"span\\\",\\\"if\\\",\\\"input-check-radio\\\"]]\",\n \"moduleName\": \"vosaic/components/custom-learner-group-list-item-member/index.hbs\",\n \"isStrictMode\": false\n });\n let CustomLearnerGroupListItemMemberComponent = _exports.default = (_class = class CustomLearnerGroupListItemMemberComponent extends _component2.default {\n constructor(...args) {\n super(...args);\n _initializerDefineProperty(this, \"constants\", _descriptor, this);\n _initializerDefineProperty(this, \"isGroupOwner\", _descriptor2, this);\n }\n get canBeGroupOwner() {\n return this.args.member.role === this.constants.roles.Educator || this.args.member.role === this.constants.roles.Administrator || this.args.member.role === this.constants.roles.SuperAdmin;\n }\n onInsert() {\n this.setGroupOwner();\n this.args.registerListMembers(this);\n }\n onChangeGroupOwner() {\n this.args.setGroupOwner(this.args.member);\n }\n setGroupOwner() {\n this.isGroupOwner = this.args.member.id === this.args.group.createdBy;\n }\n }, _descriptor = _applyDecoratedDescriptor(_class.prototype, \"constants\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"isGroupOwner\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _applyDecoratedDescriptor(_class.prototype, \"onInsert\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onInsert\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"onChangeGroupOwner\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"onChangeGroupOwner\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"setGroupOwner\", [_object.action], Object.getOwnPropertyDescriptor(_class.prototype, \"setGroupOwner\"), _class.prototype), _class);\n (0, _component.setComponentTemplate)(__COLOCATED_TEMPLATE__, CustomLearnerGroupListItemMemberComponent);\n});","define(\"vosaic/components/custom-learner-group-list-item/index\", [\"exports\", \"@ember/component\", \"@ember/object\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/service\", \"@ember/array\", \"@ember/template-factory\"], function (_exports, _component, _object, _component2, _tracking, _service, _array, _templateFactory) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n var _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8;\n 0; //eaimeta@70e063a35619d71f0,\"@ember/object\",0,\"@glimmer/component\",0,\"@glimmer/tracking\",0,\"@ember/service\",0,\"@ember/array\",0,\"@ember/template-factory\",0,\"@ember/component\"eaimeta@70e063a35619d71f\n function _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }\n function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\n function _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\n function _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, (\"value\" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }\n function _initializerWarningHelper(r, e) { throw Error(\"Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.\"); }\n const __COLOCATED_TEMPLATE__ = (0, _templateFactory.createTemplateFactory)(\n /*\n \n {{#if this.isActive}}\n \n {{#if this.isShowingMembers}}\n{{@noGoalsText}}
\n \n {{/if}}\n {{else}}\n {{#if @goalSharing}}\nSelect a goal to see its details and review\n history. NOTE: Your latest goal is automatically selected.
\n {{/if}}\nCreated on:\n {{moment-format\n this.selectedGoal.createdAt\n 'MM/DD/YYYY h:mm a'\n }}
\n\n Set on video:\n {{#if this.videoTitle}}\n {{this.videoTitle}}\n {{else}}\n {{#if this.videoExists}}\n Untitled\n {{else}}\n Video Deleted\n {{/if}}\n {{/if}}\n
\n{{this.selectedGoal.goalText}}
\nShared with:
\nNot shared with any\n Users.
\n {{/if}}\n \n {{/if}}\n \nThe table below shows follow-up\n videos that have been reviewed against this goal. Click the\n \"View\"\n button to see whether or not it has been met.
\nNo follow-up videos were reviewed for\n this goal.
\n {{/if}}\n {{/if}}\n {{/if}}\nUse Groups to manage your users more effectively.
\nMembers of your class will be automatically added as users in your\n Vosaic account with some exceptions.\n
\nSome users could not be created. It's\n possible that their emails are used by a different Vosaic account.\n Please\n email Vosaic support\n to help you resolve this.
\n {{#if this.errorUsers.length}}\nAffected members:
\nTo set up an LTI 1.3 connection, four key pieces of information are\n required:
\nCanvas is same for everyone:\n https://canvas.instructure.com
For other LMSs the platform URL may look something like:
\n https://yourLMS.yourSchool.org\n or\n https://yourSchool.yourLMS.org
The authentication endpoint depends on your specific LMS installation.\n Here are a few examples:https://yourLMS.yourSchool.org/d2l/lti/authenticate\n or\n https://yourLMS.yourSchool.org/api/lti/authorize_redirect
The certification endpoint depends on your specific LMS installation and\n usually start with your platform URL. Here are a few examples:https://yourLMS.yourSchool.org/d2l/.well-known/jwks\n or\n https://yourLMS.yourSchool.org/api/lti/security/jwks
When you set up an LTI connection on your LMS, it will provide you with a\n Client ID, which you should copy and paste into the Client ID field here.
\nThe deployment ID helps us distinguish between different LTI connections.\n If you know your deployment ID, feel free to type it in. If not, it should\n automatically fill in the first time you log in via LTI.
\nFeel free to jot down anything you don't want to forget about this LTI\n connection in the notes field and we'll save it along with your other\n connection information.
\nPlease provide all required (*) information below
\nPlease provide all required (*) Contact Information to continue
\n\n OR\n enter the bank account info below to pay via ACH:
\nNo marked up moments found.\n {{#if @video.canTag}}\n
Add a Note & Select a Look-For
\n\n {{#if @recordModelCaptureInit}}{{else}}\n {{#if this.selectedButtonValue}}\n \n {{/if}}\n {{/if}}\n {{duration-format @safeTimeStart 'seconds'}}\n -\n {{duration-format @timeEnd 'seconds'}}
\n {{#if @annotatingButtonToggleClass}}\n {{#if @existingMoment}}\n \n {{else}}\n \n then\n \n {{/if}}\n {{else}}\n \n {{/if}}\nList each look-for in the attached rubric and objectively review the video looking for evidence of each look-for. Objectively rate evidence of each observed look-for using rubrics rating system. Include comments for each found look-for and timestamps at which they're occurring.
\"\n @modal='moreinfo'\n @onCancel={{this.cancelMoreInfo}}\n @focusInitiator='link-more-info'\n />\n */\n {\n \"id\": \"IDPs6ip8\",\n \"block\": \"[[[41,[30,1],[[[1,\\\" \\\"],[11,0],[24,\\\"tabindex\\\",\\\"-1\\\"],[24,\\\"role\\\",\\\"dialog\\\"],[16,0,[29,[\\\"modal fade \\\",[30,0,[\\\"modalClass\\\"]]]]],[4,[38,2],[[30,0,[\\\"onDidInsert\\\"]]],null],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"modal-dialog modal-lg\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"modal-content\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"modal-header\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[14,\\\"tabindex\\\",\\\"0\\\"],[12],[1,\\\"Edit Prompt\\\"],[13],[1,\\\"\\\\n \\\"],[11,\\\"button\\\"],[24,0,\\\"close text-transparent text-muted\\\"],[24,\\\"data-dismiss\\\",\\\"modal\\\"],[24,\\\"aria-label\\\",\\\"Close Edit Button Modal\\\"],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[30,0,[\\\"onCancel\\\"]]],null],[12],[1,\\\"\\\\n \\\"],[10,1],[14,\\\"aria-hidden\\\",\\\"true\\\"],[12],[1,\\\"×\\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[15,0,[29,[\\\"modal-body \\\",[52,[30,0,[\\\"disabled\\\"]],\\\"p-t-md\\\",\\\"p-t-lg\\\"]]]],[12],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"hasErrors\\\"]],[[[1,\\\" \\\"],[10,0],[14,0,\\\"col-xs-12\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,7],null,[[\\\"@errors\\\"],[[30,0,[\\\"button\\\",\\\"errors\\\"]]]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[41,[30,0,[\\\"disabled\\\"]],[[[1,\\\" \\\"],[10,0],[14,0,\\\"alert alert-primary m-b-sm\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"strong\\\"],[12],[1,\\\"NOTE:\\\"],[13],[1,\\\"\\\\n \\\"],[1,[30,0,[\\\"disabledText\\\"]]],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[41,[30,2],[[[1,\\\" \\\"],[10,0],[14,0,\\\"row\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"col-xs-12 col-sm-8 m-b-md\\\"],[12],[1,\\\"\\\\n \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn-sm btn-primary\\\"],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[30,0,[\\\"onPromote\\\"]]],null],[12],[1,\\\"Promote to Global Prompts\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"col-xs-12 col-sm-4\\\"],[12],[1,\\\"\\\\n \\\"],[10,2],[14,0,\\\"small\\\"],[12],[1,\\\"Promoting a prompt doesn't remove it from the\\\\n Project. It simply copies it to Global prompts.\\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\" \\\"],[10,0],[14,0,\\\"row\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"p-l-none p-r-none col-xs-12 col-sm-8\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,10],null,[[\\\"@type\\\",\\\"@placeholder\\\",\\\"@labelText\\\",\\\"@value\\\",\\\"@errors\\\",\\\"@onValueChange\\\",\\\"@disabled\\\"],[\\\"text\\\",\\\"Prompt Summary\\\",\\\"Prompt Summary\\\",[30,3,[\\\"label\\\"]],[30,3,[\\\"errors\\\",\\\"label\\\"]],[30,0,[\\\"onLabelChange\\\"]],[30,0,[\\\"disabled\\\"]]]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"col-xs-12 col-sm-4\\\"],[12],[1,\\\"\\\\n \\\"],[10,2],[14,0,\\\"small\\\"],[12],[10,\\\"strong\\\"],[12],[1,\\\"Write a short summary of the prompt the\\\\n users will select to interact with AI Mate. For example:\\\"],[13],[1,\\\"\\\\n \\\"],[10,\\\"em\\\"],[12],[1,\\\"\\\\\\\"Analyze this video using Danielson's framework\\\\\\\"\\\"],[13],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"row\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"p-l-sm p-r-sm col-xs-12 col-sm-8\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,12],null,[[\\\"@placeholder\\\",\\\"@labelText\\\",\\\"@value\\\",\\\"@rows\\\",\\\"@onChange\\\",\\\"@isInputDisabled\\\",\\\"@maxlength\\\",\\\"@showCounter\\\"],[\\\"Detailed Prompt\\\",\\\"Detailed Prompt\\\",[30,3,[\\\"value\\\"]],5,[28,[37,13],[[28,[37,14],[[30,3,[\\\"value\\\"]]],null]],null],[30,0,[\\\"disabled\\\"]],2000,true]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"col-xs-12 col-sm-4\\\"],[12],[1,\\\"\\\\n \\\"],[10,2],[14,0,\\\"small p-t-sm\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"strong\\\"],[12],[1,\\\"Write a detailed prompt AI Mate will respond to when the\\\\n summary prompt is selected. For example:\\\"],[13],[1,\\\"\\\\n \\\"],[10,\\\"em\\\"],[12],[1,\\\"\\\\\\\"Analyze this lesson using Danielson's Framework for\\\\n Teaching. Provide an overall summary of observed strengths and\\\\n opportunities for improvement, and mark three specific moments\\\\n where you provide recommendations for growth.\\\\\\\"\\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\\n \\\"],[10,0],[14,0,\\\"row\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"col-xs-12 col-sm-8\\\"],[12],[1,\\\"\\\\n \\\"],[11,\\\"button\\\"],[24,1,\\\"upload-supporting-docs-btn\\\"],[24,0,\\\"btn btn-success btn-sm btn-wide text-uppercase m-y-xxs\\\"],[16,\\\"disabled\\\",[30,0,[\\\"saveDisabled\\\"]]],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[30,0,[\\\"onUploadSupportingDocuments\\\"]]],null],[12],[1,\\\"Upload New Document\\\"],[13],[1,\\\"\\\\n \\\"],[11,\\\"button\\\"],[24,1,\\\"link-more-info\\\"],[24,0,\\\"btn btn-link btn-sm btn-wide text-uppercase m-y-xxs\\\"],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[30,0,[\\\"onShowMoreInfoModal\\\"]]],null],[12],[1,\\\"Sample Rubric Prompt\\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"col-xs-12 col-sm-4\\\"],[12],[1,\\\"\\\\n \\\"],[10,2],[14,0,\\\"small\\\"],[12],[10,\\\"strong\\\"],[12],[1,\\\"Upload Supporting Documents:\\\"],[13],[1,\\\" Upload documents that will be used to provide\\\\n context to the AI Mate when it responds to this prompt. \\\"],[10,\\\"strong\\\"],[12],[1,\\\"For example:\\\"],[13],[1,\\\" you can upload your observation rubric or video codes. \\\"],[10,1],[14,0,\\\"text-danger\\\"],[12],[10,\\\"strong\\\"],[12],[1,\\\"Note:\\\"],[13],[1,\\\" Scanned in documents are not currently supported.\\\"],[13],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"],[41,[30,4,[\\\"length\\\"]],[[[1,\\\" \\\"],[10,0],[14,0,\\\"row\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"col-xs-12 col-sm-8\\\"],[12],[1,\\\"\\\\n\\\\n \\\"],[10,0],[14,0,\\\"card bg-white btn-form-wrap overflow-hidden\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"overflow-scroll overflow-y-scroll mini-scroll p-x-md\\\"],[12],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"c-inputs-stacked m-t-md bordered\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,15],null,[[\\\"@options\\\",\\\"@labelProperty\\\",\\\"@selection\\\"],[[30,4],\\\"title\\\",[30,3,[\\\"supportingDocuments\\\"]]]],[[\\\"default\\\"],[[[[1,\\\"\\\\n \\\"],[10,\\\"label\\\"],[14,0,\\\"c-checkbox c-input border-b p-b-xs m-b-xs m-t-xxs\\\"],[12],[1,\\\"\\\\n \\\"],[8,[39,17],null,[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[30,6]]],null],[1,[30,5,[\\\"title\\\"]]],[1,\\\"\\\\n \\\"],[10,1],[14,0,\\\"c-indicator\\\"],[12],[13],[1,\\\"\\\\n\\\"],[41,[28,[37,18],[[30,5,[\\\"createdBy\\\"]],[30,7,[\\\"id\\\"]]],null],[[[1,\\\" \\\"],[11,\\\"button\\\"],[24,\\\"aria-label\\\",\\\"Delete Document\\\"],[24,0,\\\"btn btn-sm btn-danger p-x-xs pull-xs-right\\\"],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[28,[37,13],[[30,0,[\\\"onDeleteSupportingDocument\\\"]],[30,5]],null]],null],[12],[1,\\\"\\\\n \\\"],[10,\\\"svg\\\"],[14,\\\"viewBox\\\",\\\"0 0 8 8\\\"],[14,0,\\\"icon icon-xs m-a-none\\\"],[14,5,\\\"fill: #eee;\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"use\\\"],[14,\\\"xlink:href\\\",\\\"#trash\\\",\\\"http://www.w3.org/1999/xlink\\\"],[14,0,\\\"btn-icon\\\"],[12],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\" \\\"],[13],[1,\\\"\\\\n \\\"]],[5,6]]]]],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"col-xs-12 col-sm-4\\\"],[12],[1,\\\"\\\\n \\\"],[10,2],[14,0,\\\"small\\\"],[12],[10,\\\"strong\\\"],[12],[1,\\\"Supporting Documents:\\\"],[13],[1,\\\" This lists all supporting documents uploaded for AI Mate to use. Select the one(s) you'd like to use for this prompt\\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[14,0,\\\"modal-footer\\\"],[12],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"canDelete\\\"]],[[[1,\\\" \\\"],[11,\\\"button\\\"],[24,1,\\\"delete-this-prompt-btn\\\"],[24,0,\\\"btn btn-link text-danger btn-sm pull-xs-left\\\"],[16,\\\"disabled\\\",[30,0,[\\\"disabled\\\"]]],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[30,0,[\\\"onDeleteClicked\\\"]]],null],[12],[1,\\\"\\\\n \\\"],[10,\\\"svg\\\"],[14,\\\"viewBox\\\",\\\"0 0 8 8\\\"],[14,0,\\\"icon icon-danger\\\"],[12],[1,\\\"\\\\n \\\"],[10,\\\"use\\\"],[14,\\\"xlink:href\\\",\\\"#trash\\\",\\\"http://www.w3.org/1999/xlink\\\"],[14,0,\\\"btn-icon\\\"],[12],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"Delete This Prompt\\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[41,[30,0,[\\\"hasErrors\\\"]],[[[1,\\\" \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn-danger btn-wide show-action-icon\\\"],[16,\\\"disabled\\\",[30,0,[\\\"disabled\\\"]]],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[30,0,[\\\"onSave\\\"]]],null],[12],[10,\\\"img\\\"],[14,\\\"alt\\\",\\\"Error\\\"],[15,\\\"src\\\",[29,[\\\"/assets/icons/\\\",[28,[37,22],[\\\"action-error\\\"],null],\\\".svg\\\"]]],[14,0,\\\"btn-icon action-icon\\\"],[12],[13],[1,\\\"\\\\n Error\\\"],[13],[1,\\\"\\\\n\\\"]],[]],[[[1,\\\" \\\"],[11,\\\"button\\\"],[24,0,\\\"btn btn-success\\\"],[16,\\\"disabled\\\",[30,0,[\\\"saveDisabled\\\"]]],[24,4,\\\"button\\\"],[4,[38,5],[\\\"click\\\",[30,0,[\\\"onSave\\\"]]],null],[12],[1,\\\"SAVE\\\"],[13],[1,\\\"\\\\n\\\"]],[]]],[1,\\\" \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[13],[1,\\\"\\\\n \\\"],[10,0],[15,0,[29,[\\\"modal-backdrop fade \\\",[30,0,[\\\"modalClass\\\"]]]]],[12],[13],[1,\\\"\\\\n\\\\n\\\"],[41,[30,0,[\\\"showUploadSupportingDocumentsModal\\\"]],[[[1,\\\" \\\"],[8,[39,23],null,[[\\\"@iconStyle\\\",\\\"@title\\\",\\\"@subtitle\\\",\\\"@extensions\\\",\\\"@shouldShow\\\",\\\"@onCancel\\\",\\\"@uploadProgress\\\",\\\"@uploadError\\\",\\\"@uploadErrorContent\\\",\\\"@onUploadDocument\\\",\\\"@isUploadingFile\\\",\\\"@focusInitiator\\\",\\\"@allowedFileTypes\\\"],[\\\"fill:#000\\\",\\\"Upload Documents For Preset Prompts\\\",\\\"Drag and drop documents you wish to upload onto this area\\\",\\\"pdf\\\",[30,0,[\\\"showUploadSupportingDocumentsModal\\\"]],[30,0,[\\\"onCloseUploadSupportingDocuments\\\"]],[30,0,[\\\"documentUploadProgress\\\"]],[30,0,[\\\"documentUploadError\\\"]],\\\"We were unable to upload the selected document.\\\",[30,0,[\\\"onUploadDocument\\\"]],[30,0,[\\\"fileUploading\\\"]],\\\"upload-supporting-docs-btn\\\",[30,0,[\\\"allowedFileTypes\\\"]]]],null],[1,\\\"\\\\n\\\"]],[]],null]],[]],null],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"showDeleteDocumentModal\\\"]],[[[1,\\\" \\\"],[8,[39,24],null,[[\\\"@title\\\",\\\"@content\\\",\\\"@actionOnCancel\\\",\\\"@actionOnDeleteConfirmed\\\",\\\"@shouldShow\\\",\\\"@focusInitiator\\\"],[[30,0,[\\\"deleteFileModalTitle\\\"]],\\\"Deleting a document removes it permanently from Vosaic. You can not undo this.\\\",[30,0,[\\\"onCancelDeleteFile\\\"]],[30,0,[\\\"onDeleteSupportingDocument\\\"]],[30,0,[\\\"showDeleteDocumentModal\\\"]],[28,[37,25],[\\\"delete-supporting-doc-btn-\\\",[30,0,[\\\"deleteFileModalId\\\"]]],null]]],null],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"\\\\n\\\"],[8,[39,26],null,[[\\\"@shouldShow\\\",\\\"@infoTitle\\\",\\\"@infoText\\\",\\\"@modal\\\",\\\"@onCancel\\\",\\\"@focusInitiator\\\"],[[30,0,[\\\"isShowingMoreInfo\\\"]],\\\"Sample Rubric Prompt\\\",\\\"If you're uploading a rubric to help you evaluate videos, here's an example of what the prompt could look like:
List each look-for in the attached rubric and objectively review the video looking for evidence of each look-for. Objectively rate evidence of each observed look-for using rubrics rating system. Include comments for each found look-for and timestamps at which they're occurring.
\\\",\\\"moreinfo\\\",[30,0,[\\\"cancelMoreInfo\\\"]],\\\"link-more-info\\\"]],null]],[\\\"@shouldShow\\\",\\\"@canPromote\\\",\\\"@prompt\\\",\\\"@promptDocuments\\\",\\\"document\\\",\\\"isSelected\\\",\\\"@currentUser\\\"],[\\\"if\\\",\\\"div\\\",\\\"did-insert\\\",\\\"h4\\\",\\\"button\\\",\\\"on\\\",\\\"span\\\",\\\"alert-form-errors\\\",\\\"strong\\\",\\\"p\\\",\\\"input-component\\\",\\\"em\\\",\\\"textarea-component\\\",\\\"fn\\\",\\\"mut\\\",\\\"vosaic-multiselect-checkboxes\\\",\\\"label\\\",\\\"input\\\",\\\"eq\\\",\\\"svg\\\",\\\"use\\\",\\\"img\\\",\\\"animated-svg\\\",\\\"modal-upload\\\",\\\"modal-confirm-delete\\\",\\\"concat\\\",\\\"modal-more-info\\\"]]\",\n \"moduleName\": \"vosaic/components/modal-edit-prompt/index.hbs\",\n \"isStrictMode\": false\n });\n const REGION = 'us-east-1';\n const BYTES_IN_MP_UPLOAD = 5 * 1024 * 1024;\n const QUEUE_SIZE = 1;\n let DocumentUploadProgress = (_class = class DocumentUploadProgress {\n constructor() {\n _initializerDefineProperty(this, \"loaded\", _descriptor, this);\n _initializerDefineProperty(this, \"total\", _descriptor2, this);\n _initializerDefineProperty(this, \"percent\", _descriptor3, this);\n }\n }, _descriptor = _applyDecoratedDescriptor(_class.prototype, \"loaded\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return null;\n }\n }), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"total\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return null;\n }\n }), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"percent\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return null;\n }\n }), _class);\n let ModalEditPrompt = _exports.default = (_class2 = class ModalEditPrompt extends _component2.default {\n constructor(...args) {\n super(...args);\n _initializerDefineProperty(this, \"modalHelper\", _descriptor4, this);\n _initializerDefineProperty(this, \"features\", _descriptor5, this);\n _initializerDefineProperty(this, \"currentUser\", _descriptor6, this);\n _initializerDefineProperty(this, \"stringGenerator\", _descriptor7, this);\n _initializerDefineProperty(this, \"store\", _descriptor8, this);\n _initializerDefineProperty(this, \"returnFocus\", _descriptor9, this);\n _initializerDefineProperty(this, \"focusTrap\", _descriptor0, this);\n _initializerDefineProperty(this, \"authorizer\", _descriptor1, this);\n _initializerDefineProperty(this, \"uploadCredentials\", _descriptor10, this);\n _defineProperty(this, \"documentUploadProgress\", new DocumentUploadProgress());\n _initializerDefineProperty(this, \"credentialsDocumentUpload\", _descriptor11, this);\n _initializerDefineProperty(this, \"showUploadSupportingDocumentsModal\", _descriptor12, this);\n _initializerDefineProperty(this, \"documentUploadError\", _descriptor13, this);\n _initializerDefineProperty(this, \"fileUploading\", _descriptor14, this);\n _initializerDefineProperty(this, \"selectedDocument\", _descriptor15, this);\n _initializerDefineProperty(this, \"showDeleteDocumentModal\", _descriptor16, this);\n _initializerDefineProperty(this, \"isShowingMoreInfo\", _descriptor17, this);\n _defineProperty(this, \"allowedFileTypes\", ['application/pdf']);\n }\n get canDeleteDocument() {\n return true;\n }\n get isNew() {\n return this.args.prompt.isNew;\n }\n get areFieldsEmpty() {\n return !this.args.prompt.value || !this.args.prompt.label || this.args.prompt.value.trim() === '' || this.args.prompt.label.trim() === '';\n }\n get modalClass() {\n return this.modalHelper.showHideModal(this.args.shouldShow);\n }\n get canDelete() {\n return !this.isNew;\n }\n get hasErrors() {\n return this.args.prompt.errors && (0, _array.isArray)(this.args.prompt.errors) && this.args.prompt.errors.length > 0;\n }\n get saveDisabled() {\n return this.disabled || this.areFieldsEmpty;\n }\n get disabled() {\n return !this.args.canEdit;\n }\n get disabledText() {\n return this.args.canPromote ? 'This is project specific prompt and cannot be edited here.' : 'This prompt is a global prompt and cannot be edited here.';\n }\n onLabelChange(value) {\n if (this.args.prompt.label === this.args.prompt.value) {\n this.args.prompt.value = value;\n }\n this.args.prompt.label = value;\n }\n onPromote() {\n this.modalHelper.close();\n this.args.onPromote(this.args.prompt);\n }\n onDidInsert() {\n this.returnFocus.setFocusInitiator(this.args.focusInitiator);\n this.focusTrap.handleFocusTrap(this.args.shouldShow);\n }\n onCancel() {\n this.modalHelper.close();\n this.args.onCancel(this.args.prompt);\n this.returnFocus.returnFocus();\n }\n onDeleteClicked() {\n this.args.onDelete(this.args.prompt);\n this.modalHelper.close();\n this.returnFocus.returnFocus();\n }\n async onSave() {\n this.modalHelper.close();\n try {\n const saveResult = this.args.onSave?.(this.args.prompt);\n if (saveResult && typeof saveResult.then === 'function') {\n await saveResult;\n }\n } finally {\n this.returnFocus.setFocusInitiator(this.args.focusInitiator);\n this.returnFocus.returnFocus();\n }\n }\n onCloseUploadSupportingDocuments() {\n this.uploadError = false;\n this.documentUploadProgress.loaded = null;\n this.documentUploadProgress.total = null;\n this.documentUploadProgress.percent = null;\n this.fileUploading = false;\n this.showUploadSupportingDocumentsModal = false;\n }\n onUploadDocument(uploader) {\n this.fileUploading = true;\n this.uploadFile(uploader, this.credentialsDocumentUpload);\n }\n async uploadFile(uploader, credentials) {\n const orgId = credentials.organizationId;\n const file = uploader.file;\n const fileExtension = file.name.split('.').pop().toLowerCase();\n this.uploadError = undefined;\n const supportingDocument = this.store.createRecord('supportingDocument');\n supportingDocument.title = file.name;\n supportingDocument.fileExtension = fileExtension;\n supportingDocument.save({\n adapterOptions: {\n promptId: 'prompt'\n }\n }).then(savedModel => {\n const fileName = `${orgId}_prompt/${savedModel.id}.${fileExtension}`;\n savedModel.uploadedPath = fileName;\n savedModel.isUploaded = false;\n\n /*eslint no-undef: */\n AWS.config.update({\n region: REGION,\n accessKeyId: credentials.accessKey,\n secretAccessKey: credentials.secretKey,\n sessionToken: credentials.sessionToken,\n useAccelerateEndpoint: true\n });\n const up = new AWS.S3.ManagedUpload({\n partSize: BYTES_IN_MP_UPLOAD,\n queueSize: QUEUE_SIZE,\n params: {\n Bucket: credentials.bucketName,\n Key: fileName,\n Body: uploader.file\n }\n });\n up.on('httpUploadProgress', progress => {\n const completionPercent = progress.loaded / progress.total;\n this.documentUploadProgress.loaded = progress.loaded;\n this.documentUploadProgress.total = progress.total;\n this.documentUploadProgress.percent = completionPercent;\n });\n\n // eslint-disable-next-line no-unused-vars\n up.send((err, data) => {\n if (err) {\n // if there is an error delete the dynamo record\n supportingDocument.destroyRecord({\n adapterOptions: {\n promptId: 'prompt'\n }\n });\n console.error('Error:', err.code, err.message);\n }\n });\n up.promise().then(() => {\n supportingDocument.set('isUploaded', true);\n supportingDocument.save({\n adapterOptions: {\n promptId: 'prompt'\n }\n }).then(() => {\n // reset progress bar for other uploads\n this.args.prompt.supportingDocuments.push(supportingDocument);\n this.args.promptDocuments.push(supportingDocument);\n this.documentUploadProgress.loaded = null;\n this.documentUploadProgress.total = null;\n this.documentUploadProgress.percent = null;\n this.fileUploading = false;\n this.showUploadSupportingDocumentsModal = false;\n });\n }).catch(() => {\n supportingDocument.destroyRecord({\n adapterOptions: {\n promptId: 'prompt'\n }\n });\n this.documentUploadError = 'Error Uploading Document';\n });\n });\n }\n async onUploadSupportingDocuments() {\n this.uploadCredentials.fetch({\n type: 'supportingdocument',\n promptId: 'prompt'\n }).then(credentials => {\n this.credentialsDocumentUpload = credentials;\n this.showUploadSupportingDocumentsModal = true;\n }).catch(error => {\n console.error('Error:', error);\n });\n }\n onShowDeleteFileModal(document) {\n this.selectedDocument = document;\n this.showDeleteDocumentModal = true;\n }\n onShowMoreInfoModal() {\n this.isShowingMoreInfo = true;\n }\n cancelMoreInfo() {\n this.isShowingMoreInfo = false;\n }\n onDeleteSupportingDocument(document) {\n document.destroyRecord({\n adapterOptions: {\n promptId: 'prompt'\n }\n }).then(() => {\n this.showDeleteDocumentModal = false;\n this.args.promptDocuments.splice(this.args.promptDocuments.indexOf(document), 1);\n });\n }\n onDownloadSupportingDocument(document) {\n this.requestDocumentDownload(document);\n }\n requestDocumentDownload(supportingDocument) {\n const fileName = encodeURIComponent(supportingDocument.title);\n try {\n fetch(`${this.authorizer.getBaseUrl()}/files/filedownload?id=${supportingDocument.organizationVideoOrProjectId}&fileId=${supportingDocument.id}&fileName=${fileName}&extension=${supportingDocument.fileExtension}`, {\n credentials: 'include',\n headers: this.authorizer.getAuthHeaders(),\n method: 'GET'\n }).then(async response => {\n const blob = await response.blob();\n const url = window.URL.createObjectURL(new Blob([blob]));\n const link = document.createElement('a');\n link.href = url;\n link.setAttribute('download', supportingDocument.title);\n document.body.appendChild(link);\n link.click();\n });\n } catch (error) {\n console.error(error);\n }\n }\n }, _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"modalHelper\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, \"features\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, \"stringGenerator\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, \"returnFocus\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor0 = _applyDecoratedDescriptor(_class2.prototype, \"focusTrap\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor1 = _applyDecoratedDescriptor(_class2.prototype, \"authorizer\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, \"uploadCredentials\", [_service.service], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, \"credentialsDocumentUpload\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return undefined;\n }\n }), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, \"showUploadSupportingDocumentsModal\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _descriptor13 = _applyDecoratedDescriptor(_class2.prototype, \"documentUploadError\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _descriptor14 = _applyDecoratedDescriptor(_class2.prototype, \"fileUploading\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _descriptor15 = _applyDecoratedDescriptor(_class2.prototype, \"selectedDocument\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return undefined;\n }\n }), _descriptor16 = _applyDecoratedDescriptor(_class2.prototype, \"showDeleteDocumentModal\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _descriptor17 = _applyDecoratedDescriptor(_class2.prototype, \"isShowingMoreInfo\", [_tracking.tracked], {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: function () {\n return false;\n }\n }), _applyDecoratedDescriptor(_class2.prototype, \"onLabelChange\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onLabelChange\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onPromote\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onPromote\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onDidInsert\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onDidInsert\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onCancel\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onCancel\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onDeleteClicked\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onDeleteClicked\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onSave\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onSave\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onCloseUploadSupportingDocuments\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onCloseUploadSupportingDocuments\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onUploadDocument\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onUploadDocument\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"uploadFile\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"uploadFile\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onUploadSupportingDocuments\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onUploadSupportingDocuments\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onShowDeleteFileModal\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onShowDeleteFileModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onShowMoreInfoModal\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onShowMoreInfoModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"cancelMoreInfo\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"cancelMoreInfo\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onDeleteSupportingDocument\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onDeleteSupportingDocument\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"onDownloadSupportingDocument\", [_object.action], Object.getOwnPropertyDescriptor(_class2.prototype, \"onDownloadSupportingDocument\"), _class2.prototype), _class2);\n (0, _component.setComponentTemplate)(__COLOCATED_TEMPLATE__, ModalEditPrompt);\n});","define(\"vosaic/components/modal-edit-video/index\", [\"exports\", \"@ember/component\", \"@ember/object\", \"@ember/service\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/array\", \"@ember/template-factory\"], function (_exports, _component, _object, _service, _component2, _tracking, _array, _templateFactory) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.default = void 0;\n var _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor0, _descriptor1, _descriptor10, _descriptor11;\n 0; //eaimeta@70e063a35619d71f0,\"@ember/object\",0,\"@ember/service\",0,\"@glimmer/component\",0,\"@glimmer/tracking\",0,\"@ember/array\",0,\"@ember/template-factory\",0,\"@ember/component\"eaimeta@70e063a35619d71f\n function _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }\n function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\n function _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\n function _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, (\"value\" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }\n function _initializerWarningHelper(r, e) { throw Error(\"Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.\"); }\n const __COLOCATED_TEMPLATE__ = (0, _templateFactory.createTemplateFactory)(\n /*\n {{#if @shouldShow}}\n