{"version":3,"sources":["vendor/ember-cli/app-prefix.js","web-app-ember-v2/adapters/-json-api.js","web-app-ember-v2/adapters/activity.js","web-app-ember-v2/adapters/application.js","web-app-ember-v2/adapters/billing-report.js","web-app-ember-v2/adapters/invitation.js","web-app-ember-v2/adapters/presence.js","web-app-ember-v2/adapters/project.js","web-app-ember-v2/adapters/session-type.js","web-app-ember-v2/adapters/summary.js","web-app-ember-v2/adapters/tag.js","web-app-ember-v2/adapters/task-summary.js","web-app-ember-v2/adapters/task-without-activity.js","web-app-ember-v2/adapters/task.js","web-app-ember-v2/adapters/time-limit.js","web-app-ember-v2/adapters/time-session.js","web-app-ember-v2/adapters/user-status.js","web-app-ember-v2/adapters/user.js","web-app-ember-v2/adapters/workplan-task.js","web-app-ember-v2/adapters/workplan.js","web-app-ember-v2/adapters/workspace.js","web-app-ember-v2/app.js","web-app-ember-v2/application/authorizer.js","web-app-ember-v2/application/controller.js","web-app-ember-v2/application/route.js","web-app-ember-v2/application/template.js","web-app-ember-v2/authenticated/controller.js","web-app-ember-v2/authenticated/preferences/controller.js","web-app-ember-v2/authenticated/preferences/route.js","web-app-ember-v2/authenticated/preferences/template.js","web-app-ember-v2/authenticated/profile/controller.js","web-app-ember-v2/authenticated/profile/route.js","web-app-ember-v2/authenticated/profile/template.js","web-app-ember-v2/authenticated/reports/new/controller.js","web-app-ember-v2/authenticated/reports/new/template.js","web-app-ember-v2/authenticated/route.js","web-app-ember-v2/authenticated/security/controller.js","web-app-ember-v2/authenticated/security/route.js","web-app-ember-v2/authenticated/security/template.js","web-app-ember-v2/authenticated/sign-out/route.js","web-app-ember-v2/authenticated/sign-out/template.js","web-app-ember-v2/authenticated/summaries/new/controller.js","web-app-ember-v2/authenticated/summaries/new/template.js","web-app-ember-v2/authenticated/tasks/new/template.js","web-app-ember-v2/authenticated/template.js","web-app-ember-v2/authenticated/time-sessions/actions_mixin.js","web-app-ember-v2/authenticated/time-sessions/destroy/controller.js","web-app-ember-v2/authenticated/time-sessions/destroy/template.js","web-app-ember-v2/authenticated/time-sessions/duplicate/controller.js","web-app-ember-v2/authenticated/time-sessions/duplicate/template.js","web-app-ember-v2/authenticated/time-sessions/edit/controller.js","web-app-ember-v2/authenticated/time-sessions/edit/template.js","web-app-ember-v2/authenticated/time-sessions/new/controller.js","web-app-ember-v2/authenticated/time-sessions/new/template.js","web-app-ember-v2/authenticated/workplans/new/controller.js","web-app-ember-v2/authenticated/workplans/new/template.js","web-app-ember-v2/authenticated/workspaces/configure/controller.js","web-app-ember-v2/authenticated/workspaces/configure/route.js","web-app-ember-v2/authenticated/workspaces/configure/template.js","web-app-ember-v2/authenticated/workspaces/leave/controller.js","web-app-ember-v2/authenticated/workspaces/leave/template.js","web-app-ember-v2/authenticated/workspaces/new/controller.js","web-app-ember-v2/authenticated/workspaces/new/route.js","web-app-ember-v2/authenticated/workspaces/new/template.js","web-app-ember-v2/authenticated/workspaces/show/billing-reports/controller.js","web-app-ember-v2/authenticated/workspaces/show/billing-reports/route.js","web-app-ember-v2/authenticated/workspaces/show/billing-reports/template.js","web-app-ember-v2/authenticated/workspaces/show/controller.js","web-app-ember-v2/authenticated/workspaces/show/invitations/route.js","web-app-ember-v2/authenticated/workspaces/show/invitations/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/edit/controller.js","web-app-ember-v2/authenticated/workspaces/show/projects/edit/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/edit/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/leave/controller.js","web-app-ember-v2/authenticated/workspaces/show/projects/leave/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/new/controller.js","web-app-ember-v2/authenticated/workspaces/show/projects/new/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/new/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/activity/controller.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/activity/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/activity/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/reports/controller.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/reports/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/reports/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/inactive/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/inactive/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/index/controller.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/index/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/index/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/show/controller.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/show/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/show/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/team/controller.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/team/route.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/team/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/show/template.js","web-app-ember-v2/authenticated/workspaces/show/projects/template.js","web-app-ember-v2/authenticated/workspaces/show/route.js","web-app-ember-v2/authenticated/workspaces/show/template.js","web-app-ember-v2/authenticated/workspaces/template.js","web-app-ember-v2/authenticators/oauth2.js","web-app-ember-v2/component-managers/glimmer.js","web-app-ember-v2/components/activities-collection/component.js","web-app-ember-v2/components/activities-collection/template.js","web-app-ember-v2/components/activity-component/component.js","web-app-ember-v2/components/activity-component/template.js","web-app-ember-v2/components/activity-time-session/component.js","web-app-ember-v2/components/activity-time-session/template.js","web-app-ember-v2/components/add-new-member-widget/component.js","web-app-ember-v2/components/add-new-member-widget/template.js","web-app-ember-v2/components/alert-box/component.js","web-app-ember-v2/components/alert-box/template.js","web-app-ember-v2/components/basic-dropdown-hover.js","web-app-ember-v2/components/basic-dropdown.js","web-app-ember-v2/components/basic-dropdown/content-element.js","web-app-ember-v2/components/basic-dropdown/content.js","web-app-ember-v2/components/basic-dropdown/trigger.js","web-app-ember-v2/components/billing-reports-table/component.js","web-app-ember-v2/components/billing-reports-table/template.js","web-app-ember-v2/components/bs-accordion.js","web-app-ember-v2/components/bs-accordion/item.js","web-app-ember-v2/components/bs-accordion/item/body.js","web-app-ember-v2/components/bs-accordion/item/title.js","web-app-ember-v2/components/bs-alert.js","web-app-ember-v2/components/bs-button-group.js","web-app-ember-v2/components/bs-button-group/button.js","web-app-ember-v2/components/bs-button.js","web-app-ember-v2/components/bs-carousel.js","web-app-ember-v2/components/bs-carousel/slide.js","web-app-ember-v2/components/bs-collapse.js","web-app-ember-v2/components/bs-datetimepicker.js","web-app-ember-v2/components/bs-dropdown.js","web-app-ember-v2/components/bs-dropdown/button.js","web-app-ember-v2/components/bs-dropdown/menu.js","web-app-ember-v2/components/bs-dropdown/menu/divider.js","web-app-ember-v2/components/bs-dropdown/menu/item.js","web-app-ember-v2/components/bs-dropdown/menu/link-to.js","web-app-ember-v2/components/bs-dropdown/toggle.js","web-app-ember-v2/components/bs-form.js","web-app-ember-v2/components/bs-form/element.js","web-app-ember-v2/components/bs-form/element/control.js","web-app-ember-v2/components/bs-form/element/control/checkbox.js","web-app-ember-v2/components/bs-form/element/control/input.js","web-app-ember-v2/components/bs-form/element/control/radio.js","web-app-ember-v2/components/bs-form/element/control/textarea.js","web-app-ember-v2/components/bs-form/element/errors.js","web-app-ember-v2/components/bs-form/element/feedback-icon.js","web-app-ember-v2/components/bs-form/element/help-text.js","web-app-ember-v2/components/bs-form/element/label.js","web-app-ember-v2/components/bs-form/element/layout/horizontal.js","web-app-ember-v2/components/bs-form/element/layout/horizontal/checkbox.js","web-app-ember-v2/components/bs-form/element/layout/inline.js","web-app-ember-v2/components/bs-form/element/layout/inline/checkbox.js","web-app-ember-v2/components/bs-form/element/layout/vertical.js","web-app-ember-v2/components/bs-form/element/layout/vertical/checkbox.js","web-app-ember-v2/components/bs-form/group.js","web-app-ember-v2/components/bs-modal-simple.js","web-app-ember-v2/components/bs-modal.js","web-app-ember-v2/components/bs-modal/body.js","web-app-ember-v2/components/bs-modal/dialog.js","web-app-ember-v2/components/bs-modal/footer.js","web-app-ember-v2/components/bs-modal/header.js","web-app-ember-v2/components/bs-modal/header/close.js","web-app-ember-v2/components/bs-modal/header/title.js","web-app-ember-v2/components/bs-nav.js","web-app-ember-v2/components/bs-nav/item.js","web-app-ember-v2/components/bs-nav/link-to.js","web-app-ember-v2/components/bs-navbar.js","web-app-ember-v2/components/bs-navbar/content.js","web-app-ember-v2/components/bs-navbar/link-to.js","web-app-ember-v2/components/bs-navbar/nav.js","web-app-ember-v2/components/bs-navbar/toggle.js","web-app-ember-v2/components/bs-popover.js","web-app-ember-v2/components/bs-popover/element.js","web-app-ember-v2/components/bs-progress.js","web-app-ember-v2/components/bs-progress/bar.js","web-app-ember-v2/components/bs-tab.js","web-app-ember-v2/components/bs-tab/pane.js","web-app-ember-v2/components/bs-tooltip.js","web-app-ember-v2/components/bs-tooltip/element.js","web-app-ember-v2/components/change-password-form/component.js","web-app-ember-v2/components/change-password-form/template.js","web-app-ember-v2/components/color-picker.js","web-app-ember-v2/components/confirmation-dialog/component.js","web-app-ember-v2/components/confirmation-dialog/template.js","web-app-ember-v2/components/crop-image-modal/component.js","web-app-ember-v2/components/crop-image-modal/template.js","web-app-ember-v2/components/date-format-power-select/component.js","web-app-ember-v2/components/date-format-power-select/template.js","web-app-ember-v2/components/date-format-select/component.js","web-app-ember-v2/components/date-format-select/template.js","web-app-ember-v2/components/date-range-picker.js","web-app-ember-v2/components/date-range-user-dropdown-actions/component.js","web-app-ember-v2/components/date-range-user-dropdown-actions/template.js","web-app-ember-v2/components/date-range/component.js","web-app-ember-v2/components/date-range/template.js","web-app-ember-v2/components/delete-billing-report-modal/component.js","web-app-ember-v2/components/delete-billing-report-modal/template.js","web-app-ember-v2/components/delete-task-modal/component.js","web-app-ember-v2/components/delete-task-modal/template.js","web-app-ember-v2/components/delete-team-member-modal/component.js","web-app-ember-v2/components/delete-team-member-modal/template.js","web-app-ember-v2/components/download-tasks-report-modal/component.js","web-app-ember-v2/components/download-tasks-report-modal/template.js","web-app-ember-v2/components/edit-invitation-modal/component.js","web-app-ember-v2/components/edit-invitation-modal/template.js","web-app-ember-v2/components/edit-profile-avatar/component.js","web-app-ember-v2/components/edit-profile-avatar/template.js","web-app-ember-v2/components/edit-profile-form/component.js","web-app-ember-v2/components/edit-profile-form/template.js","web-app-ember-v2/components/ember-popper-targeting-parent.js","web-app-ember-v2/components/ember-popper.js","web-app-ember-v2/components/ember-tether.js","web-app-ember-v2/components/external-invitation-content/component.js","web-app-ember-v2/components/external-invitation-content/template.js","web-app-ember-v2/components/external-resource-form/component.js","web-app-ember-v2/components/external-resource-form/template.js","web-app-ember-v2/components/external-resource-tag-label/component.js","web-app-ember-v2/components/external-resource-tag-label/template.js","web-app-ember-v2/components/filters-for-projects/component.js","web-app-ember-v2/components/filters-for-projects/footer/component.js","web-app-ember-v2/components/filters-for-projects/footer/template.js","web-app-ember-v2/components/filters-for-projects/header/component.js","web-app-ember-v2/components/filters-for-projects/header/template.js","web-app-ember-v2/components/filters-for-projects/template.js","web-app-ember-v2/components/filters-for-workspaces/component.js","web-app-ember-v2/components/filters-for-workspaces/footer/component.js","web-app-ember-v2/components/filters-for-workspaces/footer/template.js","web-app-ember-v2/components/filters-for-workspaces/template.js","web-app-ember-v2/components/form-controls/button.js","web-app-ember-v2/components/form-controls/checkbox.js","web-app-ember-v2/components/form-controls/color-input.js","web-app-ember-v2/components/form-controls/date-input.js","web-app-ember-v2/components/form-controls/datetime-local-input.js","web-app-ember-v2/components/form-controls/email-input.js","web-app-ember-v2/components/form-controls/file-input.js","web-app-ember-v2/components/form-controls/hidden-input.js","web-app-ember-v2/components/form-controls/image.js","web-app-ember-v2/components/form-controls/input.js","web-app-ember-v2/components/form-controls/month-input.js","web-app-ember-v2/components/form-controls/number-input.js","web-app-ember-v2/components/form-controls/password-input.js","web-app-ember-v2/components/form-controls/power-select.js","web-app-ember-v2/components/form-controls/radio.js","web-app-ember-v2/components/form-controls/range-input.js","web-app-ember-v2/components/form-controls/reset.js","web-app-ember-v2/components/form-controls/search-input.js","web-app-ember-v2/components/form-controls/select-option.js","web-app-ember-v2/components/form-controls/select.js","web-app-ember-v2/components/form-controls/submit.js","web-app-ember-v2/components/form-controls/tel-input.js","web-app-ember-v2/components/form-controls/textarea.js","web-app-ember-v2/components/form-controls/time-input.js","web-app-ember-v2/components/form-controls/url-input.js","web-app-ember-v2/components/form-controls/week-input.js","web-app-ember-v2/components/form-errors.js","web-app-ember-v2/components/form-field.js","web-app-ember-v2/components/form-fields/checkbox-field.js","web-app-ember-v2/components/form-fields/color-field.js","web-app-ember-v2/components/form-fields/custom-field.js","web-app-ember-v2/components/form-fields/date-field.js","web-app-ember-v2/components/form-fields/datetime-field.js","web-app-ember-v2/components/form-fields/datetime-local-field.js","web-app-ember-v2/components/form-fields/email-field.js","web-app-ember-v2/components/form-fields/file-field.js","web-app-ember-v2/components/form-fields/hidden-field.js","web-app-ember-v2/components/form-fields/month-field.js","web-app-ember-v2/components/form-fields/number-field.js","web-app-ember-v2/components/form-fields/password-field.js","web-app-ember-v2/components/form-fields/power-select-field.js","web-app-ember-v2/components/form-fields/radio-field.js","web-app-ember-v2/components/form-fields/radio-group.js","web-app-ember-v2/components/form-fields/range-field.js","web-app-ember-v2/components/form-fields/search-field.js","web-app-ember-v2/components/form-fields/select-field.js","web-app-ember-v2/components/form-fields/tel-field.js","web-app-ember-v2/components/form-fields/text-field.js","web-app-ember-v2/components/form-fields/textarea-field.js","web-app-ember-v2/components/form-fields/time-field.js","web-app-ember-v2/components/form-fields/url-field.js","web-app-ember-v2/components/form-fields/week-field.js","web-app-ember-v2/components/form-for.js","web-app-ember-v2/components/form-hint.js","web-app-ember-v2/components/form-label.js","web-app-ember-v2/components/g-recaptcha.js","web-app-ember-v2/components/gravatar-image.js","web-app-ember-v2/components/has-gravatar.js","web-app-ember-v2/components/image-cropper.js","web-app-ember-v2/components/image-cropper/component.js","web-app-ember-v2/components/image-cropper/template.js","web-app-ember-v2/components/infinity-loader.js","web-app-ember-v2/components/internal-invitation-content/component.js","web-app-ember-v2/components/internal-invitation-content/template.js","web-app-ember-v2/components/invitation-navbar/component.js","web-app-ember-v2/components/invitation-navbar/template.js","web-app-ember-v2/components/invitations-list/component.js","web-app-ember-v2/components/invitations-list/template.js","web-app-ember-v2/components/invite-new-member-form-modal/component.js","web-app-ember-v2/components/invite-new-member-form-modal/template.js","web-app-ember-v2/components/invite-users/component.js","web-app-ember-v2/components/invite-users/template.js","web-app-ember-v2/components/invite-users/users-autocomplete/component.js","web-app-ember-v2/components/invite-users/users-autocomplete/template.js","web-app-ember-v2/components/leave-project-modal/component.js","web-app-ember-v2/components/leave-project-modal/template.js","web-app-ember-v2/components/leave-workspace-modal/component.js","web-app-ember-v2/components/leave-workspace-modal/template.js","web-app-ember-v2/components/manage-team-member/component.js","web-app-ember-v2/components/manage-team-member/template.js","web-app-ember-v2/components/member-avatar/component.js","web-app-ember-v2/components/member-avatar/template.js","web-app-ember-v2/components/member-tooltip-content/component.js","web-app-ember-v2/components/member-tooltip-content/template.js","web-app-ember-v2/components/membership-modal/component.js","web-app-ember-v2/components/membership-modal/template.js","web-app-ember-v2/components/merge-task-modal-form/component.js","web-app-ember-v2/components/merge-task-modal-form/template.js","web-app-ember-v2/components/monthly-statistics/component.js","web-app-ember-v2/components/monthly-statistics/template.js","web-app-ember-v2/components/monthly-team-statistics/component.js","web-app-ember-v2/components/monthly-team-statistics/template.js","web-app-ember-v2/components/move-task-modal-form/component.js","web-app-ember-v2/components/move-task-modal-form/template.js","web-app-ember-v2/components/multiselect-checkboxes.js","web-app-ember-v2/components/nav-bar/component.js","web-app-ember-v2/components/nav-bar/template.js","web-app-ember-v2/components/notification-container.js","web-app-ember-v2/components/notification-message.js","web-app-ember-v2/components/popover-on-component.js","web-app-ember-v2/components/popover-on-element.js","web-app-ember-v2/components/power-select-multiple-with-create.js","web-app-ember-v2/components/power-select-multiple.js","web-app-ember-v2/components/power-select-multiple/trigger.js","web-app-ember-v2/components/power-select-with-create.js","web-app-ember-v2/components/power-select-with-create/suggested-option.js","web-app-ember-v2/components/power-select.js","web-app-ember-v2/components/power-select/before-options.js","web-app-ember-v2/components/power-select/options.js","web-app-ember-v2/components/power-select/placeholder.js","web-app-ember-v2/components/power-select/power-select-group.js","web-app-ember-v2/components/power-select/search-message.js","web-app-ember-v2/components/power-select/trigger.js","web-app-ember-v2/components/project-form/component.js","web-app-ember-v2/components/project-form/template.js","web-app-ember-v2/components/project-link/component.js","web-app-ember-v2/components/project-link/template.js","web-app-ember-v2/components/public-nav-bar/template.js","web-app-ember-v2/components/radio-button-input.js","web-app-ember-v2/components/radio-button.js","web-app-ember-v2/components/resend-invitation-modal/component.js","web-app-ember-v2/components/resend-invitation-modal/template.js","web-app-ember-v2/components/reset-password-form/component.js","web-app-ember-v2/components/reset-password-form/template.js","web-app-ember-v2/components/resume-stop-time-session/component.js","web-app-ember-v2/components/resume-stop-time-session/template.js","web-app-ember-v2/components/session-type-form-row/component.js","web-app-ember-v2/components/session-type-form-row/template.js","web-app-ember-v2/components/session-types-editable-table/component.js","web-app-ember-v2/components/session-types-editable-table/template.js","web-app-ember-v2/components/sign-in-form/component.js","web-app-ember-v2/components/sign-in-form/template.js","web-app-ember-v2/components/sign-up-form/component.js","web-app-ember-v2/components/sign-up-form/template.js","web-app-ember-v2/components/sticky-bar/component.js","web-app-ember-v2/components/sticky-bar/template.js","web-app-ember-v2/components/summary-form/component.js","web-app-ember-v2/components/summary-form/template.js","web-app-ember-v2/components/suspend-team-member-modal/component.js","web-app-ember-v2/components/suspend-team-member-modal/template.js","web-app-ember-v2/components/tag-labels/component.js","web-app-ember-v2/components/tag-labels/template.js","web-app-ember-v2/components/task-badge-with-status/component.js","web-app-ember-v2/components/task-badge-with-status/template.js","web-app-ember-v2/components/task-badge/component.js","web-app-ember-v2/components/task-badge/template.js","web-app-ember-v2/components/task-modal-form/component.js","web-app-ember-v2/components/task-modal-form/template.js","web-app-ember-v2/components/task-session-types-stats/box-session-type/component.js","web-app-ember-v2/components/task-session-types-stats/box-session-type/template.js","web-app-ember-v2/components/task-session-types-stats/component.js","web-app-ember-v2/components/task-session-types-stats/template.js","web-app-ember-v2/components/task-status-badge/component.js","web-app-ember-v2/components/task-status-badge/template.js","web-app-ember-v2/components/task-summary-row/actions-dropdown/component.js","web-app-ember-v2/components/task-summary-row/actions-dropdown/template.js","web-app-ember-v2/components/task-summary-row/component.js","web-app-ember-v2/components/task-summary-row/durations-box/component.js","web-app-ember-v2/components/task-summary-row/durations-box/template.js","web-app-ember-v2/components/task-summary-row/template.js","web-app-ember-v2/components/task-summary-row/users-summary/component.js","web-app-ember-v2/components/task-summary-row/users-summary/template.js","web-app-ember-v2/components/tasks-list-item/component.js","web-app-ember-v2/components/tasks-list-item/template.js","web-app-ember-v2/components/tasks-list/component.js","web-app-ember-v2/components/tasks-list/template.js","web-app-ember-v2/components/tasks-summary-team/component.js","web-app-ember-v2/components/tasks-summary-team/template.js","web-app-ember-v2/components/tasks-summary/component.js","web-app-ember-v2/components/tasks-summary/template.js","web-app-ember-v2/components/tasks-without-activity/component.js","web-app-ember-v2/components/tasks-without-activity/header/component.js","web-app-ember-v2/components/tasks-without-activity/header/template.js","web-app-ember-v2/components/tasks-without-activity/template.js","web-app-ember-v2/components/tether-popover-on-component.js","web-app-ember-v2/components/tether-popover-on-element.js","web-app-ember-v2/components/tether-tooltip-on-component.js","web-app-ember-v2/components/tether-tooltip-on-element.js","web-app-ember-v2/components/time-limit-bar/component.js","web-app-ember-v2/components/time-limit-bar/template.js","web-app-ember-v2/components/time-limit-form-modal-visibility-option/component.js","web-app-ember-v2/components/time-limit-form-modal-visibility-option/template.js","web-app-ember-v2/components/time-limit-form-modal/component.js","web-app-ember-v2/components/time-limit-form-modal/template.js","web-app-ember-v2/components/time-limits-table/component.js","web-app-ember-v2/components/time-limits-table/template.js","web-app-ember-v2/components/time-session-actions-dropdown/component.js","web-app-ember-v2/components/time-session-actions-dropdown/template.js","web-app-ember-v2/components/time-session-duration/component.js","web-app-ember-v2/components/time-session-duration/template.js","web-app-ember-v2/components/time-session-form/component.js","web-app-ember-v2/components/time-session-form/template.js","web-app-ember-v2/components/time-session/component.js","web-app-ember-v2/components/time-session/template.js","web-app-ember-v2/components/timezone-select/component.js","web-app-ember-v2/components/timezone-select/template.js","web-app-ember-v2/components/today-work-time-counter/component.js","web-app-ember-v2/components/today-work-time-counter/template.js","web-app-ember-v2/components/tooltip-on-component.js","web-app-ember-v2/components/tooltip-on-element.js","web-app-ember-v2/components/tooltip-on-element/component.js","web-app-ember-v2/components/ui-tribute.js","web-app-ember-v2/components/user-info/component.js","web-app-ember-v2/components/user-info/template.js","web-app-ember-v2/components/user-menu/component.js","web-app-ember-v2/components/user-menu/template.js","web-app-ember-v2/components/user-nav-bar/component.js","web-app-ember-v2/components/user-nav-bar/template.js","web-app-ember-v2/components/user-preferences-form/component.js","web-app-ember-v2/components/user-preferences-form/template.js","web-app-ember-v2/components/user-select/component.js","web-app-ember-v2/components/user-select/header/component.js","web-app-ember-v2/components/user-select/header/template.js","web-app-ember-v2/components/user-select/template.js","web-app-ember-v2/components/user-select/user-avatar-select/component.js","web-app-ember-v2/components/user-select/user-avatar-select/template.js","web-app-ember-v2/components/workplan-form/component.js","web-app-ember-v2/components/workplan-form/template.js","web-app-ember-v2/components/workspace-form/component.js","web-app-ember-v2/components/workspace-form/template.js","web-app-ember-v2/components/workspace-member-status/component.js","web-app-ember-v2/components/workspace-member-status/template.js","web-app-ember-v2/components/workspace-members-status/component.js","web-app-ember-v2/components/workspace-members-status/template.js","web-app-ember-v2/components/workspace-team-last-activity/component.js","web-app-ember-v2/components/workspace-team-last-activity/template.js","web-app-ember-v2/components/workspace-team/component.js","web-app-ember-v2/components/workspace-team/template.js","web-app-ember-v2/controllers/array.js","web-app-ember-v2/controllers/object.js","web-app-ember-v2/current-state/storage.js","web-app-ember-v2/data-adapter.js","web-app-ember-v2/helpers/add-activity-class-to-member.js","web-app-ember-v2/helpers/and.js","web-app-ember-v2/helpers/app-version.js","web-app-ember-v2/helpers/assign.js","web-app-ember-v2/helpers/bs-contains.js","web-app-ember-v2/helpers/bs-eq.js","web-app-ember-v2/helpers/cancel-all.js","web-app-ember-v2/helpers/capitalize.js","web-app-ember-v2/helpers/changeset-get.js","web-app-ember-v2/helpers/changeset-set.js","web-app-ember-v2/helpers/changeset.js","web-app-ember-v2/helpers/check-if-active.js","web-app-ember-v2/helpers/check-if-can-merge-or-move-tasks.js","web-app-ember-v2/helpers/check-if-equals-zero.js","web-app-ember-v2/helpers/check-if-external-project.js","web-app-ember-v2/helpers/check-if-member-is-suspended.js","web-app-ember-v2/helpers/check-if-odd-length.js","web-app-ember-v2/helpers/check-if-team-members-option.js","web-app-ember-v2/helpers/check-member-is-admin-or-manager.js","web-app-ember-v2/helpers/check-timelimit-table.js","web-app-ember-v2/helpers/contains.js","web-app-ember-v2/helpers/dasherize.js","web-app-ember-v2/helpers/day-format.js","web-app-ember-v2/helpers/domain-name.js","web-app-ember-v2/helpers/download-report-date-picker-ranges.js","web-app-ember-v2/helpers/ember-power-select-is-group.js","web-app-ember-v2/helpers/ember-power-select-is-selected.js","web-app-ember-v2/helpers/ember-power-select-true-string-if-present.js","web-app-ember-v2/helpers/eq.js","web-app-ember-v2/helpers/equal.js","web-app-ember-v2/helpers/external-user.js","web-app-ember-v2/helpers/feature-flag.js","web-app-ember-v2/helpers/format-date-to-time-ago.js","web-app-ember-v2/helpers/format-date.js","web-app-ember-v2/helpers/format-day.js","web-app-ember-v2/helpers/format-duration.js","web-app-ember-v2/helpers/format-member-role.js","web-app-ember-v2/helpers/format-time.js","web-app-ember-v2/helpers/format-user-initials.js","web-app-ember-v2/helpers/format-user-role.js","web-app-ember-v2/helpers/format-week.js","web-app-ember-v2/helpers/get-logo-url.js","web-app-ember-v2/helpers/get-member-role.js","web-app-ember-v2/helpers/get-project-name.js","web-app-ember-v2/helpers/get-sort-icon.js","web-app-ember-v2/helpers/gt.js","web-app-ember-v2/helpers/gte.js","web-app-ember-v2/helpers/is-after.js","web-app-ember-v2/helpers/is-array.js","web-app-ember-v2/helpers/is-before.js","web-app-ember-v2/helpers/is-between.js","web-app-ember-v2/helpers/is-email-valid.js","web-app-ember-v2/helpers/is-empty.js","web-app-ember-v2/helpers/is-equal.js","web-app-ember-v2/helpers/is-same-or-after.js","web-app-ember-v2/helpers/is-same-or-before.js","web-app-ember-v2/helpers/is-same.js","web-app-ember-v2/helpers/is-starred-project.js","web-app-ember-v2/helpers/lt.js","web-app-ember-v2/helpers/lte.js","web-app-ember-v2/helpers/mardown-convert.js","web-app-ember-v2/helpers/minutes-to-duration.js","web-app-ember-v2/helpers/moment-add.js","web-app-ember-v2/helpers/moment-calendar.js","web-app-ember-v2/helpers/moment-diff.js","web-app-ember-v2/helpers/moment-duration.js","web-app-ember-v2/helpers/moment-format.js","web-app-ember-v2/helpers/moment-from-now.js","web-app-ember-v2/helpers/moment-from.js","web-app-ember-v2/helpers/moment-subtract.js","web-app-ember-v2/helpers/moment-to-date.js","web-app-ember-v2/helpers/moment-to-now.js","web-app-ember-v2/helpers/moment-to.js","web-app-ember-v2/helpers/moment-unix.js","web-app-ember-v2/helpers/moment.js","web-app-ember-v2/helpers/not-eq.js","web-app-ember-v2/helpers/not.js","web-app-ember-v2/helpers/now.js","web-app-ember-v2/helpers/on-document.js","web-app-ember-v2/helpers/on-window.js","web-app-ember-v2/helpers/on.js","web-app-ember-v2/helpers/or.js","web-app-ember-v2/helpers/perform.js","web-app-ember-v2/helpers/pluralize.js","web-app-ember-v2/helpers/project-limit-left-time.js","web-app-ember-v2/helpers/project-limit-visibility-abbreviation.js","web-app-ember-v2/helpers/project-limit-visibility-owner.js","web-app-ember-v2/helpers/recurring-type.js","web-app-ember-v2/helpers/route-action.js","web-app-ember-v2/helpers/seconds-to-duration.js","web-app-ember-v2/helpers/singularize.js","web-app-ember-v2/helpers/t.js","web-app-ember-v2/helpers/task.js","web-app-ember-v2/helpers/tasks-sum.js","web-app-ember-v2/helpers/time-rounding-label.js","web-app-ember-v2/helpers/unix.js","web-app-ember-v2/helpers/user-day-sum.js","web-app-ember-v2/helpers/user-role.js","web-app-ember-v2/helpers/user-week-sum.js","web-app-ember-v2/helpers/utc.js","web-app-ember-v2/helpers/week-format.js","web-app-ember-v2/helpers/week-sum.js","web-app-ember-v2/helpers/xor.js","web-app-ember-v2/helpers/zero-to-dash.js","web-app-ember-v2/initializers/add-data-role-to-link-to.js","web-app-ember-v2/initializers/app-version.js","web-app-ember-v2/initializers/container-debug-adapter.js","web-app-ember-v2/initializers/ember-concurrency.js","web-app-ember-v2/initializers/ember-data-change-tracker.js","web-app-ember-v2/initializers/ember-data-data-adapter.js","web-app-ember-v2/initializers/ember-data.js","web-app-ember-v2/initializers/ember-form-for-extend.js","web-app-ember-v2/initializers/ember-g-recaptcha.js","web-app-ember-v2/initializers/ember-i18n.js","web-app-ember-v2/initializers/ember-simple-auth.js","web-app-ember-v2/initializers/export-application-global.js","web-app-ember-v2/initializers/form-for-initializer.js","web-app-ember-v2/initializers/i18n.js","web-app-ember-v2/initializers/link-reload.js","web-app-ember-v2/initializers/load-bootstrap-config.js","web-app-ember-v2/initializers/local-storage-adapter.js","web-app-ember-v2/initializers/model-locale.js","web-app-ember-v2/initializers/moment-configuration.js","web-app-ember-v2/initializers/notifications.js","web-app-ember-v2/initializers/object-proxy.js","web-app-ember-v2/initializers/preloader.js","web-app-ember-v2/initializers/pubnub.js","web-app-ember-v2/initializers/reopen-model.js","web-app-ember-v2/initializers/show-notification.js","web-app-ember-v2/initializers/user-preferences.js","web-app-ember-v2/initializers/user-presence.js","web-app-ember-v2/initializers/user-time-session.js","web-app-ember-v2/initializers/viewport-config.js","web-app-ember-v2/instance-initializers/ajax-setup.js","web-app-ember-v2/instance-initializers/ember-data.js","web-app-ember-v2/instance-initializers/ember-i18n.js","web-app-ember-v2/instance-initializers/ember-simple-auth.js","web-app-ember-v2/instance-initializers/raven-setup.js","web-app-ember-v2/instance-initializers/router-service.js","web-app-ember-v2/instance-initializers/rsvp-error-handler.js","web-app-ember-v2/instance-initializers/user-errors-handling-service.js","web-app-ember-v2/instance-initializers/user-presence-service.js","web-app-ember-v2/instance-initializers/user-time-session-service.js","web-app-ember-v2/invitations/confirmation/controller.js","web-app-ember-v2/invitations/confirmation/route.js","web-app-ember-v2/invitations/confirmation/template.js","web-app-ember-v2/locales/en/translations.js","web-app-ember-v2/mixins/autofocus.js","web-app-ember-v2/mixins/buffer-mixin.js","web-app-ember-v2/mixins/buffer.js","web-app-ember-v2/mixins/change-serializer.js","web-app-ember-v2/mixins/current-selectors.js","web-app-ember-v2/mixins/deactivate-route.js","web-app-ember-v2/mixins/download-billing-report-mixin.js","web-app-ember-v2/mixins/filters-for-workspaces.js","web-app-ember-v2/mixins/load-model.js","web-app-ember-v2/mixins/model-validator.js","web-app-ember-v2/mixins/object-validator.js","web-app-ember-v2/mixins/remember-nav-filters-mixin.js","web-app-ember-v2/mixins/restore-route.js","web-app-ember-v2/mixins/role-helper.js","web-app-ember-v2/mixins/server-error-handler-mixin.js","web-app-ember-v2/mixins/spinner.js","web-app-ember-v2/mixins/task-management-route-mixin.js","web-app-ember-v2/mixins/time-session-adapter.js","web-app-ember-v2/mixins/unauthenticated-route-mixin.js","web-app-ember-v2/mixins/user-adapter.js","web-app-ember-v2/mixins/user-changable-route.js","web-app-ember-v2/mixins/user-permissions.js","web-app-ember-v2/mixins/validate-access-route-mixin.js","web-app-ember-v2/models/activitable.js","web-app-ember-v2/models/activity.js","web-app-ember-v2/models/billing-report.js","web-app-ember-v2/models/client.js","web-app-ember-v2/models/commit.js","web-app-ember-v2/models/external-resource.js","web-app-ember-v2/models/external-system.js","web-app-ember-v2/models/invitation.js","web-app-ember-v2/models/presence.js","web-app-ember-v2/models/project-invitation.js","web-app-ember-v2/models/project-role.js","web-app-ember-v2/models/project-setting.js","web-app-ember-v2/models/project-system.js","web-app-ember-v2/models/project.js","web-app-ember-v2/models/report.js","web-app-ember-v2/models/session-type.js","web-app-ember-v2/models/session-typeable.js","web-app-ember-v2/models/summary.js","web-app-ember-v2/models/tag.js","web-app-ember-v2/models/tagable.js","web-app-ember-v2/models/task-summary.js","web-app-ember-v2/models/task-without-activity.js","web-app-ember-v2/models/task.js","web-app-ember-v2/models/time-limit.js","web-app-ember-v2/models/time-limitable.js","web-app-ember-v2/models/time-rounding.js","web-app-ember-v2/models/time-session.js","web-app-ember-v2/models/user-status.js","web-app-ember-v2/models/user.js","web-app-ember-v2/models/workplan-task.js","web-app-ember-v2/models/workplan.js","web-app-ember-v2/models/workspace-invitation.js","web-app-ember-v2/models/workspace-role.js","web-app-ember-v2/models/workspace.js","web-app-ember-v2/modifiers/did-insert.js","web-app-ember-v2/modifiers/did-update.js","web-app-ember-v2/modifiers/focus-trap.js","web-app-ember-v2/modifiers/in-viewport.js","web-app-ember-v2/modifiers/ref.js","web-app-ember-v2/modifiers/will-destroy.js","web-app-ember-v2/password/new/route.js","web-app-ember-v2/password/new/template.js","web-app-ember-v2/password/reset/route.js","web-app-ember-v2/password/reset/template.js","web-app-ember-v2/password/template.js","web-app-ember-v2/route-state/storage.js","web-app-ember-v2/router.js","web-app-ember-v2/routes/application.js","web-app-ember-v2/sanitizers/strict.js","web-app-ember-v2/serializers/-default.js","web-app-ember-v2/serializers/-json-api.js","web-app-ember-v2/serializers/-rest.js","web-app-ember-v2/serializers/project.js","web-app-ember-v2/serializers/task.js","web-app-ember-v2/serializers/time-session.js","web-app-ember-v2/serializers/workspace.js","web-app-ember-v2/services/active-storage.js","web-app-ember-v2/services/ajax.js","web-app-ember-v2/services/clock.js","web-app-ember-v2/services/cookies.js","web-app-ember-v2/services/features.js","web-app-ember-v2/services/gravatar.js","web-app-ember-v2/services/i18n.js","web-app-ember-v2/services/in-viewport.js","web-app-ember-v2/services/infinity.js","web-app-ember-v2/services/moment.js","web-app-ember-v2/services/notifications.js","web-app-ember-v2/services/ongoing-clock.js","web-app-ember-v2/services/ongoing-timer.js","web-app-ember-v2/services/preloaderadjioadho.js","web-app-ember-v2/services/pubnub.js","web-app-ember-v2/services/raven.js","web-app-ember-v2/services/session.js","web-app-ember-v2/services/show-notification.js","web-app-ember-v2/services/store.js","web-app-ember-v2/services/text-measurer.js","web-app-ember-v2/services/update-app.js","web-app-ember-v2/services/user-preferences.js","web-app-ember-v2/services/user-presence.js","web-app-ember-v2/services/user-status.js","web-app-ember-v2/services/user-time-session.js","web-app-ember-v2/session-stores/application.js","web-app-ember-v2/sign-in/route.js","web-app-ember-v2/sign-in/template.js","web-app-ember-v2/sign-up/route.js","web-app-ember-v2/sign-up/template.js","web-app-ember-v2/summary-state/storage.js","web-app-ember-v2/templates/application.js","web-app-ember-v2/templates/components/bs-datetimepicker.js","web-app-ember-v2/templates/components/ember-popper-targeting-parent.js","web-app-ember-v2/templates/components/ember-popper.js","web-app-ember-v2/transforms/boolean.js","web-app-ember-v2/transforms/date.js","web-app-ember-v2/transforms/json.js","web-app-ember-v2/transforms/number.js","web-app-ember-v2/transforms/object.js","web-app-ember-v2/transforms/string.js","web-app-ember-v2/utils/changeset-builder.js","web-app-ember-v2/utils/file.js","web-app-ember-v2/utils/general.js","web-app-ember-v2/utils/i18n/compile-template.js","web-app-ember-v2/utils/i18n/missing-message.js","web-app-ember-v2/validations/time-session.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(\"web-app-ember-v2/adapters/-json-api\", [\"exports\", \"@ember-data/adapter/json-api\"], function (_exports, _jsonApi) {\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 _jsonApi.default;\n    }\n  });\n});","define(\"web-app-ember-v2/adapters/activity\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForQuery(query) {\n      const workspaceId = query.workspace_id;\n      delete query.workspace_id;\n      return `${this.host}/${this.namespace}/workspaces/${workspaceId}/activities`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/application\", [\"exports\", \"ember-data\", \"web-app-ember-v2/config/environment\", \"ember-simple-auth/mixins/data-adapter-mixin\"], function (_exports, _emberData, _environment, _dataAdapterMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.JSONAPIAdapter.extend(_dataAdapterMixin.default, {\n    router: Ember.inject.service(),\n    showNotification: Ember.inject.service(),\n    i18n: Ember.inject.service(),\n    namespace: 'api',\n    host: _environment.default.APP.backendUrl,\n    headers: Object.freeze({\n      'Accept': \"application/vnd.web_app+json; version=1\"\n    }),\n    authorizer: 'authorizer:application',\n\n    buildNestedUrl(parents, model, suffix = '') {\n      const host = this.get('host');\n      const prefix = this.urlPrefix();\n      let url = Ember.makeArray(parents).map(parent => {\n        return this.pathForModel(parent.content);\n      });\n      url.push(this.pathForModel(model));\n\n      if (prefix) {\n        url.unshift(prefix);\n      }\n\n      if (suffix) {\n        url.push(suffix);\n      }\n\n      url = url.join('/');\n\n      if (!host && url && url.charAt(0) !== '/') {\n        url = '/' + url;\n      }\n\n      return url;\n    },\n\n    pathForModel(model) {\n      const modelName = model.constructor.modelName;\n      let path = Ember.makeArray(this.pathForType(modelName));\n\n      if (!model.get('isNew')) {\n        path.push(encodeURIComponent(model.get('id')));\n      }\n\n      return path.join('/');\n    },\n\n    handleResponse(status) {\n      if (status >= 500) {\n        this.get('showNotification').call('error', this.get('i18n').t('notifications.errors.service-unavailable'));\n        return;\n      }\n\n      if (status === 401) {\n        this.get('router').transitionTo('sign-in');\n      }\n\n      if (status === 403 || status === 404) {\n        return;\n      }\n\n      return this._super(...arguments);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/billing-report\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForQuery(query) {\n      const workspaceId = query.workspaceId;\n      delete query.workspaceId;\n      return `${this.host}/${this.namespace}/workspaces/${workspaceId}/billing-reports`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/invitation\", [\"exports\", \"web-app-ember-v2/adapters/application\", \"ember-get-config\", \"jquery\"], function (_exports, _application, _emberGetConfig, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    session: Ember.inject.service(),\n\n    resend(invitation) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'PATCH',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/invitations/' + invitation.id + '/resend',\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/presence\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForQueryRecord(query) {\n      const userId = query.userId;\n      const workspaceId = query.workspaceId;\n      delete query.userId;\n      delete query.workspaceId;\n      return `${this.host}/${this.namespace}/workspaces/${workspaceId}/presences/${userId}`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/project\", [\"exports\", \"web-app-ember-v2/adapters/application\", \"ember-get-config\", \"jquery\"], function (_exports, _application, _emberGetConfig, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    session: Ember.inject.service(),\n\n    deleteMember(member, project) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'DELETE',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/projects/' + project.id + '/users/' + member.id,\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    updateMember(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'PUT',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/projects/' + data.project + '/users/' + data.user_id,\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    inviteMembers(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'POST',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/project-invitations',\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    discard(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'DELETE',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/projects/' + data.id,\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/session-type\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForQuery(query) {\n      const scope = query.workspaceId ? 'workspaces' : 'projects';\n      const scopeId = query.workspaceId ? query.workspaceId : query.projectId;\n      delete query.workspaceId;\n      delete query.projectId;\n      return `${this.host}/${this.namespace}/${scope}/${scopeId}/session-types`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/summary\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    submit(id, snapshot) {\n      return this.ajax(this.urlForSubmitRecord(id, snapshot), 'PATCH').then(({\n        data\n      }) => {\n        return this.store.push(this.store.normalize('summary', data));\n      });\n    },\n\n    urlForCreateRecord(_modelName, snapshot) {\n      const {\n        record\n      } = snapshot;\n      return this.buildNestedUrl(record.get('project'), record);\n    },\n\n    urlForUpdateRecord(_id, _modelName, snapshot) {\n      const {\n        record\n      } = snapshot;\n      return this.buildNestedUrl(record.get('project'), record);\n    },\n\n    urlForSubmitRecord(id, snapshot) {\n      return `${this.buildURL('summary', id, snapshot, 'updateRecord')}/submit`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/tag\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForQuery(query) {\n      let scope;\n\n      if (query.workspaceId) {\n        scope = 'workspaces';\n      } else if (query.projectId) {\n        scope = 'projects';\n      }\n\n      const scopeId = query.workspaceId || query.projectId;\n      delete query.workspaceId;\n      delete query.projectId;\n      return `${this.host}/${this.namespace}/${scope}/${scopeId}/tags`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/task-summary\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForQuery(query) {\n      const workspaceId = query.workspace_id;\n      delete query.workspace_id;\n      return `${this.host}/${this.namespace}/workspaces/${workspaceId}/task-summaries`;\n    },\n\n    urlForQueryRecord(query) {\n      const workspaceId = query.workspace_id;\n      const taskId = query.task_id;\n      delete query.workspace_id;\n      delete query.task_id;\n      return `${this.host}/${this.namespace}/workspaces/${workspaceId}/task-summaries/${taskId}`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/task-without-activity\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForQuery(query) {\n      const projectId = query.project_id;\n      delete query.project_id;\n      return `${this.host}/${this.namespace}/projects/${projectId}/tasks-without-activity`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/task\", [\"exports\", \"web-app-ember-v2/adapters/application\", \"ember-get-config\", \"jquery\"], function (_exports, _application, _emberGetConfig, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    session: Ember.inject.service(),\n\n    urlForQuery(query) {\n      if (query.inactive) {\n        return this.urlForInactiveQuery(query);\n      } else {\n        return `${this.host}/${this.namespace}/tasks`;\n      }\n    },\n\n    urlForInactiveQuery(query) {\n      const projectId = query.project_id;\n      delete query.inactive;\n      delete query.project_id;\n      return `${this.host}/${this.namespace}/projects/${projectId}/tasks/inactive`;\n    },\n\n    urlForCreateRecord(_modelName, snapshot) {\n      const {\n        record\n      } = snapshot;\n      return this.buildNestedUrl(record.get('project'), record);\n    },\n\n    moveToProject(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'POST',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/tasks/' + data.task_id + '/move',\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    merge(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'POST',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/tasks/' + data.id + '/merge',\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/time-limit\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForCreateRecord(_modelName, snapshot) {\n      const {\n        record\n      } = snapshot;\n      return this.buildNestedUrl(record.get('project'), record);\n    },\n\n    urlForUpdateRecord(_id, _modelName, snapshot) {\n      const {\n        record\n      } = snapshot;\n      return this.buildNestedUrl(record.get('project'), record);\n    },\n\n    urlForDeleteRecord(_id, _modelName, snapshot) {\n      const {\n        record\n      } = snapshot;\n      return this.buildNestedUrl(record.get('project'), record);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/time-session\", [\"exports\", \"web-app-ember-v2/adapters/application\", \"web-app-ember-v2/mixins/time-session-adapter\"], function (_exports, _application, _timeSessionAdapter) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend(_timeSessionAdapter.default);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/user-status\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForQueryRecord(query) {\n      const userStatusId = query.userStatusId;\n      const workspaceId = query.workspaceId;\n      delete query.userStatusId;\n      delete query.workspaceId;\n      return `${this.host}/${this.namespace}/workspaces/${workspaceId}/user-statuses/${userStatusId}`;\n    },\n\n    urlForQuery(query) {\n      const workspaceId = query.workspace_id;\n      delete query.workspace_id;\n      return `${this.host}/${this.namespace}/workspaces/${workspaceId}/user-statuses`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/user\", [\"exports\", \"web-app-ember-v2/adapters/application\", \"web-app-ember-v2/mixins/user-adapter\", \"ember-get-config\", \"jquery\"], function (_exports, _application, _userAdapter, _emberGetConfig, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend(_userAdapter.default, {\n    store: Ember.inject.service(),\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    ajaxService: Ember.inject.service('ajax'),\n\n    urlForFindRecord(query) {\n      const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n\n      if (workspaceId) {\n        return `${this.host}/${this.namespace}/workspaces/${workspaceId}/users/${query}`;\n      } else {\n        return `${this.host}/${this.namespace}/current-user`;\n      }\n    },\n\n    updateMember(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'PUT',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/users/' + data.data.attributes.user_id,\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    hideCrxInfo() {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'POST',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/user_preferences/hide_crx_info',\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    starProject(projectId) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'POST',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/user_preferences/starred-projects',\n            headers: {\n              Authorization: headerValue\n            },\n            data: {\n              id: projectId\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    unstarProject(projectId) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'DELETE',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + `/api/user_preferences/starred-projects/${projectId}`,\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    setAvatarPreference(avatarPreference, avatarSignedId = null) {\n      return this.get('ajaxService').put('/api/user_preferences/avatars', {\n        data: {\n          preference: avatarPreference,\n          signed_id: avatarSignedId\n        }\n      }).then(result => {\n        this.get('store').pushPayload(result);\n        return result;\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/workplan-task\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    urlForCreateRecord(_modelName, snapshot) {\n      const {\n        record\n      } = snapshot;\n      return this.buildNestedUrl(record.get('workplan'), record);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/workplan\", [\"exports\", \"web-app-ember-v2/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    submit(workplan) {\n      return this.ajax(this.urlForSubmitRecord(workplan), 'PATCH').then(({\n        data\n      }) => {\n        return this.store.push(this.store.normalize('workplan', data));\n      });\n    },\n\n    urlForCreateRecord(_modelName, snapshot) {\n      const {\n        record\n      } = snapshot;\n      return this.buildNestedUrl(record.get('project'), record);\n    },\n\n    urlForSubmitRecord(workplan) {\n      const {\n        id,\n        constructor: {\n          modelName\n        }\n      } = workplan;\n      return `${this.buildURL(modelName, id)}/submit`;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/adapters/workspace\", [\"exports\", \"web-app-ember-v2/adapters/application\", \"ember-get-config\", \"jquery\"], function (_exports, _application, _emberGetConfig, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    session: Ember.inject.service(),\n\n    deleteMember(member, workspace) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'DELETE',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/workspaces/' + workspace.id + '/users/' + member.id,\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    updateMember(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'PUT',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/workspaces/' + data.workspace + '/users/' + data.user_id,\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    assignMemberToProject(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'POST',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/workspaces/' + data.workspace + '/users/' + data.user_id + '/assign-to-project/',\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    inviteMembers(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'POST',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/workspace-invitations',\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    },\n\n    discard(data) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'DELETE',\n            dataType: 'json',\n            url: _emberGetConfig.default.APP.backendUrl + '/api/workspaces/' + data.id,\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(response => {\n            reject(response);\n          });\n        });\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/app\", [\"exports\", \"ember-resolver\", \"ember-load-initializers\", \"web-app-ember-v2/config/environment\"], function (_exports, _emberResolver, _emberLoadInitializers, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  class App extends Ember.Application {\n    constructor(...args) {\n      super(...args);\n\n      _defineProperty(this, \"modulePrefix\", _environment.default.modulePrefix);\n\n      _defineProperty(this, \"podModulePrefix\", _environment.default.podModulePrefix);\n\n      _defineProperty(this, \"Resolver\", _emberResolver.default);\n    }\n\n  }\n\n  _exports.default = App;\n  (0, _emberLoadInitializers.default)(App, _environment.default.modulePrefix);\n});","define(\"web-app-ember-v2/application/authorizer\", [\"exports\", \"ember-simple-auth/authorizers/oauth2-bearer\"], function (_exports, _oauth2Bearer) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _oauth2Bearer.default.extend();\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/application/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    session: Ember.inject.service(),\n    updateApp: Ember.inject.service(),\n    authenticated: Ember.computed.alias('session.isAuthenticated'),\n\n    init() {\n      this._super(...arguments);\n\n      this.get('updateApp').watch();\n    },\n\n    actions: {\n      cancelReload() {\n        this.set('reload', false);\n      },\n\n      performReload() {\n        window.location.reload();\n      }\n\n    },\n    reload: Ember.computed.oneWay('updateApp.outdated')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/application/route\", [\"exports\", \"ember-simple-auth/mixins/application-route-mixin\"], function (_exports, _applicationRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_applicationRouteMixin.default, {\n    preloader: Ember.inject.service('preloader'),\n    pubnub: Ember.inject.service(),\n    session: Ember.inject.service(),\n\n    beforeModel(transition) {\n      const result = this._super(...arguments);\n\n      if (transition.isAborted) {\n        return result;\n      }\n\n      if (this.get('session.isAuthenticated')) {\n        this.get('pubnub').connect();\n      }\n    },\n\n    actions: {\n      didTransition() {\n        this.get('preloader').removePreloader(250);\n      },\n\n      error: function (error) {\n        const workspaceId = this.store.peekAll('workspace').get('firstObject.id');\n        const currentUserId = this.get('userPreferences.currentUser.id');\n\n        if (error === undefined) {\n          // for example when server is not running\n          // it's not possible to showNotification because page won't render so we show an alert instead\n          alert(this.get('i18n').t('notifications.errors.backend-error'));\n        } else if (error.status === 403) {\n          let errorMessage = this.get('i18n').t('notifications.user.membership.disabled');\n          this.get('controller').showNotification.call('error', errorMessage);\n          this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspaceId, \"all\", currentUserId);\n        } else if (error.status === undefined) {\n          let errorObject = (error.errors || [])[0];\n\n          if (Ember.isEmpty(errorObject)) {\n            return true;\n          }\n\n          this._handleBackendErrors(errorObject);\n        } else {\n          return true;\n        }\n      }\n    },\n\n    _handleBackendErrors(errorObject) {\n      let message;\n      const errorDetail = errorObject.detail;\n      const workspaceId = this.store.peekAll('workspace').get('firstObject.id');\n      const currentUserId = this.get('userPreferences.currentUser.id');\n\n      if (errorObject.status === \"503\") {\n        message = this.get('i18n').t(`notifications.errors.service-unavailable`);\n      } else if (errorObject.status === \"403\" || errorDetail === \"Access denied\") {\n        message = this.get('i18n').t('notifications.errors.access-denied');\n      } else {\n        message = this.get('i18n').t(`notifications.errors.backend-error`);\n      }\n\n      this.controllerFor('application').showNotification.call('error', message);\n      this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspaceId, \"all\", currentUserId);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/application/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"XPPQ6TWD\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"application\\\"],[12],[6,[37,6],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[34,4]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"container-fluid\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"c-notification__container\\\"],[12],[1,[34,7]],[13],[13],[1,[30,[36,2],[[30,[36,8],null,null]],null]],[6,[37,10],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,9],[30,[36,3],[[32,0],\\\"cancelReload\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[30,[36,1],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/application/template.hbs' @ L1:C267) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"notifications.version.title\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,2],[[30,[36,1],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/application/template.hbs' @ L1:C365) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"notifications.version.text\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 text-right\\\"],[12],[11,\\\"button\\\"],[24,0,\\\"btn btn-default\\\"],[4,[38,3],[[32,0],\\\"cancelReload\\\"],null],[12],[1,[30,[36,0],[\\\"notifications.version.cancel\\\"],null]],[13],[11,\\\"button\\\"],[24,0,\\\"btn btn-primary\\\"],[4,[38,3],[[32,0],\\\"performReload\\\"],null],[12],[1,[30,[36,0],[\\\"notifications.version.reload\\\"],null]],[13],[13],[13]],\\\"parameters\\\":[1]}]]],[1,[30,[36,2],[[30,[36,8],[\\\"modal\\\"],null]],null]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"public-nav-bar\\\",\\\"authenticated\\\",\\\"unless\\\",\\\"notification-container\\\",\\\"-outlet\\\",\\\"reload\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/application/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    userPreferences: Ember.inject.service(),\n    canReadMemberStatuses: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.permissions.read-members-statuses');\n    }),\n    clients: Ember.computed.oneWay('userPreferences.currentWorkspaceFilter.clients'),\n    actions: {\n      cancel() {\n        this.get('newProject').unloadRecord();\n      },\n\n      createClient(clientName) {\n        const currentWorkspace = this.userPreferences.get('currentWorkspaceFilter');\n        const client = this.get('store').createRecord('client', {\n          name: clientName,\n          workspace: currentWorkspace\n        });\n        return client.save().then(newClient => {\n          this.get('clients').pushObject(newClient);\n          return newClient;\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/preferences/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    session: Ember.inject.service()\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/preferences/route\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend({\n    userPreferences: Ember.inject.service(),\n    showNotification: Ember.inject.service(),\n\n    model() {\n      return Ember.RSVP.hash({\n        currentUser: this.userPreferences.getCurrentUser()\n      });\n    },\n\n    actions: {\n      updateMember(member) {\n        const data = {\n          data: {\n            attributes: {\n              user_id: member.id,\n              tasks_duration_format_minutes: member.get('tasksDurationFormatMinutes'),\n              stats_duration_format_minutes: member.get('statsDurationFormatMinutes'),\n              timezone: member.get('timezone'),\n              date_format: member.get('dateFormat')\n            }\n          }\n        };\n        member.updateMember(data).then(response => {\n          this.store.pushPayload('user', response);\n          this.get('showNotification').call('success', this.get('i18n').t('member.member-has-been-updated').string);\n        }).catch(() => {\n          this.get('showNotification').call('error', this.get('i18n').t('notifications.errors.backend-error'));\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/preferences/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"nM7/roIu\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"main-content-inner container\\\"],[12],[10,\\\"h2\\\"],[12],[1,[30,[36,0],[\\\"user-preferences-form.title\\\"],null]],[13],[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12 personal-info\\\"],[12],[1,[30,[36,3],null,[[\\\"model\\\",\\\"updateMember\\\"],[[35,2,[\\\"currentUser\\\"]],[30,[36,1],[\\\"updateMember\\\"],null]]]]],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"route-action\\\",\\\"model\\\",\\\"user-preferences-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/preferences/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/profile/controller\", [\"exports\", \"ember-get-config\"], function (_exports, _emberGetConfig) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    session: Ember.inject.service(),\n    securityUrl: _emberGetConfig.default.APP.urls.security,\n    access_token: Ember.computed(function () {\n      return this.get('session.store')._lastData.authenticated.access_token;\n    }),\n    actions: {\n      setLoader(state) {\n        this.set(\"currentlyLoading\", state);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/profile/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/mixins/remember-nav-filters-mixin\"], function (_exports, _serverErrorHandlerMixin, _rememberNavFiltersMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_serverErrorHandlerMixin.default, _rememberNavFiltersMixin.default, {\n    userPreferences: Ember.inject.service(),\n    showNotification: Ember.inject.service(),\n\n    model() {\n      return this.userPreferences.getCurrentUser();\n    },\n\n    actions: {\n      updateMember(member) {\n        const data = {\n          data: {\n            attributes: {\n              user_id: member.id,\n              'first-name': member.get('firstName'),\n              'last-name': member.get('lastName'),\n              email: member.get('email')\n            }\n          }\n        };\n        const dateFormatChanged = Ember.isPresent(member.changedAttributes()['dateFormat']);\n        member.updateMember(data).then(response => {\n          this.store.pushPayload('user', response);\n          this.get('showNotification').call('success', this.get('i18n').t('member.member-has-been-updated').string);\n\n          if (dateFormatChanged) {\n            Ember.run.later(this, function () {\n              location.reload(true);\n            }, 1000);\n          }\n        }).catch(response => {\n          this.userPreferences.getCurrentUser().rollbackAttributes();\n\n          for (let error of response.responseJSON.errors) {\n            this.get('showNotification').call('error', error.detail);\n          }\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/profile/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"d/qFslAm\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"main-content-inner container\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h2\\\"],[12],[1,[30,[36,0],[\\\"profile-page.edit-profile\\\"],null]],[13],[10,\\\"hr\\\"],[12],[13],[6,[37,2],[[35,1]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"stats-loader\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"preloader-fade\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"preloader\\\"],[12],[13],[13],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[15,0,[31,[[30,[36,2],[[35,1],\\\"hidden\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-3\\\"],[12],[1,[30,[36,4],null,[[\\\"setLoader\\\"],[[30,[36,3],[[32,0],\\\"setLoader\\\"],null]]]]],[10,\\\"div\\\"],[14,0,\\\"profile-security-link\\\"],[12],[6,[37,5],null,[[\\\"route\\\"],[\\\"authenticated.security\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-lock\\\"],[12],[13],[1,[30,[36,0],[\\\"profile-page.change-password\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-9 personal-info\\\"],[12],[1,[30,[36,8],null,[[\\\"model\\\",\\\"updateMember\\\"],[[35,7],[30,[36,6],[\\\"updateMember\\\"],null]]]]],[13],[13],[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12 personal-info\\\"],[12],[2,\\\"Access token: \\\"],[1,[34,9]],[13],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"currentlyLoading\\\",\\\"if\\\",\\\"action\\\",\\\"edit-profile-avatar\\\",\\\"link-to\\\",\\\"route-action\\\",\\\"model\\\",\\\"edit-profile-form\\\",\\\"access_token\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/profile/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/reports/new/controller\", [\"exports\", \"web-app-ember-v2/config/environment\", \"moment\", \"jquery\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _environment, _moment, _jquery, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend(_spinner.default, {\n    session: Ember.inject.service(),\n    modalOpen: false,\n    presenceActivity: true,\n    activityTime: true,\n    externalSystemWithTask: true,\n    dateLimit: Object.freeze({\n      days: 31\n    }),\n    formats: Object.freeze(['XLS', 'CSV', 'TXT']),\n    dateFormatOptions: Ember.computed.alias('userPreferences.dateFormatOptions'),\n    selectedDateFormat: Ember.computed.alias('userPreferences.currentDateFormat'),\n    actions: {\n      download(user, projectId, workspaceId, startDate, endDate) {\n        if (this.saveBtnDisabled) return;\n        let url;\n        this.set(\"saveBtnDisabled\", true);\n        this.showSpinner();\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          const token = headerValue.split(' ').get('lastObject');\n\n          const timezone = _moment.default.tz.guess();\n\n          const format = this.get('selectedFormat').toLowerCase();\n          const presenceActivity = this.get('presenceActivity');\n          const activityTime = this.get('activityTime');\n          const externalSystemWithTask = this.get('externalSystemWithTask');\n          const selectedDateFormat = this.get('selectedDateFormat').value;\n          const reportParams = [`user_id=${user.get('id')}`, `start_date=${startDate}`, `end_date=${endDate}`, `timezone=${timezone}`, `include_presence_activity=${presenceActivity}`, `include_activity_time=${activityTime}`, `include_external_system_with_task=${externalSystemWithTask}`, `format=${format}`, `date_format=${selectedDateFormat}`, `workspace_id=${workspaceId}`].join('&');\n\n          if (Ember.isPresent(projectId)) {\n            url = `${_environment.default.APP.backendUrl}/projects/${projectId}/report.${format}?${reportParams}`;\n          } else {\n            url = `${_environment.default.APP.backendUrl}/workspaces/${workspaceId}/report.${format}?${reportParams}`;\n          }\n\n          let form = (0, _jquery.default)(`<form action=\"${url}\" method=\"POST\"><input type=\"hidden\" name=\"access_token\" value=\"${token}\" /></form>`);\n          (0, _jquery.default)('body').append(form);\n          form.submit();\n          form.remove();\n          this.set(\"saveBtnDisabled\", false);\n          this.hideSpinner();\n        });\n      },\n\n      cancel() {\n        (0, _jquery.default)('.daterangepicker').hide();\n        this.set('modalOpen', false);\n        this.send('closeModal');\n      },\n\n      setDateRange(start, end) {\n        this.setProperties({\n          startDate: start,\n          endDate: end\n        });\n      },\n\n      selectDateFormat(dateFormatValue) {\n        this.set('selectedDateFormat', dateFormatValue);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/reports/new/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"rKbc/f4G\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"dateFormat\\\",\\\"report\\\"],\\\"statements\\\":[[6,[37,26],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,25],[30,[36,2],[[32,0],\\\"cancel\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,20],[[30,[36,19],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/authenticated/reports/new/template.hbs' @ L1:C69) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title report\\\"],[12],[1,[30,[36,8],[\\\"authenticated.activity.download-report\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,20],[[30,[36,19],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/authenticated/reports/new/template.hbs' @ L1:C185) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"alert alert-warning\\\"],[12],[1,[34,0]],[13]],\\\"parameters\\\":[]}]]],[1,[30,[36,7],null,[[\\\"firstDay\\\",\\\"ranges\\\",\\\"dateLimit\\\",\\\"start\\\",\\\"end\\\",\\\"applyAction\\\",\\\"alwaysShowCalendars\\\"],[1,[30,[36,6],null,null],[35,5],[35,4],[35,3],[30,[36,2],[[32,0],\\\"setDateRange\\\"],null],true]]]],[10,\\\"div\\\"],[14,0,\\\"activity-report-options\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,8],[\\\"authenticated.reports.new.options\\\"],null]],[13],[10,\\\"div\\\"],[14,\\\"data-test-activity-download-report-modal-include-presence-activity\\\",\\\"\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[30,[36,10],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\"],[\\\"checkbox\\\",[35,9],\\\"include-presence-activity\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"include-presence-activity\\\"],[12],[1,[30,[36,8],[\\\"authenticated.reports.new.include-presence-activity\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,\\\"data-test-activity-download-report-modal-include-activity-time\\\",\\\"\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[30,[36,10],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\"],[\\\"checkbox\\\",[35,11],\\\"include-activity-time\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"include-activity-time\\\"],[12],[1,[30,[36,8],[\\\"authenticated.reports.new.include-activity-time\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,\\\"data-test-activity-download-report-modal-include-external-system-links\\\",\\\"\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[30,[36,10],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\"],[\\\"checkbox\\\",[35,12],\\\"include-external-system-with-task\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"include-external-system-with-task\\\"],[12],[1,[30,[36,8],[\\\"authenticated.reports.new.include-external-system-with-task\\\"],null]],[13],[13],[13],[10,\\\"h5\\\"],[12],[1,[30,[36,8],[\\\"authenticated.reports.new.file-format\\\"],null]],[13],[6,[37,16],null,[[\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"searchEnabled\\\",\\\"class\\\",\\\"name\\\",\\\"onchange\\\"],[[30,[36,8],[\\\"authenticated.reports.new.file-formats\\\"],null],[35,15],[35,13],false,\\\"form-control\\\",\\\"report[format]\\\",[30,[36,2],[[32,0],[30,[36,14],[[35,13]],null]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,3]]],\\\"parameters\\\":[3]}]]],[10,\\\"h5\\\"],[12],[1,[30,[36,8],[\\\"authenticated.reports.new.date-format\\\"],null]],[13],[6,[37,16],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchEnabled\\\",\\\"searchField\\\"],[[35,18],[35,17],[30,[36,2],[[32,0],\\\"selectDateFormat\\\"],null],false,\\\"label\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"label\\\"]]]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[11,\\\"a\\\"],[24,\\\"data-test-activity-download-report-modal-cancel\\\",\\\"\\\"],[24,0,\\\"btn btn-default\\\"],[4,[38,2],[[32,0],\\\"cancel\\\"],null],[12],[1,[30,[36,8],[\\\"modal.button.cancel\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[11,\\\"a\\\"],[16,\\\"disabled\\\",[34,21]],[24,\\\"data-test-activity-download-report-modal-download\\\",\\\"\\\"],[24,0,\\\"btn btn-primary\\\"],[4,[38,2],[[32,0],\\\"download\\\",[35,24],[35,23],[35,22],[35,4],[35,3]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[1,[30,[36,8],[\\\"authenticated.reports.new.download\\\"],null]],[13],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"error\\\",\\\"if\\\",\\\"action\\\",\\\"endDate\\\",\\\"startDate\\\",\\\"dateLimit\\\",\\\"download-report-date-picker-ranges\\\",\\\"date-range-picker\\\",\\\"t\\\",\\\"presenceActivity\\\",\\\"input\\\",\\\"activityTime\\\",\\\"externalSystemWithTask\\\",\\\"selectedFormat\\\",\\\"mut\\\",\\\"formats\\\",\\\"power-select\\\",\\\"selectedDateFormat\\\",\\\"dateFormatOptions\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"saveBtnDisabled\\\",\\\"workspaceId\\\",\\\"projectId\\\",\\\"user\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/reports/new/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/route\", [\"exports\", \"ember-simple-auth/mixins/authenticated-route-mixin\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/authenticated/time-sessions/actions_mixin\", \"jquery\", \"web-app-ember-v2/config/environment\", \"ember-keyboard-shortcuts\", \"moment\"], function (_exports, _authenticatedRouteMixin, _serverErrorHandlerMixin, _actions_mixin, _jquery, _environment, _emberKeyboardShortcuts, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_authenticatedRouteMixin.default, _serverErrorHandlerMixin.default, _actions_mixin.default, {\n    router: Ember.inject.service(),\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    userStatus: Ember.inject.service(),\n    userTimeSessionService: Ember.inject.service('user-time-session'),\n\n    beforeModel(transition) {\n      this.set('session.attemptedTransition', transition);\n\n      const result = this._super(transition);\n\n      if (transition.isAborted) {\n        return result;\n      }\n\n      return this._setupPermissions();\n    },\n\n    model() {\n      return Ember.RSVP.hash({\n        workspaces: this.store.findAll('workspace'),\n        user: this.get('userPreferences').getCurrentUser(),\n        externalSystems: this.get('store').findAll('external-system')\n      });\n    },\n\n    redirect(model, transition) {\n      const rootRoute = transition.targetName === 'authenticated.index';\n      const navigatedViaAddressBar = Ember.isEmpty(transition.from);\n\n      if (rootRoute || navigatedViaAddressBar) {\n        const currentUser = this.get('userPreferences').getCurrentUser();\n        currentUser.get('status.timeSession').then(latestTimeSession => {\n          if (latestTimeSession && latestTimeSession.get('isOngoing') || rootRoute) {\n            const targetWorkspaceId = transition.routeInfos.find(route => route.name === \"authenticated.workspaces.show\")?.params?.workspace_id;\n            const desiredWorkspaceId = currentUser.get('latestActiveWorkspaceId') || this.store.peekAll('workspace').get('firstObject.id');\n\n            if (targetWorkspaceId !== desiredWorkspaceId) {\n              this.transitionTo('authenticated.workspaces.show.projects.show.activity', desiredWorkspaceId, 'all', currentUser.id);\n            }\n          }\n        });\n      }\n    },\n\n    activate() {\n      this.set(\"keyboardShortcuts\", {\n        'n': {\n          action: 'handleKeyNShortcut',\n          global: false\n        },\n        'd': {\n          action: 'handleKeyDShortcut',\n          global: false\n        }\n      });\n      (0, _emberKeyboardShortcuts.bindKeyboardShortcuts)(this);\n    },\n\n    deactivate() {\n      (0, _emberKeyboardShortcuts.unbindKeyboardShortcuts)(this);\n    },\n\n    setupController(controller, model) {\n      controller.set('workspaces', model.workspaces);\n      controller.set('user', model.user);\n      controller.set('externalSystems', model.externalSystems);\n    },\n\n    _setupPermissions() {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'GET',\n            dataType: 'json',\n            url: _environment.default.APP.backendUrl + '/api/permissions',\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            Ember.run(() => {\n              this.userPreferences.set('currentUserProjectsWithAdminRole', response.projectsWithAdminRole || []);\n              this.userPreferences.set('currentUserProjectsWithManagerRole', response.projectsWithManagerRole);\n              this.userPreferences.set('currentUserWorkspacesWithAdminRole', response.workspacesWithAdminRole || []);\n              this.userPreferences.set('currentUserWorkspacesWithManagerRole', response.workspacesWithManagerRole);\n              resolve();\n            });\n          }).fail(() => {\n            reject();\n          });\n        });\n      });\n    },\n\n    _fetchExternalSystem() {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'GET',\n            dataType: 'json',\n            url: _environment.default.APP.backendUrl + '/api/external-systems',\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            const externalSystems = response.external_systems.map(system => {\n              return {\n                label: Ember.String.capitalize(system),\n                value: system\n              };\n            });\n            resolve(externalSystems);\n          }).fail(response => {\n            this._showError(response);\n\n            reject();\n          });\n        });\n      });\n    },\n\n    showError(message) {\n      this.showNotification.call('error', message);\n    },\n\n    _stopOngoingTimeSession() {\n      const currentUser = this.get('userPreferences.currentUser');\n      currentUser.get('status.timeSession').then(timeSession => {\n        if (timeSession && timeSession.get('isOngoing')) {\n          timeSession.stop();\n        }\n      });\n    },\n\n    actions: {\n      openReportsModal(user, start, end) {\n        const currentProjectId = this.get('userPreferences.currentProject.id');\n        const currentWorkspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n        let startDate, endDate;\n        let controller = this.controllerFor('authenticated.reports.new');\n\n        if (Ember.isPresent(start)) {\n          startDate = start;\n        } else {\n          startDate = (0, _moment.default)().format(\"YYYY-MM-DD\");\n        }\n\n        if (Ember.isPresent(end)) {\n          endDate = end;\n        } else {\n          endDate = startDate;\n        }\n\n        controller.setProperties({\n          'modalOpen': true,\n          'workspaceId': currentWorkspaceId,\n          'projectId': currentProjectId,\n          'user': user,\n          'selectedFormat': 'XLS',\n          'startDate': startDate,\n          'endDate': endDate\n        });\n        this.render('authenticated/reports/new', {\n          into: 'application',\n          outlet: 'modal',\n          controller: controller\n        });\n      },\n\n      handleKeyNShortcut() {\n        const newSessionModalCtrl = this.controllerFor('authenticated.time-sessions.new');\n        const editSessionModalCtrl = this.controllerFor('authenticated.time-sessions.edit');\n        const duplicateSessionModalCtrl = this.controllerFor('authenticated.time-sessions.duplicate');\n\n        if (newSessionModalCtrl.modalOpen || editSessionModalCtrl.modalOpen || duplicateSessionModalCtrl.modalOpen) {\n          return;\n        }\n\n        this.actions.newTimeSession.call(this);\n      },\n\n      handleKeyDShortcut() {\n        const newSessionModalCtrl = this.controllerFor('authenticated.time-sessions.new');\n        if (!newSessionModalCtrl.modalOpen) return;\n        const timeSession = newSessionModalCtrl.timeSession;\n        newSessionModalCtrl.actions.cancel.call(newSessionModalCtrl, timeSession);\n      },\n\n      changeWorkspace(workspace, async = false) {\n        this.userPreferences.set('currentWorkspaceFilter', workspace);\n        this.userPreferences.set('currentProject', undefined);\n\n        if (this.userPreferences.getCurrentUser().get('suspendedWorkspaces').includes(workspace.id)) {\n          this.showNotification.call('error', this.get('i18n').t('workspace-team.your-membership-suspended'));\n        }\n\n        const routeName = this.router.get('currentRouteName');\n        const currentUserId = this.get('userPreferences.currentUser.id');\n        !async && this._stopOngoingTimeSession();\n\n        switch (routeName) {\n          case 'authenticated.workspaces.show.projects.show.reports':\n            this.router.transitionTo('authenticated.workspaces.show.projects.show.reports', workspace.id, \"all\", currentUserId);\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.team':\n            this.router.transitionTo('authenticated.workspaces.show.projects.show.team', workspace.id, \"all\");\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.activity':\n            this.router.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace.id, \"all\", currentUserId);\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.tasks.index':\n          case 'authenticated.workspaces.show.projects.show.tasks.show':\n          case 'authenticated.workspaces.show.projects.show.tasks.inactive':\n            this.router.transitionTo('authenticated.workspaces.show.projects.show.tasks.index', workspace.id, \"all\", currentUserId);\n            break;\n\n          case 'authenticated.workspaces.configure':\n            this.router.transitionTo('authenticated.workspaces.configure', workspace.id);\n            break;\n        }\n      },\n\n      changeProject() {\n        const workspace = this.get('userPreferences.currentWorkspaceFilter');\n        const project = this.get('userPreferences.currentProject');\n        const usersIdsForSelectedWorkspaceFilter = this.get('store').peekRecord('workspace', workspace.get('id')).get('users').mapBy('id');\n\n        if (this.get('userPreferences.currentUserFilter.id') === 'all' && Ember.isEmpty(project)) {\n          this.set('userPreferences.currentUserFilter', this.get('userPreferences.currentUser'));\n        }\n\n        const routeName = this.router.currentRouteName;\n        const queryParams = this.queryParams;\n        let currentProjectId;\n\n        if (Ember.isPresent(project)) {\n          currentProjectId = project.id;\n        } else {\n          currentProjectId = \"all\";\n        }\n\n        let correctFilteredUserId;\n\n        if (usersIdsForSelectedWorkspaceFilter.includes(this.get('userPreferences.currentUserFilter.id'))) {\n          correctFilteredUserId = this.get('userPreferences.currentUserFilter.id');\n        } else if (this.get('userPreferences.currentUserFilter.id') === 'all') {\n          correctFilteredUserId = 'all';\n        } else {\n          correctFilteredUserId = this.get('userPreferences.currentUser.id');\n        }\n\n        switch (routeName) {\n          case 'authenticated.workspaces.show.projects.show.reports':\n            // reports\n            this.transitionTo('authenticated.workspaces.show.projects.show.reports', workspace.id, currentProjectId, correctFilteredUserId, {\n              queryParams: queryParams\n            });\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.team':\n            // team\n            this.transitionTo('authenticated.workspaces.show.projects.show.team', workspace.id, currentProjectId);\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.activity':\n            // activity\n            this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace.id, currentProjectId, correctFilteredUserId);\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.tasks.index': // tasks index\n\n          case 'authenticated.workspaces.show.projects.show.tasks.show':\n            // tasks show\n            this.transitionTo('authenticated.workspaces.show.projects.show.tasks.index', workspace.id, currentProjectId, correctFilteredUserId, {\n              queryParams: queryParams\n            });\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.tasks.inactive':\n            // inactive tasks\n            if (currentProjectId === 'all') {\n              this.transitionTo('authenticated.workspaces.show.projects.show.tasks.index', workspace.id, currentProjectId, correctFilteredUserId);\n            } else {\n              this.transitionTo('authenticated.workspaces.show.projects.show.tasks.inactive', workspace.id, currentProjectId);\n            }\n\n            break;\n\n          case 'authenticated.workspaces.show.projects.edit':\n            // edit project\n            if (currentProjectId === 'all') {\n              this.transitionTo('authenticated.workspaces.show.projects.show.team', workspace.id, currentProjectId);\n            } else {\n              this.modelFor('authenticated.workspaces.show.projects.edit').project.rollbackAttributes();\n              this.transitionTo('authenticated.workspaces.show.projects.edit', workspace.id, currentProjectId);\n            }\n\n            break;\n\n          case 'authenticated.workspaces.show.projects.new':\n            // new project\n            if (currentProjectId === 'all') {\n              this.transitionTo('authenticated.workspaces.show.projects.show.team', workspace.id, currentProjectId);\n            } else {\n              this.transitionTo('authenticated.workspaces.show.projects.edit', workspace.id, currentProjectId);\n            }\n\n            break;\n        }\n      },\n\n      openLeaveProjectModal() {\n        let model = this.get('userPreferences.currentProject');\n        let controller = this.controllerFor('authenticated.workspaces.show.projects.leave');\n        controller.set('model', model);\n        this.render('authenticated/workspaces/show/projects/leave', {\n          outlet: 'modal',\n          controller: controller\n        });\n      },\n\n      saveProjectModal(project) {\n        if (project.validate()) {\n          project.saveAndPropagate().then(project => {\n            this.set('userPreferences.currentProject', undefined);\n            this.set('userPreferences.currentProject', project);\n            this.refresh();\n            Ember.run.later(() => {\n              const showNotification = this.get('showNotification');\n              const i18n = this.get('i18n');\n              showNotification.call('success', i18n.t('project-form.project-has-been-updated').string);\n            }, 100);\n          }, response => {\n            this.handleServerErrors(response);\n          });\n        } else {\n          this.showNotification.call('error', this.get('i18n').t('project-form.project-not-valid'));\n        }\n      },\n\n      deleteProjectModal() {\n        let workspace = this.get('userPreferences.currentWorkspaceFilter');\n        let project = this.get('userPreferences.currentProject');\n        const projectSystems = project.get('projectSystems').map(function (projectSystem) {\n          return projectSystem.id;\n        });\n        workspace.removeProject(project).then(() => {\n          projectSystems.forEach(projectSystem => {\n            this.store.peekRecord('projectSystem', projectSystem).unloadRecord();\n          });\n          workspace.propagate();\n          this.set('userPreferences.currentProject', undefined);\n          this.showNotification.call('error', this.get('i18n').t('single-project.project-has-been-deleted').toString());\n        });\n      },\n\n      leaveProject(project) {\n        const currentUser = this.get('userPreferences.currentUser');\n        const showNotification = this.get('showNotification');\n        const i18n = this.get('i18n');\n        project.deleteMember(currentUser, project).then(() => {\n          this.send('closeModal');\n          showNotification.call('success', i18n.t('member.member-has-left-project').string);\n          this.store.unloadRecord(project);\n          Ember.run.next(() => {\n            const workspace = this.get('userPreferences.currentWorkspaceFilter');\n            this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace.get('id'), \"all\", currentUser.get('id'));\n          });\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      },\n\n      // used for refreshing list after time-session remove from /activity\n      deletedTimeSession() {\n        this.refresh();\n        this.renderTemplate();\n      },\n\n      refreshAuthenticatedRoute(callback) {\n        const refreshableRouteNames = ['authenticated.workspaces.show.projects.show.activity', 'authenticated.workspaces.show.projects.show.tasks.index', 'authenticated.workspaces.show.projects.show.reports', 'authenticated.workspaces.show.projects.show.team'];\n\n        if (refreshableRouteNames.includes(this.router.currentRouteName)) {\n          this.refresh().then(callback);\n        }\n      },\n\n      newSummary() {\n        const project = this.get('userPreferences.currentProject');\n        Ember.RSVP.hash({\n          summary: this.store.createRecord('summary', {\n            project\n          }),\n          workspaces: this.modelFor('authenticated').workspaces\n        }).then(model => {\n          let controller = this.controllerFor('authenticated.summaries.new');\n          controller.setProperties({\n            modalOpen: true,\n            summary: model.summary,\n            workspaces: model.workspaces\n          });\n          this.render('authenticated/summaries/new', {\n            into: 'application',\n            outlet: 'modal',\n            controller\n          });\n        });\n      },\n\n      newTask() {\n        const project = this.get('userPreferences.currentProject');\n        const model = {\n          taskToCreate: this.store.createRecord('task', {\n            project\n          }),\n          externalSystems: this.modelFor('authenticated').externalSystems,\n          openTaskModalForm: true\n        };\n        this.render('authenticated/tasks/new', {\n          into: 'application',\n          outlet: 'modal',\n          model\n        });\n      },\n\n      saveTask(task) {\n        return task.save().then(() => {\n          this.showNotification.call('success', this.i18n.t('authenticated.tasks.save-task-success').string);\n          this.refresh();\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      },\n\n      saveSummary(summary) {\n        return summary.save().then(() => {\n          return summary.submit();\n        }).then(() => {\n          let controller = this.controllerFor('authenticated.summaries.new');\n          controller.set('modalOpen', false);\n          this.send('refreshAuthenticatedRoute');\n        }).catch(error => this.handleServerErrors(error));\n      },\n\n      cancelSummary(summary) {\n        if (summary.get('isNew')) {\n          summary.rollbackAttributes();\n        }\n\n        this.send('closeModal');\n      },\n\n      newWorkplan() {\n        const project = this.get('userPreferences.currentProject');\n        const workplan = this.store.createRecord('workplan', {\n          project\n        });\n        let controller = this.controllerFor('authenticated.workplans.new');\n        controller.setProperties({\n          workplan,\n          modalOpen: true\n        });\n        this.render('authenticated/workplans/new', {\n          into: 'application',\n          outlet: 'modal',\n          controller\n        });\n      },\n\n      startOngoingTimeSession(timeSession) {\n        this.get('userTimeSessionService').createTimeSession(timeSession).then(() => {\n          Ember.run.later(() => {\n            const showNotification = this.get('showNotification');\n            const notification = this.get('i18n').t(`${this.routeName}.started`, {\n              name: timeSession.get('task.title')\n            });\n            showNotification.call('success', Ember.String.htmlSafe(notification.string));\n          }, 100);\n          const routeName = this.router.currentRouteName;\n\n          if (routeName !== 'authenticated.workspaces.show.projects.show.activity') {\n            this.send('refreshAuthenticatedRoute');\n          }\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      },\n\n      stopOngoingTimeSession(timeSession) {\n        Ember.RSVP.Promise.resolve(timeSession).then(timeSession => {\n          this.get('userTimeSessionService').stopTimeSession(timeSession).then(response => {\n            timeSession.setProperties({\n              'endedAt': response.get('endedAt')\n            });\n            this.get('userPreferences').reloadCurrentUserLatestTimeSession();\n            this.get('userPreferences').reloadTodayDuration();\n            Ember.run.later(() => {\n              const showNotification = this.get('showNotification');\n              const notification = this.get('i18n').t(`${this.routeName}.stopped`, {\n                name: response.get('task.title')\n              });\n              showNotification.call('success', Ember.String.htmlSafe(notification.string));\n              const routeName = this.router.currentRouteName;\n\n              if (routeName !== 'authenticated.workspaces.show.projects.show.activity') {\n                this.send('refreshAuthenticatedRoute');\n              }\n            }, 100);\n          }, response => {\n            this.handleServerErrors(response);\n            const invalidActivity = this.get('store').peekAll('activity').find(activity => {\n              return activity.get('activitableId') === timeSession.get('id');\n            });\n\n            if (Ember.isPresent(invalidActivity)) {\n              this.get('userStatus').set('currentTimeSession', null);\n              invalidActivity.unloadRecord();\n              timeSession.unloadRecord();\n            }\n\n            this.get('userPreferences').reloadCurrentUserLatestTimeSession();\n            this.get('userPreferences').reloadTodayDuration();\n          });\n        });\n      },\n\n      initializeLeaveWorkspaceModal() {\n        let model = this.get('store').peekRecord('workspace', this.get('userPreferences.workspaceId'));\n        let controller = this.controllerFor('authenticated.workspaces.leave');\n        controller.set('model', model);\n        this.render('authenticated/workspaces/leave', {\n          outlet: 'modal',\n          controller: controller\n        });\n      },\n\n      leaveWorkspace(workspace) {\n        const currentUser = this.get('userPreferences.currentUser');\n        const showNotification = this.get('showNotification');\n        const i18n = this.get('i18n');\n        workspace.deleteMember(currentUser, workspace).then(() => {\n          this.send('closeModal');\n          showNotification.call('success', i18n.t('member.member-has-left-workspace').string);\n          this.store.unloadRecord(workspace);\n          Ember.run.next(() => {\n            const workspaceId = this.store.peekAll('workspace').get('firstObject.id');\n            this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspaceId, \"all\", currentUser.get('id'));\n          });\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      },\n\n      closeModal() {\n        this.disconnectOutlet({\n          outlet: 'modal',\n          parentView: 'application'\n        });\n      },\n\n      gotoCurrentWorkspaceTimeSessions() {\n        const workspace = this.get('userPreferences.currentWorkspaceFilter');\n        this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/security/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    session: Ember.inject.service(),\n    showNotification: Ember.inject.service(),\n    actions: {\n      save() {\n        const model = this.get(\"model\");\n\n        if (!model.get(\"currentPassword\")) {\n          this.get('showNotification').call('error', this.get('i18n').t('security-page.provide-current-password').string);\n        } else if (!model.get(\"password\")) {\n          this.get('showNotification').call('error', this.get('i18n').t('security-page.provide-new-password').string);\n        } else {\n          this.send(\"updatePassword\", model);\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/security/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\"], function (_exports, _serverErrorHandlerMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_serverErrorHandlerMixin.default, {\n    userPreferences: Ember.inject.service(),\n    showNotification: Ember.inject.service(),\n\n    model() {\n      return this.userPreferences.getCurrentUser();\n    },\n\n    afterModel(member) {\n      this.clearInputs(member);\n    },\n\n    clearInputs(member) {\n      member.set('password', '');\n      member.set('passwordConfirmation', '');\n      member.set('currentPassword', '');\n    },\n\n    actions: {\n      updatePassword(member) {\n        const data = {\n          data: {\n            attributes: {\n              user_id: member.id,\n              password: member.get('password'),\n              password_confirmation: member.get('passwordConfirmation'),\n              current_password: member.get('currentPassword')\n            }\n          }\n        };\n        const user = this.userPreferences.getCurrentUser();\n        user.updateMember(data).then(response => {\n          this.store.pushPayload('user', response);\n          this.get('showNotification').call('success', this.get('i18n').t('security-page.password-changed').string, {\n            clearDuration: 120000\n          });\n          this.clearInputs(member);\n        }).catch(response => {\n          for (let error of response.responseJSON.errors) {\n            this.get('showNotification').call('error', error.detail);\n          }\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/security/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"f9rInDHy\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"main-content-inner container\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h2\\\"],[12],[1,[30,[36,0],[\\\"security-page.security\\\"],null]],[13],[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-lg-offset-2 personal-info\\\"],[12],[6,[37,5],[[35,4]],[[\\\"submit\\\",\\\"class\\\"],[[30,[36,3],[[32,0],\\\"save\\\"],null],\\\"form-horizontal\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"input\\\"],[14,5,\\\"display:none;\\\"],[14,4,\\\"text\\\"],[12],[13],[10,\\\"input\\\"],[14,5,\\\"display:none;\\\"],[14,4,\\\"password\\\"],[12],[13],[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/authenticated/security/template.hbs' @ L1:C355) \\\"],null],\\\"currentPassword\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group last-child\\\",[30,[36,0],[\\\"edit-profile-form.current-password\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-12\\\"],[12],[1,[32,4,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,4,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/authenticated/security/template.hbs' @ L1:C548) \\\"],null]],[[\\\"placeholder\\\",\\\"type\\\",\\\"autocomplete\\\",\\\"class\\\"],[[30,[36,0],[\\\"edit-profile-form.current-password\\\"],null],\\\"password\\\",\\\"off\\\",\\\"form-control\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"i\\\"],[12],[1,[30,[36,0],[\\\"edit-profile-form.current-password-notice\\\"],null]],[13],[1,[32,4,[\\\"errors\\\"]]],[13]],\\\"parameters\\\":[4]}]]],[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/authenticated/security/template.hbs' @ L1:C780) \\\"],null],\\\"password\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group\\\",[30,[36,0],[\\\"edit-profile-form.new-password\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-12\\\"],[12],[1,[32,3,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,3,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/authenticated/security/template.hbs' @ L1:C951) \\\"],null]],[[\\\"placeholder\\\",\\\"type\\\",\\\"autocomplete\\\",\\\"class\\\"],[[30,[36,0],[\\\"edit-profile-form.new-password\\\"],null],\\\"password\\\",\\\"off\\\",\\\"form-control\\\"]]]],[1,[32,3,[\\\"errors\\\"]]],[13]],\\\"parameters\\\":[3]}]]],[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/authenticated/security/template.hbs' @ L1:C1109) \\\"],null],\\\"passwordConfirmation\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group\\\",[30,[36,0],[\\\"edit-profile-form.confirm-password\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-12\\\"],[12],[1,[32,2,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,2,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/authenticated/security/template.hbs' @ L1:C1296) \\\"],null]],[[\\\"placeholder\\\",\\\"type\\\",\\\"autocomplete\\\",\\\"class\\\"],[[30,[36,0],[\\\"edit-profile-form.confirm-password\\\"],null],\\\"password\\\",\\\"off\\\",\\\"form-control\\\"]]]],[1,[32,2,[\\\"errors\\\"]]],[13]],\\\"parameters\\\":[2]}]]],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"buttons\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-lg-12\\\"],[12],[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/authenticated/security/template.hbs' @ L1:C1525) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"edit-profile-form.save\\\"],null],\\\"btn btn-primary\\\"]]]],[13],[13],[13]],\\\"parameters\\\":[1]}]]],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"model\\\",\\\"form-for\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/security/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/sign-out/route\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend({\n    session: Ember.inject.service(),\n    showNotification: Ember.inject.service(),\n\n    beforeModel() {\n      this.get('session').invalidate();\n      this.store.unloadAll();\n      this.transitionTo('sign-in');\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/sign-out/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"yepBycK9\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/sign-out/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/summaries/new/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    actions: {\n      cancel(summary) {\n        this.send('cancelSummary', summary);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/summaries/new/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Nu+96qS8\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,9],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,8],[30,[36,1],[[32,0],\\\"cancel\\\",[35,2]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/authenticated/summaries/new/template.hbs' @ L1:C77) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,5],[\\\"summaries-new.new-header\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,6],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/authenticated/summaries/new/template.hbs' @ L1:C172) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,4],null,[[\\\"workspaces\\\",\\\"summary\\\",\\\"cancelSummary\\\",\\\"saveSummary\\\"],[[35,3],[35,2],[30,[36,1],[[32,0],[32,1,[\\\"close\\\"]]],null],[30,[36,0],[\\\"saveSummary\\\"],null]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"action\\\",\\\"summary\\\",\\\"workspaces\\\",\\\"summary-form\\\",\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/summaries/new/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/tasks/new/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"zqAnYlpE\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"task\\\",\\\"externalSystems\\\",\\\"openTaskModalForm\\\",\\\"mode\\\",\\\"saveTask\\\",\\\"cancelAction\\\"],[[35,1,[\\\"taskToCreate\\\"]],[35,1,[\\\"externalSystems\\\"]],[35,1,[\\\"openTaskModalForm\\\"]],\\\"new\\\",[30,[36,0],[\\\"saveTask\\\"],null],[30,[36,0],[\\\"closeModal\\\"],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"model\\\",\\\"task-modal-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/tasks/new/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"C1JRRw0W\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,6],null,[[\\\"workspaces\\\",\\\"user\\\",\\\"timeSessions\\\",\\\"newSessionAction\\\",\\\"newSummaryAction\\\",\\\"newTaskAction\\\",\\\"newWorkplanAction\\\",\\\"resumeAction\\\",\\\"stopAction\\\",\\\"gotoCurrentWorkspaceTimeSessions\\\",\\\"initializeLeaveWorkspaceModal\\\",\\\"externalSystems\\\",\\\"refreshAuthenticatedRoute\\\",\\\"createClient\\\"],[[35,5],[35,4],[35,3],[30,[36,1],[\\\"newTimeSession\\\"],null],[30,[36,1],[\\\"newSummary\\\"],null],[30,[36,1],[\\\"newTask\\\"],null],[30,[36,1],[\\\"newWorkplan\\\"],null],[30,[36,1],[\\\"startOngoingTimeSession\\\"],null],[30,[36,1],[\\\"stopOngoingTimeSession\\\"],null],[30,[36,1],[\\\"gotoCurrentWorkspaceTimeSessions\\\"],null],[30,[36,1],[\\\"initializeLeaveWorkspaceModal\\\"],null],[35,2],[30,[36,1],[\\\"refreshAuthenticatedRoute\\\"],null],[30,[36,0],[[32,0],\\\"createClient\\\"],null]]]]],[10,\\\"div\\\"],[14,0,\\\"container-fluid content\\\"],[12],[1,[30,[36,8],[[30,[36,7],null,null]],null]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"route-action\\\",\\\"externalSystems\\\",\\\"timeSessions\\\",\\\"user\\\",\\\"workspaces\\\",\\\"nav-bar\\\",\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/actions_mixin\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    router: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    userStatus: Ember.inject.service(),\n    userTimeSessionService: Ember.inject.service('user-time-session'),\n    actions: {\n      newTimeSession(task) {\n        let project;\n\n        if (task) {\n          project = this.store.peekRecord('project', task.get('project.id'));\n        } else {\n          project = this.get('userPreferences.currentProject');\n        }\n\n        const workspace = this.get('userPreferences.currentWorkspaceFilter');\n        const projectTags = project ? this.store.query('tag', {\n          projectId: project.get('id')\n        }) : null;\n        let originalWorkspace = null;\n        let projectSessionTypes = null;\n\n        if (project) {\n          originalWorkspace = project.get('originWorkspaceId');\n          projectSessionTypes = this.store.query('session-type', {\n            projectId: project.get('id')\n          });\n        }\n\n        Ember.RSVP.hash({\n          workspaceTags: this.store.query('tag', {\n            workspaceId: workspace.get('id')\n          }),\n          projectTags,\n          projectSessionTypes,\n          workspaceSessionTypes: this.store.query('session-type', {\n            workspaceId: originalWorkspace || workspace.get('id')\n          }),\n          workspaces: this.modelFor('authenticated').workspaces,\n          timeSession: this.store.createRecord('timeSession', {\n            project,\n            task\n          })\n        }).then(model => {\n          let controller = this.controllerFor('authenticated.time-sessions.new');\n          controller.set('workspaces', model.workspaces);\n          controller.set('workspaceSessionTypes', model.workspaceSessionTypes);\n          controller.set('projectSessionTypes', model.projectSessionTypes);\n          controller.set('workspaceTags', model.workspaceTags);\n          controller.set('projectTags', model.projectTags);\n          controller.set('timeSession', model.timeSession);\n          controller.set('modalOpen', true);\n          this.render('authenticated/time-sessions/new', {\n            into: 'application',\n            outlet: 'modal',\n            controller: controller\n          });\n        });\n      },\n\n      saveTimeSession(timeSession) {\n        let startedAt = timeSession.get('startedAt');\n        return this.get('userTimeSessionService').createTimeSession(timeSession).then(response => {\n          const {\n            id\n          } = response;\n          timeSession.get('tags').filterBy('isNew', true).forEach(tag => {\n            timeSession.get('tags').removeObject(tag);\n          });\n          this.get('store').findRecord('time-session', id).then(timeSession => {\n            this.get('userStatus').set('currentTimeSession', timeSession);\n          });\n          let routeActions = [\"new\", \"edit\", \"duplicate\"];\n          routeActions.forEach(function (routeAction) {\n            let controller = this.controllerFor(`authenticated.time-sessions.${routeAction}`);\n            controller.set('modalOpen', false);\n          }.bind(this));\n          this.get('userPreferences').reloadTodayDuration();\n          const routeName = this.router.currentRouteName; // TODO:\n          // Fix reload activities model for time sessions from past when infinityModel will be change\n\n          if (routeName !== 'authenticated.workspaces.show.projects.show.activity' || (0, _moment.default)(startedAt).startOf('minute') < (0, _moment.default)().startOf('minute')) {\n            this.send('refreshAuthenticatedRoute');\n          }\n\n          Ember.run.later(() => {\n            this.showNotification.call('success', this.i18n.t('time-session-form.time-session-has-been-created').string);\n          }, 500);\n        }, response => {\n          if (response.errors) {\n            response.errors.forEach(function (error) {\n              timeSession.addError(error.key, error.message);\n            });\n            this.handleServerErrors(response.errors.filter(e => e.key !== 'overlapping'));\n          }\n        });\n      },\n\n      cancelTimeSession(timeSession) {\n        timeSession.rollback();\n        timeSession.set('canceled', true);\n        this.send('closeModal');\n      },\n\n      edit(timeSession) {\n        const project = timeSession.get('project');\n        const workspace = timeSession.get('workspace');\n        const originalWorkspace = project.get('originWorkspaceId');\n        const projectSessionTypes = project ? this.store.query('session-type', {\n          projectId: project.get('id')\n        }) : null;\n        const projectTags = project ? this.store.query('tag', {\n          projectId: project.get('id')\n        }) : null;\n        Ember.RSVP.hash({\n          timeSession: timeSession,\n          allProjects: this.store.findAll('project'),\n          projectSessionTypes,\n          workspaceSessionTypes: this.store.query('session-type', {\n            workspaceId: originalWorkspace || workspace.get('id')\n          }),\n          workspaceTags: this.store.query('tag', {\n            workspaceId: workspace.get('id')\n          }),\n          projectTags,\n          workspaces: this.modelFor('authenticated').workspaces,\n          tasks: this._findTasks(timeSession.get('id'))\n        }).then(model => {\n          let controller = this.controllerFor('authenticated.time-sessions.edit');\n          controller.setProperties({\n            'workspaceSessionTypes': model.workspaceSessionTypes,\n            'projectSessionTypes': model.projectSessionTypes,\n            'workspaceTags': model.workspaceTags,\n            'projectTags': model.projectTags,\n            'workspaces': model.workspaces,\n            'allProjects': model.allProjects,\n            'timeSession': model.timeSession,\n            'tasks': model.tasks,\n            'modalOpen': true\n          });\n          this.render('authenticated/time-sessions/edit', {\n            into: 'application',\n            outlet: 'modal',\n            controller: controller\n          });\n        });\n      },\n\n      duplicate(timeSession, options) {\n        let params = {\n          id: timeSession.get('id')\n        };\n        const project = timeSession.get('project');\n        const workspace = timeSession.get('workspace');\n        const originalWorkspace = project.get('originWorkspaceId');\n        const projectSessionTypes = project ? this.store.query('session-type', {\n          projectId: project.get('id')\n        }) : null;\n        const projectTags = project ? this.store.query('tag', {\n          projectId: project.get('id')\n        }) : null;\n        Ember.RSVP.hash({\n          timeSession: this._cloneTimeSessionRecord(params),\n          workspaces: this.modelFor('authenticated').workspaces,\n          allProjects: this.store.findAll('project'),\n          projectSessionTypes,\n          workspaceSessionTypes: this.store.query('session-type', {\n            workspaceId: originalWorkspace || workspace.get('id')\n          }),\n          workspaceTags: this.store.query('tag', {\n            workspaceId: workspace.get('id')\n          }),\n          projectTags,\n          tasks: this._findTasks(timeSession.get('id'))\n        }).then(model => {\n          let controller = this.controllerFor('authenticated.time-sessions.duplicate');\n          controller.setProperties({\n            'timeSession': model.timeSession,\n            'timeSessionId': model.timeSessionId,\n            'workspaces': model.workspaces,\n            'allProjects': model.allProjects,\n            'projectSessionTypes': model.projectSessionTypes,\n            'workspaceSessionTypes': model.workspaceSessionTypes,\n            'workspaceTags': model.workspaceTags,\n            'projectTags': model.projectTags,\n            'tasks': model.tasks,\n            'modalOpen': true,\n            'options': options\n          });\n          this.render('authenticated/time-sessions/duplicate', {\n            into: 'application',\n            outlet: 'modal',\n            controller: controller\n          });\n        });\n      },\n\n      confirmSessionDelete(timeSession) {\n        let controller = this.controllerFor('authenticated.time-sessions.destroy');\n        controller.set('timeSessionToDelete', timeSession);\n        controller.set('modalOpen', true);\n        this.render('authenticated/time-sessions/destroy', {\n          into: 'application',\n          outlet: 'modal',\n          controller: controller\n        });\n      }\n\n    },\n\n    _cloneTimeSessionRecord(params) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.store.findRecord('time-session', params.id).then(timeSession => {\n          let duplicatedTimeSession = this.store.createRecord('time-session');\n          duplicatedTimeSession.clonePropertiesFrom(timeSession).then(timeSession => {\n            resolve(timeSession);\n          }, error => {\n            reject(error);\n          });\n          duplicatedTimeSession.set('description', timeSession.get('description'));\n        }, error => {\n          reject(error);\n        });\n      });\n    },\n\n    _findTasks(id) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.store.query('task', {\n          time_session_id: id\n        }).then(tasks => {\n          resolve(tasks);\n        }, function (error) {\n          reject(error);\n        });\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/destroy/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    actions: {\n      deleteSession() {\n        const timeSession = this.get('timeSessionToDelete');\n        Ember.RSVP.Promise.resolve(timeSession).then(timeSession => {\n          timeSession.destroyRecord().then(timeSession => {\n            const activityId = timeSession.belongsToIdByName.activity;\n\n            if (Ember.isPresent(activityId)) {\n              this.store.unloadRecord(this.store.peekRecord('activity', activityId));\n            }\n\n            this.set('modalOpen', false);\n            this.get('userPreferences').reloadCurrentUserLatestTimeSession();\n            this.get('userPreferences').reloadTodayDuration();\n            Ember.run.later(() => {\n              this.showNotification.call('error', this.i18n.t('time-session-form.time-session-has-been-deleted').string);\n            }, 500);\n          }).catch(() => {\n            this.set('modalOpen', false);\n            this.showError(this.i18n.t('notifications.errors.backend-error'));\n          });\n        });\n      }\n\n    },\n\n    showError(message) {\n      this.showNotification.call('error', message);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/destroy/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"k6X1enXN\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,4],null,[[\\\"open\\\",\\\"onConfirm\\\",\\\"header\\\",\\\"text\\\",\\\"confirm\\\",\\\"cancel\\\"],[[35,3],[30,[36,2],[[32,0],\\\"deleteSession\\\"],null],[30,[36,0],[\\\"time-session-actions-dropdown.delete.confirm-header\\\"],null],[30,[36,0],[\\\"time-session-actions-dropdown.delete.confirm-text\\\"],[[\\\"session\\\"],[[35,1,[\\\"task\\\",\\\"title\\\"]]]]],[30,[36,0],[\\\"time-session-actions-dropdown.delete.confirm\\\"],null],[30,[36,0],[\\\"time-session-actions-dropdown.delete.cancel\\\"],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"timeSessionToDelete\\\",\\\"action\\\",\\\"modalOpen\\\",\\\"confirmation-dialog\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/time-sessions/destroy/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/duplicate/controller\", [\"exports\", \"web-app-ember-v2/validations/time-session\", \"web-app-ember-v2/utils/changeset-builder\"], function (_exports, _timeSession, _changesetBuilder) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    changeset: Ember.computed('timeSession', function () {\n      return (0, _changesetBuilder.default)(this.get('timeSession'), _timeSession.default);\n    }),\n    actions: {\n      cancel(timeSession) {\n        this.set('modalOpen', false);\n        this.send('cancelTimeSession', timeSession);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/duplicate/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"RbgA3CV8\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,18],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,17],[30,[36,2],[[32,0],\\\"cancel\\\",[35,12]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,16],[[30,[36,15],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/authenticated/time-sessions/duplicate/template.hbs' @ L1:C79) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,14],[\\\"time-sessions-duplicate.duplicate-header\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,16],[[30,[36,15],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/authenticated/time-sessions/duplicate/template.hbs' @ L1:C190) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"duplicate-time-session-form\\\"],[12],[1,[30,[36,13],null,[[\\\"changeset\\\",\\\"allProjects\\\",\\\"projectSessionTypes\\\",\\\"workspaceSessionTypes\\\",\\\"workspaceTags\\\",\\\"projectTags\\\",\\\"workspaces\\\",\\\"timeSession\\\",\\\"timeSessionId\\\",\\\"tasksForSelectedProject\\\",\\\"cancelTimeSession\\\",\\\"newTimeSession\\\",\\\"detectionEnabled\\\",\\\"options\\\",\\\"actionType\\\"],[[35,12],[35,11],[35,10],[35,9],[35,8],[35,7],[35,6],[35,5],[35,4],[35,3],[30,[36,2],[[32,0],[32,1,[\\\"close\\\"]]],null],[30,[36,1],[\\\"saveTimeSession\\\"],null],false,[35,0],\\\"duplicate\\\"]]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"options\\\",\\\"route-action\\\",\\\"action\\\",\\\"tasks\\\",\\\"timeSessionId\\\",\\\"timeSession\\\",\\\"workspaces\\\",\\\"projectTags\\\",\\\"workspaceTags\\\",\\\"workspaceSessionTypes\\\",\\\"projectSessionTypes\\\",\\\"allProjects\\\",\\\"changeset\\\",\\\"time-session-form\\\",\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/time-sessions/duplicate/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/edit/controller\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/validations/time-session\", \"ember-local-storage\", \"web-app-ember-v2/utils/changeset-builder\"], function (_exports, _serverErrorHandlerMixin, _timeSession, _emberLocalStorage, _changesetBuilder) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend(_serverErrorHandlerMixin.default, {\n    state: (0, _emberLocalStorage.storageFor)('current-state'),\n    userPreferences: Ember.inject.service(),\n    userStatus: Ember.inject.service(),\n    changeset: Ember.computed('timeSession', function () {\n      return (0, _changesetBuilder.default)(this.get('timeSession'), _timeSession.default);\n    }),\n    actions: {\n      cancel(timeSession) {\n        this.set('modalOpen', false);\n        this.send('cancelTimeSession', timeSession);\n      },\n\n      saveTimeSession(timeSessionChangeset) {\n        return timeSessionChangeset.validate().then(() => {\n          if (timeSessionChangeset.get('isInvalid')) {\n            return;\n          }\n\n          return timeSessionChangeset.save().then(timeSession => {\n            this.set('modalOpen', false);\n            this.get('userStatus').reloadCurrentUserStatus();\n            this.get('userPreferences').reloadCurrentUserLatestTimeSession();\n            this.get('userPreferences').reloadTodayDuration();\n            timeSession.get('tags').filterBy('isNew', true).forEach(tag => {\n              timeSession.get('tags').removeObject(tag);\n            });\n            Ember.run.later(() => {\n              this.showNotification.call('success', this.i18n.t('time-session-form.time-session-has-been-updated').string);\n            }, 500);\n          }, response => {\n            if (response.errors) {\n              this.get(\"timeSession\").rollbackAttributes();\n              this.get(\"timeSession\").rollbackRelationships();\n              response.errors.forEach(function (error) {\n                timeSessionChangeset.addError(error.key, error.message);\n              });\n              this.handleServerErrors(response.errors.filter(e => e.key !== 'overlapping'));\n            }\n          });\n        });\n      }\n\n    },\n\n    showError(message) {\n      this.showNotification.call('error', message);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/edit/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"XJfeAVOa\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,15],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,14],[30,[36,0],[[32,0],\\\"cancel\\\",[35,9]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,13],[[30,[36,12],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/authenticated/time-sessions/edit/template.hbs' @ L1:C79) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,11],[\\\"time-sessions-edit.edit-header\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,13],[[30,[36,12],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/authenticated/time-sessions/edit/template.hbs' @ L1:C180) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,10],null,[[\\\"changeset\\\",\\\"allProjects\\\",\\\"projectSessionTypes\\\",\\\"workspaceSessionTypes\\\",\\\"workspaceTags\\\",\\\"projectTags\\\",\\\"workspaces\\\",\\\"timeSession\\\",\\\"tasksForSelectedProject\\\",\\\"cancelTimeSession\\\",\\\"newTimeSession\\\",\\\"detectionEnabled\\\"],[[35,9],[35,8],[35,7],[35,6],[35,5],[35,4],[35,3],[35,2],[35,1],[30,[36,0],[[32,0],[32,1,[\\\"close\\\"]]],null],[30,[36,0],[[32,0],\\\"saveTimeSession\\\"],null],false]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"tasks\\\",\\\"timeSession\\\",\\\"workspaces\\\",\\\"projectTags\\\",\\\"workspaceTags\\\",\\\"workspaceSessionTypes\\\",\\\"projectSessionTypes\\\",\\\"allProjects\\\",\\\"changeset\\\",\\\"time-session-form\\\",\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/time-sessions/edit/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/new/controller\", [\"exports\", \"web-app-ember-v2/validations/time-session\", \"web-app-ember-v2/utils/changeset-builder\"], function (_exports, _timeSession, _changesetBuilder) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    changeset: Ember.computed('timeSession', function () {\n      return (0, _changesetBuilder.default)(this.get('timeSession'), _timeSession.default);\n    }),\n    actions: {\n      cancel(timeSession) {\n        this.set('modalOpen', false);\n        this.send('cancelTimeSession', timeSession);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/time-sessions/new/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"LE9dGefU\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,15],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,14],[30,[36,1],[[32,0],\\\"cancel\\\",[35,9]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,13],[[30,[36,12],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/authenticated/time-sessions/new/template.hbs' @ L1:C79) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,11],[\\\"time-sessions-new.new-header\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,13],[[30,[36,12],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/authenticated/time-sessions/new/template.hbs' @ L1:C178) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,10],null,[[\\\"changeset\\\",\\\"allProjects\\\",\\\"projectSessionTypes\\\",\\\"workspaceSessionTypes\\\",\\\"workspaceTags\\\",\\\"projectTags\\\",\\\"workspaces\\\",\\\"timeSession\\\",\\\"cancelTimeSession\\\",\\\"newTimeSession\\\",\\\"detectionEnabled\\\"],[[35,9],[35,8],[35,7],[35,6],[35,5],[35,4],[35,3],[35,2],[30,[36,1],[[32,0],[32,1,[\\\"close\\\"]]],null],[30,[36,0],[\\\"saveTimeSession\\\"],null],false]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"action\\\",\\\"timeSession\\\",\\\"workspaces\\\",\\\"projectTags\\\",\\\"workspaceTags\\\",\\\"workspaceSessionTypes\\\",\\\"projectSessionTypes\\\",\\\"allProjects\\\",\\\"changeset\\\",\\\"time-session-form\\\",\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/time-sessions/new/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workplans/new/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    actions: {\n      cancel(workplan) {\n        if (workplan.get('isNew')) {\n          workplan.rollbackAttributes();\n        }\n\n        this.send('closeModal');\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workplans/new/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"FHfAotqF\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,7],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,6],[30,[36,0],[[32,0],\\\"cancel\\\",[35,1]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,5],[[30,[36,4],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/authenticated/workplans/new/template.hbs' @ L1:C78) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,3],[\\\"workplans-new.new-header\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,5],[[30,[36,4],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/authenticated/workplans/new/template.hbs' @ L1:C173) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"workplan\\\",\\\"cancelWorkplan\\\",\\\"workplanSaved\\\"],[[35,1],[30,[36,0],[[32,0],\\\"cancel\\\"],null],[30,[36,0],[[32,0],[32,1,[\\\"close\\\"]]],null]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"workplan\\\",\\\"workplan-form\\\",\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workplans/new/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/configure/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    actions: {\n      confirmWorkspace() {\n        this.send('editWorkspace', this.model);\n      },\n\n      cancelWorkspace() {\n        this.model.rollbackAttributes();\n      },\n\n      deleteWorkspace() {\n        this.send('deleteWorkspace', this.model);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/configure/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/mixins/user-changable-route\"], function (_exports, _serverErrorHandlerMixin, _userChangableRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_userChangableRoute.default, _serverErrorHandlerMixin.default, {\n    router: Ember.inject.service(),\n\n    model(params) {\n      return this.store.peekRecord('workspace', params.workspace_id);\n    },\n\n    actions: {\n      editWorkspace(workspace) {\n        if (workspace.validate()) {\n          workspace.saveAndPropagate().then(workspace => {\n            this.get('userPreferences').set('currentWorkspaceFilter', workspace);\n            const showNotification = this.get('showNotification');\n            const i18n = this.get('i18n');\n            const currentUserId = this.get('userPreferences.currentUser.id');\n            this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace, 'all', currentUserId);\n            Ember.run.later(() => {\n              showNotification.call('success', i18n.t('authenticated.workspace-has-been-updated').string);\n            }, 100);\n          }, response => {\n            this.handleServerErrors(response);\n          });\n        }\n      },\n\n      cancelWorkspace(workspace) {\n        workspace.rollbackAttributes();\n        workspace.get('tags').filterBy('isNew', true).forEach(tag => {\n          tag.unloadRecord();\n        });\n        this.router.goBack();\n      },\n\n      deleteWorkspace(workspace) {\n        workspace.discard().then(() => {\n          const showNotification = this.get('showNotification');\n          const i18n = this.get('i18n');\n          this.store.findRecord('workspace', workspace.id, {\n            reload: true\n          });\n          this.store.findAll('project', {\n            reload: true\n          });\n          Ember.run.later(() => {\n            showNotification.call('success', i18n.t('authenticated.workspace-will-be-deleted').string);\n            this.refresh();\n          }, 100);\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/configure/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"SQfqApwN\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"main-content-inner container-fluid\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h2\\\"],[12],[1,[30,[36,0],[\\\"workspace-form.edit-workspace\\\"],null]],[13],[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[1,[30,[36,4],null,[[\\\"confirmWorkspace\\\",\\\"cancelWorkspace\\\",\\\"deleteWorkspace\\\",\\\"model\\\"],[[30,[36,3],[[32,0],\\\"confirmWorkspace\\\"],null],[30,[36,2],[\\\"cancelWorkspace\\\"],null],[30,[36,2],[\\\"deleteWorkspace\\\"],null],[35,1]]]]],[13],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"model\\\",\\\"route-action\\\",\\\"action\\\",\\\"workspace-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/configure/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/leave/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    actions: {\n      cancel() {\n        this.send('closeModal');\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/leave/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"y1jwXM/g\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,4],null,[[\\\"leaveWorkspace\\\",\\\"cancel\\\",\\\"headerTitle\\\",\\\"model\\\"],[[30,[36,3],[\\\"leaveWorkspace\\\",[35,0]],null],[30,[36,2],[[32,0],\\\"cancel\\\"],null],[30,[36,1],[\\\"leave-workspace-modal.title\\\"],null],[35,0]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"t\\\",\\\"action\\\",\\\"route-action\\\",\\\"leave-workspace-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/leave/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/new/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    actions: {}\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/new/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/mixins/user-changable-route\"], function (_exports, _serverErrorHandlerMixin, _userChangableRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_userChangableRoute.default, _serverErrorHandlerMixin.default, {\n    router: Ember.inject.service(),\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n\n    model() {\n      return this.store.createRecord('workspace');\n    },\n\n    _stopOngoingTimeSession() {\n      const currentUser = this.get('userPreferences.currentUser');\n      currentUser.get('status.timeSession').then(timeSession => {\n        if (timeSession.get('isOngoing')) {\n          timeSession.stop();\n        }\n      });\n    },\n\n    actions: {\n      createWorkspace(newWorkspace) {\n        if (newWorkspace.validate()) {\n          newWorkspace.saveAndPropagate().then(newWorkspace => {\n            const showNotification = this.get('showNotification');\n            const i18n = this.get('i18n');\n            const currentUserId = this.get('userPreferences.currentUser.id');\n\n            this._stopOngoingTimeSession();\n\n            this.set('userPreferences.currentProject', null);\n            this.get('userPreferences.currentUserWorkspacesWithAdminRole').push(newWorkspace.get('id'));\n            this.get('userPreferences').set('currentWorkspaceFilter', newWorkspace);\n            this.transitionTo('authenticated.workspaces.show.projects.show.activity', newWorkspace, 'all', currentUserId);\n            Ember.run.later(() => {\n              showNotification.call('success', i18n.t('authenticated.workspace-has-been-created').string);\n            }, 100);\n          }, response => {\n            this.handleServerErrors(response);\n          });\n        }\n      },\n\n      cancelWorkspace(workspace) {\n        workspace.unloadRecord();\n        this.router.goBack();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/new/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"qz28rqMA\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"main-content-inner container-fluid\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h2\\\"],[12],[1,[30,[36,0],[\\\"workspace-form.create-workspace\\\"],null]],[13],[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[1,[30,[36,3],null,[[\\\"confirmWorkspace\\\",\\\"cancelWorkspace\\\",\\\"model\\\"],[[30,[36,2],[\\\"createWorkspace\\\"],null],[30,[36,2],[\\\"cancelWorkspace\\\"],null],[35,1]]]]],[13],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"model\\\",\\\"route-action\\\",\\\"workspace-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/new/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/billing-reports/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    isTeamRoute: false\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/billing-reports/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/mixins/user-permissions\"], function (_exports, _serverErrorHandlerMixin, _userPermissions) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_serverErrorHandlerMixin.default, _userPermissions.default, {\n    router: Ember.inject.service(),\n    session: Ember.inject.service(),\n\n    beforeModel() {\n      let errorMessage = this.get('i18n').t('notifications.errors.access-denied');\n\n      if (!this.get('canReadBillingReports')) {\n        this.router.goBack();\n        this.showNotification.call('error', errorMessage);\n      }\n    },\n\n    model() {\n      return this.store.query('billingReport', {\n        workspaceId: this.userPreferences.workspaceId\n      });\n    },\n\n    afterModel() {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('isTeamRoute', true);\n    },\n\n    showError(message) {\n      this.showNotification.call('error', message);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/billing-reports/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"VGti9DXG\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h3\\\"],[12],[1,[30,[36,0],[\\\"authenticated.billing-reports.title\\\"],null]],[13],[13],[1,[30,[36,2],null,[[\\\"billingReports\\\"],[[35,1]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"model\\\",\\\"billing-reports-table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/billing-reports/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    isTeamRoute: false,\n    canShowUserInfo: Ember.computed.or('hideUserInfo', 'isTeamRoute'),\n    canReadMemberStatuses: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.permissions.read-members-statuses'),\n    activeUser: Ember.computed('userPreferences.currentWorkspaceFilter.id', function () {\n      let user = this.userPreferences.getCurrentUser();\n\n      if (Ember.isPresent(user.get('suspendedWorkspaces')) || Ember.isPresent(user.get('deletedWorkspaces'))) {\n        return !user.get('suspendedWorkspaces').includes(this.get('userPreferences.currentWorkspaceFilter.id')) && !user.get('deletedWorkspaces').includes(this.get('userPreferences.currentWorkspaceFilter.id'));\n      } else {\n        return true;\n      }\n    }),\n    actions: {\n      initializeEditWorkspaceModal() {\n        this.send('initializeEditWorkspaceModalInAuthenticatedRoute', this.model);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/invitations/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\"], function (_exports, _serverErrorHandlerMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_serverErrorHandlerMixin.default, {\n    session: Ember.inject.service(),\n\n    model() {\n      const target = this.get('userPreferences.currentWorkspaceFilter');\n      return Ember.RSVP.hash({\n        target: target,\n        targetInvitations: this.get('store').query('workspace-invitation', {\n          workspace_id: target.get('id')\n        })\n      });\n    },\n\n    afterModel() {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('isTeamRoute', true);\n    },\n\n    showError(message) {\n      this.showNotification.call('error', message);\n    },\n\n    actions: {\n      updateInvitation(invitation) {\n        invitation.saveAndPropagate().then(() => {\n          this.showNotification.call('success', this.i18n.t('workspace-team-invitations.edit.success').string);\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      },\n\n      deleteInvitation(invitation) {\n        invitation.destroyRecord().then(() => {\n          this.showNotification.call('success', this.i18n.t('workspace-team-invitations.delete.success').string);\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      },\n\n      resendInvitation(invitation) {\n        invitation.resend().then(() => {\n          this.showNotification.call('success', this.i18n.t('workspace-team-invitations.resend.success').string);\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/invitations/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"rDZPxbd1\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h3\\\"],[12],[1,[30,[36,0],[\\\"invitations-list.invitations\\\"],null]],[13],[13],[1,[30,[36,3],null,[[\\\"target\\\",\\\"invitations\\\",\\\"deleteInvitation\\\",\\\"updateInvitation\\\",\\\"resendInvitation\\\"],[[35,2,[\\\"target\\\"]],[35,2,[\\\"targetInvitations\\\"]],[30,[36,1],[\\\"deleteInvitation\\\"],null],[30,[36,1],[\\\"updateInvitation\\\"],null],[30,[36,1],[\\\"resendInvitation\\\"],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"route-action\\\",\\\"model\\\",\\\"invitations-list\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/invitations/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/edit/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    userPreferences: Ember.inject.service(),\n    clients: Ember.computed.alias('userPreferences.currentWorkspaceFilter.clients'),\n    actions: {\n      createClient(clientName) {\n        const currentWorkspace = this.userPreferences.get('currentWorkspaceFilter');\n        const client = this.get('store').createRecord('client', {\n          name: clientName,\n          workspace: currentWorkspace\n        });\n        return client.save().then(newClient => {\n          this.get('clients').pushObject(newClient);\n          return newClient;\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/edit/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/mixins/user-changable-route\"], function (_exports, _serverErrorHandlerMixin, _userChangableRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_userChangableRoute.default, _serverErrorHandlerMixin.default, {\n    router: Ember.inject.service(),\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n\n    model(params) {\n      let currentProjectFilter = this.get('store').peekRecord('project', params.project_id);\n      const sessionTypes = this.store.query('session-type', {\n        projectId: currentProjectFilter.get('id')\n      });\n      return Ember.RSVP.hash({\n        project: currentProjectFilter,\n        externalSystems: this.get('store').findAll('external-system'),\n        timeRoundings: this.store.findAll('time-rounding'),\n        sessionTypes\n      });\n    },\n\n    afterModel() {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('isTeamRoute', true);\n    },\n\n    actions: {\n      saveProject(project) {\n        if (project.validate()) {\n          project.saveAndPropagate().then(project => {\n            this.set('userPreferences.currentProject', project);\n            this.transitionTo('authenticated.workspaces.show.projects.show.activity', project.get('id'), this.get('userPreferences.currentUser.id'));\n            Ember.run.later(() => {\n              const showNotification = this.get('showNotification');\n              const i18n = this.get('i18n');\n              showNotification.call('success', i18n.t('project-form.project-has-been-updated').string);\n            }, 100);\n          }, response => {\n            project.rollbackAttributes();\n            this.handleServerErrors(response);\n          });\n        } else {\n          this.showNotification.call('error', this.get('i18n').t('project-form.project-not-valid'));\n        }\n      },\n\n      cancelProject(project) {\n        project.rollbackAttributes();\n        project.get('tags').filterBy('isNew', true).forEach(tag => {\n          tag.unloadRecord();\n        });\n        this.router.goBack();\n      },\n\n      deleteProject(project) {\n        let workspace = this.get('userPreferences.currentWorkspaceFilter');\n        workspace.discardProject(project).then(() => {\n          this.showNotification.call('error', this.get('i18n').t('single-project.project-will-be-deleted').toString());\n          this.transitionTo('authenticated.workspaces.show.projects.show.activity', project.get('id'), this.get('userPreferences.currentUser.id'));\n        });\n      }\n\n    },\n    deactivate: function () {\n      const project = this.modelFor(this.routeName).project;\n      project.rollbackAttributes();\n      project.rollbackRelationship('timeRounding');\n      project.rollbackRelationship('client');\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/edit/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"YF6ftd/l\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h2\\\"],[12],[1,[30,[36,0],[\\\"project-form.edit-project\\\"],null]],[13],[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[1,[30,[36,5],null,[[\\\"saveProject\\\",\\\"cancelProject\\\",\\\"deleteProject\\\",\\\"createClient\\\",\\\"clients\\\",\\\"model\\\",\\\"externalSystems\\\",\\\"timeRoundings\\\"],[[30,[36,4],[\\\"saveProject\\\"],null],[30,[36,4],[\\\"cancelProject\\\"],null],[30,[36,4],[\\\"deleteProject\\\"],null],[30,[36,3],[[32,0],\\\"createClient\\\"],null],[35,2],[35,1,[\\\"project\\\"]],[35,1,[\\\"externalSystems\\\"]],[35,1,[\\\"timeRoundings\\\"]]]]]],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"model\\\",\\\"clients\\\",\\\"action\\\",\\\"route-action\\\",\\\"project-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/edit/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/leave/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    actions: {\n      cancel() {\n        this.send('closeModal');\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/leave/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"NhOxzPk3\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,4],null,[[\\\"leaveProject\\\",\\\"cancel\\\",\\\"headerTitle\\\",\\\"model\\\"],[[30,[36,3],[\\\"leaveProject\\\",[35,0]],null],[30,[36,2],[[32,0],\\\"cancel\\\"],null],[30,[36,1],[\\\"leave-project-modal.title\\\"],null],[35,0]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"t\\\",\\\"action\\\",\\\"route-action\\\",\\\"leave-project-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/leave/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/new/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    userPreferences: Ember.inject.service(),\n    clients: Ember.computed.alias('userPreferences.currentWorkspaceFilter.clients'),\n    actions: {\n      createClient(clientName) {\n        const currentWorkspace = this.userPreferences.get('currentWorkspaceFilter');\n        const client = this.get('store').createRecord('client', {\n          name: clientName,\n          workspace: currentWorkspace\n        });\n        return client.save().then(newClient => {\n          this.get('clients').pushObject(newClient);\n          return newClient;\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/new/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\"], function (_exports, _serverErrorHandlerMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_serverErrorHandlerMixin.default, {\n    router: Ember.inject.service(),\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n\n    model() {\n      return Ember.RSVP.hash({\n        project: this.get('store').createRecord('project', {\n          dateFormat: 'MDY'\n        }),\n        externalSystems: this.get('store').findAll('external-system'),\n        timeRoundings: this.store.findAll('time-rounding')\n      });\n    },\n\n    afterModel(model) {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      const noRounding = this.get('store').peekAll('time-rounding').findBy('value', 0);\n      workspacesShowController.set('isTeamRoute', true);\n      model.project.set('timeRounding', noRounding);\n    },\n\n    actions: {\n      createProject(newProject) {\n        if (newProject.validate()) {\n          newProject.set('workspace', this.get('userPreferences.currentWorkspaceFilter'));\n          newProject.saveAndPropagate().then(project => {\n            this.transitionTo('authenticated.workspaces.show.projects.show.team', this.get('userPreferences.currentWorkspaceFilter.id'), project.get('id'));\n            Ember.run.later(() => {\n              const showNotification = this.get('showNotification');\n              const i18n = this.get('i18n');\n              showNotification.call('success', i18n.t('project-form.project-has-been-created').string);\n            }, 100);\n          }, response => {\n            this.handleServerErrors(response);\n          });\n        } else {\n          this.showNotification.call('error', this.get('i18n').t('project-form.project-not-valid'));\n        }\n      },\n\n      cancelProject(project) {\n        project.unloadRecord();\n        this.router.goBack();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/new/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"PS8sKXdr\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"main-content-inner container-fluid\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h2\\\"],[12],[1,[30,[36,0],[\\\"project-form.create-project\\\"],null]],[13],[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[1,[30,[36,5],null,[[\\\"saveProject\\\",\\\"cancelProject\\\",\\\"createClient\\\",\\\"clients\\\",\\\"model\\\",\\\"externalSystems\\\",\\\"timeRoundings\\\"],[[30,[36,4],[\\\"createProject\\\"],null],[30,[36,4],[\\\"cancelProject\\\"],null],[30,[36,3],[[32,0],\\\"createClient\\\"],null],[35,2],[35,1,[\\\"project\\\"]],[35,1,[\\\"externalSystems\\\"]],[35,1,[\\\"timeRoundings\\\"]]]]]],[13],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"model\\\",\\\"clients\\\",\\\"action\\\",\\\"route-action\\\",\\\"project-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/new/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/route\", [\"exports\", \"web-app-ember-v2/mixins/validate-access-route-mixin\"], function (_exports, _validateAccessRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_validateAccessRouteMixin.default, {\n    userPreferences: Ember.inject.service(),\n\n    model() {\n      let workspace = this.get('userPreferences.currentWorkspaceFilter') || this.store.peekAll('workspace').get('firstObject');\n\n      if (!this.userPreferences.getCurrentUser().get('suspendedWorkspaces').includes(workspace.id)) {\n        return Ember.RSVP.hash({\n          workspace: workspace,\n          projects: workspace.get('projects')\n        });\n      }\n    },\n\n    afterModel(model, transition) {\n      if (transition.targetName === 'authenticated.workspaces.show.projects.team') {\n        if (model.projects.get('length') > 0) {\n          if (!transition.state.handlerInfos.get('lastObject.name').includes('team')) {\n            this.transitionTo('authenticated.workspaces.show.projects.show.team', this.get('userPreferences.workspaceId'), model.projects.get('firstObject.id'));\n          }\n        }\n      }\n    },\n\n    actions: {\n      deleteProject(project) {\n        let workspace = this.modelFor('authenticated.workspaces.show');\n        workspace.removeProject(project).then(() => {\n          workspace.propagate();\n          this.set('userPreferences.currentProject', undefined);\n          this.transitionTo('authenticated.workspaces.show.projects.index', workspace.id);\n          this.showNotification.call('error', this.get('i18n').t('single-project.project-has-been-deleted').toString());\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/activity/controller\", [\"exports\", \"moment\", \"jquery\"], function (_exports, _moment, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    userPreferences: Ember.inject.service(),\n    infinity: Ember.inject.service(),\n    queryParams: ['timestamp'],\n    sortProps: Object.freeze(['fullName']),\n    timestamp: null,\n    nearestActivityTimestamp: null,\n    // default view show 3 previous days so it's default\n    previousDays: 3,\n    previousDaysIncrementationValue: 2,\n    userId: Ember.computed.readOnly('activityUser.id'),\n    projectId: Ember.computed.readOnly('userPreferences.currentProject.id'),\n    workspaceId: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.id'),\n    sortedSelectedMembers: Ember.computed.sort('selectedMembers', 'sortProps'),\n    canReadMembersActivity: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.permissions.read-members-activity');\n    }),\n    canReadMemberStatuses: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.permissions.read-members-statuses');\n    }),\n    canDownloadUserReports: Ember.computed('userPreferences.currentUserFilter.permissions', function () {\n      return this.get('userPreferences.currentUserFilter.permissions.download-reports');\n    }),\n    canDownloadMemberActivity: Ember.computed('canReadMemberStatuses', 'canDownloadUserReports', 'activityUser', function () {\n      if (this.get('activityUser.id') === this.get('userPreferences').getCurrentUser().get('id')) {\n        return true;\n      } else {\n        return this.get('canReadMemberStatuses') && this.get('canDownloadUserReports');\n      }\n    }),\n    allActivities: Ember.computed(function () {\n      return this.get('store').peekAll('activity');\n    }),\n    filterActivities: Ember.computed('allActivities.[]', 'workspaceId', 'userId', 'projectId', 'userPreferences.showBillableDuration', function () {\n      const workspaceId = this.get('workspaceId');\n      const projectId = this.get('projectId');\n      const userId = this.get('userId');\n      const currentWorkspaceProjectIds = this.get('userPreferences.currentWorkspaceFilter.projects').map(project => {\n        return project.id;\n      });\n      return this.get('allActivities').filter(activity => {\n        if (activity.get('userId') === userId) {\n          if (['Commit', 'Summary', 'TimeSession'].indexOf(activity.get('activitableType')) >= 0) {\n            if (projectId) {\n              return activity.get('activitable.project.id') === projectId;\n            } else {\n              return activity.get('workspaceId') === workspaceId || currentWorkspaceProjectIds.includes(activity.get('activitable.project.id'));\n            }\n          } else if (!this.userPreferences.showBillableDuration) {\n            return activity.get('workspaceId') === workspaceId || currentWorkspaceProjectIds.includes(activity.get('activitable.project.id'));\n          }\n        }\n      });\n    }),\n    sortedActivities: Ember.computed('filterActivities.[]', function () {\n      let activities = this.get('filterActivities').toArray().sort(function (a1, a2) {\n        let a1OccurredAt = a1.get('activitableOccurredAtTS');\n        let a2OccurredAt = a2.get('activitableOccurredAtTS');\n\n        if (a1OccurredAt < a2OccurredAt) {\n          return 1;\n        } else if (a1OccurredAt > a2OccurredAt) {\n          return -1;\n        } else if (a1.get('activitableSortPrio') < a2.get('activitableSortPrio')) {\n          return -1;\n        } else if (a1.get('activitableSortPrio') > a2.get('activitableSortPrio')) {\n          return 1;\n        } else {\n          return 0;\n        }\n      });\n      this.setActivityGroupDay(activities);\n      return activities;\n    }),\n\n    setActivityGroupDay(activities = []) {\n      _moment.default.tz.setDefault(this.get('userPreferences.currentUser.timezone'));\n\n      let modelActivitiesDate = activities.length > 0 ? activities[activities.length - 1].get('occurredAt') : null;\n      let previousDate = null;\n      return activities.forEach(activity => {\n        const activityOccurredAt = activity.get('occurredAt');\n\n        if (previousDate === null) {\n          if (modelActivitiesDate !== null && (0, _moment.default)(modelActivitiesDate).format('YYYY-MM-DD') !== (0, _moment.default)(activityOccurredAt).format('YYYY-MM-DD')) {\n            activity.set('groupDay', (0, _moment.default)(activityOccurredAt).format('YYYY-MM-DD'));\n            previousDate = activityOccurredAt;\n          } else {\n            activity.set('groupDay', (0, _moment.default)(activityOccurredAt).format('YYYY-MM-DD'));\n            previousDate = activityOccurredAt;\n          }\n        } else {\n          if ((0, _moment.default)(activityOccurredAt).format('YYYY-MM-DD') !== (0, _moment.default)(previousDate).format('YYYY-MM-DD')) {\n            activity.set('groupDay', (0, _moment.default)(activityOccurredAt).format('YYYY-MM-DD'));\n            previousDate = activityOccurredAt;\n          } else {\n            activity.set('groupDay', null);\n          }\n        }\n      });\n    },\n\n    loadMoreActivitiesQuery() {\n      const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n      let timestamp = this.get('nearestActivityTimestamp') || this.get('timestamp');\n      const currentProjectId = this.get('userPreferences.currentProject.id');\n      const currentUserId = this.get('userPreferences.activityCurrentUserFilter.id');\n      const showBillableDuration = this.get('userPreferences.showBillableDuration');\n      return this.store.query('activity', {\n        timestamp,\n        workspace_id: workspaceId,\n        project_id: currentProjectId,\n        user_id: currentUserId,\n        previous_days: true,\n        show_billable_duration: showBillableDuration\n      });\n    },\n\n    setInfinityLoad(activities) {\n      this.get('infinity').infinityLoad(activities);\n      this.set('previousDays', 0);\n    },\n\n    mobileScroll(date) {\n      const mainContent = (0, _jquery.default)('body, html');\n      const navBarHeight = (0, _jquery.default)('.navbar-header').height() + (0, _jquery.default)('.user-nav-bar').height() + 50;\n      this.scrollContent(mainContent, navBarHeight, date);\n    },\n\n    desktopScroll(date) {\n      const mainContent = (0, _jquery.default)('.main-content');\n      const navBarHeight = (0, _jquery.default)('.navbar-collapse').height() + (0, _jquery.default)('.user-nav-bar').height() + 50 - mainContent.scrollTop();\n      this.scrollContent(mainContent, navBarHeight, date);\n    },\n\n    scrollContent(mainContent, navBarHeight, date) {\n      const elementToScroll = (0, _jquery.default)(`h4:contains(${date})`);\n      const timestamp = this.get('timestamp');\n\n      if (elementToScroll.length > 0) {\n        mainContent.animate({\n          scrollTop: elementToScroll.offset().top - navBarHeight\n        }, 'slow');\n      } else if (elementToScroll.length < 1 && !timestamp) {\n        mainContent.animate({\n          scrollTop: 0\n        });\n      } else {\n        this.get('allActivities').forEach(activity => activity.unloadRecord());\n        this.set('timestamp', null);\n        this.set('previousDays', 0);\n      }\n    },\n\n    actions: {\n      scrollToDate(date) {\n        if (window.outerWidth <= 767) {\n          this.mobileScroll(date);\n        } else {\n          this.desktopScroll(date);\n        }\n      },\n\n      loadMoreActivities(activities) {\n        const timestamp = this.get('timestamp');\n\n        if (Ember.isEmpty(timestamp)) {\n          this.setInfinityLoad(activities);\n          return;\n        }\n\n        this.loadMoreActivitiesQuery().then(newActivities => {\n          if (newActivities.content.length > 0) {\n            this.infinity.pushObjects(activities, newActivities);\n            this.set('nearestActivityTimestamp', newActivities.meta['nearest-activity-timestamp']); // HACK: Sometimes because of a small number of results at the initial load\n            //       the browser isn't high enough to trigger infinityLoader. Trigger it manually\n\n            if (!this.initialLoad) return;\n            const infinityLoader = document.querySelector(\".infinity-loader\");\n            const isInfinityLoaderVisibleOnScreen = infinityLoader.getBoundingClientRect().top <= window.innerHeight;\n            const {\n              reachedInfinity,\n              loadingMore\n            } = this.activities;\n\n            if (isInfinityLoaderVisibleOnScreen && !loadingMore && !reachedInfinity) {\n              this.actions.loadMoreActivities.call(this, this.activities);\n            } else {\n              this.initialLoad = false;\n            }\n          } else {\n            this.activities.set('reachedInfinity', true);\n          }\n        });\n      },\n\n      setDateRange(timestamp) {\n        const dateFormat = 'YYYY-MM-DD'; // unloadAll doesn't work for many requests in this case\n\n        this.get('allActivities').forEach(activity => activity.unloadRecord());\n\n        if ((0, _moment.default)().format(dateFormat) !== (0, _moment.default)(timestamp).format(dateFormat) && timestamp) {\n          this.set('timestamp', (0, _moment.default)(timestamp).set({\n            hour: 12\n          }).format());\n        } else {\n          this.set('timestamp', null);\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/activity/route\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/mixins/user-changable-route\", \"ember-keyboard-shortcuts\"], function (_exports, _serverErrorHandlerMixin, _userChangableRoute, _emberKeyboardShortcuts) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_serverErrorHandlerMixin.default, _userChangableRoute.default, {\n    router: Ember.inject.service(),\n    session: Ember.inject.service(),\n    store: Ember.inject.service(),\n    userTimeSession: Ember.inject.service(),\n    infinity: Ember.inject.service(),\n    perPageParam: 'per-page',\n    totalPagesParam: 'meta.total-pages',\n    queryParams: {\n      timestamp: {\n        refreshModel: true\n      }\n    },\n\n    init() {\n      this._super(...arguments);\n\n      this._syncedTimeSessions = this._syncedTimeSessions.bind(this);\n    },\n\n    beforeModel() {\n      this._super(...arguments);\n\n      this.get('store').peekAll('activity').forEach(activity => activity.unloadRecord());\n    },\n\n    model(params) {\n      this._super(...arguments);\n\n      const timestamp = params.timestamp;\n      const workspace = this.get('userPreferences.currentWorkspaceFilter') || this.store.peekAll('workspace').get('firstObject');\n      const currentProjectId = this.get('userPreferences.currentProject.id');\n      const showBillableDuration = this.get('userPreferences.showBillableDuration');\n\n      if (params.user_id === \"all\") {\n        const currentUserId = this.get('userPreferences.currentUser.id');\n        return this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace.id, currentProjectId, currentUserId);\n      }\n\n      const user = this.get('userPreferences.activityCurrentUserFilter');\n      return Ember.RSVP.hash({\n        activities: this.infinity.model('activity', {\n          modelPath: 'controller.activities',\n          user_id: params.user_id,\n          workspace_id: workspace.get('id'),\n          project_id: currentProjectId,\n          timestamp: timestamp,\n          show_billable_duration: showBillableDuration\n        }),\n        activityUser: user,\n        userStatus: this.store.queryRecord('user-status', {\n          userStatusId: user.id,\n          workspaceId: workspace.id\n        })\n      });\n    },\n\n    afterModel(model) {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('hideUserInfo', true);\n      workspacesShowController.set('isTeamRoute', false);\n\n      const newPresence = this._newPresenceFromUserActivities(model.activityUser);\n\n      if (newPresence) {\n        this._setNewStatusPresence(model.activityUser, newPresence);\n      }\n    },\n\n    activate() {\n      this.set(\"keyboardShortcuts\", {\n        'd': {\n          action: 'handleKeyDShortcut',\n          global: false\n        }\n      });\n      (0, _emberKeyboardShortcuts.bindKeyboardShortcuts)(this);\n      this.get('userTimeSession').on('synced', this._syncedTimeSessions);\n    },\n\n    deactivate() {\n      (0, _emberKeyboardShortcuts.unbindKeyboardShortcuts)(this);\n      this.get('userTimeSession').off('synced', this._syncedTimeSessions);\n    },\n\n    userHasManagerRole(workspace) {\n      if (Ember.isEmpty(this.get('userPreferences.currentUserWorkspacesWithManagerRole'))) {\n        return false;\n      } else {\n        return this.get('userPreferences.currentUserWorkspacesWithManagerRole').includes(workspace.id);\n      }\n    },\n\n    setupController(controller, model) {\n      const activities = model.activities;\n      activities.set('reachedInfinity', !activities.extraParams.timestamp && activities.content.length < activities.perPage);\n      controller.set('activities', activities);\n      controller.set('activityUser', model.activityUser);\n      controller.set('nearestActivityTimestamp', model.activities.meta['nearest-activity-timestamp']);\n      controller.set('initialLoad', true);\n    },\n\n    showError(message) {\n      this.showNotification.call('error', message);\n    },\n\n    _newPresenceFromUserActivities(user) {\n      return user.get('activities').filter(activity => {\n        return activity.get('activitableType') === 'Presence';\n      }).sortBy('occurredAt').reverse().get('firstObject.activitable');\n    },\n\n    _setNewStatusPresence(user, presence) {\n      user.set('status.presence', presence);\n    },\n\n    _syncedTimeSessions({\n      workspaceId\n    }) {\n      const {\n        workspace_id\n      } = this.paramsFor('authenticated.workspaces.show');\n\n      if (workspace_id !== workspaceId) {\n        return;\n      }\n\n      this.refresh();\n    },\n\n    actions: {\n      handleKeyDShortcut() {\n        const reportsModalCtrl = this.controllerFor('authenticated/reports/new');\n        if (reportsModalCtrl.modalOpen || !this.controller.canDownloadMemberActivity) return;\n        const newSessionModalCtrl = this.controllerFor('authenticated.time-sessions.new');\n        const editSessionModalCtrl = this.controllerFor('authenticated.time-sessions.edit');\n        const duplicateSessionModalCtrl = this.controllerFor('authenticated.time-sessions.duplicate');\n\n        if (newSessionModalCtrl.modalOpen || editSessionModalCtrl.modalOpen || duplicateSessionModalCtrl.modalOpen) {\n          return;\n        }\n\n        const selectedUser = this.get('userPreferences.activityCurrentUserFilter'); // eslint-disable-next-line ember/closure-actions\n\n        this.send('openReportsModal', selectedUser);\n      },\n\n      userSelected(workspaceId, projectId, userId) {\n        this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspaceId, projectId, userId);\n      },\n\n      resumeTimeSession(baseTimeSession) {\n        let timeSession = this.store.createRecord('time-session');\n        timeSession.clonePropertiesFrom(baseTimeSession).then(timeSession => {\n          const authenticatedController = this.controllerFor('authenticated');\n          authenticatedController.send('startOngoingTimeSession', timeSession);\n        });\n      },\n\n      redirectToProject(projectId) {\n        const routeName = this.router.currentRouteName;\n        const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n        const userId = this.get('userPreferences.currentUserFilter.id');\n        this.transitionTo(routeName, workspaceId, projectId, userId);\n      },\n\n      reloadData() {\n        this.refresh();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/activity/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"kfmg0UXp\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"activity-template\\\"],[12],[1,[30,[36,6],null,[[\\\"selectedUser\\\",\\\"showUserInfo\\\",\\\"showDropdown\\\",\\\"userSelected\\\"],[[35,4],true,false,[30,[36,1],[\\\"userSelected\\\"],null]]]]],[13],[6,[37,7],null,[[\\\"class\\\"],[\\\"user-nav-bar\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,5],null,[[\\\"activityUser\\\",\\\"timestamp\\\",\\\"setDateRange\\\",\\\"scrollToDate\\\",\\\"reloadData\\\",\\\"canDownloadMemberActivity\\\"],[[35,4],[35,3],[30,[36,2],[[32,0],\\\"setDateRange\\\"],null],[30,[36,2],[[32,0],\\\"scrollToDate\\\"],null],[30,[36,1],[\\\"reloadData\\\"],null],[35,0]]]]]],\\\"parameters\\\":[]}]]],[1,[30,[36,11],null,[[\\\"timestamp\\\",\\\"activities\\\",\\\"noActivities\\\",\\\"sortedActivities\\\",\\\"loadMoreActivities\\\"],[[35,3],[35,10],[35,9],[35,8],[30,[36,2],[[32,0],\\\"loadMoreActivities\\\"],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"canDownloadMemberActivity\\\",\\\"route-action\\\",\\\"action\\\",\\\"timestamp\\\",\\\"activityUser\\\",\\\"user-nav-bar\\\",\\\"user-info\\\",\\\"sticky-bar\\\",\\\"sortedActivities\\\",\\\"noActivities\\\",\\\"activities\\\",\\\"activities-collection\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/show/activity/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/reports/controller\", [\"exports\", \"web-app-ember-v2/mixins/user-permissions\", \"web-app-ember-v2/mixins/server-error-handler-mixin\"], function (_exports, _userPermissions, _serverErrorHandlerMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend(_userPermissions.default, _serverErrorHandlerMixin.default, {\n    showTimeLimitFormModal: false,\n    showTimeLimitDeleteModal: false,\n    timeLimit: null,\n    queryParams: ['startDate', 'endDate'],\n    startDate: null,\n    endDate: null,\n    showingTeamMembers: Ember.computed.equal('model.user.id', 'all'),\n    sortedProjectTimeLimits: Ember.computed.sort('model.projectsTimeLimits.[]', 'sortProps'),\n    workspaceId: Ember.computed.oneWay('userPreferences.workspaceId'),\n    projectId: Ember.computed.oneWay('userPreferences.currentProject.id'),\n    actions: {\n      cancelTimeLimitFormModal() {\n        this.set('showTimeLimitFormModal', false);\n\n        if (this.get('timeLimit.isNew')) {\n          this.get('timeLimit').unloadRecord();\n        } else {\n          if (Ember.isPresent(this.get('timeLimit.content'))) {\n            this.get('timeLimit.content').rollbackAttributes();\n          } else {\n            this.get('timeLimit').rollbackAttributes();\n          }\n\n          this.set('timeLimit', null);\n        }\n      },\n\n      showTimeLimitFormModal() {\n        this.set('showTimeLimitFormModal', true);\n      },\n\n      showTimeLimitDeleteModal() {\n        this.set('showTimeLimitDeleteModal', true);\n      },\n\n      saveTimeLimit(timeLimit) {\n        let timeLimitToSave = timeLimit;\n\n        if (Ember.isPresent(timeLimit.get('content'))) {\n          timeLimitToSave = timeLimit.get('content');\n          timeLimitToSave.setProperties({\n            'name': timeLimit.get('name'),\n            'timeLimit': timeLimit.get('timeLimit'),\n            'endDate': timeLimit.get('endDate'),\n            'startDate': timeLimit.get('startDate'),\n            'notifyManagers': timeLimit.get('notifyManagers'),\n            'notifyExtManagers': timeLimit.get('notifyExtManagers'),\n            'notifyStaff': timeLimit.get('notifyStaff'),\n            'notifyTeam': timeLimit.get('notifyTeam'),\n            'project': timeLimit.get('project'),\n            'timeLimitablesType': timeLimit.get('timeLimitablesType'),\n            'timeLimitableIds': timeLimit.get('timeLimitableIds'),\n            'type': timeLimit.get('type')\n          });\n        }\n\n        return timeLimitToSave.save().then(timeLimit => {\n          if (Ember.isPresent(timeLimit.get('content'))) {\n            this.showNotification.call('success', this.i18n.t('time-limit-form-modal.update-success').string);\n          } else {\n            this.get('model.timeLimits').pushObject(timeLimit);\n            this.showNotification.call('success', this.i18n.t('time-limit-form-modal.success').string);\n          }\n\n          this.set('showTimeLimitFormModal', false);\n        }, response => {\n          for (let error of response.errors) {\n            this.get('showNotification').call('error', error);\n          }\n        });\n      },\n\n      deleteTimeLimit() {\n        this.get('timeLimitToDelete').destroyRecord().then(() => {\n          this.showNotification.call('success', this.i18n.t('time-limit-form-modal.delete-success').string);\n          this.set('timeLimitToDelete', null);\n          this.set('showTimeLimitDeleteModal', false);\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/reports/route\", [\"exports\", \"web-app-ember-v2/mixins/user-changable-route\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"moment\"], function (_exports, _userChangableRoute, _serverErrorHandlerMixin, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_serverErrorHandlerMixin.default, _userChangableRoute.default, {\n    store: Ember.inject.service(),\n    session: Ember.inject.service(),\n    queryParams: {\n      startDate: {\n        refreshModel: true\n      },\n      endDate: {\n        refreshModel: true\n      }\n    },\n\n    beforeModel(transition) {\n      if (!transition.from || transition.to.name === transition.from.name) return;\n      /**\n       * NOTE: Preserve startDate & endDate query params from\n       *       the other views that also use these properties\n       */\n\n      this.transitionTo({\n        queryParams: {\n          startDate: transition.from.queryParams.startDate,\n          endDate: transition.from.queryParams.endDate\n        }\n      });\n    },\n\n    model(params) {\n      this._super(...arguments);\n\n      const urlDateFormat = 'YYYY-MM-DD';\n      const startDate = params['startDate'] || (0, _moment.default)().startOf('month').format(urlDateFormat);\n      const endDate = params['endDate'] || (0, _moment.default)().format(urlDateFormat);\n      const user = this.get('userPreferences.currentUserFilter');\n      const project = this.get('userPreferences.currentProject');\n      const statsUser = this.get('userPreferences.currentUser');\n      const showBillableDuration = this.get('userPreferences.showBillableDuration');\n      const timeLimits = this.getLimits();\n      let requestParams = {\n        start_date: startDate,\n        end_date: endDate,\n        show_billable_duration: showBillableDuration\n      };\n\n      if (Ember.isPresent(project)) {\n        requestParams['project_id'] = project.get('id');\n      }\n\n      if (params.user_id !== \"all\") {\n        requestParams['user_id'] = params.user_id;\n      }\n\n      let userStats = statsUser.stats(requestParams).catch(response => {\n        for (let error of response.errors) {\n          this.showNotification.call('error', error.detail);\n        }\n\n        return {\n          total_time: 0,\n          weekly_daily_stats: []\n        };\n      });\n      return Ember.RSVP.hash({\n        user: user,\n        startDate: startDate,\n        endDate: endDate,\n        stats: userStats,\n        timeLimits: timeLimits\n      });\n    },\n\n    getLimits() {\n      const currentProject = this.get('userPreferences.currentProject');\n\n      if (!Ember.isPresent(currentProject)) {\n        return;\n      }\n\n      let timeLimits = currentProject.hasMany('timeLimits');\n      return timeLimits.reload();\n    },\n\n    afterModel(model) {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('selectedUser', model.user);\n      workspacesShowController.set('hideUserInfo', true);\n      workspacesShowController.set('isTeamRoute', false);\n    },\n\n    actions: {\n      openCreateTimeLimitModal() {\n        const currentProject = this.get('userPreferences.currentProject');\n        let newTimeLimit = this.store.createRecord('time-limit');\n        newTimeLimit.set('project', currentProject);\n        this.controller.set('timeLimit', newTimeLimit);\n        this.controller.send('showTimeLimitFormModal');\n      },\n\n      openEditTimeLimitModal(timeLimit) {\n        this.controller.set('timeLimit', timeLimit.get('buffer'));\n        this.controller.send('showTimeLimitFormModal');\n      },\n\n      openDeleteTimeLimitModal(timeLimit) {\n        this.controller.set('timeLimitToDelete', timeLimit);\n        this.controller.send('showTimeLimitDeleteModal');\n      },\n\n      dateChanged(startDate, endDate) {\n        this.transitionTo({\n          queryParams: {\n            startDate: startDate,\n            endDate: endDate\n          }\n        });\n      },\n\n      userSelected(workspaceId, projectId, userId) {\n        const queryParams = this.controller.getProperties('startDate', 'endDate');\n        this.transitionTo('authenticated.workspaces.show.projects.show.reports', workspaceId, projectId, userId, {\n          queryParams: queryParams\n        });\n      },\n\n      reloadData() {\n        this.refresh();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/reports/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"8p+IR/I2\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-11\\\"],[12],[1,[30,[36,12],null,[[\\\"timeLimits\\\",\\\"openCreateTimeLimitModal\\\",\\\"openEditTimeLimitModal\\\",\\\"openDeleteTimeLimitModal\\\",\\\"saveTimeLimit\\\",\\\"deleteTimeLimit\\\",\\\"cancelTimeLimitFormModal\\\",\\\"showTimeLimitFormModal\\\",\\\"showTimeLimitDeleteModal\\\",\\\"timeLimit\\\"],[[35,4,[\\\"timeLimits\\\"]],[30,[36,3],[\\\"openCreateTimeLimitModal\\\"],null],[30,[36,3],[\\\"openEditTimeLimitModal\\\"],null],[30,[36,3],[\\\"openDeleteTimeLimitModal\\\"],null],[30,[36,11],[[32,0],\\\"saveTimeLimit\\\"],null],[30,[36,11],[[32,0],\\\"deleteTimeLimit\\\"],null],[30,[36,11],[[32,0],\\\"cancelTimeLimitFormModal\\\"],null],[35,10],[35,9],[35,8]]]]],[13],[6,[37,14],[[35,13]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"tasks col-md-12\\\"],[12],[1,[30,[36,7],null,[[\\\"stats\\\",\\\"user\\\",\\\"teamMembers\\\",\\\"startDate\\\",\\\"endDate\\\",\\\"dateChanged\\\",\\\"reloadData\\\"],[[35,4,[\\\"stats\\\"]],[35,4,[\\\"user\\\"]],[35,4,[\\\"teamMembers\\\"]],[35,4,[\\\"startDate\\\"]],[35,4,[\\\"endDate\\\"]],[30,[36,3],[\\\"dateChanged\\\"],null],[30,[36,3],[\\\"reloadData\\\"],null]]]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-11\\\"],[12],[1,[30,[36,5],null,[[\\\"selectedUser\\\",\\\"showUserInfo\\\",\\\"showDropdown\\\",\\\"userSelected\\\"],[[35,4,[\\\"user\\\"]],true,false,[30,[36,3],[\\\"userSelected\\\"],null]]]]],[13],[10,\\\"div\\\"],[14,5,\\\"clear: left;\\\"],[14,0,\\\"tasks\\\"],[12],[1,[30,[36,6],null,[[\\\"stats\\\",\\\"user\\\",\\\"startDate\\\",\\\"endDate\\\",\\\"dateChanged\\\",\\\"reloadData\\\"],[[35,4,[\\\"stats\\\"]],[35,4,[\\\"user\\\"]],[35,4,[\\\"startDate\\\"]],[35,4,[\\\"endDate\\\"]],[30,[36,3],[\\\"dateChanged\\\"],null],[30,[36,3],[\\\"reloadData\\\"],null]]]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,14],[[35,15]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],null,[[\\\"route\\\",\\\"model\\\"],[\\\"authenticated.workspaces.show.billing-reports\\\",[35,1]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.billing-reports.title\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"workspaceId\\\",\\\"link-to\\\",\\\"route-action\\\",\\\"model\\\",\\\"user-info\\\",\\\"monthly-statistics\\\",\\\"monthly-team-statistics\\\",\\\"timeLimit\\\",\\\"showTimeLimitDeleteModal\\\",\\\"showTimeLimitFormModal\\\",\\\"action\\\",\\\"time-limits-table\\\",\\\"showingTeamMembers\\\",\\\"if\\\",\\\"canReadBillingReports\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/show/reports/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/route\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend({\n    session: Ember.inject.service(),\n\n    model(params) {\n      return Ember.RSVP.hash({\n        workspace: this.modelFor('authenticated.workspaces.show'),\n        project: this.get('store').peekRecord('project', params.project_id)\n      });\n    },\n\n    afterModel(model) {\n      this.set('userPreferences.currentWorkspaceFilter', model.workspace);\n      this.set('userPreferences.currentProject', model.project);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/inactive/route\", [\"exports\", \"web-app-ember-v2/mixins/validate-access-route-mixin\", \"web-app-ember-v2/mixins/task-management-route-mixin\"], function (_exports, _validateAccessRouteMixin, _taskManagementRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_validateAccessRouteMixin.default, _taskManagementRouteMixin.default, {\n    session: Ember.inject.service(),\n\n    model() {\n      const currentProjectId = this.get('userPreferences.currentProject.id');\n      const requestParams = {\n        project_id: currentProjectId,\n        inactive: true\n      };\n      return this.store.query('task', requestParams).then(tasks => {\n        return this.prepareTasks(tasks);\n      });\n    },\n\n    afterModel() {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('hideUserInfo', true);\n      workspacesShowController.set('isTeamRoute', false);\n    },\n\n    prepareTasks(tasks) {\n      return tasks.map(task => {\n        return task.getProperties('id', 'title', 'projectName', 'projectId', 'externalResources');\n      });\n    },\n\n    actions: {\n      reloadData() {\n        this.refresh();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/inactive/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"R82srLbi\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"tasks col-md-12 tasks-team-view\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"tasks-team-view-date-header\\\"],[12],[1,[30,[36,1],[\\\"tasks-without-activity/header\\\"],[[\\\"reloadData\\\",\\\"newTask\\\"],[[30,[36,0],[\\\"reloadData\\\"],null],[30,[36,0],[\\\"newTask\\\"],null]]]]],[13],[1,[30,[36,3],null,[[\\\"tasks\\\",\\\"deleteTask\\\",\\\"moveTask\\\",\\\"mergeTask\\\",\\\"newTimeSession\\\"],[[35,2],[30,[36,0],[\\\"deleteTask\\\"],null],[30,[36,0],[\\\"moveTask\\\"],null],[30,[36,0],[\\\"mergeTask\\\"],null],[30,[36,0],[\\\"newTimeSession\\\"],null]]]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"component\\\",\\\"model\\\",\\\"tasks-without-activity\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/inactive/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/index/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    queryParams: ['startDate', 'endDate'],\n    startDate: null,\n    endDate: null,\n    showingTeamMembers: Ember.computed.equal('model.user.id', 'all')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/index/route\", [\"exports\", \"web-app-ember-v2/mixins/user-changable-route\", \"web-app-ember-v2/mixins/validate-access-route-mixin\", \"web-app-ember-v2/mixins/task-management-route-mixin\", \"moment\", \"ember-local-storage\"], function (_exports, _userChangableRoute, _validateAccessRouteMixin, _taskManagementRouteMixin, _moment, _emberLocalStorage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_userChangableRoute.default, _validateAccessRouteMixin.default, _taskManagementRouteMixin.default, {\n    i18n: Ember.inject.service(),\n    router: Ember.inject.service(),\n    session: Ember.inject.service(),\n    summaryState: (0, _emberLocalStorage.storageFor)('summaryState'),\n    queryParams: {\n      startDate: {\n        refreshModel: true\n      },\n      endDate: {\n        refreshModel: true\n      }\n    },\n    groupingName: Ember.computed.readOnly('summaryState.selectedPeriod'),\n\n    beforeModel(transition) {\n      if (!transition.from || transition.to.name === transition.from.name) return;\n      /**\n       * NOTE: Preserve startDate & endDate query params from\n       *       the other views that also use these properties\n       */\n\n      this.transitionTo({\n        queryParams: {\n          startDate: transition.from.queryParams.startDate,\n          endDate: transition.from.queryParams.endDate\n        }\n      });\n    },\n\n    model(params) {\n      this._super(...arguments);\n\n      const startDateParam = params['startDate'];\n      const endDateParam = params['endDate'];\n      const user = this.get('userPreferences.currentUserFilter');\n      const workspace = this.get('userPreferences.currentWorkspaceFilter') || this.store.peekAll('workspace').get('firstObject');\n      const currentProjectId = this.get('userPreferences.currentProject.id');\n      const urlDateFormat = 'YYYY-MM-DD';\n      const startDate = startDateParam || (0, _moment.default)().startOf('month').format(urlDateFormat);\n      const endDate = endDateParam || (0, _moment.default)().format(urlDateFormat);\n      const showBillableDuration = this.get('userPreferences.showBillableDuration');\n      const groupingName = this.get('groupingName');\n      let requestParams = {\n        workspace_id: workspace.get('id'),\n        start_date: startDate,\n        end_date: endDate,\n        show_billable_duration: showBillableDuration,\n        grouping_name: groupingName\n      };\n\n      if (currentProjectId) {\n        requestParams['project_id'] = currentProjectId;\n      }\n\n      if (params.user_id !== \"all\") {\n        requestParams['user_id'] = params.user_id;\n      }\n\n      return this.store.query('task-summary', requestParams).then(rawTasks => {\n        return Ember.RSVP.hash({\n          startDateParam: startDateParam,\n          endDateParam: endDateParam,\n          tasks: this.tasks(groupingName, rawTasks),\n          user: user,\n          startDate: startDate,\n          endDate: endDate,\n          timeRoundings: this.store.findAll('time-rounding')\n        });\n      });\n    },\n\n    afterModel(model) {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('selectedUser', model.user);\n      workspacesShowController.set('hideUserInfo', false);\n      workspacesShowController.set('isTeamRoute', false);\n    },\n\n    tasks(groupingName, tasks) {\n      const groupingSuffix = groupingName == 'period' ? 'Summary' : 'Summaries';\n      const groupedTasksName = groupingName + groupingSuffix;\n      const summaryTasks = tasks.map(task => {\n        return task.getWithDefault(groupedTasksName, []).map(summary => {\n          return this.prepareSummary(task, summary);\n        });\n      });\n      return [].concat(...summaryTasks);\n    },\n\n    prepareSummary(task, summary) {\n      summary.id = task.get('id');\n      summary.title = task.get('title');\n      summary.totalSummary = task.get('totalSummary');\n      summary.totalSummarySinceStart = task.get('totalSummarySinceStart');\n      summary.projectName = task.get('project.name');\n      summary.tags = task.get('tags');\n      summary.projectId = task.get('project.id');\n      summary.externalResources = task.get('externalResources');\n      return summary;\n    },\n\n    actions: {\n      userSelected(workspaceId, projectId, userId) {\n        const queryParams = this.controller.getProperties('startDate', 'endDate');\n        this.transitionTo('authenticated.workspaces.show.projects.show.tasks.index', workspaceId, projectId, userId, {\n          queryParams: queryParams\n        });\n      },\n\n      dateChanged(startDate, endDate) {\n        this.transitionTo({\n          queryParams: {\n            startDate: startDate,\n            endDate: endDate\n          }\n        });\n      },\n\n      redirectToProject(projectId) {\n        const routeName = this.router.currentRouteName;\n        const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n        const userId = this.get('userPreferences.currentUserFilter.id');\n        this.transitionTo(routeName, workspaceId, projectId, userId);\n      },\n\n      reloadData() {\n        this.refresh();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/index/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"/eW9E8VW\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"tasks tasks-team-view clearfix\\\"],[12],[6,[37,5],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"tasks-team-view-date-header\\\"],[12],[1,[30,[36,4],null,[[\\\"startDate\\\",\\\"endDate\\\",\\\"dateChanged\\\",\\\"reloadData\\\",\\\"tasks\\\",\\\"selectedUser\\\",\\\"stats\\\",\\\"roundingOptions\\\"],[[35,1,[\\\"startDate\\\"]],[35,1,[\\\"endDate\\\"]],[30,[36,0],[\\\"dateChanged\\\"],null],[30,[36,0],[\\\"reloadData\\\"],null],true,[35,1,[\\\"user\\\"]],[35,1,[\\\"tasks\\\"]],[35,1,[\\\"timeRoundings\\\"]]]]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[35,6]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"startDate\\\",\\\"endDate\\\",\\\"tasks\\\",\\\"selectedUser\\\",\\\"roundingOptions\\\",\\\"moveTask\\\",\\\"mergeTask\\\",\\\"newTimeSession\\\",\\\"class\\\"],[[35,1,[\\\"startDateParam\\\"]],[35,1,[\\\"endDateParam\\\"]],[35,1,[\\\"tasks\\\"]],[35,1,[\\\"user\\\"]],[35,1,[\\\"timeRoundings\\\"]],[30,[36,0],[\\\"moveTask\\\"],null],[30,[36,0],[\\\"mergeTask\\\"],null],[30,[36,0],[\\\"newTimeSession\\\"],null],\\\"col-md-12\\\"]]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"startDate\\\",\\\"endDate\\\",\\\"tasks\\\",\\\"selectedUser\\\",\\\"roundingOptions\\\",\\\"moveTask\\\",\\\"mergeTask\\\",\\\"newTimeSession\\\",\\\"class\\\"],[[35,1,[\\\"startDateParam\\\"]],[35,1,[\\\"endDateParam\\\"]],[35,1,[\\\"tasks\\\"]],[35,1,[\\\"user\\\"]],[35,1,[\\\"timeRoundings\\\"]],[30,[36,0],[\\\"moveTask\\\"],null],[30,[36,0],[\\\"mergeTask\\\"],null],[30,[36,0],[\\\"newTimeSession\\\"],null],\\\"col-md-12\\\"]]]]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"model\\\",\\\"tasks-summary\\\",\\\"tasks-summary-team\\\",\\\"date-range\\\",\\\"sticky-bar\\\",\\\"showingTeamMembers\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/index/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/show/controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    queryParams: ['startDate', 'endDate'],\n    startDate: null,\n    endDate: null\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/show/route\", [\"exports\", \"moment\", \"web-app-ember-v2/mixins/user-changable-route\", \"web-app-ember-v2/mixins/validate-access-route-mixin\", \"web-app-ember-v2/mixins/task-management-route-mixin\"], function (_exports, _moment, _userChangableRoute, _validateAccessRouteMixin, _taskManagementRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_userChangableRoute.default, _validateAccessRouteMixin.default, _taskManagementRouteMixin.default, {\n    router: Ember.inject.service(),\n    queryParams: {\n      startDate: {\n        refreshModel: true\n      },\n      endDate: {\n        refreshModel: true\n      }\n    },\n\n    model(params) {\n      this._super(...arguments);\n\n      const taskSummaryParams = this.prepareParamsForQuery(params);\n      const taskSummary = this.store.queryRecord('task-summary', taskSummaryParams).then(rawTask => {\n        return rawTask.detailData();\n      });\n      return Ember.RSVP.hash({\n        taskSummary,\n        startDate: taskSummaryParams.start_date,\n        endDate: taskSummaryParams.end_date\n      });\n    },\n\n    afterModel() {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('hideUserInfo', true);\n      workspacesShowController.set('isTeamRoute', false);\n    },\n\n    prepareParamsForQuery(params) {\n      const urlDateFormat = 'YYYY-MM-DD';\n      const startDate = params['startDate'] || (0, _moment.default)().startOf('month').format(urlDateFormat);\n      const endDate = params['endDate'] || (0, _moment.default)().format(urlDateFormat);\n      const showBillableDuration = this.get('userPreferences.showBillableDuration');\n      const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n      return {\n        workspace_id: workspaceId,\n        start_date: startDate,\n        end_date: endDate,\n        task_id: params.task_id,\n        show_billable_duration: showBillableDuration\n      };\n    },\n\n    actions: {\n      reloadData() {\n        this.refresh();\n      },\n\n      redirectToProject(projectId) {\n        const routeName = 'authenticated.workspaces.show.projects.show.tasks.index';\n        const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n        const userId = this.get('userPreferences.currentUserFilter.id');\n        this.transitionTo(routeName, workspaceId, projectId, userId);\n      },\n\n      redirectBackOrToTasks() {\n        const previousRoute = this.router.previousRoute;\n        const previousRouteParams = this.router.previousRouteParams;\n\n        if (previousRoute.includes('/tasks')) {\n          const routeName = 'authenticated.workspaces.show.projects.show.tasks.index';\n          const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n          const queryParams = this.controller.getProperties('startDate', 'endDate');\n          const projectId = previousRouteParams['project_id'];\n          let userId = previousRouteParams['user_id'];\n\n          if (userId === 'all' && projectId === 'all') {\n            userId = this.get('userPreferences.currentUser.id');\n          }\n\n          this.transitionTo(routeName, workspaceId, projectId, userId, {\n            queryParams: queryParams\n          });\n        } else {\n          this.router.goBack();\n        }\n      },\n\n      dateChanged(startDate, endDate) {\n        this.transitionTo({\n          queryParams: {\n            startDate: startDate,\n            endDate: endDate\n          }\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/show/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"AMpZqmAR\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[1,[30,[36,2],null,[[\\\"startDate\\\",\\\"endDate\\\",\\\"taskDetail\\\",\\\"dateChanged\\\",\\\"reloadData\\\"],[[35,1,[\\\"startDate\\\"]],[35,1,[\\\"endDate\\\"]],true,[30,[36,0],[\\\"dateChanged\\\"],null],[30,[36,0],[\\\"reloadData\\\"],null]]]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-5 col-sm-7 col-xs-12 no-padding-right\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[11,\\\"i\\\"],[24,0,\\\"fa fa-arrow-circle-left fa-2x go-back-icon\\\"],[4,[38,3],[[32,0],\\\"redirectBackOrToTasks\\\"],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-11\\\"],[12],[1,[30,[36,4],null,[[\\\"task\\\",\\\"taskDetail\\\",\\\"isPeriod\\\",\\\"moveTask\\\",\\\"mergeTask\\\",\\\"newTimeSession\\\"],[[35,1,[\\\"taskSummary\\\"]],true,true,[30,[36,0],[\\\"moveTask\\\"],null],[30,[36,0],[\\\"mergeTask\\\"],null],[30,[36,0],[\\\"newTimeSession\\\"],null]]]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-7 col-sm-5 hidden-xs no-padding-right\\\"],[12],[1,[30,[36,5],[\\\"task-summary-row/users-summary\\\"],[[\\\"usersSummary\\\",\\\"isPeriod\\\"],[[35,1,[\\\"taskSummary\\\",\\\"usersSummary\\\"]],true]]]],[13],[13],[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[1,[30,[36,6],null,[[\\\"task\\\"],[[35,1,[\\\"taskSummary\\\"]]]]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"model\\\",\\\"date-range\\\",\\\"action\\\",\\\"task-summary-row\\\",\\\"component\\\",\\\"task-session-types-stats\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/show/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"0WLvwFi8\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/show/tasks/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/team/controller\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\"], function (_exports, _currentSelectors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend(_currentSelectors.default, {\n    userPreferences: Ember.inject.service(),\n    showInviteNewMemberModal: false,\n    currentWorkspaceFilter: Ember.computed.oneWay('userPreferences.currentWorkspaceFilter'),\n    currentProjectFilter: Ember.computed.oneWay('userPreferences.currentProject'),\n    canAddMember: Ember.computed('currentWorkspaceFilter', function () {\n      return this.get('currentWorkspaceFilter.permissions.create-members');\n    }),\n    canReadMembersActivity: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.permissions.read-members-activity');\n    }),\n    actions: {\n      showInviteNewMemberModal() {\n        this.set('showInviteNewMemberModal', true);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/team/route\", [\"exports\", \"jquery\", \"web-app-ember-v2/config/environment\"], function (_exports, _jquery, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend({\n    router: Ember.inject.service(),\n    session: Ember.inject.service(),\n\n    beforeModel() {\n      const workspacesShowController = this.controllerFor('authenticated.workspaces.show');\n      workspacesShowController.set('isTeamRoute', true);\n    },\n\n    model() {\n      const workspace = this.modelFor('authenticated.workspaces.show');\n      return Ember.RSVP.hash({\n        projects: workspace.get('projects').filterBy('suspended', false),\n        workspace: workspace,\n        filteredMembers: this.getMembers()\n      });\n    },\n\n    getMembers() {\n      const currentProjectId = this.get('userPreferences.currentProject.id');\n\n      if (currentProjectId) {\n        return this.getProjectMembers();\n      } else {\n        return this.getWorkspaceMembers();\n      }\n    },\n\n    getWorkspaceMembers() {\n      const workspaceMembersUrl = this.workspaceMembersUrl();\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'GET',\n            dataType: 'json',\n            url: workspaceMembersUrl,\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            Ember.run(() => {\n              this.store.pushPayload('user', response);\n              const members = response.data.map(response => {\n                let member = this.store.peekRecord('user', response.id);\n                return member;\n              });\n              resolve(members);\n            });\n          }).fail(error => {\n            reject(error);\n          });\n        });\n      });\n    },\n\n    getProjectMembers() {\n      const projectMembersUrl = this.projectMembersUrl();\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'GET',\n            dataType: 'json',\n            url: projectMembersUrl,\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            Ember.run(() => {\n              this.store.pushPayload('user', response);\n              const members = response.data.map(response => {\n                let member = this.store.peekRecord('user', response.id);\n                return member;\n              });\n              resolve(members);\n            });\n          }).fail(error => {\n            reject(error);\n          });\n        });\n      });\n    },\n\n    workspaceMembersUrl() {\n      return _environment.default.APP.backendUrl + '/api/workspaces/' + this.modelFor('authenticated.workspaces.show').get('id') + '/users';\n    },\n\n    projectMembersUrl() {\n      const currentProjectId = this.get('userPreferences.currentProject.id');\n      return _environment.default.APP.backendUrl + '/api/projects/' + currentProjectId + '/users';\n    },\n\n    actions: {\n      updateMember(member, role, suspended, checkedProjects, isTargetWorkspace, reload = true) {\n        const workspace = this.modelFor('authenticated.workspaces.show');\n        const data = {\n          user_id: member.id,\n          workspace: workspace.id,\n          assigned_projects: checkedProjects,\n          is_target_workspace: isTargetWorkspace\n        };\n\n        if (role) {\n          data.role = role;\n        }\n\n        if (suspended !== null) {\n          data.suspended = suspended;\n        }\n\n        workspace.updateMember(data).then(response => {\n          this.store.pushPayload('user', response);\n          this.get('showNotification').call('success', this.get('i18n').t('member.member-has-been-updated').string);\n\n          if (reload && this.userPreferences.getCurrentUser().id === response.data.id) {\n            Ember.run.later(this, function () {\n              location.reload(true);\n            }, 1000);\n          }\n        }).catch(response => {\n          for (let error of response.responseJSON.errors) {\n            this.showNotification.call('error', error.detail);\n          }\n        });\n      },\n\n      assignMemberToProject(member, project, assignmentType) {\n        const workspace = this.modelFor('authenticated.workspaces.show');\n        const data = {\n          user_id: member.id,\n          workspace: workspace.id,\n          project_id: project.id\n        };\n        workspace.assignMemberToProject(data).then(() => {\n          project.get('users').pushObject(member);\n          this.get('showNotification').call('success', this.get('i18n').t(`member.member-has-been-${assignmentType}-to-project`, {\n            projectName: project.get('name')\n          }).string);\n        }).catch(response => {\n          for (let error of response.responseJSON.errors) {\n            this.showNotification.call('error', error.detail);\n          }\n        });\n      },\n\n      inviteMembers(callback, role, emails, selectedProjectsIds, currentWorkspace, externalRoleSelected, consentConfirmation) {\n        const workspace = this.modelFor('authenticated.workspaces.show');\n        const data = {\n          workspace_id: workspace.get('id'),\n          role: role,\n          emails: emails,\n          current_workspace_id: currentWorkspace.get('id'),\n          email_owners_consent: consentConfirmation\n        };\n\n        if (externalRoleSelected) {\n          data['project_id'] = selectedProjectsIds[0];\n        } else {\n          data['project_ids'] = selectedProjectsIds;\n        }\n\n        return workspace.inviteMembers(data).then(() => {\n          Ember.run(() => {\n            this.showNotification.call('success', this.i18n.t('workspace-team-invitations.create.success').string); // NOTE: Refresh store for invited users\n\n            const users = this.store.peekAll('user');\n            emails.forEach(email => {\n              const filteredUser = users.filterBy('email', email)[0];\n\n              if (Ember.isPresent(filteredUser)) {\n                this.store.findRecord('user', filteredUser.id);\n              }\n            });\n            callback();\n          });\n        }).catch(response => {\n          Ember.run(() => {\n            (response.responseJSON.errors || []).forEach(error => {\n              this.showNotification.call('error', error.detail);\n            });\n          });\n        });\n      },\n\n      deleteMember(member) {\n        const workspace = this.get('userPreferences.currentWorkspaceFilter');\n        const showNotification = this.get('showNotification');\n        const i18n = this.get('i18n');\n        workspace.deleteMember(member, workspace).then(() => {\n          if (workspace.get('permissions.edit')) {\n            this.refresh();\n            member.unloadRecord();\n            showNotification.call('success', i18n.t('member.member-has-been-deleted').string);\n          } else {\n            workspace.unloadRecord();\n            showNotification.call('success', i18n.t('member.member-has-been-deleted').string);\n            this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace);\n          }\n        }).catch(response => {\n          for (let error of response.responseJSON.errors) {\n            this.showNotification.call('error', error.detail);\n          }\n        });\n      },\n\n      redirectToProject(projectId) {\n        const routeName = this.router.currentRouteName;\n        const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n        this.transitionTo(routeName, workspaceId, projectId);\n      },\n\n      reloadData() {\n        this.refresh();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/team/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"EhprbGVw\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row header-with-columns\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-6 col-sm-6 col-xs-7\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"pull-left team-header\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h3 team-title\\\"],[12],[6,[37,9],[[35,4]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"workspace-team.project-team\\\"],null]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,1],[\\\"workspace-team.workspace-team\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[11,\\\"a\\\"],[24,0,\\\"team-reload-data\\\"],[4,[38,0],[[32,0],\\\"reloadData\\\"],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-refresh\\\"],[12],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"pull-left show-tasks\\\"],[12],[6,[37,9],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,9],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],null,[[\\\"class\\\",\\\"route\\\",\\\"models\\\"],[\\\"btn btn-success\\\",\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,8],[[35,7],[35,6],\\\"all\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"projects.show-team-tasks\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-6 col-sm-6 col-xs-5 text-right team-header\\\"],[12],[6,[37,9],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],null,[[\\\"data-role\\\",\\\"class\\\",\\\"route\\\",\\\"model\\\"],[\\\"manage-team\\\",\\\"link-to-invitations\\\",\\\"authenticated.workspaces.show.invitations\\\",[35,2,[\\\"workspace\\\"]]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"workspace-team.show-invitations\\\"],null]]],\\\"parameters\\\":[]}]]],[2,\\\" \\\"],[6,[37,5],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"button\\\"],[24,\\\"data-role\\\",\\\"invite-new-member\\\"],[24,0,\\\"btn btn-success\\\"],[4,[38,0],[[32,0],\\\"showInviteNewMemberModal\\\"],null],[12],[1,[30,[36,1],[\\\"workspace-team.add-member\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[1,[30,[36,12],null,[[\\\"currentWorkspace\\\",\\\"workspaceMembers\\\",\\\"projects\\\",\\\"currentProject\\\"],[[35,2,[\\\"workspace\\\"]],[35,2,[\\\"filteredMembers\\\"]],[35,2,[\\\"projects\\\"]],[35,4]]]]],[13],[1,[30,[36,15],null,[[\\\"inviteToWorkspace\\\",\\\"model\\\",\\\"target\\\",\\\"inviteMembers\\\",\\\"modalOpen\\\",\\\"currentProject\\\"],[true,[35,2,[\\\"projects\\\"]],[35,2,[\\\"workspace\\\"]],[30,[36,14],[\\\"inviteMembers\\\"],null],[35,13],[35,4]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"model\\\",\\\"link-to\\\",\\\"currentProjectFilter\\\",\\\"unless\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"if\\\",\\\"canReadMembersActivity\\\",\\\"canAddMember\\\",\\\"workspace-team\\\",\\\"showInviteNewMemberModal\\\",\\\"route-action\\\",\\\"invite-new-member-form-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/show/team/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/show/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"38ise0kv\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/show/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/projects/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"293x9Ki1\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/projects/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/route\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend({\n    router: Ember.inject.service(),\n\n    model(params) {\n      const controller = this.controllerFor('authenticated.workspaces.show');\n\n      if (controller.get('activeUser')) {\n        this.store.query('user-status', {\n          workspace_id: params.workspace_id\n        });\n      }\n\n      return this.store.find('workspace', params.workspace_id);\n    },\n\n    afterModel(model) {\n      model = model || this.currentModel || this.store.peekAll('workspace').get('firstObject');\n      this.set('userPreferences.currentWorkspaceFilter', model);\n      return Ember.RSVP.all([model.get('projects'), model.get('timeSessions')]);\n    },\n\n    actions: {\n      loading(transition) {\n        let controller = this.controllerFor('authenticated.workspaces.show');\n        controller.set('currentlyLoading', true);\n        transition.promise.finally(function () {\n          controller.set('currentlyLoading', false);\n        });\n      },\n\n      updateMember(member, role, suspended, checkedProjects, isTargetWorkspace) {\n        const workspace = this.modelFor('authenticated.workspaces.show');\n        const data = {\n          user_id: member.id,\n          workspace: workspace.id,\n          suspended: suspended,\n          assigned_projects: checkedProjects,\n          is_target_workspace: isTargetWorkspace\n        };\n\n        if (role) {\n          data.role = role;\n        }\n\n        workspace.updateMember(data).then(response => {\n          const user = this.store.peekRecord('user', response['data']['id']);\n          this.store.pushPayload('user', response);\n          user.notifyPropertyChange('projects');\n          this.get('showNotification').call('success', this.get('i18n').t('member.member-has-been-updated').string);\n        }, response => {\n          for (let error of response.responseJSON.errors) {\n            this.showNotification.call('error', error.detail);\n          }\n        });\n      },\n\n      assignMemberToProject(member, project, assignmentType) {\n        const workspace = this.modelFor('authenticated.workspaces.show');\n        const data = {\n          user_id: member.id,\n          workspace: workspace.id,\n          project_id: project.id\n        };\n        workspace.assignMemberToProject(data).then(response => {\n          const message = this.get('i18n').t(`member.member-has-been-${assignmentType}-to-project`, {\n            projectName: project.get('name')\n          }).string;\n          this.store.pushPayload('user', response);\n          this.get('showNotification').call('success', message);\n        }, response => {\n          for (let error of response.responseJSON.errors) {\n            this.showNotification.call('error', error.detail);\n          }\n        });\n      },\n\n      deleteMember(member) {\n        const workspace = this.get('userPreferences.currentWorkspaceFilter');\n        const showNotification = this.get('showNotification');\n        const i18n = this.get('i18n');\n        workspace.deleteMember(member, workspace).then(() => {\n          if (workspace.get('permissions.edit')) {\n            this.refresh();\n            member.unloadRecord();\n            showNotification.call('success', i18n.t('member.member-has-been-deleted').string);\n          } else {\n            workspace.unloadRecord();\n            showNotification.call('success', i18n.t('member.member-has-been-deleted').string);\n            this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace);\n          }\n        }, response => {\n          for (let error of response.responseJSON.errors) {\n            this.showNotification.call('error', error.detail);\n          }\n        });\n      },\n\n      redirectOrRefresh(workspaceId, currentProjectId, currentUserId) {\n        const routeName = this.router.currentRouteName;\n\n        switch (routeName) {\n          case 'authenticated.workspaces.show.projects.show.activity':\n            // activity\n            if (this.get('userPreferences.currentUserFilter.id') === currentUserId) {\n              this.refresh();\n            } else {\n              this.transitionTo(routeName, workspaceId, currentProjectId, currentUserId);\n            }\n\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.reports': // reports\n\n          case 'authenticated.workspaces.show.projects.show.tasks.index':\n            // tasks\n            if (this.get('userPreferences.currentUserFilter.id') === currentUserId) {\n              this.refresh();\n            } else {\n              /**\n               * NOTE: Preserve startDate & endDate query params when the route\n               *       is refreshed (e.g. selected user has changed)\n               */\n              const controller = this.controllerFor(routeName);\n              const queryParams = controller.getProperties('startDate', 'endDate');\n              this.transitionTo(routeName, workspaceId, currentProjectId, currentUserId, {\n                queryParams\n              });\n            }\n\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.team': // team\n\n          case 'authenticated.workspaces.show.projects.show.tasks.show': // task details\n\n          case 'authenticated.workspaces.show.projects.show.tasks.inactive':\n            // inactive tasks\n            this.transitionTo('authenticated.workspaces.show.projects.show.tasks.index', workspaceId, currentProjectId, currentUserId);\n            break;\n        }\n      },\n\n      showTeamData() {\n        const routeName = this.router.currentRouteName;\n        const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n        const currentProjectId = this.get('userPreferences.currentProject.id');\n\n        if (currentProjectId) {\n          switch (routeName) {\n            case 'authenticated.workspaces.show.projects.show.reports': // reports\n\n            case 'authenticated.workspaces.show.projects.show.tasks.index':\n              // tasks\n              if (this.get('userPreferences.currentUserFilter.id') === 'all') {\n                this.refresh();\n              } else {\n                /**\n                 * NOTE: Preserve startDate & endDate query params\n                 *       when the team data is being shown\n                 */\n                const controller = this.controllerFor(routeName);\n                const queryParams = controller.getProperties('startDate', 'endDate');\n                this.transitionTo(routeName, workspaceId, currentProjectId, 'all', {\n                  queryParams\n                });\n              }\n\n              break;\n          }\n        }\n      },\n\n      redirectToProject(projectId) {\n        const routeName = this.router.currentRouteName;\n        const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n        const userId = this.get('userPreferences.currentUserFilter.id');\n        this.transitionTo(routeName, workspaceId, projectId, userId);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/show/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"nFjCSRNT\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,8],[[35,7]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,6],null,[[\\\"isTeamRoute\\\",\\\"redirectOrRefresh\\\",\\\"showTeamData\\\"],[[35,5],[30,[36,2],[\\\"redirectOrRefresh\\\"],null],[30,[36,2],[\\\"showTeamData\\\"],null]]]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"main-content\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"main-content-inner container-fluid\\\"],[12],[1,[30,[36,10],null,[[\\\"workspace\\\"],[[35,9]]]]],[6,[37,12],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,4],null,[[\\\"selectedUser\\\",\\\"userSelected\\\"],[[35,3],[30,[36,2],[\\\"userSelected\\\"],null]]]]]],\\\"parameters\\\":[]}]]],[6,[37,8],[[35,13]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"stats-loader\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"preloader-fade\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"preloader\\\"],[12],[13],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\",\\\"route-action\\\",\\\"selectedUser\\\",\\\"user-info\\\",\\\"isTeamRoute\\\",\\\"workspace-members-status\\\",\\\"activeUser\\\",\\\"if\\\",\\\"model\\\",\\\"alert-box\\\",\\\"canShowUserInfo\\\",\\\"unless\\\",\\\"currentlyLoading\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/show/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticated/workspaces/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"RDKNSDAF\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/authenticated/workspaces/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/authenticators/oauth2\", [\"exports\", \"ember-simple-auth/authenticators/oauth2-password-grant\", \"web-app-ember-v2/config/environment\"], function (_exports, _oauth2PasswordGrant, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _oauth2PasswordGrant.default.extend({\n    serverTokenEndpoint: _environment.default.APP.backendUrl + '/token'\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/component-managers/glimmer\", [\"exports\", \"@glimmer/component/-private/ember-component-manager\"], function (_exports, _emberComponentManager) {\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 _emberComponentManager.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/activities-collection/component\", [\"exports\", \"moment\", \"jquery\"], function (_exports, _moment, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    navbarOffset: 50,\n\n    didInsertElement() {\n      this._super(...arguments);\n\n      const timestamp = (0, _moment.default)(this.get('timestamp')).format('ddd MMM DD Y');\n      Ember.run.later(function () {\n        const elementToScroll = (0, _jquery.default)(`h4:contains(${timestamp})`);\n        const userNavbarHeight = (0, _jquery.default)('.user-nav-bar').height();\n        const navbarOffset = 50;\n\n        if (elementToScroll.length > 0) {\n          const navBarHeight = (0, _jquery.default)('.navbar-collapse').height() + userNavbarHeight + navbarOffset;\n          let scrollTop = elementToScroll.offset().top - navBarHeight;\n\n          if (window.outerWidth <= 767) {\n            scrollTop = elementToScroll.offset().top - (0, _jquery.default)('.navbar-header').height() - navBarHeight - navbarOffset;\n            (0, _jquery.default)('body, html').animate({\n              scrollTop\n            }, 'slow');\n          } else {\n            (0, _jquery.default)('.main-content').animate({\n              scrollTop\n            }, 'slow');\n          }\n        }\n      }, 500);\n    },\n\n    actions: {\n      infinityLoadActivities(activities) {\n        this.loadMoreActivities(activities);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/activities-collection/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"hXl+IyKN\",\n    \"block\": \"{\\\"symbols\\\":[\\\"activity\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row activities\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-9\\\"],[12],[6,[37,11],[[30,[36,10],[[30,[36,10],[[35,9]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[32,1,[\\\"groupDay\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"hr\\\"],[15,\\\"title\\\",[31,[[30,[36,0],[\\\"authenticated.activity.spacer-title\\\"],null]]]],[14,0,\\\"activities-divider\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"row activities-item-header\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[6,[37,2],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[16,\\\"title\\\",[31,[[30,[36,0],[\\\"authenticated.reports.download-daily\\\"],null]]]],[24,0,\\\"pull-right\\\"],[4,[38,5],[[32,0],[30,[36,4],[\\\"openReportsModal\\\",[35,3],[32,1,[\\\"groupDay\\\"]]],null]],null],[12],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-download-alt\\\"],[12],[13],[1,[30,[36,0],[\\\"authenticated.reports.download-daily\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[10,\\\"h4\\\"],[12],[1,[30,[36,7],[[32,1,[\\\"groupDay\\\"]]],null]],[13],[13],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"row activities-item\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[30,[36,8],null,[[\\\"activity\\\",\\\"startOngoingTimeSession\\\",\\\"stopOngoingTimeSession\\\"],[[32,1],[30,[36,4],[\\\"resumeTimeSession\\\"],null],[30,[36,4],[\\\"stopOngoingTimeSession\\\"],null]]]]],[13],[13]],\\\"parameters\\\":[1]}]]],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 infinity-loader-col\\\"],[12],[6,[37,12],null,[[\\\"infinityModel\\\",\\\"infinityLoad\\\"],[[35,1],[30,[36,5],[[32,0],\\\"infinityLoadActivities\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"loading-info\\\"],[12],[6,[37,2],[[35,1,[\\\"reachedInfinity\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"loading-info__text\\\"],[12],[1,[30,[36,0],[\\\"infinity-loader.no-more-entries\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"glyphicon glyphicon-ban-circle\\\"],[12],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"loading-info__text\\\"],[12],[1,[30,[36,0],[\\\"infinity-loader.loading-more-entries\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"glyphicon animated glyphicon-repeat\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"activities\\\",\\\"if\\\",\\\"activityUser\\\",\\\"route-action\\\",\\\"action\\\",\\\"canDownloadMemberActivity\\\",\\\"day-format\\\",\\\"activity-component\\\",\\\"sortedActivities\\\",\\\"-track-array\\\",\\\"each\\\",\\\"infinity-loader\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/activities-collection/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/activity-component/component\", [\"exports\", \"moment\", \"ember-i18n\", \"web-app-ember-v2/helpers/mardown-convert\"], function (_exports, _moment, _emberI18n, _mardownConvert) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const {\n    escapeExpression\n  } = Ember.Handlebars.Utils;\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    commitDetailsVisible: false,\n    isTimeSessionActivity: Ember.computed.equal('activitableType', 'timesession'),\n    isPresenceActivity: Ember.computed.equal('activitableType', 'presence'),\n    isCommitActivity: Ember.computed.equal('activitableType', 'commit'),\n    isSummaryActivity: Ember.computed.equal('activitableType', 'summary'),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    activitableType: Ember.computed('activity.activitableType', function () {\n      if (this.get('activity.activitableType')) {\n        return this.get('activity.activitableType').toLowerCase();\n      } else {\n        return 'timesession';\n      }\n    }),\n    activitable: Ember.computed('activity.activitable', function () {\n      return this.activity.get('activitable');\n    }),\n    presenceTypeClass: Ember.computed('sessionType', function () {\n      if (!this.get('sessionType')) {\n        return this.activity.get('activitable.presenceType');\n      }\n    }),\n    presenceTypeLabel: Ember.computed('sessionType', function () {\n      if (!this.get('sessionType')) {\n        const label = 'presence-dropdown.' + this.activity.get('activitable.presenceType');\n        return this.get('i18n').t(label);\n      }\n    }),\n    occurredAtLabel: Ember.computed('activity', function () {\n      return this.formatDate(this.activity.get('occurredAt'));\n    }),\n    beBackAtLabel: Ember.computed('activity', function () {\n      if (this.activity.get('activitable.presenceType') === 'away') {\n        return this.get('i18n').t('presence-dropdown.away-label', {\n          beBackAt: this.formatDate(this.activity.get('activitable.beBackAt'))\n        });\n      }\n    }),\n    commitMessage: Ember.computed('activitable.message', function () {\n      const message = this.get('activitable.message');\n      return message.split(\"\\n\")[0];\n    }),\n    commitBaseStats: Ember.computed('activitable.stats', function () {\n      const stats = this.get('activitable.stats');\n      return `+ ${stats['lines_inserted']} / - ${stats['lines_deleted']}`;\n    }),\n    summaryDescription: Ember.computed('activitable.description', function () {\n      let sessionTypeName = this.get('activitable.description') || \"\";\n      let convertData = (0, _mardownConvert.mardownConvert)(escapeExpression(sessionTypeName));\n      let emberString = Ember.String.htmlSafe(convertData);\n      return emberString;\n    }),\n    summaryProject: (0, _emberI18n.translationMacro)('activity-component.summary-title', {\n      projectName: 'projectName'\n    }),\n    projectName: Ember.computed.readOnly('activitable.project.name'),\n\n    formatDate(date) {\n      return (0, _moment.default)(date).tz(this.get('currentUserTimezone')).format('HH:mm');\n    },\n\n    actions: {\n      toggleCommitDetails() {\n        const commitDetailsVisible = this.get('commitDetailsVisible');\n        this.set('commitDetailsVisible', !commitDetailsVisible);\n      },\n\n      startOngoingTimeSession(timeSession) {\n        this.startOngoingTimeSession(timeSession);\n      },\n\n      stopOngoingTimeSession(timeSession) {\n        this.stopOngoingTimeSession(timeSession);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/activity-component/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"nU1l3TVJ\",\n    \"block\": \"{\\\"symbols\\\":[\\\"file\\\"],\\\"statements\\\":[[6,[37,6],[[35,22]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[30,[36,21],null,[[\\\"activity\\\",\\\"startOngoingTimeSession\\\",\\\"stopOngoingTimeSession\\\"],[[35,19],[30,[36,8],[[32,0],\\\"startOngoingTimeSession\\\"],null],[30,[36,8],[[32,0],\\\"stopOngoingTimeSession\\\"],null]]]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,6],[[35,20]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"row activities-presence \\\",[34,16]]]],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-2 col-lg-1 text-center\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"activities-text\\\"],[12],[1,[34,4]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8 col-md-5\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"activities-text\\\"],[12],[1,[34,17]],[1,[34,18]],[6,[37,6],[[35,19,[\\\"clockOutBySystem\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-exclamation-triangle clocked_out_by_system_icon\\\"],[12],[6,[37,15],null,[[\\\"side\\\"],[\\\"right\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,14],[\\\"activity-tooltip-content.clocked-out-by-system-tooltip\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,6],[[35,13]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row activities-summary\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-2 col-lg-1 text-center\\\"],[12],[10,\\\"span\\\"],[14,\\\"data-test-summary-time\\\",\\\"\\\"],[14,0,\\\"activities-text\\\"],[12],[1,[34,4]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-lg-11\\\"],[12],[10,\\\"span\\\"],[14,\\\"data-test-summary-project\\\",\\\"\\\"],[14,0,\\\"activities-text\\\"],[12],[1,[34,11]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"clearfix\\\"],[12],[13],[10,\\\"div\\\"],[14,\\\"data-test-summary-description\\\",\\\"\\\"],[14,0,\\\"col-xs-12 col-sm-8 col-md-8 markdown-body\\\"],[12],[1,[34,12]],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,6],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row activities-commit\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-2 col-lg-1 text-center\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"activities-text\\\"],[12],[1,[34,4]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8 col-md-11\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"activities-text activities-commit--message\\\"],[12],[1,[34,5]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"clearfix\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-xs-offset-2 col-lg-offset-1 col-sm-8 col-md-8\\\"],[12],[10,\\\"p\\\"],[12],[10,\\\"small\\\"],[12],[6,[37,6],[[35,0,[\\\"link\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"a\\\"],[15,6,[34,0,[\\\"link\\\"]]],[14,\\\"target\\\",\\\"_blank\\\"],[15,\\\"rel\\\",[34,3]],[12],[1,[35,0,[\\\"repo\\\"]]],[2,\\\" \\\"],[1,[35,0,[\\\"sha\\\"]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[35,0,[\\\"repo\\\"]]],[2,\\\" \\\"],[1,[35,0,[\\\"sha\\\"]]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-3 col-md-3 text-right\\\"],[12],[10,\\\"p\\\"],[12],[10,\\\"small\\\"],[12],[1,[34,7]],[13],[11,\\\"a\\\"],[24,0,\\\"activities-commit--icon-details\\\"],[4,[38,8],[[32,0],\\\"toggleCommitDetails\\\"],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-list-alt\\\"],[12],[13],[13],[13],[13],[6,[37,6],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"clearfix\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-xs-offset-2 col-lg-offset-1 col-sm-11 col-md-11\\\"],[12],[10,\\\"strong\\\"],[12],[2,\\\"Changed files:\\\"],[13],[10,\\\"div\\\"],[14,0,\\\"activity-commit-details\\\"],[12],[6,[37,2],[[30,[36,1],[[30,[36,1],[[35,0,[\\\"stats\\\",\\\"files_changed\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[14,0,\\\"activity-commit-details--file\\\"],[12],[1,[32,1]],[13]],\\\"parameters\\\":[1]}]]],[13],[13],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"activitable\\\",\\\"-track-array\\\",\\\"each\\\",\\\"noreferrer\\\",\\\"occurredAtLabel\\\",\\\"commitMessage\\\",\\\"if\\\",\\\"commitBaseStats\\\",\\\"action\\\",\\\"commitDetailsVisible\\\",\\\"isCommitActivity\\\",\\\"summaryProject\\\",\\\"summaryDescription\\\",\\\"isSummaryActivity\\\",\\\"t\\\",\\\"tooltip-on-element\\\",\\\"presenceTypeClass\\\",\\\"presenceTypeLabel\\\",\\\"beBackAtLabel\\\",\\\"activity\\\",\\\"isPresenceActivity\\\",\\\"activity-time-session\\\",\\\"isTimeSessionActivity\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/activity-component/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/activity-time-session/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    store: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    timeSession: Ember.computed('activity', function () {\n      const activitable_type = this.activity.get('activitable.content').constructor.modelName;\n\n      if (activitable_type === 'time-session') {\n        return this.activity.get('activitable');\n      }\n    }),\n    actions: {\n      startOngoingTimeSession(timeSession) {\n        this.startOngoingTimeSession(timeSession);\n      },\n\n      stopOngoingTimeSession(timeSession) {\n        this.stopOngoingTimeSession(timeSession);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/activity-time-session/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"S3jHgFmt\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row activities-time-session\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-2 col-lg-1 text-center\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"activities-text\\\"],[12],[10,\\\"span\\\"],[12],[1,[30,[36,2],[[35,1,[\\\"endedAt\\\"]],[35,0]],null]],[13],[10,\\\"br\\\"],[12],[13],[10,\\\"small\\\"],[12],[2,\\\"|\\\"],[13],[10,\\\"br\\\"],[12],[13],[10,\\\"span\\\"],[12],[1,[30,[36,2],[[35,1,[\\\"startedAt\\\"]],[35,0]],null]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-lg-11\\\"],[12],[1,[30,[36,5],null,[[\\\"timeSession\\\",\\\"tagName\\\",\\\"startOngoingTimeSession\\\",\\\"stopOngoingTimeSession\\\",\\\"redirectToProject\\\"],[[35,1],\\\"\\\",[30,[36,4],[[32,0],\\\"startOngoingTimeSession\\\"],null],[30,[36,4],[[32,0],\\\"stopOngoingTimeSession\\\"],null],[30,[36,3],[\\\"redirectToProject\\\"],null]]]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"currentUserTimezone\\\",\\\"timeSession\\\",\\\"format-time\\\",\\\"route-action\\\",\\\"action\\\",\\\"time-session\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/activity-time-session/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/add-new-member-widget/component\", [\"exports\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, {\n    i18n: Ember.inject.service(),\n    classNames: 'col-md-12 col-sm-12 col-xs-12 team-member-container list',\n    defaultInternalRole: 'manager',\n    defaultExternalRole: 'external_manager',\n    role: '',\n    newMemberEmails: '',\n    externalRoleSelected: Ember.computed.equal('type', 'external'),\n    canAddMember: Ember.computed.and('userPreferences.currentProject.permissions.edit', 'userPreferences.currentWorkspaceFilter.permissions.create-internal-members-roles'),\n    roles: Ember.computed('type', 'internalProjectRoles', 'externalProjectRoles', function () {\n      if (this.get('type') === 'internal') {\n        return this.get('internalProjectRoles');\n      } else {\n        return this.get('externalProjectRoles');\n      }\n    }),\n    labelName: Ember.computed('type', function () {\n      return `invitation-consent-confirmation-${this.get('type')}`;\n    }),\n\n    init() {\n      this.set('internalProjectRoles', [{\n        value: 'manager',\n        label: this.i18n.t('member-role.manager')\n      }, {\n        value: 'staff',\n        label: this.i18n.t('member-role.staff')\n      }, {\n        value: 'limited_staff',\n        label: this.i18n.t('member-role.limited_staff')\n      }]);\n      this.set('externalProjectRoles', [{\n        value: 'external_manager',\n        label: this.i18n.t('member-role.external_manager')\n      }, {\n        value: 'external_staff',\n        label: this.i18n.t('member-role.external_staff')\n      }]);\n      this.setDefaultValues();\n      this.set('sendSetDefaultsAction', this.get('setDefaultValues').bind(this));\n\n      this._super(...arguments);\n    },\n\n    setDefaultValues: function () {\n      if (this.get('type') === 'internal') {\n        this.set('role', this.get('defaultInternalRole'));\n      } else {\n        this.set('role', this.get('defaultExternalRole'));\n      }\n\n      this.set('newMemberEmails', '');\n      this.set('consentConfirmation', false);\n    },\n    actions: {\n      changeRole(role) {\n        this.set('invitingRole', role);\n      },\n\n      submit() {\n        if (this.saveBtnDisabled) return;\n        this.set(\"saveBtnDisabled\", true);\n        this.showSpinner();\n        this.inviteMembers(this.get('sendSetDefaultsAction'), this.get('role'), this.get('newMemberEmails').split(', '), [this.get('userPreferences.currentProject.id')], this.get('userPreferences.currentWorkspaceFilter'), this.get('externalRoleSelected'), this.get('consentConfirmation')).finally(() => {\n          this.set(\"saveBtnDisabled\", false);\n          this.hideSpinner();\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/add-new-member-widget/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"0ocDJt3T\",\n    \"block\": \"{\\\"symbols\\\":[\\\"projectRole\\\",\\\"role\\\"],\\\"statements\\\":[[6,[37,14],[[35,13]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"media add-new-member\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"media-left\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"team-member-status\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"member-avatar\\\"],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-plus add-member-icon\\\"],[12],[13],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"media-body\\\"],[12],[1,[30,[36,5],null,[[\\\"value\\\",\\\"class\\\",\\\"placeholder\\\"],[[35,4],\\\"add-new-member-input form-control\\\",[30,[36,3],[\\\"add-new-member-widget.input-placeholder\\\"],null]]]]],[10,\\\"h6\\\"],[14,0,\\\"form-group required consent-confirmation\\\"],[12],[1,[30,[36,8],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[35,7],[35,6]]]]],[10,\\\"label\\\"],[15,\\\"for\\\",[34,7]],[12],[1,[30,[36,3],[\\\"invite-new-member-form-modal.consent-confirmation\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"actions\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"radio-buttons\\\"],[12],[6,[37,11],[[30,[36,10],[[30,[36,10],[[35,9]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\"],[[32,1,[\\\"value\\\"]],[35,1],[30,[36,0],[[32,0],\\\"changeRole\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"btn btn-default btn-sm\\\"],[12],[1,[32,1,[\\\"label\\\"]]],[13]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[1]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[11,\\\"div\\\"],[16,\\\"disabled\\\",[34,12]],[24,0,\\\"add-new-member-button btn btn-success\\\"],[4,[38,0],[[32,0],\\\"submit\\\"],null],[12],[10,\\\"span\\\"],[12],[1,[30,[36,3],[\\\"add-new-member-widget.add-member-button\\\"],null]],[13],[13],[13],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"role\\\",\\\"radio-button\\\",\\\"t\\\",\\\"newMemberEmails\\\",\\\"textarea\\\",\\\"consentConfirmation\\\",\\\"labelName\\\",\\\"input\\\",\\\"roles\\\",\\\"-track-array\\\",\\\"each\\\",\\\"saveBtnDisabled\\\",\\\"canAddMember\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/add-new-member-widget/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/alert-box/component\", [\"exports\", \"ember-get-config\"], function (_exports, _emberGetConfig) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    router: Ember.inject.service(),\n    linkToCrx: _emberGetConfig.default.APP.urls.crx,\n    hasNoProjects: Ember.computed.not('workspace.projects.firstObject.id'),\n    onNewProjectRoute: Ember.computed.equal('router.currentRouteName', 'authenticated.workspaces.show.projects.new'),\n    notOnNewProjectRoute: Ember.computed.not('onNewProjectRoute'),\n    currentWorkspaceFilter: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter');\n    }),\n    currentWorkspaceFilterId: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.id');\n    }),\n    canCreateProject: Ember.computed('currentWorkspaceFilter', function () {\n      return this.get('currentWorkspaceFilter.permissions.create-projects');\n    }),\n    isWarningCrxVisible: Ember.computed.not('userPreferences.isHiddenCrxInfo'),\n    isProjectsAlertDismissed: false,\n    isProjectsAlertVisible: Ember.computed('isProjectsAlertDismissed', 'notOnNewProjectRoute', 'hasNoProjects', 'canCreateProject', function () {\n      return !this.get('isProjectsAlertDismissed') && this.get('notOnNewProjectRoute') && this.get('hasNoProjects') && this.get('canCreateProject');\n    }),\n\n    goToCrxDownload() {\n      window.open(this.linkToCrx, '_blank');\n    },\n\n    dismissAlert() {\n      let userPreferences = this.get('userPreferences');\n      userPreferences.hideCrxInfo().then(() => {\n        userPreferences.set('isHiddenCrxInfo', true);\n      });\n    },\n\n    actions: {\n      hasNoProjectAlertDismissed: function () {\n        this.set('isProjectsAlertDismissed', true);\n      },\n      dismissAlertAndGoToCrxPage: function () {\n        this.dismissAlert();\n        this.goToCrxDownload();\n      },\n\n      dismissAlert() {\n        this.dismissAlert();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/alert-box/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"kYnC8amK\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[6,[37,6],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],null,[[\\\"type\\\",\\\"onDismiss\\\"],[\\\"warning\\\",[30,[36,0],[[32,0],\\\"hasNoProjectAlertDismissed\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,4],null,[[\\\"route\\\",\\\"model\\\"],[\\\"authenticated.workspaces.show.projects.new\\\",[35,3]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"projects.no-projects\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,6],[[35,7]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],null,[[\\\"type\\\",\\\"onDismiss\\\"],[\\\"warning\\\",[30,[36,0],[[32,0],\\\"dismissAlert\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,\\\"rel\\\",\\\"noopener\\\"],[4,[38,0],[[32,0],\\\"dismissAlertAndGoToCrxPage\\\"],null],[12],[1,[30,[36,1],[\\\"link-to-crx.text\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"bs-alert\\\",\\\"currentWorkspaceFilterId\\\",\\\"link-to\\\",\\\"isProjectsAlertVisible\\\",\\\"if\\\",\\\"isWarningCrxVisible\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/alert-box/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/basic-dropdown-hover\", [\"exports\", \"ember-basic-dropdown-hover/components/basic-dropdown-hover\"], function (_exports, _basicDropdownHover) {\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 _basicDropdownHover.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/basic-dropdown\", [\"exports\", \"ember-basic-dropdown/components/basic-dropdown\"], function (_exports, _basicDropdown) {\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 _basicDropdown.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/basic-dropdown/content-element\", [\"exports\", \"ember-basic-dropdown/components/basic-dropdown/content-element\"], function (_exports, _contentElement) {\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 _contentElement.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/basic-dropdown/content\", [\"exports\", \"ember-basic-dropdown/components/basic-dropdown/content\"], function (_exports, _content) {\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 _content.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/basic-dropdown/trigger\", [\"exports\", \"ember-basic-dropdown/components/basic-dropdown/trigger\"], function (_exports, _trigger) {\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 _trigger.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/billing-reports-table/component\", [\"exports\", \"web-app-ember-v2/mixins/download-billing-report-mixin\"], function (_exports, _downloadBillingReportMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_downloadBillingReportMixin.default, {\n    dateFormat: Ember.computed.readOnly('userPreferences.currentUser.fullDateFormat'),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    selectedBillingReports: Ember.computed('billingReports', 'userPreferences.currentProject', 'showBillingReportDeleteModal', function () {\n      const projectId = this.get('userPreferences.currentProject.id');\n      const billingReports = this.get('billingReports');\n\n      if (projectId) {\n        return this.get('billingReports').filter(billingReport => {\n          return billingReport.get('project.id') === projectId;\n        });\n      } else {\n        return billingReports;\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/billing-reports-table/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"t/LxTs8M\",\n    \"block\": \"{\\\"symbols\\\":[\\\"billingReport\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"invitations-list\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[10,\\\"table\\\"],[14,0,\\\"table\\\"],[12],[10,\\\"thead\\\"],[12],[10,\\\"tr\\\"],[12],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.period-start\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.period-end\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.project-name\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.creator-name\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.action\\\"],null]],[13],[13],[13],[10,\\\"tbody\\\"],[12],[6,[37,8],[[30,[36,7],[[30,[36,7],[[35,6]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"tr\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"td\\\"],[12],[1,[30,[36,3],[[32,1,[\\\"periodStart\\\"]],[35,2],[35,1]],null]],[13],[10,\\\"td\\\"],[12],[1,[30,[36,3],[[32,1,[\\\"periodEnd\\\"]],[35,2],[35,1]],null]],[13],[10,\\\"td\\\"],[12],[1,[32,1,[\\\"project\\\",\\\"name\\\"]]],[13],[10,\\\"td\\\"],[12],[1,[32,1,[\\\"creator\\\",\\\"fullName\\\"]]],[13],[10,\\\"td\\\"],[12],[11,\\\"div\\\"],[16,\\\"title\\\",[31,[[30,[36,0],[\\\"billing-reports-table.download-report\\\"],null]]]],[24,0,\\\"glyphicon glyphicon-download-alt billing-report-download-report-icon text-info\\\"],[4,[38,4],[[32,0],\\\"downloadReport\\\",[32,1,[\\\"reportUrl\\\"]]],null],[12],[6,[37,5],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.download-report\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[11,\\\"div\\\"],[24,\\\"data-role\\\",\\\"delete-billing-report\\\"],[24,0,\\\"glyphicon glyphicon-trash text-danger\\\"],[4,[38,4],[[32,0],\\\"openDeleteBillingReportModal\\\",[32,1]],null],[12],[6,[37,5],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.remove-report-tooltip\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"parameters\\\":[1]}]]],[13],[13],[13],[13],[1,[30,[36,11],null,[[\\\"showBillingReportDeleteModal\\\",\\\"billingReportToDelete\\\"],[[35,10],[35,9]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"currentUserTimezone\\\",\\\"dateFormat\\\",\\\"format-date\\\",\\\"action\\\",\\\"tooltip-on-element\\\",\\\"selectedBillingReports\\\",\\\"-track-array\\\",\\\"each\\\",\\\"billingReportToDelete\\\",\\\"showBillingReportDeleteModal\\\",\\\"delete-billing-report-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/billing-reports-table/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/bs-accordion\", [\"exports\", \"ember-bootstrap/components/bs-accordion\"], function (_exports, _bsAccordion) {\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 _bsAccordion.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-accordion/item\", [\"exports\", \"ember-bootstrap/components/bs-accordion/item\"], function (_exports, _item) {\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 _item.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-accordion/item/body\", [\"exports\", \"ember-bootstrap/components/bs-accordion/item/body\"], function (_exports, _body) {\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 _body.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-accordion/item/title\", [\"exports\", \"ember-bootstrap/components/bs-accordion/item/title\"], function (_exports, _title) {\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 _title.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-alert\", [\"exports\", \"ember-bootstrap/components/bs-alert\"], function (_exports, _bsAlert) {\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 _bsAlert.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-button-group\", [\"exports\", \"ember-bootstrap/components/bs-button-group\"], function (_exports, _bsButtonGroup) {\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 _bsButtonGroup.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-button-group/button\", [\"exports\", \"ember-bootstrap/components/bs-button-group/button\"], function (_exports, _button) {\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 _button.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-button\", [\"exports\", \"ember-bootstrap/components/bs-button\"], function (_exports, _bsButton) {\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 _bsButton.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-carousel\", [\"exports\", \"ember-bootstrap/components/bs-carousel\"], function (_exports, _bsCarousel) {\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 _bsCarousel.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-carousel/slide\", [\"exports\", \"ember-bootstrap/components/bs-carousel/slide\"], function (_exports, _slide) {\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 _slide.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-collapse\", [\"exports\", \"ember-bootstrap/components/bs-collapse\"], function (_exports, _bsCollapse) {\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 _bsCollapse.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-datetimepicker\", [\"exports\", \"ember-bootstrap-datetimepicker/components/bs-datetimepicker\"], function (_exports, _bsDatetimepicker) {\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 _bsDatetimepicker.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-dropdown\", [\"exports\", \"ember-bootstrap/components/bs-dropdown\"], function (_exports, _bsDropdown) {\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 _bsDropdown.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-dropdown/button\", [\"exports\", \"ember-bootstrap/components/bs-dropdown/button\"], function (_exports, _button) {\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 _button.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-dropdown/menu\", [\"exports\", \"ember-bootstrap/components/bs-dropdown/menu\"], function (_exports, _menu) {\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 _menu.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-dropdown/menu/divider\", [\"exports\", \"ember-bootstrap/components/bs-dropdown/menu/divider\"], function (_exports, _divider) {\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 _divider.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-dropdown/menu/item\", [\"exports\", \"ember-bootstrap/components/bs-dropdown/menu/item\"], function (_exports, _item) {\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 _item.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-dropdown/menu/link-to\", [\"exports\", \"ember-bootstrap/components/bs-dropdown/menu/link-to\"], function (_exports, _linkTo) {\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 _linkTo.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-dropdown/toggle\", [\"exports\", \"ember-bootstrap/components/bs-dropdown/toggle\"], function (_exports, _toggle) {\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 _toggle.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form\", [\"exports\", \"ember-bootstrap/components/bs-form\"], function (_exports, _bsForm) {\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 _bsForm.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element\", [\"exports\", \"ember-bootstrap/components/bs-form/element\"], function (_exports, _element) {\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 _element.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/control\", [\"exports\", \"ember-bootstrap/components/bs-form/element/control\"], function (_exports, _control) {\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 _control.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/control/checkbox\", [\"exports\", \"ember-bootstrap/components/bs-form/element/control/checkbox\"], function (_exports, _checkbox) {\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 _checkbox.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/control/input\", [\"exports\", \"ember-bootstrap/components/bs-form/element/control/input\"], function (_exports, _input) {\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 _input.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/control/radio\", [\"exports\", \"ember-bootstrap/components/bs-form/element/control/radio\"], function (_exports, _radio) {\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 _radio.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/control/textarea\", [\"exports\", \"ember-bootstrap/components/bs-form/element/control/textarea\"], function (_exports, _textarea) {\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 _textarea.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/errors\", [\"exports\", \"ember-bootstrap/components/bs-form/element/errors\"], function (_exports, _errors) {\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 _errors.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/feedback-icon\", [\"exports\", \"ember-bootstrap/components/bs-form/element/feedback-icon\"], function (_exports, _feedbackIcon) {\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 _feedbackIcon.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/help-text\", [\"exports\", \"ember-bootstrap/components/bs-form/element/help-text\"], function (_exports, _helpText) {\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 _helpText.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/label\", [\"exports\", \"ember-bootstrap/components/bs-form/element/label\"], function (_exports, _label) {\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 _label.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/layout/horizontal\", [\"exports\", \"ember-bootstrap/components/bs-form/element/layout/horizontal\"], function (_exports, _horizontal) {\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 _horizontal.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/layout/horizontal/checkbox\", [\"exports\", \"ember-bootstrap/components/bs-form/element/layout/horizontal/checkbox\"], function (_exports, _checkbox) {\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 _checkbox.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/layout/inline\", [\"exports\", \"ember-bootstrap/components/bs-form/element/layout/inline\"], function (_exports, _inline) {\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 _inline.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/layout/inline/checkbox\", [\"exports\", \"ember-bootstrap/components/bs-form/element/layout/inline/checkbox\"], function (_exports, _checkbox) {\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 _checkbox.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/layout/vertical\", [\"exports\", \"ember-bootstrap/components/bs-form/element/layout/vertical\"], function (_exports, _vertical) {\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 _vertical.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/element/layout/vertical/checkbox\", [\"exports\", \"ember-bootstrap/components/bs-form/element/layout/vertical/checkbox\"], function (_exports, _checkbox) {\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 _checkbox.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-form/group\", [\"exports\", \"ember-bootstrap/components/bs-form/group\"], function (_exports, _group) {\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 _group.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-modal-simple\", [\"exports\", \"ember-bootstrap/components/bs-modal-simple\"], function (_exports, _bsModalSimple) {\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 _bsModalSimple.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-modal\", [\"exports\", \"ember-bootstrap/components/bs-modal\"], function (_exports, _bsModal) {\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 _bsModal.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-modal/body\", [\"exports\", \"ember-bootstrap/components/bs-modal/body\"], function (_exports, _body) {\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 _body.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-modal/dialog\", [\"exports\", \"ember-bootstrap/components/bs-modal/dialog\"], function (_exports, _dialog) {\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 _dialog.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-modal/footer\", [\"exports\", \"ember-bootstrap/components/bs-modal/footer\"], function (_exports, _footer) {\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 _footer.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-modal/header\", [\"exports\", \"ember-bootstrap/components/bs-modal/header\"], function (_exports, _header) {\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 _header.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-modal/header/close\", [\"exports\", \"ember-bootstrap/components/bs-modal/header/close\"], function (_exports, _close) {\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 _close.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-modal/header/title\", [\"exports\", \"ember-bootstrap/components/bs-modal/header/title\"], function (_exports, _title) {\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 _title.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-nav\", [\"exports\", \"ember-bootstrap/components/bs-nav\"], function (_exports, _bsNav) {\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 _bsNav.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-nav/item\", [\"exports\", \"ember-bootstrap/components/bs-nav/item\"], function (_exports, _item) {\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 _item.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-nav/link-to\", [\"exports\", \"ember-bootstrap/components/bs-nav/link-to\"], function (_exports, _linkTo) {\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 _linkTo.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-navbar\", [\"exports\", \"ember-bootstrap/components/bs-navbar\"], function (_exports, _bsNavbar) {\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 _bsNavbar.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-navbar/content\", [\"exports\", \"ember-bootstrap/components/bs-navbar/content\"], function (_exports, _content) {\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 _content.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-navbar/link-to\", [\"exports\", \"ember-bootstrap/components/bs-navbar/link-to\"], function (_exports, _linkTo) {\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 _linkTo.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-navbar/nav\", [\"exports\", \"ember-bootstrap/components/bs-navbar/nav\"], function (_exports, _nav) {\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 _nav.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-navbar/toggle\", [\"exports\", \"ember-bootstrap/components/bs-navbar/toggle\"], function (_exports, _toggle) {\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 _toggle.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-popover\", [\"exports\", \"ember-bootstrap/components/bs-popover\"], function (_exports, _bsPopover) {\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 _bsPopover.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-popover/element\", [\"exports\", \"ember-bootstrap/components/bs-popover/element\"], function (_exports, _element) {\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 _element.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-progress\", [\"exports\", \"ember-bootstrap/components/bs-progress\"], function (_exports, _bsProgress) {\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 _bsProgress.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-progress/bar\", [\"exports\", \"ember-bootstrap/components/bs-progress/bar\"], function (_exports, _bar) {\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 _bar.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-tab\", [\"exports\", \"ember-bootstrap/components/bs-tab\"], function (_exports, _bsTab) {\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 _bsTab.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-tab/pane\", [\"exports\", \"ember-bootstrap/components/bs-tab/pane\"], function (_exports, _pane) {\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 _pane.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-tooltip\", [\"exports\", \"ember-bootstrap/components/bs-tooltip\"], function (_exports, _bsTooltip) {\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 _bsTooltip.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/bs-tooltip/element\", [\"exports\", \"ember-bootstrap/components/bs-tooltip/element\"], function (_exports, _element) {\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 _element.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/change-password-form/component\", [\"exports\", \"web-app-ember-v2/components/change-password-form/template\", \"web-app-ember-v2/mixins/autofocus\"], function (_exports, _template, _autofocus) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_autofocus.default, {\n    layout: _template.default,\n    actions: {\n      changePassword(model) {\n        this.changePassword(model);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/change-password-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"SBES5G29\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"change-password-form\\\"],[12],[6,[37,6],[[35,5]],[[\\\"submit\\\"],[[30,[36,4],[[32,0],\\\"changePassword\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h2\\\"],[12],[1,[30,[36,0],[\\\"change-password-form.change-password\\\"],null]],[13],[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/change-password-form/template.hbs' @ L1:C149) \\\"],null],\\\"password\\\"],[[\\\"control\\\",\\\"fieldClasses\\\"],[\\\"form-controls/password-input\\\",\\\"form-group first-child\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],[[30,[36,1],[[32,3,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/change-password-form/template.hbs' @ L1:C263) \\\"],null]],[[\\\"placeholder\\\",\\\"autocomplete\\\",\\\"class\\\",\\\"autofocus\\\"],[[30,[36,0],[\\\"change-password-form.password\\\"],null],\\\"new-password\\\",\\\"input-lg form-control\\\",\\\"true\\\"]]]]],\\\"parameters\\\":[3]}]]],[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/change-password-form/template.hbs' @ L1:C420) \\\"],null],\\\"passwordConfirmation\\\"],[[\\\"control\\\",\\\"fieldClasses\\\"],[\\\"form-controls/password-input\\\",\\\"form-group first-child\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],[[30,[36,1],[[32,2,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/change-password-form/template.hbs' @ L1:C546) \\\"],null]],[[\\\"placeholder\\\",\\\"class\\\"],[[30,[36,0],[\\\"change-password-form.password-confirmation\\\"],null],\\\"input-lg form-control\\\"]]]]],\\\"parameters\\\":[2]}]]],[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/change-password-form/template.hbs' @ L1:C670) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"change-password-form.change-password\\\"],null],\\\"btn-lg btn-block btn btn-default btn-primary\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"account-text\\\"],[12],[1,[30,[36,0],[\\\"change-password-form.have-an-account\\\"],null]],[2,\\\" \\\"],[6,[37,3],null,[[\\\"route\\\"],[\\\"sign-in\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"change-password-form.sign-in\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"link-to\\\",\\\"action\\\",\\\"model\\\",\\\"form-for\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/change-password-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/color-picker\", [\"exports\", \"ember-pickr/components/color-picker\"], function (_exports, _colorPicker) {\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 _colorPicker.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/confirmation-dialog/component\", [\"exports\", \"web-app-ember-v2/components/confirmation-dialog/template\"], function (_exports, _template) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    layout: _template.default,\n    open: true,\n    header: 'Are you sure?',\n    text: 'Are you absolutely sure you want to do this?',\n    confirm: 'Confirm',\n    confirmType: 'danger',\n    cancel: 'Cancel',\n    actions: {\n      submit() {\n        this.onConfirm();\n      },\n\n      close() {\n        this.set('open', false);\n\n        if (Ember.isPresent(this.onCancel)) {\n          this.onCancel();\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/confirmation-dialog/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"sU5t6Np7\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,10],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,9],[30,[36,6],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,5],[[30,[36,4],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/confirmation-dialog/template.hbs' @ L1:C63) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[34,3]],[13]],\\\"parameters\\\":[]}]]],[6,[37,5],[[30,[36,4],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/confirmation-dialog/template.hbs' @ L1:C136) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[34,2]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,7],null,[[\\\"onClick\\\"],[[30,[36,6],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[34,1]]],\\\"parameters\\\":[]}]]],[6,[37,7],null,[[\\\"onClick\\\",\\\"type\\\",\\\"ariaRole\\\"],[[30,[36,6],[[32,0],\\\"submit\\\"],null],[35,8],\\\"confirmation-dialog-confirm\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[34,0]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"confirm\\\",\\\"cancel\\\",\\\"text\\\",\\\"header\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"confirmType\\\",\\\"open\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/confirmation-dialog/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/crop-image-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    // modal options\n    backdropClose: false,\n    modalOpen: false,\n    size: \"lg\",\n    croppedImage: null,\n    actions: {\n      close() {\n        this.set('modalOpen', false);\n      },\n\n      submitCroppedImage() {\n        this.get(\"onSubmit\")(this.get(\"croppedImage\"));\n        this.send(\"close\");\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/crop-image-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"biSJH3vI\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,12],null,[[\\\"open\\\",\\\"onHidden\\\",\\\"backdropClose\\\",\\\"size\\\"],[[35,11],[30,[36,3],[[32,0],\\\"close\\\"],null],[35,10],[35,9]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,8],[[30,[36,7],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/crop-image-modal/template.hbs' @ L1:C106) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"edit-profile-avatar.crop-modal-title\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,8],[[30,[36,7],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/crop-image-modal/template.hbs' @ L1:C213) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"extra-modal-space\\\"],[12],[1,[30,[36,5],null,[[\\\"croppedImage\\\",\\\"imageMimeType\\\",\\\"onImageCropped\\\"],[[35,1],[35,4],[30,[36,3],[[32,0],[30,[36,2],[[35,1]],null]],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,6],null,[[\\\"type\\\",\\\"onClick\\\"],[\\\"default\\\",[30,[36,3],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"modal.button.cancel\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,6],null,[[\\\"type\\\",\\\"onClick\\\"],[\\\"primary\\\",[30,[36,3],[[32,0],\\\"submitCroppedImage\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"modal.button.accept\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"croppedImage\\\",\\\"mut\\\",\\\"action\\\",\\\"imageMimeType\\\",\\\"image-cropper\\\",\\\"bs-button\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"size\\\",\\\"backdropClose\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/crop-image-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-format-power-select/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    dateFormatOptions: Ember.computed.alias('userPreferences.dateFormatOptions'),\n    dateFormat: Ember.computed.or('model.dateFormat', 'userPreferences.currentDateFormat.value'),\n    selectedDateFormat: Ember.computed('dateFormat', function () {\n      return this.get('dateFormatOptions').filter(item => {\n        return item.value.match(this.get('dateFormat'));\n      })[0];\n    }),\n    actions: {\n      selectDateFormat(format) {\n        this.set('selectedDateFormat', format);\n        this.set('model.dateFormat', format.value);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-format-power-select/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"YVrpR8KX\",\n    \"block\": \"{\\\"symbols\\\":[\\\"date\\\"],\\\"statements\\\":[[1,[30,[36,0],[\\\"date-format-select.date-format\\\"],null]],[6,[37,4],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"searchEnabled\\\"],[[35,3],[35,2],[30,[36,1],[[32,0],\\\"selectDateFormat\\\"],null],\\\"value\\\",false]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,1,[\\\"label\\\"]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"action\\\",\\\"selectedDateFormat\\\",\\\"dateFormatOptions\\\",\\\"power-select\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/date-format-power-select/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-format-select/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    dateFormatOptions: Object.freeze([{\n      value: 'MDY',\n      label: 'MM/DD/YYYY'\n    }, {\n      value: 'DMY',\n      label: 'DD-MM-YYYY'\n    }]),\n    selectedDateFormat: Ember.computed('selectedDateFormat', function () {\n      const dateFormat = this.get('dateFormat');\n\n      if (Ember.isPresent(dateFormat)) {\n        return this.get('dateFormatOptions').filter(item => {\n          return item.value.match(dateFormat);\n        })[0];\n      } else {\n        return this.get('dateFormatOptions')[0];\n      }\n    }),\n    actions: {\n      selected(dateFormat) {\n        this.set('selectedDateFormat', dateFormat);\n        this.setDateFormat(dateFormat.value);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-format-select/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"c76JeSxH\",\n    \"block\": \"{\\\"symbols\\\":[\\\"dateFormat\\\"],\\\"statements\\\":[[6,[37,3],null,[[\\\"options\\\",\\\"selected\\\",\\\"searchEnabled\\\",\\\"class\\\",\\\"onchange\\\",\\\"searchField\\\"],[[35,2],[35,1],false,\\\"form-control\\\",[30,[36,0],[[32,0],\\\"selected\\\"],null],\\\"label\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,1,[\\\"label\\\"]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"selectedDateFormat\\\",\\\"dateFormatOptions\\\",\\\"power-select\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/date-format-select/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-range-picker\", [\"exports\", \"ember-cli-daterangepicker/components/date-range-picker\"], function (_exports, _dateRangePicker) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _dateRangePicker.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-range-user-dropdown-actions/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"web-app-ember-v2/mixins/user-permissions\"], function (_exports, _currentSelectors, _userPermissions) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_userPermissions.default, _currentSelectors.default, {\n    currentProject: Ember.computed.readOnly('userPreferences.currentProject'),\n    showBillableDuration: Ember.computed.alias('userPreferences.showBillableDuration'),\n    showTasksWithoutActivityAction: Ember.computed.and('tasks', 'currentProject'),\n    showDropdownActions: Ember.computed.or('showTasksWithoutActivityAction', 'canReadBillableDuration'),\n    actions: {\n      toggleBillableDuration() {\n        this.userPreferences.toggleBillableDuration();\n        this.reloadData();\n      },\n\n      reloadData() {\n        this.reloadData();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-range-user-dropdown-actions/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"HzQFnLob\",\n    \"block\": \"{\\\"symbols\\\":[\\\"dd\\\",\\\"ddm\\\"],\\\"statements\\\":[[6,[37,9],[[35,13]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"user-select-dropdown\\\"],[12],[6,[37,12],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[32,1,[\\\"button\\\"]],\\\"expected `dd.button` to be a contextual component but found a string. Did you mean `(component dd.button)`? ('web-app-ember-v2/components/date-range-user-dropdown-actions/template.hbs' @ L1:C88) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-cog\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,6],[[32,1,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/date-range-user-dropdown-actions/template.hbs' @ L1:C141) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,9],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[32,2,[\\\"item\\\"]],\\\"expected `ddm.item` to be a contextual component but found a string. Did you mean `(component ddm.item)`? ('web-app-ember-v2/components/date-range-user-dropdown-actions/template.hbs' @ L1:C193) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,\\\"data-test-sticky-bar-billable-duration\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"toggleBillableDuration\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-eye\\\"],[12],[13],[6,[37,9],[[35,8]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"date-range.show-tracked-time\\\"],null]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,1],[\\\"date-range.show-billable-time\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,9],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[32,2,[\\\"item\\\"]],\\\"expected `ddm.item` to be a contextual component but found a string. Did you mean `(component ddm.item)`? ('web-app-ember-v2/components/date-range-user-dropdown-actions/template.hbs' @ L1:C487) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,5],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.inactive\\\",[30,[36,4],[[35,3],[35,2]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-calendar-times-o\\\"],[12],[13],[1,[30,[36,1],[\\\"date-range.show-tasks-without-activity\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[1,[32,2,[\\\"divider\\\"]]],[6,[37,7],[[30,[36,6],[[32,2,[\\\"item\\\"]],\\\"expected `ddm.item` to be a contextual component but found a string. Did you mean `(component ddm.item)`? ('web-app-ember-v2/components/date-range-user-dropdown-actions/template.hbs' @ L1:C752) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,\\\"data-test-sticky-bar-reload-view\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"reloadData\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-refresh\\\"],[12],[13],[1,[30,[36,1],[\\\"date-range.reload-view\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[1]}]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[11,\\\"a\\\"],[24,0,\\\"user-select-reload-data\\\"],[4,[38,0],[[32,0],\\\"reloadData\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-refresh\\\"],[12],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"showBillableDuration\\\",\\\"if\\\",\\\"canReadBillableDuration\\\",\\\"showTasksWithoutActivityAction\\\",\\\"bs-dropdown\\\",\\\"showDropdownActions\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/date-range-user-dropdown-actions/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-range/component\", [\"exports\", \"moment\", \"ember-cli-moment-business\", \"ember-local-storage\", \"web-app-ember-v2/helpers/minutes-to-duration\", \"ember-keyboard-shortcuts\"], function (_exports, _moment, _emberCliMomentBusiness, _emberLocalStorage, _minutesToDuration, _emberKeyboardShortcuts) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const urlDateFormat = 'YYYY-MM-DD';\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    isDownloadTasksReportModal: false,\n\n    init() {\n      this.ric = window.requestIdleCallback || setTimeout;\n      this.ranges = this.ranges || {};\n      this.updateRanges();\n\n      this._super();\n\n      this.minYear = this.minYear || 2010;\n      this.maxYear = this.maxYear || (0, _moment.default)().add(1, 'years');\n      this.summaryOptions = [{\n        value: 'daily',\n        label: this.get('i18n').t('authenticated.tasks.daily-summary')\n      }, {\n        value: 'weekly',\n        label: this.get('i18n').t('authenticated.tasks.weekly-summary')\n      }, {\n        value: 'period',\n        label: this.get('i18n').t('authenticated.tasks.period-summary')\n      }];\n      this.scheduleRangesUpdate();\n      this.keyboardShortcuts = {\n        'n': {\n          action: 'handleKeyNShortcut',\n          global: false\n        },\n        'd': {\n          action: 'handleKeyDShortcut',\n          global: false\n        }\n      };\n    },\n\n    didInsertElement() {\n      this._super(...arguments);\n\n      (0, _emberKeyboardShortcuts.bindKeyboardShortcuts)(this);\n    },\n\n    willDestroyElement() {\n      this._super(...arguments);\n\n      (0, _emberKeyboardShortcuts.unbindKeyboardShortcuts)(this);\n    },\n\n    scheduleRangesUpdate: function () {\n      Ember.run.later(this, function () {\n        this.get('ric')(() => {\n          Ember.run.next(() => {\n            if (!this.isDestroyed) {\n              this.updateRanges();\n              this.scheduleRangesUpdate();\n            }\n          });\n        });\n      }, 60000);\n    },\n    updateRanges: function () {\n      this.set('ranges', {\n        \"Today\": [_moment.default.tz(this.get('currentUserTimezone')).startOf('day'), _moment.default.tz(this.get('currentUserTimezone')).endOf('day')],\n        \"This month\": [_moment.default.tz(this.get('currentUserTimezone')).startOf('month'), _moment.default.tz(this.get('currentUserTimezone')).endOf('month')],\n        \"Last month\": [_moment.default.tz(this.get('currentUserTimezone')).subtract(1, 'months').startOf('month'), _moment.default.tz(this.get('currentUserTimezone')).subtract(1, 'months').endOf('month')],\n        \"Since last month\": [_moment.default.tz(this.get('currentUserTimezone')).subtract(1, 'months').startOf('month'), _moment.default.tz(this.get('currentUserTimezone')).endOf('month')],\n        \"This week\": [_moment.default.tz(this.get('currentUserTimezone')).startOf('week'), _moment.default.tz(this.get('currentUserTimezone')).endOf('week')],\n        \"Last week\": [_moment.default.tz(this.get('currentUserTimezone')).subtract(1, 'weeks').startOf('week'), _moment.default.tz(this.get('currentUserTimezone')).subtract(1, 'weeks').endOf('week')],\n        \"Since last week\": [_moment.default.tz(this.get('currentUserTimezone')).subtract(1, 'weeks').startOf('week'), _moment.default.tz(this.get('currentUserTimezone')).endOf('week')],\n        \"Last full two weeks\": [_moment.default.tz(this.get('currentUserTimezone')).subtract(2, 'weeks').startOf('week'), _moment.default.tz(this.get('currentUserTimezone')).subtract(1, 'weeks').endOf('week')]\n      });\n    },\n    dateFormat: Ember.computed.readOnly('userPreferences.currentUser.fullDateFormat'),\n    tooltipFormatInMinutes: Ember.computed.not('formatInMinutes'),\n    selectedUser: Ember.computed.or('selectedUser', 'userPreferences.currentUserFilter', 'userPreferences.currentUser'),\n    showingTeamMembers: Ember.computed.equal('selectedUser.id', 'all'),\n    selectedStartDate: Ember.computed('startDate', function () {\n      return (0, _moment.default)(this.get('startDate'), urlDateFormat);\n    }),\n    selectedEndDate: Ember.computed('endDate', function () {\n      return (0, _moment.default)(this.get('endDate'), urlDateFormat);\n    }),\n    workDays: Ember.computed('selectedStartDate', 'selectedEndDate', function () {\n      return this.diffWorkDays(this.get('selectedStartDate'), (0, _moment.default)(this.get('selectedEndDate')).add(1, 'days'));\n    }),\n    selectedOneUser: Ember.computed('selectedUser', function () {\n      return this.get('selectedUser.id') !== 'all';\n    }),\n    manHours: Ember.computed('workDays', function () {\n      return this.get('workDays') * 8;\n    }),\n    totalTime: Ember.computed('stats', function () {\n      const stats = this.get('stats');\n\n      if (Ember.isPresent(stats.total_time)) {\n        return stats.total_time;\n      } else {\n        return stats.reduce(function (memo, stat) {\n          return memo + stat.summaryDuration;\n        }, 0);\n      }\n    }),\n    formatedTotalTime: Ember.computed('stats', 'formatInMinutes', 'totalTime', function () {\n      const stats = this.get('stats');\n\n      if (this.get('formatInMinutes')) {\n        return (0, _minutesToDuration.minutesToDuration)([this.get('totalTime'), this.get('formatInMinutes')]);\n      } else {\n        if (Ember.isPresent(stats.weekly_daily_stats)) {\n          let totalTimeFromRows = stats.weekly_daily_stats.reduce(function (memo, weekStat) {\n            let hoursWithRoundedFraction = weekStat.daily_stats.reduce(function (memoDay, dayStat) {\n              return memoDay + Math.round(Math.ceil(dayStat.duration / 60 * 10) / 10 * 10) / 10;\n            }, 0);\n            return memo + hoursWithRoundedFraction;\n          }, 0);\n          return totalTimeFromRows.toFixed(1);\n        } else if (Ember.isPresent(stats.user_stats) && Object.keys(stats.user_stats).length > 0) {\n          let hoursWithRoundedFraction = Object.values(stats.user_stats).reduce(function (memoUser, userStat) {\n            let weeklyFormatedUserStat = userStat.weekly_daily_stats.reduce(function (memoWeek, weeklyStat) {\n              let dailyFormatedUserStat = weeklyStat.daily_stats.reduce(function (memoDay, dayStat) {\n                return memoDay + Math.round(Math.ceil(dayStat.duration / 60 * 10) / 10 * 10) / 10;\n              }, 0);\n              return memoWeek + dailyFormatedUserStat;\n            }, 0);\n            return memoUser + weeklyFormatedUserStat;\n          }, 0);\n          return hoursWithRoundedFraction.toFixed(1);\n        } else if (Ember.isPresent(stats.total_time)) {\n          return (0, _minutesToDuration.minutesToDuration)([stats.total_time, this.get('formatInMinutes')]);\n        } else {\n          let totalTimeFromRows = stats.reduce(function (memo, stat) {\n            let hoursWithRoundedFraction = Math.round(Math.ceil(stat.summaryDuration / 60 * 10) / 10 * 10) / 10;\n\n            if (Ember.isPresent(stat.usersSummary)) {\n              hoursWithRoundedFraction = stat.usersSummary.reduce(function (memoUser, userStat) {\n                if (Ember.isPresent(userStat.weeklySummary)) {\n                  return memoUser + Math.round(Math.ceil(userStat.weeklySummary / 60 * 10) / 10 * 10) / 10;\n                } else if (Ember.isPresent(userStat.dailySummary)) {\n                  return memoUser + Math.round(Math.ceil(userStat.dailySummary / 60 * 10) / 10 * 10) / 10;\n                } else {\n                  return memoUser + Math.round(Math.ceil(userStat.periodSummary / 60 * 10) / 10 * 10) / 10;\n                }\n              }, 0);\n            }\n\n            return memo + hoursWithRoundedFraction;\n          }, 0);\n          return totalTimeFromRows.toFixed(1);\n        }\n      }\n\n      ;\n    }),\n    formatInMinutes: Ember.computed('userPreferences.{tasksDurationFormatMinutes,statsDurationFormatMinutes}', function () {\n      const {\n        tasks,\n        userPreferences\n      } = this.getProperties('tasks', 'userPreferences');\n\n      if (tasks) {\n        return userPreferences.get('tasksDurationFormatMinutes');\n      } else {\n        return userPreferences.get('statsDurationFormatMinutes');\n      }\n    }),\n    summaryState: (0, _emberLocalStorage.storageFor)('summaryState'),\n    selectedPeriod: Ember.computed('summaryState.selectedPeriod', function () {\n      const selectedPeriod = this.get('summaryState.selectedPeriod');\n      return this.get('summaryOptions').find(opt => opt.value === selectedPeriod);\n    }),\n    canReadMemberStatuses: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.permissions.read-members-statuses');\n    }),\n    canDownloadUserReports: Ember.computed('userPreferences.currentUserFilter.permissions', function () {\n      return this.get('userPreferences.currentUserFilter.permissions.download-reports');\n    }),\n    canDownloadTeamMembersReports: Ember.computed('userPreferences.currentProject.permissions', function () {\n      return this.get('userPreferences.currentProject.permissions.download-team-reports');\n    }),\n    canDownloadMemberActivity: Ember.computed('canReadMemberStatuses', 'canDownloadUserReports', 'canDownloadTeamMembersReports', 'userPreferences.currentUserFilter.id', function () {\n      if (this.get('userPreferences.currentUserFilter.id') === this.get('userPreferences').getCurrentUser().get('id')) {\n        return true;\n      } else if (this.get('userPreferences.currentUserFilter.id') === 'all') {\n        return this.get('canDownloadTeamMembersReports');\n      } else {\n        return this.get('canReadMemberStatuses') && this.get('canDownloadUserReports');\n      }\n    }),\n\n    diffWorkDays(startDate, endDate) {\n      return _emberCliMomentBusiness.default.getWeekDays((0, _moment.default)(startDate).startOf('day'), (0, _moment.default)(endDate).endOf('day'));\n    },\n\n    actions: {\n      handleKeyNShortcut() {\n        this.set('isDownloadTasksReportModal', false);\n      },\n\n      handleKeyDShortcut() {\n        if (this.canDownloadMemberActivity && !this.isDownloadTasksReportModal) {\n          this.actions.showDownloadTasksReportModal.call(this);\n        }\n      },\n\n      dateChanged() {\n        const startDate = (0, _moment.default)(this.get('selectedStartDate')).format(urlDateFormat);\n        const endDate = (0, _moment.default)(this.get('selectedEndDate')).format(urlDateFormat);\n        this.dateChanged(startDate, endDate);\n        this.updateRanges();\n      },\n\n      summaryChanged(option) {\n        this.set('summaryState.selectedPeriod', option.value);\n        Ember.run.next(this, function () {\n          this.reloadData();\n        });\n      },\n\n      showDownloadTasksReportModal() {\n        this.set('downloadStartDate', this.get('selectedStartDate').format(urlDateFormat));\n        this.set('downloadEndDate', this.get('selectedEndDate').format(urlDateFormat));\n        this.set('isDownloadTasksReportModal', true);\n      },\n\n      reloadData() {\n        this.reloadData();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/date-range/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"rk8sM9kU\",\n    \"block\": \"{\\\"symbols\\\":[\\\"summary\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row user-select-row\\\"],[12],[6,[37,21],[[35,33]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"user-select-col col-md-8 col-sm-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-select-actions\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-select-date-picker\\\"],[12],[1,[30,[36,14],null,[[\\\"showDropdowns\\\",\\\"minDate\\\",\\\"maxDate\\\",\\\"firstDay\\\",\\\"ranges\\\",\\\"start\\\",\\\"end\\\",\\\"applyAction\\\",\\\"alwaysShowCalendars\\\",\\\"dateLimit\\\",\\\"parentEl\\\"],[true,[35,13],[35,12],1,[35,11],[35,10],[35,9],[30,[36,8],[[32,0],\\\"dateChanged\\\"],null],true,[35,7],\\\".user-select-actions\\\"]]]],[1,[30,[36,15],null,[[\\\"reloadData\\\"],[[30,[36,4],[\\\"reloadData\\\"],null]]]]],[13],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,21],[[35,31]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"user-select-col \\\",[30,[36,21],[[35,28],\\\"team-tasks-view col-xs-12 no-padding-right\\\",\\\"tasks-view col-sm-12\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"user-select-wrapper\\\"],[12],[1,[30,[36,6],null,[[\\\"checkCompactVersion\\\",\\\"selectedUser\\\",\\\"userSelected\\\"],[true,[35,5],[30,[36,4],[\\\"userSelected\\\"],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"user-select-actions\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-select-date-picker\\\"],[12],[1,[30,[36,14],null,[[\\\"showDropdowns\\\",\\\"minDate\\\",\\\"maxDate\\\",\\\"firstDay\\\",\\\"ranges\\\",\\\"start\\\",\\\"end\\\",\\\"applyAction\\\",\\\"alwaysShowCalendars\\\",\\\"dateLimit\\\",\\\"parentEl\\\"],[true,[35,13],[35,12],1,[35,11],[35,10],[35,9],[30,[36,8],[[32,0],\\\"dateChanged\\\"],null],true,[35,7],\\\".user-select-actions\\\"]]]],[13],[10,\\\"div\\\"],[14,0,\\\"summary-period\\\"],[12],[6,[37,30],null,[[\\\"options\\\",\\\"selected\\\",\\\"searchEnabled\\\",\\\"onchange\\\",\\\"required\\\",\\\"searchField\\\"],[[35,29],[35,22],false,[30,[36,8],[[32,0],\\\"summaryChanged\\\"],null],true,\\\"label\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,1,[\\\"label\\\"]]]],\\\"parameters\\\":[1]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"user-select-date-picker\\\"],[12],[1,[30,[36,15],null,[[\\\"tasks\\\",\\\"reloadData\\\"],[[35,31],[30,[36,4],[\\\"reloadData\\\"],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"filler\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"sum-duration\\\"],[12],[10,\\\"h4\\\"],[14,0,\\\"day-title\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"pull-right minutes-duration\\\"],[12],[1,[34,16]],[6,[37,17],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[\\\"authenticated.tasks.total-time-period\\\"],[[\\\"time\\\"],[[30,[36,2],[[35,1],[35,0]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[6,[37,21],[[35,32]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"download-link\\\"],[12],[11,\\\"a\\\"],[16,\\\"title\\\",[31,[[30,[36,3],[\\\"authenticated.reports.download-tooltip\\\"],null]]]],[24,0,\\\"glyphicon glyphicon-download-alt\\\"],[4,[38,8],[[32,0],\\\"showDownloadTasksReportModal\\\"],null],[12],[13],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13],[6,[37,21],[[35,32]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,27],null,[[\\\"modalOpen\\\",\\\"selectedUser\\\",\\\"startDate\\\",\\\"endDate\\\",\\\"roundingOptions\\\",\\\"selectedPeriod\\\",\\\"checkboxClass\\\"],[[35,26],[35,5],[35,25],[35,24],[35,23],[35,22,[\\\"value\\\"]],\\\"date-range-include-external-system-with-task\\\"]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,21],[[35,20]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-sm-3 col-xs-12 user-select-col\\\"],[12],[1,[30,[36,6],null,[[\\\"compact\\\",\\\"selectedUser\\\",\\\"userSelected\\\"],[true,[35,5],[30,[36,4],[\\\"userSelected\\\"],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-sm-6 col-xs-8 with-user-select\\\"],[12],[1,[30,[36,14],null,[[\\\"showDropdowns\\\",\\\"minDate\\\",\\\"maxDate\\\",\\\"firstDay\\\",\\\"ranges\\\",\\\"start\\\",\\\"end\\\",\\\"applyAction\\\",\\\"alwaysShowCalendars\\\",\\\"dateLimit\\\",\\\"parentEl\\\"],[true,[35,13],[35,12],1,[35,11],[35,10],[35,9],[30,[36,8],[[32,0],\\\"dateChanged\\\"],null],true,[35,7],\\\".day-stats-advanced-date-picker\\\"]]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[1,[30,[36,15],null,[[\\\"reloadData\\\"],[[30,[36,4],[\\\"reloadData\\\"],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-sm-offset-1 col-sm-1 col-xs-offset-2 col-xs-1 no-padding-right\\\"],[12],[10,\\\"h4\\\"],[14,0,\\\"day-title\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"pull-right minutes-duration\\\"],[12],[1,[34,16]],[6,[37,17],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[\\\"authenticated.tasks.total-time-period\\\"],[[\\\"time\\\"],[[30,[36,2],[[35,1],[35,0]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row col-md-12 col-xs-10\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"work-days\\\"],[12],[1,[30,[36,3],[\\\"date-range.work-days-info\\\"],[[\\\"workDays\\\",\\\"manHours\\\"],[[35,19],[35,18]]]]],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-8 col-sm-12 user-select-col\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-select-wrapper\\\"],[12],[1,[30,[36,6],null,[[\\\"checkCompactVersion\\\",\\\"selectedUser\\\",\\\"userSelected\\\"],[true,[35,5],[30,[36,4],[\\\"userSelected\\\"],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"user-select-actions\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-select-date-picker\\\"],[12],[1,[30,[36,14],null,[[\\\"showDropdowns\\\",\\\"minDate\\\",\\\"maxDate\\\",\\\"firstDay\\\",\\\"ranges\\\",\\\"start\\\",\\\"end\\\",\\\"applyAction\\\",\\\"alwaysShowCalendars\\\",\\\"dateLimit\\\",\\\"parentEl\\\"],[true,[35,13],[35,12],1,[35,11],[35,10],[35,9],[30,[36,8],[[32,0],\\\"dateChanged\\\"],null],true,[35,7],\\\".user-select-actions\\\"]]]],[1,[30,[36,15],null,[[\\\"reloadData\\\"],[[30,[36,4],[\\\"reloadData\\\"],null]]]]],[13],[10,\\\"h4\\\"],[14,0,\\\"day-title\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"pull-right minutes-duration\\\"],[12],[1,[34,16]],[6,[37,17],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[\\\"authenticated.tasks.total-time-period\\\"],[[\\\"time\\\"],[[30,[36,2],[[35,1],[35,0]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row col-md-12 col-xs-10\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"work-days\\\"],[12],[1,[30,[36,3],[\\\"date-range.work-days-info\\\"],[[\\\"workDays\\\",\\\"manHours\\\"],[[35,19],[35,18]]]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"tooltipFormatInMinutes\\\",\\\"totalTime\\\",\\\"minutes-to-duration\\\",\\\"t\\\",\\\"route-action\\\",\\\"selectedUser\\\",\\\"user-select\\\",\\\"dateLimit\\\",\\\"action\\\",\\\"selectedEndDate\\\",\\\"selectedStartDate\\\",\\\"ranges\\\",\\\"maxYear\\\",\\\"minYear\\\",\\\"date-range-picker\\\",\\\"date-range-user-dropdown-actions\\\",\\\"formatedTotalTime\\\",\\\"tooltip-on-element\\\",\\\"manHours\\\",\\\"workDays\\\",\\\"advencedStat\\\",\\\"if\\\",\\\"selectedPeriod\\\",\\\"roundingOptions\\\",\\\"downloadEndDate\\\",\\\"downloadStartDate\\\",\\\"isDownloadTasksReportModal\\\",\\\"download-tasks-report-modal\\\",\\\"showingTeamMembers\\\",\\\"summaryOptions\\\",\\\"power-select\\\",\\\"tasks\\\",\\\"canDownloadMemberActivity\\\",\\\"taskDetail\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/date-range/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/delete-billing-report-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      deleteBillingReport() {\n        this.get('billingReportToDelete').destroyRecord().then(() => {\n          this.showNotification.call('success', this.i18n.t('billing-reports-table.billing-report-delete-modal.delete-success').string);\n          this.set('billingReportToDelete', null);\n          this.set('showBillingReportDeleteModal', false);\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/delete-billing-report-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"GLtALozi\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,4],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"onConfirm\\\",\\\"text\\\",\\\"confirm\\\",\\\"cancel\\\"],[[30,[36,1],[[32,0],\\\"deleteBillingReport\\\"],null],[30,[36,0],[\\\"billing-reports-table.billing-report-delete-modal.text\\\"],null],[30,[36,0],[\\\"billing-reports-table.billing-report-delete-modal.delete\\\"],null],[30,[36,0],[\\\"billing-reports-table.billing-report-delete-modal.cancel\\\"],null]]]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"action\\\",\\\"confirmation-dialog\\\",\\\"showBillingReportDeleteModal\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/delete-billing-report-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/delete-task-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      cancelDeleteTask() {\n        this.set('openTaskToDeleteModal', false);\n      },\n\n      confirmDeleteTask(task) {\n        this.deleteTask(task);\n        this.set('openTaskToDeleteModal', false);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/delete-task-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"xkukSgMJ\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,7],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,6],[30,[36,3],[[32,0],\\\"cancelDeleteTask\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[30,[36,1],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/delete-task-modal/template.hbs' @ L1:C91) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.delete-task\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,2],[[30,[36,1],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/delete-task-modal/template.hbs' @ L1:C193) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.delete-task-question\\\"],null]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,4],null,[[\\\"onClick\\\"],[[30,[36,3],[[32,0],\\\"cancelDeleteTask\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,4],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,3],[[32,0],\\\"confirmDeleteTask\\\",[35,5]],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"task\\\",\\\"openTaskToDeleteModal\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/delete-task-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/delete-team-member-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      close() {\n        this.set('modalOpen', false);\n      },\n\n      deleteMember() {\n        this.set('modalOpen', false);\n        Ember.run.later(() => {\n          this.deleteMember(this.member);\n        }, 500);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/delete-team-member-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Rgw2/57V\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,7],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,6],[30,[36,4],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/delete-team-member-modal/template.hbs' @ L1:C68) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[34,1]],[13]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/delete-team-member-modal/template.hbs' @ L1:C146) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"delete-team-member-modal.notification\\\"],null]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,5],null,[[\\\"onClick\\\"],[[30,[36,4],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"delete-team-member-modal.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,5],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,4],[[32,0],\\\"deleteMember\\\"],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"delete-team-member-modal.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"headerTitle\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/delete-team-member-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/download-tasks-report-modal/component\", [\"exports\", \"web-app-ember-v2/config/environment\", \"jquery\", \"moment\", \"web-app-ember-v2/mixins/download-billing-report-mixin\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _environment, _jquery, _moment, _downloadBillingReportMixin, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, _downloadBillingReportMixin.default, {\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    store: Ember.inject.service(),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    modalOpen: false,\n    externalSystemWithTask: true,\n    durationInMinutes: false,\n    sessionDescriptionSplit: true,\n    sessionWithDescription: false,\n    lockTimeSessions: false,\n    billingReportErrors: false,\n    groupOptions: Object.freeze([{\n      value: 'day',\n      label: 'Daily'\n    }, {\n      value: 'week',\n      label: 'Weekly'\n    }, {\n      value: 'period',\n      label: 'Selected period'\n    }]),\n    formatOptions: Object.freeze([{\n      value: 'xls',\n      label: 'XLS file'\n    }, {\n      value: 'pdf',\n      label: 'PDF file'\n    }, {\n      value: 'csv',\n      label: 'CSV file'\n    }, {\n      value: 'txt',\n      label: 'TXT file'\n    }, {\n      value: 'csv',\n      label: 'Harvest compatible',\n      dateFormatOption: 'YMD'\n    }]),\n    client: Ember.computed.oneWay('selectedProject.client.name'),\n    dateFormat: Ember.computed.readOnly('userPreferences.currentUser.fullDateFormat'),\n    selectedFormat: Ember.computed.oneWay('formatOptions.firstObject'),\n    selectedGrouping: Ember.computed.oneWay('defaultSelectedGrouping'),\n    defaultSelectedGrouping: Ember.computed('selectedPeriod', function () {\n      const mapping = {\n        weekly: 'week',\n        daily: 'day',\n        period: 'period'\n      };\n      const defaultValue = this.get('groupOptions.firstObject').value;\n      const selectedGroupingValue = this.get('selectedPeriod') ? mapping[this.get('selectedPeriod')] : defaultValue;\n      return this.get('groupOptions').findBy('value', selectedGroupingValue);\n    }),\n    projectRounding: Ember.computed.oneWay('userPreferences.currentProject.timeRounding'),\n    selectedProject: Ember.computed.readOnly('userPreferences.currentProject'),\n    workspaceId: Ember.computed.oneWay('userPreferences.currentProject.workspace.id'),\n    selectedRounding: Ember.computed.or('projectRounding', 'roundingOptions.firstObject'),\n    isFormatHarvestCompliant: Ember.computed.equal('selectedFormat.label', 'Harvest compatible'),\n    showBillingReports: Ember.computed.and('billingReportErrors', 'isOverlappingRecord'),\n    isDisabledDownload: Ember.computed.or('showBillingReports', 'saveBtnDisabled'),\n    dateFormatOptions: Ember.computed.alias('userPreferences.dateFormatOptions'),\n    selectedDateFormat: Ember.computed.oneWay('userPreferences.currentDateFormat'),\n    canChangeRounding: Ember.computed.readOnly('userPreferences.canChangeRoundingForCurrentProject'),\n    canLockTimeSessions: Ember.computed('selectedProject', 'userPreferences.currentProject.permissions.lock-time-sessions', function () {\n      return this.userPreferences.get('currentProject.permissions.lock-time-sessions') && this.get('selectedProject') && this.userPreferences.get('currentUserFilter.id') === 'all';\n    }),\n    overlappingRecords: Ember.computed('startDate', 'endDate', 'selectedProject.billingReports.@each.{periodStart,periodEnd}', function () {\n      const billingReports = this.get('selectedProject.billingReports');\n\n      if (!billingReports) {\n        return false;\n      }\n\n      return this.get('selectedProject.billingReports').filter(billingReport => {\n        const periodStart = (0, _moment.default)(billingReport.get('periodStart')).startOf('day').format();\n        const startDate = (0, _moment.default)(this.get('startDate')).startOf('day').format();\n        const periodEnd = (0, _moment.default)(billingReport.get('periodEnd')).startOf('day').format();\n        const endDate = (0, _moment.default)(this.get('endDate')).startOf('day').format();\n\n        if (!(endDate < periodStart || startDate >= periodEnd)) {\n          return true;\n        }\n      });\n    }),\n    isOverlappingRecord: Ember.computed('overlappingRecords', 'lockTimeSessions', 'selectedProject.billingReports.[]', function () {\n      return this.get('overlappingRecords').length !== 0 && this.get('lockTimeSessions');\n    }),\n\n    refreshBillingReports() {\n      this.get('store').query('billing-report', {\n        workspaceId: this.userPreferences.workspaceId\n      });\n    },\n\n    actions: {\n      download(selectedUser, startDate, endDate, selectedFormat, selectedGrouping, selectedRounding) {\n        this.set(\"saveBtnDisabled\", true);\n        this.showSpinner();\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          const currentProjectId = this.get('userPreferences.currentProject.id');\n          const currentWorkspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n          const token = headerValue.split(' ').get('lastObject');\n          const externalSystemWithTask = this.get('externalSystemWithTask');\n          const sessionWithDescription = this.get('sessionWithDescription');\n          const lockTimeSessions = this.get('lockTimeSessions');\n          const durationInMinutes = this.get('durationInMinutes');\n          const sessionDescriptionSplit = this.get('sessionDescriptionSplit');\n          const selectedFormat = this.get('selectedFormat').value;\n          const selectedDateFormat = this.get('selectedFormat').dateFormatOption || this.get('selectedDateFormat.value');\n          const client = this.getWithDefault('client', '');\n          let reportParams = [`start_date=${startDate}`, `end_date=${endDate}`, `group_by=${selectedGrouping.value}`, `rounding_id=${selectedRounding.get('id')}`, `format=${selectedFormat}`, `date_format=${selectedDateFormat}`, `include_external_system_with_task=${externalSystemWithTask}`, `include_time_session_description=${sessionWithDescription}`, `include_duration_in_minutes=${durationInMinutes}`, `client=${client}`, `lock_time_sessions=${lockTimeSessions}`, `session_description_split=${sessionDescriptionSplit}`];\n\n          if (selectedUser.id !== \"all\") {\n            reportParams.push(`user_id=${selectedUser.id}`);\n          }\n\n          if (currentProjectId) {\n            reportParams.push(`project_id=${currentProjectId}`);\n          }\n\n          reportParams = reportParams.join('&');\n          const namespace = this.get('isFormatHarvestCompliant') ? '/harvest' : '';\n          const url = `${_environment.default.APP.backendUrl}/workspaces/${currentWorkspaceId}${namespace}/task-summaries-reports.${selectedFormat}?${reportParams}`;\n          let form = (0, _jquery.default)(`<form action=\"${url}\" method=\"POST\"><input type=\"hidden\" name=\"access_token\" value=\"${token}\" /></form>`);\n\n          if (client.trim().length === 0 && this.get('isFormatHarvestCompliant')) {\n            this.showNotification.call('error', this.i18n.t('authenticated.reports.tasks.client_error'));\n          } else if (this.get('isOverlappingRecord')) {\n            this.set('billingReportErrors', true);\n            this.showNotification.call('error', this.i18n.t('authenticated.reports.tasks.billing-report-error'));\n          } else {\n            (0, _jquery.default)('body').append(form);\n            form.submit();\n            form.remove();\n            this.showNotification.call('success', this.i18n.t('authenticated.reports.tasks.generated_successful'));\n            Ember.run.later(() => {\n              if (this.get('lockTimeSessions')) {\n                this.set('billingReportErrors', false);\n                this.refreshBillingReports();\n              }\n            }, 500);\n          }\n\n          this.set(\"saveBtnDisabled\", false);\n          this.hideSpinner();\n        });\n      },\n\n      cancel() {\n        (0, _jquery.default)('.daterangepicker').hide();\n        this.set('modalOpen', false);\n        this.set('billingReportErrors', false);\n        this.set('lockTimeSessions', false);\n      },\n\n      setDateRange(start, end) {\n        this.setProperties({\n          startDate: start,\n          endDate: end\n        });\n      },\n\n      doNothing() {}\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/download-tasks-report-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"HHaGfcOI\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"timeRounding\\\",\\\"dateFormat\\\",\\\"group\\\",\\\"format\\\",\\\"overlappingRecord\\\"],\\\"statements\\\":[[6,[37,47],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,46],[30,[36,4],[[32,0],\\\"cancel\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,45],[[30,[36,44],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/download-tasks-report-modal/template.hbs' @ L1:C69) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title report\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.tasks.header\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,45],[[30,[36,44],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/download-tasks-report-modal/template.hbs' @ L1:C181) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"extra-modal-space\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.tasks.period\\\"],null]],[13],[1,[30,[36,35],null,[[\\\"firstDay\\\",\\\"ranges\\\",\\\"start\\\",\\\"end\\\",\\\"applyAction\\\",\\\"alwaysShowCalendars\\\"],[1,[30,[36,34],null,null],[35,33],[35,32],[30,[36,4],[[32,0],\\\"setDateRange\\\"],null],true]]]],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.options\\\"],null]],[13],[6,[37,10],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-xs-12 external-system-with-task\\\"],[12],[1,[30,[36,2],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[35,31],[35,30]]]]],[10,\\\"label\\\"],[15,\\\"for\\\",[34,31]],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.export-time-session-individually\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,36],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-xs-12 download-task-label-with-checkbox\\\"],[12],[1,[30,[36,2],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[35,27],[35,26]]]]],[10,\\\"label\\\"],[15,\\\"for\\\",[34,27]],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.include-external-system-with-task\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 download-task-label-with-checkbox\\\"],[12],[1,[30,[36,2],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"time-session-description\\\",[35,28]]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"time-session-description\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.include-time-session-description\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 download-task-label-with-checkbox\\\"],[12],[1,[30,[36,2],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"duration-in-minutes\\\",[35,29]]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"duration-in-minutes\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.include-duration-in-minutes\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,10],[[35,37]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-xs-12 download-task-label-with-checkbox\\\"],[12],[1,[30,[36,2],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"lockTimeSession\\\",[35,24]]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"lockTimeSession\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.lock-time-sessions\\\"],null]],[10,\\\"i\\\"],[14,0,\\\"glyphicon glyphicon-info-sign\\\"],[12],[6,[37,18],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.reports.new.lock-time-sessions-tooltip\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[6,[37,10],[[35,25]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"overlapping-record-error\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-exclamation-triangle warning-icon\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"warning-text\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.overlapping-record\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"overlapping-records-title\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.overlapping-records-list-title\\\"],null]],[13],[10,\\\"ul\\\"],[14,0,\\\"overlapping-records-list\\\"],[12],[6,[37,21],[[30,[36,20],[[30,[36,20],[[35,19]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[14,0,\\\"list-element\\\"],[12],[1,[30,[36,17],[[32,6,[\\\"periodStart\\\"]],[35,16],[35,15]],null]],[2,\\\" - \\\"],[1,[30,[36,17],[[32,6,[\\\"periodEnd\\\"]],[35,16],[35,15]],null]],[10,\\\"div\\\"],[14,0,\\\"download-tasks-report-modal-overlapping-record-icons\\\"],[12],[11,\\\"div\\\"],[24,0,\\\"glyphicon glyphicon-download-alt billing-report-download-report-icon text-info\\\"],[4,[38,4],[[32,0],\\\"downloadReport\\\",[32,6,[\\\"reportUrl\\\"]]],null],[12],[6,[37,18],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.download-report\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[11,\\\"div\\\"],[24,\\\"data-role\\\",\\\"delete-billing-report\\\"],[24,0,\\\"glyphicon glyphicon-trash text-danger\\\"],[4,[38,4],[[32,0],\\\"openDeleteBillingReportModal\\\",[32,6]],null],[12],[6,[37,18],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"billing-reports-table.remove-report-tooltip\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"parameters\\\":[6]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"overlapping-records-url\\\"],[12],[6,[37,23],null,[[\\\"route\\\",\\\"model\\\"],[\\\"authenticated.workspaces.show.billing-reports\\\",[35,22]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.reports.new.overlapping-record-link-to-records\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.file-format\\\"],null]],[13],[6,[37,8],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"searchEnabled\\\"],[[35,39],[35,38],[30,[36,4],[[32,0],[30,[36,6],[[35,38]],null]],null],\\\"label\\\",false]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,5,[\\\"label\\\"]]]],\\\"parameters\\\":[5]}]]],[6,[37,36],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.tasks.grouping\\\"],null]],[13],[6,[37,8],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"searchEnabled\\\"],[[35,12],[35,11],[30,[36,4],[[32,0],[30,[36,6],[[35,11]],null]],null],\\\"label\\\",false]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,4,[\\\"label\\\"]]]],\\\"parameters\\\":[4]}]]],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.date-format\\\"],null]],[13],[6,[37,8],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"searchEnabled\\\"],[[35,14],[35,13],[30,[36,4],[[32,0],[30,[36,6],[[35,13]],null]],null],\\\"label\\\",false]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,3,[\\\"label\\\"]]]],\\\"parameters\\\":[3]}]]]],\\\"parameters\\\":[]}]]],[6,[37,10],[[35,40]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.tasks.rounding\\\"],null]],[13],[6,[37,8],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchEnabled\\\",\\\"typeAheadMatcher\\\"],[[35,7],[35,5],[30,[36,4],[[32,0],[30,[36,6],[[35,5]],null]],null],false,[30,[36,4],[[32,0],\\\"doNothing\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[[32,2]],null]]],\\\"parameters\\\":[2]}]]],[6,[37,10],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.tasks.client\\\"],null]],[13],[1,[30,[36,2],null,[[\\\"class\\\",\\\"value\\\",\\\"required\\\"],[\\\"form-control\\\",[35,1],true]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,10],[[35,41]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"modal-errors\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.new.correct-errors\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,42],null,[[\\\"onClick\\\"],[[30,[36,4],[[32,0],\\\"cancel\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"modal.button.cancel\\\"],null]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[6,[37,42],null,[[\\\"onClick\\\",\\\"disabled\\\",\\\"type\\\"],[[30,[36,4],[[32,0],\\\"download\\\",[35,43],[35,33],[35,32],[35,38],[35,11],[35,5]],null],[35,41],\\\"primary\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.reports.new.download\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]],[1,[30,[36,50],null,[[\\\"showBillingReportDeleteModal\\\",\\\"billingReportToDelete\\\"],[[35,49],[35,48]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"client\\\",\\\"input\\\",\\\"time-rounding-label\\\",\\\"action\\\",\\\"selectedRounding\\\",\\\"mut\\\",\\\"roundingOptions\\\",\\\"power-select\\\",\\\"isFormatHarvestCompliant\\\",\\\"if\\\",\\\"selectedGrouping\\\",\\\"groupOptions\\\",\\\"selectedDateFormat\\\",\\\"dateFormatOptions\\\",\\\"currentUserTimezone\\\",\\\"dateFormat\\\",\\\"format-date\\\",\\\"tooltip-on-element\\\",\\\"overlappingRecords\\\",\\\"-track-array\\\",\\\"each\\\",\\\"workspaceId\\\",\\\"link-to\\\",\\\"lockTimeSessions\\\",\\\"showBillingReports\\\",\\\"externalSystemWithTask\\\",\\\"checkboxClass\\\",\\\"sessionWithDescription\\\",\\\"durationInMinutes\\\",\\\"sessionDescriptionSplit\\\",\\\"sessionDescSplitCbx\\\",\\\"endDate\\\",\\\"startDate\\\",\\\"download-report-date-picker-ranges\\\",\\\"date-range-picker\\\",\\\"unless\\\",\\\"canLockTimeSessions\\\",\\\"selectedFormat\\\",\\\"formatOptions\\\",\\\"canChangeRounding\\\",\\\"isDisabledDownload\\\",\\\"bs-button\\\",\\\"selectedUser\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"modalOpen\\\",\\\"bs-modal\\\",\\\"billingReportToDelete\\\",\\\"showBillingReportDeleteModal\\\",\\\"delete-billing-report-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/download-tasks-report-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/edit-invitation-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    roles: Ember.computed('invitation.targetType', function () {\n      if (this.get('invitation.targetType') === \"Project\") {\n        return this.get('externalRoles');\n      } else {\n        return this.get('internalRoles');\n      }\n    }),\n    currentWorkspaceFilter: Ember.computed.oneWay('userPreferences.currentWorkspaceFilter'),\n    externalRoles: Ember.computed('currentWorkspaceFilter.permissions.create-external-members-roles.[]', function () {\n      return this.get('currentWorkspaceFilter.permissions.create-external-members-roles.[]');\n    }),\n    internalRoles: Ember.computed('currentWorkspaceFilter.permissions.create-internal-members-roles.[]', function () {\n      return this.get('currentWorkspaceFilter.permissions.create-internal-members-roles');\n    }),\n\n    init() {\n      this._super(...arguments);\n\n      this.checkedProjects = this.checkedProjects || [];\n    },\n\n    actions: {\n      submit() {\n        this.get('updateInvitation')(this.get('invitation'));\n      },\n\n      cancel() {\n        this.set('open', false);\n      },\n\n      close() {\n        this.set('checkedProjects', []);\n      },\n\n      changeRole(role) {\n        this.set('invitation.role', role);\n      },\n\n      setProject(project) {\n        const checkedProjects = this.get('checkedProjects');\n        const isProjectChecked = checkedProjects.includes(project.id);\n\n        if (isProjectChecked) {\n          checkedProjects.removeObject(project.id);\n        } else {\n          checkedProjects.pushObject(project.id);\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/edit-invitation-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"fXX0V+tM\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"dd\\\",\\\"role\\\"],\\\"statements\\\":[[6,[37,13],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,12],[30,[36,1],[[32,0],\\\"cancel\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,8],[[30,[36,7],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/edit-invitation-modal/template.hbs' @ L1:C64) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"edit-invitation-modal.edit-invitation\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,8],[[30,[36,7],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/edit-invitation-modal/template.hbs' @ L1:C172) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"edit-invitation-modal.email\\\"],null]],[13],[1,[30,[36,9],null,[[\\\"value\\\",\\\"class\\\",\\\"disabled\\\"],[[35,6,[\\\"email\\\"]],\\\"form-control\\\",\\\"disabled\\\"]]]],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"edit-invitation-modal.role\\\"],null]],[2,\\\" \\\"],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-info-sign\\\"],[12],[13],[13],[6,[37,10],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,8],[[30,[36,7],[[32,2,[\\\"button\\\"]],\\\"expected `dd.button` to be a contextual component but found a string. Did you mean `(component dd.button)`? ('web-app-ember-v2/components/edit-invitation-modal/template.hbs' @ L1:C423) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],[[35,6,[\\\"role\\\"]]],null]],[2,\\\" \\\"],[10,\\\"span\\\"],[14,0,\\\"caret\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,8],[[30,[36,7],[[32,2,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/edit-invitation-modal/template.hbs' @ L1:C515) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,5],[[30,[36,4],[[30,[36,4],[[35,3]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[14,\\\"role\\\",\\\"presentation\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,1],[[32,0],\\\"changeRole\\\",[32,3]],null],[12],[1,[30,[36,2],[[32,3]],null]],[13],[13]],\\\"parameters\\\":[3]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]}]]],[10,\\\"br\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,11],null,[[\\\"onClick\\\"],[[30,[36,1],[[32,0],\\\"cancel\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"edit-invitation-modal.cancel\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,11],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,1],[[32,0],\\\"submit\\\"],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"edit-invitation-modal.update\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"action\\\",\\\"format-user-role\\\",\\\"roles\\\",\\\"-track-array\\\",\\\"each\\\",\\\"invitation\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"input\\\",\\\"bs-dropdown\\\",\\\"bs-button\\\",\\\"open\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/edit-invitation-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/edit-profile-avatar/component\", [\"exports\", \"ember-get-config\", \"web-app-ember-v2/utils/file\"], function (_exports, _emberGetConfig, _file) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNames: ['edit-profile-avatar'],\n    activeStorage: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    isModalVisible: false,\n    uploadedImage: null,\n    areOptionsVisible: false,\n    user: Ember.computed.readOnly('userPreferences.currentUser'),\n    avatarPreferenceOptions: Ember.computed.readOnly('userPreferences.avatarPreferenceOptions'),\n\n    init() {\n      this._super(...arguments);\n\n      this.closeOnClick = Ember.run.bind(this, this.closeOnClick);\n    },\n\n    didInsertElement() {\n      this._super(...arguments);\n\n      document.addEventListener('click', this.closeOnClick, true);\n    },\n\n    willDestroyElement() {\n      this._super(...arguments);\n\n      document.removeEventListener('click', this.closeOnClick, true);\n    },\n\n    closeOnClick({\n      target\n    }) {\n      const toggleElement = this.element.querySelector('[data-role=\"toggle\"]');\n\n      if (!toggleElement || toggleElement.contains(target)) {\n        return;\n      }\n\n      const triggerElement = this.element.querySelector('[data-role=\"trigger\"]');\n      const triggerClicked = triggerElement.contains(target);\n\n      if (triggerClicked) {\n        return;\n      }\n\n      const imagePickerTriggered = target.matches('#customAvatar');\n\n      if (imagePickerTriggered) {\n        return;\n      }\n\n      this.set('areOptionsVisible', false);\n    },\n\n    handleBackendError() {\n      const notification = this.i18n.t('notifications.errors.backend-error');\n      this.showNotification.call('error', notification);\n      this.setLoader(false);\n    },\n\n    actions: {\n      uploadPicture(base64File) {\n        if (!base64File) return;\n        this.setLoader(true);\n        const file = (0, _file.dataURLtoFile)(base64File, 'user_avatar');\n        const directUploadURL = `${_emberGetConfig.default.APP.backendUrl}/api/files`;\n        this.get('activeStorage').upload(file, directUploadURL, {}).then(blob => {\n          this.send('setAvatarPreference', this.get('avatarPreferenceOptions.custom_avatar'), blob.signedId);\n        }).catch(this.get('handleBackendError').bind(this));\n      },\n\n      setAvatarPreference(avatarPreference, avatarSignedId) {\n        this.setLoader(true);\n        const user = this.userPreferences.getCurrentUser();\n        user.setAvatarPreference(avatarPreference, avatarSignedId).then(() => {\n          const notification = this.i18n.t('edit-profile-avatar.notifications.avatar-changed');\n          this.showNotification.call('success', notification);\n        }).catch(this.get('handleBackendError').bind(this)).finally(() => {\n          this.setLoader(false);\n          this.send('toggleOptionsVisibility');\n        });\n      },\n\n      pickImage() {\n        this.$('#customAvatar').click();\n      },\n\n      toggleOptionsVisibility() {\n        this.set('areOptionsVisible', !this.get('areOptionsVisible'));\n      },\n\n      onFileSelected({\n        target: {\n          files: [file]\n        }\n      }) {\n        (0, _file.readDataUrl)(file).then(blob => {\n          this.setProperties({\n            uploadedImage: blob,\n            imageMimeType: file.type,\n            isModalVisible: true\n          });\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/edit-profile-avatar/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Z66in/wp\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[11,\\\"div\\\"],[24,\\\"data-role\\\",\\\"trigger\\\"],[16,0,[31,[\\\"avatar-wrapper \\\",[30,[36,4],[[35,3],\\\"overlay-visible\\\"],null]]]],[4,[38,1],[[32,0],\\\"toggleOptionsVisibility\\\"],null],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-camera\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"overlay\\\"],[12],[13],[1,[30,[36,6],null,[[\\\"user\\\",\\\"status\\\"],[[35,5],[35,5,[\\\"status\\\",\\\"presenceType\\\"]]]]]],[13],[6,[37,4],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"ul\\\"],[14,\\\"data-role\\\",\\\"toggle\\\"],[14,0,\\\"avatar-options\\\"],[12],[11,\\\"li\\\"],[4,[38,1],[[32,0],\\\"setAvatarPreference\\\",[35,0,[\\\"gravatar\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-camera\\\"],[12],[13],[1,[30,[36,2],[\\\"edit-profile-avatar.use-gravatar\\\"],null]],[13],[11,\\\"li\\\"],[4,[38,1],[[32,0],\\\"pickImage\\\"],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-globe\\\"],[12],[13],[1,[30,[36,2],[\\\"edit-profile-avatar.upload-picture\\\"],null]],[13],[11,\\\"li\\\"],[4,[38,1],[[32,0],\\\"setAvatarPreference\\\",[35,0,[\\\"no_avatar\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-times-circle\\\"],[12],[13],[1,[30,[36,2],[\\\"edit-profile-avatar.use-initials\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[10,\\\"input\\\"],[14,1,\\\"customAvatar\\\"],[15,\\\"onChange\\\",[30,[36,1],[[32,0],\\\"onFileSelected\\\"],null]],[14,\\\"accept\\\",\\\"image/*\\\"],[14,\\\"onclick\\\",\\\"this.value=null;\\\"],[14,0,\\\"hidden-file-input\\\"],[14,4,\\\"file\\\"],[12],[13],[1,[30,[36,10],null,[[\\\"modalOpen\\\",\\\"croppedImage\\\",\\\"imageMimeType\\\",\\\"onSubmit\\\"],[[35,9],[35,8],[35,7],[30,[36,1],[[32,0],\\\"uploadPicture\\\"],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"avatarPreferenceOptions\\\",\\\"action\\\",\\\"t\\\",\\\"areOptionsVisible\\\",\\\"if\\\",\\\"user\\\",\\\"member-avatar\\\",\\\"imageMimeType\\\",\\\"uploadedImage\\\",\\\"isModalVisible\\\",\\\"crop-image-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/edit-profile-avatar/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/edit-profile-form/component\", [\"exports\", \"web-app-ember-v2/mixins/autofocus\"], function (_exports, _autofocus) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_autofocus.default, {\n    actions: {\n      save() {\n        this.updateMember(this.get('model'));\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/edit-profile-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"TrCr3s5+\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[6,[37,5],[[35,4]],[[\\\"submit\\\",\\\"class\\\"],[[30,[36,3],[[32,0],\\\"save\\\"],null],\\\"form-horizontal\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/edit-profile-form/template.hbs' @ L1:C76) \\\"],null],\\\"firstName\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group first-child\\\",[30,[36,0],[\\\"user.first-name\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-12\\\"],[12],[1,[32,4,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,4,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/edit-profile-form/template.hbs' @ L1:C245) \\\"],null]],[[\\\"placeholder\\\",\\\"autofocus\\\",\\\"class\\\"],[[30,[36,0],[\\\"user.first-name\\\"],null],\\\"true\\\",\\\"form-control\\\"]]]],[13]],\\\"parameters\\\":[4]}]]],[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/edit-profile-form/template.hbs' @ L1:C357) \\\"],null],\\\"lastName\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group\\\",[30,[36,0],[\\\"user.last-name\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-12\\\"],[12],[1,[32,3,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,3,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/edit-profile-form/template.hbs' @ L1:C512) \\\"],null]],[[\\\"placeholder\\\",\\\"class\\\"],[[30,[36,0],[\\\"user.last-name\\\"],null],\\\"form-control\\\"]]]],[13]],\\\"parameters\\\":[3]}]]],[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/edit-profile-form/template.hbs' @ L1:C606) \\\"],null],\\\"email\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group\\\",[30,[36,0],[\\\"user.email\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-12\\\"],[12],[1,[32,2,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,2,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/edit-profile-form/template.hbs' @ L1:C754) \\\"],null]],[[\\\"placeholder\\\",\\\"disabled\\\",\\\"class\\\"],[[30,[36,0],[\\\"user.email\\\"],null],true,\\\"form-control\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"i\\\"],[12],[1,[30,[36,0],[\\\"edit-profile-form.email-notice\\\"],null]],[13],[13]],\\\"parameters\\\":[2]}]]],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"buttons\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-lg-12\\\"],[12],[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/edit-profile-form/template.hbs' @ L1:C984) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"edit-profile-form.save\\\"],null],\\\"btn btn-primary\\\"]]]],[13],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"model\\\",\\\"form-for\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/edit-profile-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/ember-popper-targeting-parent\", [\"exports\", \"ember-popper/components/ember-popper-targeting-parent\"], function (_exports, _emberPopperTargetingParent) {\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 _emberPopperTargetingParent.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/ember-popper\", [\"exports\", \"ember-popper/components/ember-popper\"], function (_exports, _emberPopper) {\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 _emberPopper.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/ember-tether\", [\"exports\", \"ember-tether/components/ember-tether\"], function (_exports, _emberTether) {\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 _emberTether.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/external-invitation-content/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    selectedWorkspace: Ember.computed.oneWay('model.workspaces.firstObject'),\n    actions: {\n      changeWorkspace(value) {\n        this.set('selectedWorkspace', value);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/external-invitation-content/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Ip/PGzwO\",\n    \"block\": \"{\\\"symbols\\\":[\\\"workspace\\\"],\\\"statements\\\":[[10,\\\"h4\\\"],[12],[1,[30,[36,0],[\\\"external-invitation-content.title\\\"],[[\\\"targetName\\\"],[[35,1]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"invitation-content-description\\\"],[12],[1,[30,[36,0],[\\\"external-invitation-content.description\\\"],[[\\\"targetName\\\",\\\"inviterFirstName\\\",\\\"inviterLastName\\\",\\\"invitationDate\\\"],[[35,1],[35,4],[35,3],[35,2]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"invitation-content-workspace-select\\\"],[12],[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"external-invitation-content.workspace-select-description\\\"],null]],[13],[6,[37,8],null,[[\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"required\\\",\\\"onchange\\\"],[[30,[36,0],[\\\"time-session-form.select\\\"],null],[35,7,[\\\"workspaces\\\"]],[35,6],true,[30,[36,5],[[32,0],\\\"changeWorkspace\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,1,[\\\"name\\\"]]]],\\\"parameters\\\":[1]}]]],[13],[6,[37,10],null,[[\\\"type\\\",\\\"class\\\",\\\"onClick\\\"],[\\\"success\\\",\\\"invitation-button\\\",[30,[36,9],[\\\"confirmProjectInvitationInRoute\\\",[35,6]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"external-invitation-content.confirm-invitation\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"targetName\\\",\\\"invitationDate\\\",\\\"inviterLastName\\\",\\\"inviterFirstName\\\",\\\"action\\\",\\\"selectedWorkspace\\\",\\\"model\\\",\\\"power-select\\\",\\\"route-action\\\",\\\"bs-button\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/external-invitation-content/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/external-resource-form/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    defaultFormStatus: false,\n    selectedProjectSystem: Ember.computed.oneWay('externalResource.projectSystem'),\n    isNewRecord: Ember.computed.empty('externalResource.id'),\n    formActiveClass: Ember.computed.or('isExternalResourceEdited', 'isFormActive'),\n    isFormActive: Ember.computed.or('isNewRecord', 'defaultFormStatus'),\n    showNewDangerIcon: Ember.computed('isNewRecord', 'isFormActive', function () {\n      return this.get('isNewRecord') && !this.get('isFormActive');\n    }),\n    showEditedInfoIcon: Ember.computed('isExternalResourceEdited', 'isNewRecord', 'isFormActive', function () {\n      return this.get('isExternalResourceEdited') && !this.get('isNewRecord') && !this.get('isFormActive');\n    }),\n    isExternalResourceEdited: Ember.computed('externalResource.{externalUrl,projectSystem,externalId}', function () {\n      return this.get('externalResource.isDirty');\n    }),\n    externalRecordValid: Ember.computed('externalResource', 'isFormActive', function () {\n      return this.get('externalResource').validate();\n    }),\n    hasProjectSystemError: Ember.computed('externalResource.{errors.projectSystem,projectSystem}', function () {\n      const externalResource = this.get('externalResource');\n\n      if (externalResource.get('errors.projectSystem') && !externalResource.get('projectSystem.externalSystem')) {\n        return 'has-error';\n      }\n    }),\n    actions: {\n      removeExternalResource() {\n        this.removeExternalResource();\n      },\n\n      toggleExternalForm() {\n        this.toggleProperty('isFormActive');\n      },\n\n      inactiveExternalForm() {\n        this.set('isFormActive', false);\n      },\n\n      revertExternalResource() {\n        this.get('externalResource').rollback();\n        this.set('isFormActive', true);\n      },\n\n      selectProjectSystem(value) {\n        this.get('externalResource').set('projectSystem', value);\n      },\n\n      acceptExternalResource() {\n        this.set('isFormActive', false);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/external-resource-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"TgtidisW\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"ff\\\",\\\"projectSystem\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"row external-resource-row \\\",[30,[36,3],[[35,16],\\\"active\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-9\\\"],[12],[6,[37,3],[[35,12,[\\\"projectSystem\\\",\\\"externalSystem\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"external-system\\\"],[12],[1,[30,[36,6],[[35,12,[\\\"projectSystem\\\",\\\"externalSystem\\\"]]],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,12,[\\\"externalId\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"external-id\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.external-id-value\\\"],[[\\\"externalId\\\"],[[35,12,[\\\"externalId\\\"]]]]]],[13]],\\\"parameters\\\":[]}]]],[10,\\\"span\\\"],[14,0,\\\"external-url\\\"],[12],[10,\\\"a\\\"],[15,6,[34,12,[\\\"externalUrl\\\"]]],[12],[1,[35,12,[\\\"externalUrl\\\"]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 external-actions-icons\\\"],[12],[6,[37,3],[[35,17]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[35,14]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-info-circle external-icon-info text-grey\\\"],[12],[6,[37,15],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.entry-modified\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-exclamation-triangle external-icon-info text-danger\\\"],[12],[6,[37,15],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.entry-uncompleted\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,18]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-exclamation-triangle external-icon-info text-danger\\\"],[12],[6,[37,15],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[35,14]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.entry-to-save\\\"],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.entry-uncompleted\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[11,\\\"div\\\"],[16,0,[31,[\\\"fa fa-pencil external-action-icon-edit text-info \\\",[30,[36,3],[[35,19],\\\"active\\\"],null]]]],[4,[38,0],[[32,0],\\\"toggleExternalForm\\\"],null],[12],[13],[11,\\\"div\\\"],[24,0,\\\"fa fa-trash external-action-icon-remove text-danger\\\"],[4,[38,0],[[32,0],\\\"removeExternalResource\\\"],null],[12],[13],[13],[6,[37,3],[[35,19]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,13],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row external-form\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[6,[37,5],[[30,[36,4],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/external-resource-form/template.hbs' @ L1:C1819) \\\"],null],\\\"externalUrl\\\"],[[\\\"fieldClasses\\\",\\\"label\\\",\\\"control\\\",\\\"required\\\"],[\\\"form-group first-child\\\",[30,[36,1],[\\\"authenticated.tasks.modal.edit-task-external-url\\\"],null],\\\"form-controls/input\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row input-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 external-resource-label\\\"],[12],[1,[32,5,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-9\\\"],[12],[1,[30,[36,5],[[30,[36,4],[[32,5,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/external-resource-form/template.hbs' @ L1:C2115) \\\"],null]],[[\\\"autofocus\\\",\\\"class\\\"],[\\\"autofocus\\\",\\\"form-control\\\"]]]],[13],[13]],\\\"parameters\\\":[5]}]]],[6,[37,5],[[30,[36,4],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/external-resource-form/template.hbs' @ L1:C2204) \\\"],null],\\\"externalSystem\\\"],[[\\\"label\\\",\\\"fieldClasses\\\"],[[30,[36,1],[\\\"authenticated.tasks.modal.edit-task-external-system\\\"],null],\\\"form-group first-child\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row input-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 external-resource-label\\\"],[12],[1,[32,3,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-9\\\"],[12],[6,[37,10],null,[[\\\"options\\\",\\\"selected\\\",\\\"triggerClass\\\",\\\"searchField\\\",\\\"onchange\\\",\\\"renderInPlace\\\"],[[35,9],[35,8],[35,7],\\\"externalSystem\\\",[30,[36,0],[[32,0],\\\"selectProjectSystem\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,6],[[32,4,[\\\"externalSystem\\\"]]],null]]],\\\"parameters\\\":[4]}]]],[13],[13]],\\\"parameters\\\":[3]}]]],[6,[37,5],[[30,[36,4],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/external-resource-form/template.hbs' @ L1:C2767) \\\"],null],\\\"externalId\\\"],[[\\\"label\\\"],[[30,[36,1],[\\\"authenticated.tasks.modal.edit-task-external-id\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row input-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 external-resource-label\\\"],[12],[1,[32,2,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-9\\\"],[12],[1,[30,[36,5],[[30,[36,4],[[32,2,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/external-resource-form/template.hbs' @ L1:C2979) \\\"],null]],[[\\\"autofocus\\\",\\\"class\\\"],[\\\"autofocus\\\",\\\"form-control\\\"]]]],[13],[13]],\\\"parameters\\\":[2]}]]],[13],[6,[37,3],[[35,11]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"meta-actions new-external-resource\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"info\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-info-circle info-icon\\\"],[12],[13],[1,[30,[36,1],[\\\"authenticated.tasks.modal.new-external-resource\\\"],null]],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,3],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"meta-actions\\\"],[12],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"revertExternalResource\\\"],null],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-undo revert-icon\\\"],[12],[13],[1,[30,[36,1],[\\\"authenticated.tasks.modal.revert-changes\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"info\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-info-circle info-icon\\\"],[12],[13],[1,[30,[36,1],[\\\"authenticated.tasks.modal.entry-modified\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"isExternalResourceEdited\\\",\\\"if\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"capitalize\\\",\\\"hasProjectSystemError\\\",\\\"selectedProjectSystem\\\",\\\"projectSystems\\\",\\\"power-select\\\",\\\"isNewRecord\\\",\\\"externalResource\\\",\\\"form-for\\\",\\\"externalRecordValid\\\",\\\"tooltip-on-element\\\",\\\"formActiveClass\\\",\\\"showEditedInfoIcon\\\",\\\"showNewDangerIcon\\\",\\\"isFormActive\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/external-resource-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/external-resource-tag-label/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    tagName: 'span'\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/external-resource-tag-label/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"tXQwMUQR\",\n    \"block\": \"{\\\"symbols\\\":[\\\"label\\\"],\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[30,[36,2],[[35,1]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[15,5,[30,[36,0],[\\\"background-color:\\\",[32,1,[\\\"color\\\"]]],null]],[14,0,\\\"label tag-label\\\"],[12],[1,[32,1,[\\\"title\\\"]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"concat\\\",\\\"labels\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/external-resource-tag-label/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-projects/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    classNames: ['filters-for-projects'],\n    currentProjectFilter: Ember.computed.readOnly('userPreferences.currentProject'),\n    currentUser: Ember.computed.readOnly('userPreferences.currentUser'),\n    starredProjects: Ember.computed.readOnly('currentUser.starredProjects'),\n    selectedProject: Ember.computed('currentProjectFilter', function () {\n      if (Ember.isPresent(this.currentProjectFilter)) {\n        return this.currentProjectFilter;\n      } else {\n        return Ember.Object.create({\n          name: this.i18n.t('filters-for-projects.all-projects'),\n          buffer: {\n            name: this.i18n.t('filters-for-projects.all-projects')\n          }\n        });\n      }\n    }),\n    sortedByStarProjects: Ember.computed('starredProjects', 'projects', function () {\n      const starredProjects = this.starredProjects === undefined ? [] : this.starredProjects;\n      const preSortedProjects = this.projects.sortBy('suspended', 'name');\n      return preSortedProjects.toArray().sort((a, b) => {\n        const aStarred = starredProjects.includes(a.get('id'));\n        const bStarred = starredProjects.includes(b.get('id'));\n\n        if (aStarred > bStarred) {\n          return -1;\n        } else if (aStarred < bStarred) {\n          return 1;\n        } else {\n          return 0;\n        }\n      });\n    }),\n\n    projectMatcher(project, term) {\n      return `${project.get('name')} ${project.get('client.name')}`.toLowerCase().indexOf(term.toLowerCase());\n    },\n\n    actions: {\n      openLeaveProjectModal() {\n        this.openLeaveProjectModal();\n      },\n\n      changeProject(project) {\n        this.set('userPreferences.currentProject', project);\n        this.changeProject();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-projects/footer/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    router: Ember.inject.service('-routing'),\n    userPreferences: Ember.inject.service(),\n    store: Ember.inject.service(),\n    currentProjectFilter: Ember.computed.readOnly('userPreferences.currentProject'),\n    currentProjectFilterId: Ember.computed.readOnly('userPreferences.currentProject.id'),\n    currentWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n    currentWorkspaceFilterId: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.id'),\n    currentUser: Ember.computed.readOnly('userPreferences.currentUser'),\n    currentProjectIsStarred: Ember.computed('currentUser.starredProjects', function () {\n      if (!this.get('currentUser.starredProjects')) {\n        return;\n      }\n\n      return this.get('currentUser.starredProjects').includes(this.get('currentProjectFilter').get('id'));\n    }),\n    canCreateProject: Ember.computed('currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.permissions.create-projects');\n    }),\n    canEditProject: Ember.computed('currentProjectFilter', function () {\n      return this.get('currentProjectFilter.permissions.edit');\n    }),\n    actions: {\n      changeProject(project) {\n        this.get('router').transitionTo('authenticated.workspaces.show.projects.show', [this.get('currentWorkspaceFilterId'), project.get('id')]);\n      },\n\n      openLeaveProjectModal() {\n        this.openLeaveProjectModal();\n      },\n\n      starProject() {\n        this.get('currentUser').starProject(this.get('currentProjectFilter')).then(() => {\n          const notification = this.i18n.t('filters-for-projects.notifications.project-starred');\n          this.showNotification.call('success', notification);\n        });\n      },\n\n      unstarProject() {\n        this.get('currentUser').unstarProject(this.get('currentProjectFilter')).then(() => {\n          const notification = this.i18n.t('filters-for-projects.notifications.project-unstarred');\n          this.showNotification.call('success', notification);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-projects/footer/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"7KrUvQK1\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"hr\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"footer\\\"],[12],[6,[37,7],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"div\\\"],[4,[38,0],[[32,0],[35,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[6,[37,7],[[35,13]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-star-o\\\"],[12],[13],[11,\\\"span\\\"],[24,\\\"data-test-project-star\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"unstarProject\\\"],null],[12],[1,[30,[36,2],[\\\"filters-for-projects.unstar-project\\\"],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-star\\\"],[12],[13],[11,\\\"span\\\"],[24,\\\"data-test-project-star\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"starProject\\\"],null],[12],[1,[30,[36,2],[\\\"filters-for-projects.star-project\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[35,14]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,3]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,12]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[11,\\\"div\\\"],[24,\\\"data-test-project-configure\\\",\\\"\\\"],[4,[38,0],[[32,0],[35,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-cog\\\"],[12],[13],[6,[37,11],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.edit\\\",[30,[36,10],[[35,9],[35,8]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],[\\\"filters-for-projects.configure-project\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,\\\"data-test-project-configure\\\",\\\"\\\"],[14,0,\\\"disabled\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-cog\\\"],[12],[13],[1,[30,[36,2],[\\\"filters-for-projects.configure-project\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,\\\"data-test-project-configure\\\",\\\"\\\"],[14,0,\\\"div disabled\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-cog\\\"],[12],[13],[1,[30,[36,2],[\\\"filters-for-projects.configure-project\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[11,\\\"div\\\"],[4,[38,0],[[32,0],[35,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-plus\\\"],[12],[13],[6,[37,11],null,[[\\\"data-test-project-create\\\",\\\"route\\\",\\\"model\\\"],[true,\\\"authenticated.workspaces.show.projects.new\\\",[35,9]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],[\\\"filters-for-projects.create-project\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[35,5],[35,4],[35,3]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"div\\\"],[24,\\\"data-test-project-leave\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"openLeaveProjectModal\\\"],null],[4,[38,0],[[32,0],[35,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-cog\\\"],[12],[13],[1,[30,[36,2],[\\\"filters-for-projects.leave-project\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"select\\\",\\\"t\\\",\\\"currentProjectFilter\\\",\\\"currentWorkspaceFilter\\\",\\\"currentUser\\\",\\\"external-user\\\",\\\"if\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canEditProject\\\",\\\"currentProjectIsStarred\\\",\\\"canCreateProject\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/filters-for-projects/footer/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-projects/header/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    userPreferences: Ember.inject.service(),\n    currentWorkspaceFilterId: Ember.computed('userPreferences.workspaceId', function () {\n      return this.get('userPreferences.workspaceId');\n    }),\n    actions: {\n      setAllProjects() {\n        this.set('userPreferences.currentProject', null);\n        this.changeProject();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-projects/header/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"ZplNV6gK\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"header\\\"],[12],[11,\\\"div\\\"],[24,0,\\\"div\\\"],[4,[38,1],[[32,0],\\\"setAllProjects\\\",[35,0]],null],[4,[38,1],[[32,0],[35,0,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[1,[30,[36,2],[\\\"filters-for-projects.all-projects\\\"],null]],[13],[13],[10,\\\"hr\\\"],[12],[13],[1,[30,[36,11],[\\\"power-select/before-options\\\"],[[\\\"extra\\\",\\\"listboxId\\\",\\\"onInput\\\",\\\"onKeydown\\\",\\\"searchEnabled\\\",\\\"onFocus\\\",\\\"onBlur\\\",\\\"searchPlaceholder\\\",\\\"select\\\"],[[30,[36,3],[[35,10]],null],[30,[36,3],[[35,9]],null],[35,8],[35,7],true,[35,6],[35,5],[30,[36,3],[[35,4]],null],[30,[36,3],[[35,0]],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"select\\\",\\\"action\\\",\\\"t\\\",\\\"readonly\\\",\\\"searchPlaceholder\\\",\\\"onBlur\\\",\\\"onFocus\\\",\\\"onKeydown\\\",\\\"onInput\\\",\\\"listboxId\\\",\\\"extra\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/filters-for-projects/header/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-projects/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"xNmYSiqA\",\n    \"block\": \"{\\\"symbols\\\":[\\\"project\\\"],\\\"statements\\\":[[6,[37,8],null,[[\\\"renderInPlace\\\",\\\"options\\\",\\\"selected\\\",\\\"matcher\\\",\\\"searchField\\\",\\\"onchange\\\",\\\"beforeOptionsComponent\\\",\\\"afterOptionsComponent\\\",\\\"title\\\"],[true,[35,7],[35,2],[35,6],\\\"name\\\",[30,[36,3],[[32,0],\\\"changeProject\\\"],null],[30,[36,4],[\\\"filters-for-projects/header\\\"],[[\\\"changeProject\\\"],[[30,[36,5],[\\\"changeProject\\\"],null]]]],[30,[36,4],[\\\"filters-for-projects/footer\\\"],[[\\\"openLeaveProjectModal\\\"],[[30,[36,3],[[32,0],\\\"openLeaveProjectModal\\\"],null]]]],[35,2,[\\\"name\\\"]]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,0],[[32,1,[\\\"suspended\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-lock project-suspend-icon\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,0],[[32,1,[\\\"discardedAt\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-minus-circle discarded-icon\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"project-name\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"project-name-text\\\"],[12],[1,[32,1,[\\\"name\\\"]]],[6,[37,0],[[30,[36,1],[[32,1]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-star project-star-icon\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,0],[[32,1,[\\\"originWorkspaceName\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"origin-workspace-name\\\"],[12],[2,\\\"(\\\"],[1,[32,1,[\\\"originWorkspaceName\\\"]]],[2,\\\")\\\"],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,0],[[32,1,[\\\"internal\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,0],[[32,1,[\\\"client\\\",\\\"name\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"client-name\\\"],[12],[2,\\\"(\\\"],[1,[32,1,[\\\"client\\\",\\\"name\\\"]]],[2,\\\")\\\"],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"if\\\",\\\"is-starred-project\\\",\\\"selectedProject\\\",\\\"action\\\",\\\"component\\\",\\\"route-action\\\",\\\"projectMatcher\\\",\\\"sortedByStarProjects\\\",\\\"power-select\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/filters-for-projects/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-workspaces/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    pubnub: Ember.inject.service(),\n    store: Ember.inject.service(),\n    showNotification: Ember.inject.service(),\n    currentWorkspaceFilter: Ember.computed.oneWay('userPreferences.currentWorkspaceFilter'),\n    currentWorkspaceFilterModel: Ember.computed('filtersForWorkspaces', 'userPreferences.currentWorkspaceFilter', function () {\n      return this.get('workspaces').filter(workspace => {\n        return workspace.id === this.get('userPreferences.currentWorkspaceFilter.id');\n      }).get('firstObject');\n    }),\n    currentWorkspaceBufferName: Ember.computed('currentWorkspaceFilter.{name,buffer.name}', function () {\n      const bufferedName = this.get('currentWorkspaceFilter.buffer.name');\n\n      if (Ember.isEmpty(bufferedName)) {\n        return this.get('currentWorkspaceFilter.name');\n      } else {\n        return bufferedName;\n      }\n    }),\n    filtersForWorkspaces: Ember.computed('workspaces.@each.buffer', function () {\n      let filtersForWorkspaces = this.get('workspaces').map(workspace => {\n        return Ember.Object.create({\n          id: workspace.id,\n          name: workspace.name,\n          permissions: workspace.permissions,\n          discardedAt: workspace.discardedAt\n        });\n      });\n      return filtersForWorkspaces.filter(Boolean);\n    }),\n    canEdit: Ember.computed('currentWorkspaceFilter', function () {\n      return this.get('currentWorkspaceFilter.permissions.edit');\n    }),\n    currentUser: Ember.computed('userPreferences.currentUser', function () {\n      return this.get('userPreferences.currentUser');\n    }),\n    suspended: Ember.computed('currentUser', 'currentWorkspaceFilter', function () {\n      if (Ember.isPresent(this.get('currentUser.suspendedWorkspaces')) || Ember.isPresent(this.get('currentUser.deletedWorkspaces'))) {\n        return this.get('currentUser.suspendedWorkspaces').includes(this.get('currentWorkspaceFilter.id')) || this.get('currentUser.deletedWorkspaces').includes(this.get('currentWorkspaceFilter.id'));\n      } else {\n        return false;\n      }\n    }),\n    workspaceRole: Ember.computed('currentUser.workspaceRoles', 'currentWorkspaceFilter', function () {\n      if (this.get('currentUser.workspaceRoles')) {\n        return this.get('currentUser.workspaceRoles').findBy('workspace.id', this.get('currentWorkspaceFilter.id'));\n      }\n    }),\n    userIsNotOwner: Ember.computed('workspaceRole', function () {\n      return this.get('workspaceRole.role') !== 'owner';\n    }),\n    userHasMultipleWorkspaces: Ember.computed('workspaces.[]', function () {\n      return this.get('workspaces.length') > 1;\n    }),\n    canUserLeaveWorkspace: Ember.computed('userIsNotOwner', 'userHasMultipleWorkspaces', 'suspended', function () {\n      return this.get('userIsNotOwner') && this.get('userHasMultipleWorkspaces') && !this.get('suspended');\n    }),\n\n    init() {\n      this._super(...arguments);\n\n      if (Ember.isEmpty(this.get('userPreferences.currentWorkspaceFilter'))) {\n        const defaultWorkspace = this.get('filtersForWorkspaces.firstObject');\n        this.set('userPreferences.currentWorkspaceFilter', defaultWorkspace);\n      }\n\n      this.updateWorkspace = this.updateWorkspace.bind(this);\n      this.get('pubnub').on('receive', this.updateWorkspace);\n    },\n\n    willDestroyElement() {\n      this._super(...arguments);\n\n      this.get('pubnub').off('receive', this.updateWorkspace);\n    },\n\n    actions: {\n      changeWorkspace(workspace) {\n        const currentTimeSession = this.get('userPreferences.currentUser.status.timeSession');\n\n        if (currentTimeSession.get('isOngoing')) {\n          if (confirm(this.get('i18n').t('filters-for-workspaces.confirmation-message'))) {\n            this.changeWorkspace(workspace);\n          }\n        } else {\n          this.changeWorkspace(workspace);\n        }\n      },\n\n      initializeLeaveWorkspaceModal() {\n        this.initializeLeaveWorkspaceModal();\n      }\n\n    },\n\n    updateWorkspace(payload) {\n      if (payload.model !== 'time_session' || payload.action !== 'create') {\n        return;\n      }\n\n      const projectId = (payload.attributes || {})['project-id'];\n\n      if (!projectId) {\n        return;\n      }\n\n      this.get('store').findRecord('project', projectId, {\n        reload: true\n      }).then(project => {\n        const currentWorkspaceId = this.get('currentWorkspaceFilterModel.id');\n        const projectWorkspaceId = project && project.get('assignedWorkspace.id');\n\n        if (!project || !currentWorkspaceId || !projectWorkspaceId || projectWorkspaceId === currentWorkspaceId) {\n          return;\n        }\n\n        const workspace = this.get('store').peekRecord('workspace', projectWorkspaceId);\n\n        if (!workspace) {\n          return;\n        }\n\n        this.changeWorkspace(workspace, true);\n        this.get('showNotification').call('warning', this.get('i18n').t('filters-for-workspaces.workspace-changed').string);\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-workspaces/footer/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      closeDropdown() {\n        this.get('selectRemoteController').actions.close();\n      },\n\n      initializeLeaveWorkspaceModal() {\n        this.initializeLeaveWorkspaceModal();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-workspaces/footer/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"f+Zv8AZ5\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[11,\\\"div\\\"],[24,0,\\\"workspace-filters-footer\\\"],[4,[38,0],[[32,0],\\\"closeDropdown\\\"],null],[12],[10,\\\"hr\\\"],[12],[13],[6,[37,5],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[12],[6,[37,3],null,[[\\\"data-test-workspace-configure\\\",\\\"route\\\",\\\"model\\\"],[true,\\\"authenticated.workspaces.configure\\\",[35,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"filters-for-workspaces.configure-current-workspace\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[12],[6,[37,3],null,[[\\\"data-test-workspace-create\\\",\\\"route\\\"],[true,\\\"authenticated.workspaces.new\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"filters-for-workspaces.create-workspace\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[6,[37,5],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[12],[11,\\\"a\\\"],[24,\\\"data-test-workspace-leave\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"initializeLeaveWorkspaceModal\\\"],null],[12],[1,[30,[36,1],[\\\"filters-for-workspaces.leave-workspace\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"currentWorkspaceFilter\\\",\\\"link-to\\\",\\\"canEdit\\\",\\\"if\\\",\\\"canUserLeaveWorkspace\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/filters-for-workspaces/footer/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/filters-for-workspaces/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"WT2EC7PM\",\n    \"block\": \"{\\\"symbols\\\":[\\\"workspace\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"filters-for-workspaces\\\"],[12],[6,[37,10],null,[[\\\"renderInPlace\\\",\\\"options\\\",\\\"selected\\\",\\\"searchEnabled\\\",\\\"class\\\",\\\"onchange\\\",\\\"registerAPI\\\",\\\"searchField\\\",\\\"afterOptionsComponent\\\",\\\"title\\\"],[true,[35,9],[35,1],false,\\\"form-control\\\",[30,[36,8],[[32,0],\\\"changeWorkspace\\\"],null],[30,[36,8],[[32,0],[30,[36,7],[[35,2]],null]],null],\\\"name\\\",[30,[36,6],[\\\"filters-for-workspaces/footer\\\"],[[\\\"canEdit\\\",\\\"currentWorkspaceFilter\\\",\\\"canUserLeaveWorkspace\\\",\\\"initializeLeaveWorkspaceModal\\\",\\\"selectRemoteController\\\"],[[35,5],[35,1],[35,4],[35,3],[35,2]]]],[35,1,[\\\"name\\\"]]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,0],[[32,1,[\\\"discardedAt\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-minus-circle discarded-icon\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"workspace-filter-name\\\"],[12],[1,[32,1,[\\\"name\\\"]]],[13]],\\\"parameters\\\":[1]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"if\\\",\\\"currentWorkspaceFilter\\\",\\\"selectRemoteController\\\",\\\"initializeLeaveWorkspaceModal\\\",\\\"canUserLeaveWorkspace\\\",\\\"canEdit\\\",\\\"component\\\",\\\"mut\\\",\\\"action\\\",\\\"filtersForWorkspaces\\\",\\\"power-select\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/filters-for-workspaces/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/form-controls/button\", [\"exports\", \"ember-form-for/components/form-controls/button\"], function (_exports, _button) {\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 _button.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/checkbox\", [\"exports\", \"ember-form-for/components/form-controls/checkbox\"], function (_exports, _checkbox) {\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 _checkbox.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/color-input\", [\"exports\", \"ember-form-for/components/form-controls/color-input\"], function (_exports, _colorInput) {\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 _colorInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/date-input\", [\"exports\", \"ember-form-for/components/form-controls/date-input\"], function (_exports, _dateInput) {\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 _dateInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/datetime-local-input\", [\"exports\", \"ember-form-for/components/form-controls/datetime-local-input\"], function (_exports, _datetimeLocalInput) {\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 _datetimeLocalInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/email-input\", [\"exports\", \"ember-form-for/components/form-controls/email-input\"], function (_exports, _emailInput) {\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 _emailInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/file-input\", [\"exports\", \"ember-form-for/components/form-controls/file-input\"], function (_exports, _fileInput) {\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 _fileInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/hidden-input\", [\"exports\", \"ember-form-for/components/form-controls/hidden-input\"], function (_exports, _hiddenInput) {\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 _hiddenInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/image\", [\"exports\", \"ember-form-for/components/form-controls/image\"], function (_exports, _image) {\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 _image.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/input\", [\"exports\", \"ember-form-for/components/form-controls/input\"], function (_exports, _input) {\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 _input.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/month-input\", [\"exports\", \"ember-form-for/components/form-controls/month-input\"], function (_exports, _monthInput) {\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 _monthInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/number-input\", [\"exports\", \"ember-form-for/components/form-controls/number-input\"], function (_exports, _numberInput) {\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 _numberInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/password-input\", [\"exports\", \"ember-form-for/components/form-controls/password-input\"], function (_exports, _passwordInput) {\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 _passwordInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/power-select\", [\"exports\", \"ember-form-for/components/form-controls/power-select\"], function (_exports, _powerSelect) {\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 _powerSelect.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/radio\", [\"exports\", \"ember-form-for/components/form-controls/radio\"], function (_exports, _radio) {\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 _radio.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/range-input\", [\"exports\", \"ember-form-for/components/form-controls/range-input\"], function (_exports, _rangeInput) {\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 _rangeInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/reset\", [\"exports\", \"ember-form-for/components/form-controls/reset\"], function (_exports, _reset) {\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 _reset.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/search-input\", [\"exports\", \"ember-form-for/components/form-controls/search-input\"], function (_exports, _searchInput) {\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 _searchInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/select-option\", [\"exports\", \"ember-form-for/components/form-controls/select-option\"], function (_exports, _selectOption) {\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 _selectOption.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/select\", [\"exports\", \"ember-form-for/components/form-controls/select\"], function (_exports, _select) {\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 _select.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/submit\", [\"exports\", \"ember-form-for/components/form-controls/submit\"], function (_exports, _submit) {\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 _submit.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/tel-input\", [\"exports\", \"ember-form-for/components/form-controls/tel-input\"], function (_exports, _telInput) {\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 _telInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/textarea\", [\"exports\", \"ember-form-for/components/form-controls/textarea\"], function (_exports, _textarea) {\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 _textarea.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/time-input\", [\"exports\", \"ember-form-for/components/form-controls/time-input\"], function (_exports, _timeInput) {\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 _timeInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/url-input\", [\"exports\", \"ember-form-for/components/form-controls/url-input\"], function (_exports, _urlInput) {\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 _urlInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-controls/week-input\", [\"exports\", \"ember-form-for/components/form-controls/week-input\"], function (_exports, _weekInput) {\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 _weekInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-errors\", [\"exports\", \"ember-form-for/components/form-errors\"], function (_exports, _formErrors) {\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 _formErrors.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-field\", [\"exports\", \"ember-form-for/components/form-field\"], function (_exports, _formField) {\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 _formField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/checkbox-field\", [\"exports\", \"ember-form-for/components/form-fields/checkbox-field\"], function (_exports, _checkboxField) {\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 _checkboxField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/color-field\", [\"exports\", \"ember-form-for/components/form-fields/color-field\"], function (_exports, _colorField) {\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 _colorField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/custom-field\", [\"exports\", \"ember-form-for/components/form-fields/custom-field\"], function (_exports, _customField) {\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 _customField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/date-field\", [\"exports\", \"ember-form-for/components/form-fields/date-field\"], function (_exports, _dateField) {\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 _dateField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/datetime-field\", [\"exports\", \"ember-form-for/components/form-fields/datetime-field\"], function (_exports, _datetimeField) {\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 _datetimeField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/datetime-local-field\", [\"exports\", \"ember-form-for/components/form-fields/datetime-local-field\"], function (_exports, _datetimeLocalField) {\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 _datetimeLocalField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/email-field\", [\"exports\", \"ember-form-for/components/form-fields/email-field\"], function (_exports, _emailField) {\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 _emailField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/file-field\", [\"exports\", \"ember-form-for/components/form-fields/file-field\"], function (_exports, _fileField) {\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 _fileField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/hidden-field\", [\"exports\", \"ember-form-for/components/form-fields/hidden-field\"], function (_exports, _hiddenField) {\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 _hiddenField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/month-field\", [\"exports\", \"ember-form-for/components/form-fields/month-field\"], function (_exports, _monthField) {\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 _monthField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/number-field\", [\"exports\", \"ember-form-for/components/form-fields/number-field\"], function (_exports, _numberField) {\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 _numberField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/password-field\", [\"exports\", \"ember-form-for/components/form-fields/password-field\"], function (_exports, _passwordField) {\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 _passwordField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/power-select-field\", [\"exports\", \"ember-form-for/components/form-fields/power-select-field\"], function (_exports, _powerSelectField) {\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 _powerSelectField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/radio-field\", [\"exports\", \"ember-form-for/components/form-fields/radio-field\"], function (_exports, _radioField) {\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 _radioField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/radio-group\", [\"exports\", \"ember-form-for/components/form-fields/radio-group\"], function (_exports, _radioGroup) {\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 _radioGroup.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/range-field\", [\"exports\", \"ember-form-for/components/form-fields/range-field\"], function (_exports, _rangeField) {\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 _rangeField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/search-field\", [\"exports\", \"ember-form-for/components/form-fields/search-field\"], function (_exports, _searchField) {\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 _searchField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/select-field\", [\"exports\", \"ember-form-for/components/form-fields/select-field\"], function (_exports, _selectField) {\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 _selectField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/tel-field\", [\"exports\", \"ember-form-for/components/form-fields/tel-field\"], function (_exports, _telField) {\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 _telField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/text-field\", [\"exports\", \"ember-form-for/components/form-fields/text-field\"], function (_exports, _textField) {\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 _textField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/textarea-field\", [\"exports\", \"ember-form-for/components/form-fields/textarea-field\"], function (_exports, _textareaField) {\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 _textareaField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/time-field\", [\"exports\", \"ember-form-for/components/form-fields/time-field\"], function (_exports, _timeField) {\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 _timeField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/url-field\", [\"exports\", \"ember-form-for/components/form-fields/url-field\"], function (_exports, _urlField) {\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 _urlField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-fields/week-field\", [\"exports\", \"ember-form-for/components/form-fields/week-field\"], function (_exports, _weekField) {\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 _weekField.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-for\", [\"exports\", \"ember-form-for/components/form-for\"], function (_exports, _formFor) {\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 _formFor.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-hint\", [\"exports\", \"ember-form-for/components/form-hint\"], function (_exports, _formHint) {\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 _formHint.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/form-label\", [\"exports\", \"ember-form-for/components/form-label\"], function (_exports, _formLabel) {\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 _formLabel.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/g-recaptcha\", [\"exports\", \"ember-g-recaptcha/components/g-recaptcha\"], function (_exports, _gRecaptcha) {\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 _gRecaptcha.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/gravatar-image\", [\"exports\", \"ember-cli-gravatar/components/gravatar-image\"], function (_exports, _gravatarImage) {\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 _gravatarImage.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/has-gravatar\", [\"exports\", \"ember-cli-gravatar/components/has-gravatar\"], function (_exports, _hasGravatar) {\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 _hasGravatar.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/image-cropper\", [\"exports\", \"ember-cli-image-cropper/components/image-cropper\"], function (_exports, _imageCropper) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _imageCropper.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/image-cropper/component\", [\"exports\", \"ember-cli-image-cropper/components/image-cropper\"], function (_exports, _imageCropper) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _imageCropper.default.extend({\n    //override default options of cropper\n    aspectRatio: 1,\n    minCropBoxWidth: 100,\n    minCropBoxHeight: 100,\n    cropperContainer: '.cropper-container > img',\n    zoomable: false,\n\n    init() {\n      this._super(...arguments);\n\n      this.set('setCroppedImage', this.get('setCroppedImage').bind(this));\n    },\n\n    didInsertElement() {\n      this._super(...arguments);\n\n      const {\n        element\n      } = this.get('cropper');\n      element.addEventListener('cropend', this.get('setCroppedImage'));\n    },\n\n    willDestroyElement() {\n      const {\n        element\n      } = this.get('cropper');\n      element.removeEventListener('cropend', this.get('setCroppedImage'));\n\n      this._super(...arguments);\n    },\n\n    setCroppedImage() {\n      const image = this.get('cropper').getCroppedCanvas().toDataURL(this.get('imageMimeType'));\n      this.onImageCropped(image);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/image-cropper/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"fMgZ4NdW\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"avatar-cropper\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"cropper\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"cropper-container\\\"],[12],[10,\\\"img\\\"],[14,1,\\\"image\\\"],[15,\\\"src\\\",[34,0]],[14,0,\\\"cropper-hiden\\\"],[12],[13],[13],[10,\\\"div\\\"],[14,0,\\\"cropped\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"cropped-avatar\\\"],[12],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"croppedImage\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/image-cropper/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/infinity-loader\", [\"exports\", \"ember-infinity/components/infinity-loader\"], function (_exports, _infinityLoader) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _infinityLoader.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/internal-invitation-content/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({});\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/internal-invitation-content/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"x+LRVe3k\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"h4\\\"],[12],[1,[30,[36,0],[\\\"internal-invitation-content.title\\\"],[[\\\"targetName\\\"],[[35,1]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"invitation-content-description\\\"],[12],[1,[30,[36,0],[\\\"internal-invitation-content.description\\\"],[[\\\"targetName\\\",\\\"inviterFirstName\\\",\\\"inviterLastName\\\",\\\"invitationDate\\\"],[[35,1],[35,4],[35,3],[35,2]]]]],[13],[6,[37,6],null,[[\\\"type\\\",\\\"class\\\",\\\"onClick\\\"],[\\\"success\\\",\\\"invitation-button\\\",[30,[36,5],[\\\"confirmInvitation\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"internal-invitation-content.confirm-invitation\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"targetName\\\",\\\"invitationDate\\\",\\\"inviterLastName\\\",\\\"inviterFirstName\\\",\\\"route-action\\\",\\\"bs-button\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/internal-invitation-content/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invitation-navbar/component\", [\"exports\", \"web-app-ember-v2/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    profileUrl: _environment.default.APP.urls.profile,\n    currentPresenceClass: Ember.computed('currentPresenceType', function () {\n      return (this.get('currentPresenceType') || 'clocked_out').replace('_', '-');\n    }),\n    actions: {\n      refreshAuthenticatedRoute() {\n        this.refreshAuthenticatedRoute();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invitation-navbar/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"7HmuYfzt\",\n    \"block\": \"{\\\"symbols\\\":[\\\"navbar\\\",\\\"nav\\\",\\\"dd\\\",\\\"menu\\\",\\\"nav\\\",\\\"dd\\\",\\\"menu\\\"],\\\"statements\\\":[[6,[37,8],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"navbar-header\\\"],[12],[6,[37,7],[[30,[36,6],[[32,1,[\\\"nav\\\"]],\\\"expected `navbar.nav` to be a contextual component but found a string. Did you mean `(component navbar.nav)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C56) \\\"],null]],[[\\\"class\\\"],[\\\"navbar-right navbar-controls navbar-mobile-controls navbar-mobile-invitation\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[14,0,\\\"user-menu\\\"],[12],[6,[37,7],[[30,[36,6],[[32,5,[\\\"dropdown\\\"]],\\\"expected `nav.dropdown` to be a contextual component but found a string. Did you mean `(component nav.dropdown)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C187) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[32,6,[\\\"toggle\\\"]],\\\"expected `dd.toggle` to be a contextual component but found a string. Did you mean `(component dd.toggle)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C212) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,5],null,[[\\\"email\\\",\\\"size\\\",\\\"retina\\\",\\\"defaultImage\\\",\\\"class\\\"],[[35,4,[\\\"email\\\"]],40,\\\"true\\\",\\\"identicon\\\",[30,[36,3],[\\\"with-border \\\",[35,2]],null]]]]],[10,\\\"span\\\"],[14,0,\\\"caret\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,6],[[32,6,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C400) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[12],[6,[37,1],null,[[\\\"route\\\"],[\\\"authenticated.sign-out\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-log-out\\\"],[12],[13],[1,[30,[36,0],[\\\"user-menu.sign-out\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[7]}]]]],\\\"parameters\\\":[6]}]]],[13]],\\\"parameters\\\":[5]}]]],[10,\\\"a\\\"],[14,6,\\\"#\\\"],[14,0,\\\"navbar-brand invitation-navbar\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"glyphicon glyphicon-circle-arrow-left\\\"],[12],[13],[10,\\\"div\\\"],[14,0,\\\"invitation-navbar--text\\\"],[12],[1,[30,[36,0],[\\\"invitation-navbar.go-back\\\"],null]],[13],[13],[13],[6,[37,7],[[30,[36,6],[[32,1,[\\\"content\\\"]],\\\"expected `navbar.content` to be a contextual component but found a string. Did you mean `(component navbar.content)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C798) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[32,1,[\\\"nav\\\"]],\\\"expected `navbar.nav` to be a contextual component but found a string. Did you mean `(component navbar.nav)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C817) \\\"],null]],[[\\\"class\\\"],[\\\"navbar-right navbar-controls collapsed-nav-hidden\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[14,0,\\\"user-menu\\\"],[12],[6,[37,7],[[30,[36,6],[[32,2,[\\\"dropdown\\\"]],\\\"expected `nav.dropdown` to be a contextual component but found a string. Did you mean `(component nav.dropdown)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C921) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[32,3,[\\\"toggle\\\"]],\\\"expected `dd.toggle` to be a contextual component but found a string. Did you mean `(component dd.toggle)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C946) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,5],null,[[\\\"email\\\",\\\"size\\\",\\\"retina\\\",\\\"defaultImage\\\",\\\"class\\\"],[[35,4,[\\\"email\\\"]],40,\\\"true\\\",\\\"identicon\\\",[30,[36,3],[\\\"with-border \\\",[35,2]],null]]]]],[10,\\\"span\\\"],[14,0,\\\"caret\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,6],[[32,3,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/invitation-navbar/template.hbs' @ L1:C1134) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[12],[6,[37,1],null,[[\\\"route\\\"],[\\\"authenticated.sign-out\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-log-out\\\"],[12],[13],[1,[30,[36,0],[\\\"user-menu.sign-out\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[4]}]]]],\\\"parameters\\\":[3]}]]],[13]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"link-to\\\",\\\"currentPresenceClass\\\",\\\"concat\\\",\\\"user\\\",\\\"gravatar-image\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"bs-navbar\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/invitation-navbar/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invitations-list/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    invitationToEdit: null,\n    invitationToDelete: null,\n    invitationToResend: null,\n    dateFormat: Ember.computed.readOnly('userPreferences.currentUser.fullDateFormat'),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    showEditInvitation: Ember.computed('invitationToEdit', {\n      get() {\n        return Ember.isPresent(this.get('invitationToEdit'));\n      },\n\n      set(key, value) {\n        if (!value) {\n          let invitation = this.get('invitationToEdit');\n          this.set('invitationToEdit', null);\n          invitation.rollbackAttributes();\n        }\n\n        return value;\n      }\n\n    }),\n    showDeleteInvitation: Ember.computed('invitationToDelete', {\n      get() {\n        return Ember.isPresent(this.get('invitationToDelete'));\n      },\n\n      set(key, value) {\n        if (!value) {\n          this.set('invitationToDelete', null);\n        }\n\n        return value;\n      }\n\n    }),\n    showResendInvitation: Ember.computed('invitationToResend', {\n      get() {\n        return Ember.isPresent(this.get('invitationToResend'));\n      },\n\n      set(key, value) {\n        if (!value) {\n          this.set('invitationToResend', null);\n        }\n\n        return value;\n      }\n\n    }),\n    actions: {\n      edit(invitation) {\n        this.set('invitationToEdit', invitation);\n      },\n\n      update(invitation) {\n        this.updateInvitation(invitation);\n        this.set('invitationToEdit', null);\n      },\n\n      deleteInitial(invitation) {\n        this.set('invitationToDelete', invitation);\n      },\n\n      delete(invitation) {\n        this.deleteInvitation(invitation);\n        this.set('invitationToDelete', null);\n      },\n\n      resendInitial(invitation) {\n        this.set('invitationToResend', invitation);\n      },\n\n      resend(invitation) {\n        this.resendInvitation(invitation);\n        this.set('invitationToResend', null);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invitations-list/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Ar618jaT\",\n    \"block\": \"{\\\"symbols\\\":[\\\"invitation\\\",\\\"projectRole\\\",\\\"index\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"invitations-list\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[10,\\\"table\\\"],[14,0,\\\"table\\\"],[12],[10,\\\"thead\\\"],[12],[10,\\\"tr\\\"],[12],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"invitations-list.name\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"invitations-list.role\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"invitations-list.projects\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"invitations-list.invited\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"invitations-list.action\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"invitations-list.accepted\\\"],null]],[13],[13],[13],[10,\\\"tbody\\\"],[12],[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,13]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"tr\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"td\\\"],[12],[1,[32,1,[\\\"email\\\"]]],[13],[10,\\\"td\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"member-role-label label label-info\\\"],[12],[1,[30,[36,5],[[32,1,[\\\"role\\\"]]],null]],[13],[13],[10,\\\"td\\\"],[12],[6,[37,7],[[30,[36,6],[[30,[36,6],[[32,1,[\\\"projectIds\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[32,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\", \\\"]],\\\"parameters\\\":[]}]]],[1,[30,[36,4],[[32,2]],null]]],\\\"parameters\\\":[2,3]}]]],[13],[10,\\\"td\\\"],[12],[1,[30,[36,8],[[32,1,[\\\"createdAt\\\"]]],null]],[2,\\\" \\\"],[1,[30,[36,0],[\\\"invitations-list.ago\\\"],null]],[13],[10,\\\"td\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"invitations-buttons\\\"],[12],[6,[37,9],[[32,1,[\\\"confirmed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[32,1,[\\\"permissions\\\",\\\"resend\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"span\\\"],[24,\\\"data-role\\\",\\\"resend-invitation\\\"],[24,0,\\\"fa fa-paper-plane-o\\\"],[4,[38,1],[[32,0],\\\"resendInitial\\\",[32,1]],null],[12],[6,[37,2],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"invitations-list.actions.resend\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,3],[[32,1,[\\\"permissions\\\",\\\"edit\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"span\\\"],[24,\\\"data-role\\\",\\\"edit-invitation\\\"],[24,0,\\\"fa fa-pencil text-primary\\\"],[4,[38,1],[[32,0],\\\"edit\\\",[32,1]],null],[12],[6,[37,2],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"invitations-list.actions.edit\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,3],[[32,1,[\\\"permissions\\\",\\\"delete\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"span\\\"],[24,\\\"data-role\\\",\\\"delete-invitation\\\"],[24,0,\\\"fa fa-trash text-danger\\\"],[4,[38,1],[[32,0],\\\"deleteInitial\\\",[32,1]],null],[12],[6,[37,2],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"invitations-list.actions.delete\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"td\\\"],[12],[1,[30,[36,12],[[32,1,[\\\"confirmedAt\\\"]],[35,11],[35,10]],null]],[13],[13]],\\\"parameters\\\":[1]}]]],[13],[13],[13],[13],[1,[30,[36,17],null,[[\\\"open\\\",\\\"invitation\\\",\\\"updateInvitation\\\",\\\"project\\\"],[[35,16],[35,15],[30,[36,1],[[32,0],\\\"update\\\",[35,15]],null],[35,14]]]]],[1,[30,[36,20],null,[[\\\"open\\\",\\\"header\\\",\\\"text\\\",\\\"cancel\\\",\\\"confirm\\\",\\\"confirmType\\\",\\\"onConfirm\\\"],[[35,19],[30,[36,0],[\\\"invitations-list.delete.confirm-header\\\"],null],[30,[36,0],[\\\"invitations-list.delete.confirm-text\\\"],[[\\\"email\\\",\\\"target\\\"],[[35,18,[\\\"email\\\"]],[35,14,[\\\"name\\\"]]]]],[30,[36,0],[\\\"invitations-list.delete.cancel\\\"],null],[30,[36,0],[\\\"invitations-list.delete.confirm\\\"],null],\\\"danger\\\",[30,[36,1],[[32,0],\\\"delete\\\",[35,18]],null]]]]],[1,[30,[36,20],null,[[\\\"open\\\",\\\"header\\\",\\\"text\\\",\\\"cancel\\\",\\\"confirm\\\",\\\"confirmType\\\",\\\"onConfirm\\\"],[[35,22],[30,[36,0],[\\\"invitations-list.resend.confirm-header\\\"],null],[30,[36,0],[\\\"invitations-list.resend.confirm-text\\\"],[[\\\"email\\\"],[[35,21,[\\\"email\\\"]]]]],[30,[36,0],[\\\"invitations-list.resend.cancel\\\"],null],[30,[36,0],[\\\"invitations-list.resend.confirm\\\"],null],\\\"success\\\",[30,[36,1],[[32,0],\\\"resend\\\",[35,21]],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"action\\\",\\\"tooltip-on-element\\\",\\\"if\\\",\\\"get-project-name\\\",\\\"format-user-role\\\",\\\"-track-array\\\",\\\"each\\\",\\\"format-date-to-time-ago\\\",\\\"unless\\\",\\\"currentUserTimezone\\\",\\\"dateFormat\\\",\\\"format-date\\\",\\\"invitations\\\",\\\"target\\\",\\\"invitationToEdit\\\",\\\"showEditInvitation\\\",\\\"edit-invitation-modal\\\",\\\"invitationToDelete\\\",\\\"showDeleteInvitation\\\",\\\"confirmation-dialog\\\",\\\"invitationToResend\\\",\\\"showResendInvitation\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/invitations-list/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invite-new-member-form-modal/component\", [\"exports\", \"web-app-ember-v2/mixins/autofocus\", \"web-app-ember-v2/utils/general\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _autofocus, _general, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, _autofocus.default, {\n    currentRole: 'staff',\n    modalOpen: true,\n    sortProps: Object.freeze(['name']),\n    consentConfirmation: false,\n    sortedCheckedProjects: Ember.computed.sort('model', 'sortProps'),\n    currentWorkspaceFilter: Ember.computed.oneWay('userPreferences.currentWorkspaceFilter'),\n    externalRoleSelected: Ember.computed('externalRoles.[]', 'currentRole', function () {\n      return this.get('externalRoles').includes(this.get('currentRole'));\n    }),\n    externalRoles: Ember.computed('target.permissions.create-external-members-roles.[]', function () {\n      return this.get('target.permissions.create-external-members-roles.[]');\n    }),\n    internalRoles: Ember.computed('target.permissions.create-internal-members-roles.[]', function () {\n      return this.get('target.permissions.create-internal-members-roles');\n    }),\n\n    init() {\n      this.checkedProjects = this.checkedProjects || [];\n      this.set('sendCloseAction', this.get('sendCloseAction').bind(this));\n\n      this._super(...arguments);\n    },\n\n    sendCloseAction: function () {\n      this.send('close');\n    },\n\n    didReceiveAttrs() {\n      this.set('checkedProjects', []);\n      const checkedProjects = this.get('checkedProjects');\n\n      if (Ember.isPresent(this.currentProject) && Ember.isEmpty(this.currentProject.get('originWorkspaceName'))) {\n        if (!checkedProjects.includes(this.currentProject)) {\n          checkedProjects.pushObject(this.currentProject);\n        }\n      } else {\n        this.set('checkedProjects', []);\n      }\n    },\n\n    validateEmails() {\n      return this.get('newMemberEmails').every(email => (0, _general.isEmail)(email));\n    },\n\n    actions: {\n      submit() {\n        if (!this.validateEmails()) {\n          const error = this.get('i18n').t('invite-new-member-form-modal.emails-must-be-valid').string;\n          return this.showNotification.call('error', error);\n        }\n\n        this.set(\"saveBtnDisabled\", true);\n        this.showSpinner();\n        this.inviteMembers(this.get('sendCloseAction'), this.get('currentRole').underscore(), this.get('newMemberEmails'), this.get('checkedProjects').map(project => project.id), this.get('currentWorkspaceFilter'), this.get('externalRoleSelected'), this.get('consentConfirmation')).finally(() => {\n          this.set(\"saveBtnDisabled\", false);\n          this.hideSpinner();\n        });\n      },\n\n      close() {\n        this.set('modalOpen', false);\n        this.set('currentRole', 'staff');\n        this.set('newMemberEmails', []);\n        this.set('checkedProjects', []);\n        this.set('consentConfirmation', false);\n      },\n\n      changeRole(role) {\n        this.set('currentRole', role);\n\n        if (this.get('externalRoleSelected') && this.get('checkedProjects').length > 1) {\n          this.set('checkedProjects', [this.currentProject]);\n        }\n      },\n\n      setProject(project) {\n        const checkedProjects = this.get('checkedProjects');\n        const isProjectChecked = checkedProjects.includes(project);\n\n        if (isProjectChecked) {\n          checkedProjects.removeObject(project);\n        } else if (this.get('externalRoleSelected')) {\n          this.set('checkedProjects', [project]);\n        } else {\n          checkedProjects.pushObject(project);\n        }\n      },\n\n      emailsChanged(emails) {\n        this.set(\"newMemberEmails\", emails);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invite-new-member-form-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"XSQengHa\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"project\\\",\\\"isSelected\\\",\\\"dd\\\",\\\"role\\\",\\\"role\\\"],\\\"statements\\\":[[6,[37,22],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,21],[30,[36,1],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,11],[[30,[36,10],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/invite-new-member-form-modal/template.hbs' @ L1:C68) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.invite-member\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,11],[[30,[36,10],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/invite-new-member-form-modal/template.hbs' @ L1:C181) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"invite-member-modal\\\"],[12],[10,\\\"h4\\\"],[12],[10,\\\"b\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.comma-separated-list-of-emails\\\"],null]],[13],[13],[1,[30,[36,12],null,[[\\\"emailsChanged\\\"],[[30,[36,1],[[32,0],\\\"emailsChanged\\\"],null]]]]],[10,\\\"h6\\\"],[14,0,\\\"consent-confirmation\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"form-group required\\\"],[12],[1,[30,[36,14],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\"],[\\\"checkbox\\\",[35,13],\\\"invitation-consent-confirmation\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"invitation-consent-confirmation\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.consent-confirmation\\\"],null]],[13],[13],[13],[10,\\\"h6\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.note4\\\"],null]],[13],[10,\\\"h4\\\"],[12],[10,\\\"b\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.role\\\"],null]],[13],[13],[6,[37,15],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,11],[[30,[36,10],[[32,4,[\\\"button\\\"]],\\\"expected `dd.button` to be a contextual component but found a string. Did you mean `(component dd.button)`? ('web-app-ember-v2/components/invite-new-member-form-modal/template.hbs' @ L1:C776) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,4],[[35,9]],null]],[2,\\\" \\\"],[10,\\\"span\\\"],[14,0,\\\"caret\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,11],[[30,[36,10],[[32,4,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/invite-new-member-form-modal/template.hbs' @ L1:C864) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,5]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[14,\\\"role\\\",\\\"presentation\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,1],[[32,0],\\\"changeRole\\\",[32,6]],null],[12],[1,[30,[36,4],[[32,6]],null]],[13],[13]],\\\"parameters\\\":[6]}]]],[10,\\\"hr\\\"],[12],[13],[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,8]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[14,\\\"role\\\",\\\"presentation\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,1],[[32,0],\\\"changeRole\\\",[32,5]],null],[12],[1,[30,[36,4],[[32,5]],null]],[13],[13]],\\\"parameters\\\":[5]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[4]}]]],[10,\\\"div\\\"],[14,0,\\\"project-invitation-note\\\"],[12],[10,\\\"h6\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.note1\\\"],null]],[13],[10,\\\"h6\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.note2\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"assigned-projects\\\"],[12],[10,\\\"h4\\\"],[12],[10,\\\"b\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.projects\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"membership-projects\\\"],[12],[6,[37,18],null,[[\\\"options\\\",\\\"selection\\\"],[[35,17],[35,16]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-6\\\"],[12],[10,\\\"input\\\"],[15,\\\"onclick\\\",[30,[36,1],[[32,0],\\\"setProject\\\",[32,2]],null]],[15,\\\"disabled\\\",[31,[[30,[36,2],[[32,2]],null]]]],[15,\\\"checked\\\",[32,3]],[15,1,[32,2,[\\\"id\\\"]]],[14,4,\\\"checkbox\\\"],[12],[13],[10,\\\"label\\\"],[15,\\\"for\\\",[32,2,[\\\"id\\\"]]],[12],[6,[37,3],[[32,2,[\\\"originWorkspaceName\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"disabled\\\"],[12],[1,[32,2,[\\\"name\\\"]]],[2,\\\" (\\\"],[1,[32,2,[\\\"originWorkspaceName\\\"]]],[2,\\\")\\\"],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"span\\\"],[12],[1,[32,2,[\\\"name\\\"]]],[13]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[2,3]}]]],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"project-invitation-note-2\\\"],[12],[10,\\\"h6\\\"],[12],[1,[30,[36,0],[\\\"invite-new-member-form-modal.note3\\\"],null]],[13],[13],[13],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12 text-right\\\"],[12],[6,[37,19],null,[[\\\"onClick\\\"],[[30,[36,1],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"invite-new-member-form-modal.cancel\\\"],null]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[6,[37,19],null,[[\\\"onClick\\\",\\\"type\\\",\\\"disabled\\\"],[[30,[36,1],[[32,0],\\\"submit\\\"],null],\\\"success\\\",[35,20]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"invite-new-member-form-modal.invite\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"action\\\",\\\"check-if-external-project\\\",\\\"if\\\",\\\"format-user-role\\\",\\\"internalRoles\\\",\\\"-track-array\\\",\\\"each\\\",\\\"externalRoles\\\",\\\"currentRole\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"invite-users\\\",\\\"consentConfirmation\\\",\\\"input\\\",\\\"bs-dropdown\\\",\\\"checkedProjects\\\",\\\"sortedCheckedProjects\\\",\\\"multiselect-checkboxes\\\",\\\"bs-button\\\",\\\"saveBtnDisabled\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/invite-new-member-form-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invite-users/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNames: ['form-control', 'invite-users'],\n    store: Ember.inject.service(),\n    selectedEmails: Ember.computed('selectedItems.[]', function () {\n      return this.get('selectedItems').map(item => item.email ? item.email : item);\n    }),\n\n    init() {\n      this._super(...arguments);\n\n      this.selectedItems = [];\n      this.availableUsers = this.get(\"store\").peekAll('user').toArray().map(result => result.toJSON({\n        includeId: true\n      }));\n      this.addEmailOnBlur = this.addEmailOnBlur.bind(this);\n    },\n\n    didInsertElement() {\n      this._super(...arguments);\n\n      document.addEventListener('click', this.addEmailOnBlur, true);\n    },\n\n    willDestroyElement() {\n      this._super(...arguments);\n\n      document.removeEventListener('click', this.addEmailOnBlur, true);\n    },\n\n    click() {\n      this.element.querySelector(\"input\").focus();\n    },\n\n    addEmailOnBlur({\n      target\n    }) {\n      if (this.isDestroyed || this.element.contains(target)) {\n        return;\n      }\n\n      const inputValue = this.element.querySelector('input').value;\n      if (inputValue.length === 0) return;\n      this.send('itemSelected', inputValue);\n      this.send('clearAutocompleteInput');\n    },\n\n    actions: {\n      itemSelected(selectedItem) {\n        this.get(\"selectedItems\").pushObject(selectedItem);\n        const userSelected = Ember.typeOf(selectedItem) === \"object\";\n\n        if (userSelected) {\n          this.get(\"availableUsers\").removeObject(selectedItem);\n        }\n\n        this.get(\"emailsChanged\")(this.get(\"selectedEmails\"));\n      },\n\n      removeItem(removedItem) {\n        this.get(\"selectedItems\").removeObject(removedItem);\n        const userSelected = Ember.typeOf(removedItem) === \"object\";\n\n        if (userSelected) {\n          this.get(\"availableUsers\").pushObject(removedItem);\n        }\n\n        this.get(\"emailsChanged\")(this.get(\"selectedEmails\"));\n      },\n\n      clearAutocompleteInput() {\n        this.element.querySelector('input').value = '';\n        const usersList = this.element.querySelector('.easy-autocomplete-container > ul');\n\n        if (usersList) {\n          usersList.style.display = 'none';\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invite-users/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"gqqs0id6\",\n    \"block\": \"{\\\"symbols\\\":[\\\"selectedItem\\\"],\\\"statements\\\":[[6,[37,5],[[30,[36,4],[[30,[36,4],[[35,3]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[31,[[30,[36,0],[[30,[36,1],[[30,[36,0],[[32,1,[\\\"email\\\"]],[32,1,[\\\"email\\\"]],[32,1]],null]],null],\\\"\\\",\\\"email-invalid\\\"],null]]]],[12],[10,\\\"span\\\"],[14,0,\\\"badge badge-pill badge-secondary\\\"],[12],[1,[30,[36,0],[[32,1,[\\\"email\\\"]],[32,1,[\\\"email\\\"]],[32,1]],null]],[11,\\\"button\\\"],[4,[38,2],[[32,0],\\\"removeItem\\\",[32,1]],null],[12],[2,\\\"x\\\"],[13],[13],[13]],\\\"parameters\\\":[1]}]]],[1,[30,[36,7],null,[[\\\"clearAutocompleteInput\\\",\\\"availableUsers\\\",\\\"itemSelected\\\"],[[30,[36,2],[[32,0],\\\"clearAutocompleteInput\\\"],null],[35,6],[30,[36,2],[[32,0],\\\"itemSelected\\\"],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"if\\\",\\\"is-email-valid\\\",\\\"action\\\",\\\"selectedItems\\\",\\\"-track-array\\\",\\\"each\\\",\\\"availableUsers\\\",\\\"invite-users/users-autocomplete\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/invite-users/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invite-users/users-autocomplete/component\", [\"exports\", \"ember-get-config\"], function (_exports, _emberGetConfig) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNames: [\"users-autocomplete\"],\n    store: Ember.inject.service(),\n\n    init() {\n      this._super(...arguments);\n\n      this.handleUserSelected = this.handleUserSelected.bind(this);\n    },\n\n    didInsertElement() {\n      this._super(...arguments);\n\n      const options = {\n        data: this.availableUsers,\n        minCharNumber: 1,\n\n        getValue(element) {\n          return `${element.firstName} ${element.lastName}`;\n        },\n\n        template: {\n          type: \"custom\",\n\n          method(value, user) {\n            return `<div class=\"eac-image-container\">\n                    <img src=\"${user.avatarUrl || _emberGetConfig.default.gravatarDefaultURL}\" class=\"eac-image\">\n                  </div>\n                  <div>\n                    <span>${value}</span>\n                    <div class=\"eac-email\">${user.email}</div>\n                  </div>\n                  `;\n          }\n\n        },\n        list: {\n          onChooseEvent: this.handleUserSelected,\n          match: {\n            enabled: true,\n            method: function (element, phrase) {\n              return element.indexOf(phrase) !== -1;\n            }\n          }\n        }\n      };\n      this.$(\"input\").easyAutocomplete(options);\n    },\n\n    focusInput() {\n      this.element.querySelector(\"input\").focus();\n    },\n\n    getSelectedUser() {\n      return this.$(\"input\").getSelectedItemData();\n    },\n\n    handleUserSelected() {\n      this.itemSelected(this.getSelectedUser());\n      this.clearAutocompleteInput();\n      this.focusInput();\n    },\n\n    actions: {\n      handleCustomEmail({\n        key,\n        target: {\n          value: customEmail\n        }\n      }) {\n        if (customEmail.length === 0) return;\n\n        if (key === 'Enter' || key === ',') {\n          this.itemSelected(customEmail);\n          this.clearAutocompleteInput();\n          return false;\n        }\n      },\n\n      handleCopyPaste(event) {\n        const pastedText = (event.clipboardData || window.clipboardData).getData('text');\n        const emails = pastedText.split(/[ ,]/).filter(email => email.length);\n        emails.forEach(email => {\n          this.itemSelected(email);\n        });\n        event.preventDefault();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/invite-users/users-autocomplete/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"9v8Q59ol\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"input\\\"],[15,\\\"onKeyPress\\\",[30,[36,0],[[32,0],\\\"handleCustomEmail\\\"],null]],[15,\\\"onPaste\\\",[30,[36,0],[[32,0],\\\"handleCopyPaste\\\"],null]],[15,0,[31,[[30,[36,2],[[35,1],\\\"invalid\\\",\\\"\\\"],null]]]],[12],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"invalid\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/invite-users/users-autocomplete/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/leave-project-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    userPreferences: Ember.inject.service(),\n    modalOpen: true,\n    currentProjectFilter: Ember.computed.readOnly('userPreferences.currentProject'),\n    actions: {\n      leaveProject() {\n        this.leaveProject();\n      },\n\n      close() {\n        this.set('modalOpen', false);\n        Ember.run.later(() => {\n          this.cancel();\n        }, 500);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/leave-project-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"HXRLVGDK\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,8],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,7],[30,[36,5],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,4],[[30,[36,3],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/leave-project-modal/template.hbs' @ L1:C68) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[34,2]],[13]],\\\"parameters\\\":[]}]]],[6,[37,4],[[30,[36,3],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/leave-project-modal/template.hbs' @ L1:C146) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"leave-project-modal.are-you-sure-you-want-to-leave\\\"],[[\\\"workspaceName\\\"],[[35,1,[\\\"name\\\"]]]]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,6],null,[[\\\"onClick\\\"],[[30,[36,5],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"leave-project-modal.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,6],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,5],[[32,0],\\\"leaveProject\\\"],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"leave-project-modal.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"currentProjectFilter\\\",\\\"headerTitle\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/leave-project-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/leave-workspace-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    userPreferences: Ember.inject.service(),\n    modalOpen: true,\n    currentWorkspaceFilter: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter');\n    }),\n    actions: {\n      leaveWorkspace() {\n        this.leaveWorkspace();\n      },\n\n      close() {\n        this.set('modalOpen', false);\n        Ember.run.later(() => {\n          this.cancel();\n        }, 500);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/leave-workspace-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"9P21N9MA\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,8],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,7],[30,[36,5],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,4],[[30,[36,3],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/leave-workspace-modal/template.hbs' @ L1:C68) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[34,2]],[13]],\\\"parameters\\\":[]}]]],[6,[37,4],[[30,[36,3],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/leave-workspace-modal/template.hbs' @ L1:C146) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"leave-workspace-modal.are-you-sure-you-want-to-remove-member\\\"],[[\\\"workspaceName\\\"],[[35,1,[\\\"name\\\"]]]]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,6],null,[[\\\"onClick\\\"],[[30,[36,5],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"leave-workspace-modal.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,6],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,5],[[32,0],\\\"leaveWorkspace\\\"],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"leave-workspace-modal.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"currentWorkspaceFilter\\\",\\\"headerTitle\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/leave-workspace-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/manage-team-member/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"moment\"], function (_exports, _currentSelectors, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const EXTERNAL_MANAGER_ROLE = 'external_manager';\n  const EXTERNAL_STAFF_ROLE = 'external_staff';\n  const EXTERNAL_ROLES = [EXTERNAL_MANAGER_ROLE, EXTERNAL_STAFF_ROLE];\n  const TEAM_VIEW_STATUS = 'col-md-12 col-sm-12 col-xs-12 team-member-container list';\n  const USER_INFO_STATUS = 'team-member-container';\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    store: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    classNameBindings: ['statusClass'],\n    statusClass: Ember.computed('canDisplayMember', 'alwaysDisplay', function () {\n      if (this.get('canDisplayMember')) {\n        if (this.get('alwaysDisplay')) {\n          return USER_INFO_STATUS;\n        } else {\n          return TEAM_VIEW_STATUS;\n        }\n      }\n    }),\n    canEdit: Ember.computed.not('cannotEdit'),\n    currentProjectFilter: Ember.computed.readOnly('userPreferences.currentProject'),\n    currentWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n    canDisplayMember: Ember.computed('onlyActive', 'onlySuspended', 'memberRole.suspended', 'alwaysDisplay', function () {\n      return this.get('alwaysDisplay') || this.get('onlyActive') && !this.get('memberRole.suspended') || this.get('onlySuspended') && this.get('memberRole.suspended');\n    }),\n    projectRoles: Ember.computed('member.projectRoles.[]', 'currentWorkspaceFilter', function () {\n      const workspaceId = this.get('currentWorkspaceFilter.id');\n      return this.get('member.projectRoles').filter(projectRole => {\n        if (!projectRole.belongsTo('project').value()) {\n          return true;\n        }\n\n        return projectRole.get('project.workspace.id') === workspaceId;\n      });\n    }),\n    activeProjectRoles: Ember.computed('projectRoles.@each', function () {\n      return this.get('projectRoles').filter(projectRole => {\n        return projectRole.belongsTo('project').value() !== null && projectRole.get('project.suspended') == false && projectRole.get('project.discardedAt') == null;\n      });\n    }),\n    workspaceRole: Ember.computed('member.workspaceRoles', 'currentWorkspaceFilter', function () {\n      if (this.get('member.workspaceRoles')) {\n        return this.get('member.workspaceRoles').findBy('workspace.id', this.get('currentWorkspaceFilter.id'));\n      }\n    }),\n    memberRole: Ember.computed('projectRoles.@each.role', 'workspaceRole', 'currentProjectFilter', 'currentWorkspaceFilter', function () {\n      const workspaceRole = this.get('workspaceRole');\n\n      if (workspaceRole) {\n        return workspaceRole;\n      } else if (Ember.isPresent(this.get('currentProjectFilter'))) {\n        return this.get('projectRoles').findBy('projectId', this.get('currentProjectFilter.id'));\n      } else {\n        return this.get('highestMemberExternalRole');\n      }\n    }),\n    highestMemberExternalRole: Ember.computed('memberExternalRoles.@each.role', 'projectRoles.[]', function () {\n      const externalManagerRole = this.get('memberExternalRoles').findBy('role', EXTERNAL_MANAGER_ROLE);\n\n      if (Ember.isPresent(externalManagerRole)) {\n        return externalManagerRole;\n      } else {\n        const externalStaffRole = this.get('memberExternalRoles').findBy('role', EXTERNAL_STAFF_ROLE);\n        return externalStaffRole || this.get('projectRoles.firstObject');\n      }\n    }),\n    memberExternalRoles: Ember.computed('projectRoles.@each.role', function () {\n      return this.get('projectRoles').filter(projectRole => {\n        return EXTERNAL_ROLES.includes(projectRole.get('role'));\n      });\n    }),\n    canEditMemberRole: Ember.computed('memberRole', function () {\n      const memberRole = this.get('memberRole');\n      return memberRole && memberRole.get('permissions.edit');\n    }),\n    formatedSuspendedAt: Ember.computed('memberRole.suspendedAt', function () {\n      if (Ember.isPresent(this.get('memberRole.suspendedAt'))) {\n        const suspendedAt = this.get('memberRole.suspendedAt');\n        return (0, _moment.default)(suspendedAt).format('YYYY-MM-DD');\n      }\n    }),\n    isInternalRole: Ember.computed('memberRole', function () {\n      return !/^external/.test(this.get('memberRole.role'));\n    }),\n    canReadMembersActivity: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.permissions.read-members-activity');\n    }),\n    isTargetWorkspace: Ember.computed('workspaceRole', function () {\n      return Ember.isPresent(this.get('workspaceRole'));\n    }),\n    actions: {\n      editTeamMember() {\n        this.setMemberForEdit(this.get('member'), this.get('memberRole'));\n      },\n\n      redirectToProject(projectId) {\n        this.redirectToProject(projectId);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/manage-team-member/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"yiZCKdxz\",\n    \"block\": \"{\\\"symbols\\\":[\\\"projectRole\\\",\\\"index\\\"],\\\"statements\\\":[[6,[37,0],[[35,26]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"media\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"media-left\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"team-member-status\\\"],[12],[6,[37,0],[[35,21]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,18],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,17],[[35,16],[35,15],[35,13,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,20],null,[[\\\"user\\\",\\\"status\\\"],[[35,13],[35,13,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,20],null,[[\\\"user\\\",\\\"status\\\"],[[35,13],[35,13,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"media-body\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"media-heading \\\",[30,[36,0],[[35,22],\\\"edit\\\",\\\"\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"team-member-info\\\"],[12],[6,[37,0],[[35,21]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"h4 member-activity\\\"],[12],[6,[37,18],null,[[\\\"data-test-user-info-name\\\",\\\"route\\\",\\\"models\\\"],[true,\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,17],[[35,16],[35,15],[35,13,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[35,13,[\\\"firstName\\\"]]],[2,\\\" \\\"],[1,[35,13,[\\\"lastName\\\"]]]],\\\"parameters\\\":[]}]]],[2,\\\" \\\"],[10,\\\"a\\\"],[15,6,[31,[\\\"mailto:\\\",[34,13,[\\\"email\\\"]]]]],[14,\\\"data-test-user-info-email\\\",\\\"\\\"],[14,0,\\\"mail-to\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-envelope-o\\\"],[12],[13],[13],[2,\\\" \\\"],[6,[37,0],[[35,19]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,0],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"span\\\"],[24,\\\"data-test-user-info-edit\\\",\\\"\\\"],[24,0,\\\"fa fa-pencil\\\"],[4,[38,1],[[32,0],\\\"editTeamMember\\\"],null],[12],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\" \\\"],[6,[37,0],[[35,10,[\\\"suspended\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,\\\"data-test-user-info-suspended\\\",\\\"\\\"],[14,0,\\\"fa fa-lock\\\"],[12],[6,[37,6],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,5],[\\\"workspace-team.membership-suspended\\\"],[[\\\"suspendedBy\\\",\\\"suspendedAt\\\"],[[35,10,[\\\"suspendedBy\\\"]],[35,14]]]]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"h4\\\"],[12],[1,[35,13,[\\\"firstName\\\"]]],[2,\\\" \\\"],[1,[35,13,[\\\"lastName\\\"]]],[2,\\\" \\\"],[10,\\\"a\\\"],[15,6,[31,[\\\"mailto:\\\",[34,13,[\\\"email\\\"]]]]],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-envelope-o\\\"],[12],[13],[13],[13]],\\\"parameters\\\":[]}]]],[13],[6,[37,0],[[35,23]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"member-role-label\\\"],[12],[6,[37,0],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,0],[[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"label label-default\\\"],[12],[1,[35,7,[\\\"originWorkspaceName\\\"]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"label label-info\\\"],[12],[1,[30,[36,11],[[35,10,[\\\"role\\\"]]],null]],[13],[6,[37,0],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"span\\\"],[24,0,\\\"fa fa-pencil\\\"],[4,[38,1],[[32,0],\\\"editTeamMember\\\"],null],[12],[6,[37,6],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,5],[\\\"workspace-team.membership-edit\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"member-last-activity\\\"],[12],[1,[30,[36,25],null,[[\\\"member\\\",\\\"redirectToProject\\\"],[[35,13],[30,[36,24],[\\\"redirectToProject\\\"],null]]]]],[13],[6,[37,0],[[35,21]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"projects\\\"],[12],[6,[37,4],[[30,[36,3],[[30,[36,3],[[35,2]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,0],[[32,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\", \\\"]],\\\"parameters\\\":[]}]]],[11,\\\"a\\\"],[4,[38,1],[[32,0],\\\"redirectToProject\\\",[32,1,[\\\"projectId\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[1,[32,1,[\\\"project\\\",\\\"name\\\"]]],[13]],\\\"parameters\\\":[1,2]}]]],[13]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"if\\\",\\\"action\\\",\\\"activeProjectRoles\\\",\\\"-track-array\\\",\\\"each\\\",\\\"t\\\",\\\"tooltip-on-element\\\",\\\"currentWorkspaceFilter\\\",\\\"isInternalRole\\\",\\\"isTargetWorkspace\\\",\\\"memberRole\\\",\\\"format-member-role\\\",\\\"canEditMemberRole\\\",\\\"member\\\",\\\"formatedSuspendedAt\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"showEditButton\\\",\\\"member-avatar\\\",\\\"canReadMembersActivity\\\",\\\"setMemberForEdit\\\",\\\"canEdit\\\",\\\"route-action\\\",\\\"workspace-team-last-activity\\\",\\\"canDisplayMember\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/manage-team-member/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/member-avatar/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const DEFAULT_STATUS = 'clocked_out';\n\n  var _default = Ember.Component.extend({\n    classNames: ['member-avatar'],\n    classNameBindings: ['statusClass'],\n    status: DEFAULT_STATUS,\n    statusClass: Ember.computed('status', function () {\n      const status = this.get('status');\n      return Ember.isEmpty(status) ? DEFAULT_STATUS : status;\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/member-avatar/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"2CtB3i7e\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,2],[[35,0,[\\\"avatarUrl\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"img\\\"],[15,\\\"src\\\",[34,0,[\\\"avatarUrl\\\"]]],[12],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"avatar-user-initials\\\"],[12],[1,[30,[36,1],[[35,0]],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"user\\\",\\\"format-user-initials\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/member-avatar/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/member-tooltip-content/component\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    userStatusPresence: Ember.computed.readOnly('userStatus.presence'),\n    userStatusTimeSession: Ember.computed.readOnly('userStatus.timeSession'),\n    headerInfo: Ember.computed('userStatus.presenceType', 'userStatusPresence.beBackAt', function () {\n      const presenceType = this.get('userStatus.presenceType');\n\n      if (presenceType === 'away') {\n        return this.get('i18n').t('team-member-status.be-back', {\n          date: this.formatDateToHour(this.get('userStatusPresence.beBackAt'))\n        });\n      } else if (presenceType === 'clocked_in' || presenceType === 'returned') {\n        return this.get('i18n').t('clocked-in-tooltip-content.online');\n      } else if (presenceType === 'clocked_out') {\n        return this.get('i18n').t('clocked-out-tooltip-content.clocked-out');\n      } else {\n        return this.get('i18n').t('member-tooltip-content.not-activity-yet');\n      }\n    }),\n    lastSessionInfo: Ember.computed('userStatus.presenceType', 'userStatusTimeSession.endedAt', function () {\n      const presenceType = this.get('userStatus.presenceType');\n\n      if (presenceType === 'away') {\n        return this.get('i18n').t('away-tooltip-content.last-session');\n      } else if (presenceType === 'clocked_in' || presenceType === 'returned') {\n        if (this.get('userStatusTimeSession.endedAt')) {\n          return this.get('i18n').t('clocked-in-tooltip-content.last-session');\n        } else {\n          return this.get('i18n').t('clocked-in-tooltip-content.current-session');\n        }\n      } else if (presenceType === 'clocked_out') {\n        return this.get('i18n').t('clocked-in-tooltip-content.last-session');\n      }\n    }),\n\n    formatDateToHour(date) {\n      return (0, _moment.default)(date).tz(this.get('currentUserTimezone')).format('HH:mm');\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/member-tooltip-content/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Jf93QHzc\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[35,1,[\\\"user\\\",\\\"fullName\\\"]]],[2,\\\" - \\\"],[1,[34,4]],[6,[37,3],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"br\\\"],[12],[13],[10,\\\"br\\\"],[12],[13],[1,[34,2]],[2,\\\": \\\"],[10,\\\"br\\\"],[12],[13],[6,[37,3],[[35,1,[\\\"timeSession\\\",\\\"task\\\",\\\"title\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[35,1,[\\\"timeSession\\\",\\\"task\\\",\\\"title\\\"]]],[2,\\\" - \\\"],[1,[35,1,[\\\"timeSession\\\",\\\"project\\\",\\\"name\\\"]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,0],[\\\"away-tooltip-content.never-created-a-time-session\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"userStatus\\\",\\\"lastSessionInfo\\\",\\\"if\\\",\\\"headerInfo\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/member-tooltip-content/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/membership-modal/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"moment\"], function (_exports, _currentSelectors, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    i18n: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    projectToAssign: null,\n    editMemberRole: null,\n    modalOpen: true,\n    newRole: null,\n    sortDefinition: Object.freeze(['name']),\n    sortedAvailableProjectsToAssign: Ember.computed.sort('availableProjectsToAssign', 'sortDefinition'),\n    currentWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n    currentWorkspaceProjects: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.projects'),\n    availableProjectsToAssign: Ember.computed('currentWorkspaceProjects', 'assignedProjects', function () {\n      const checkedProjectsIds = this.get('assignedProjects').mapBy('id');\n      const currentWorkspaceProject = this.get('currentWorkspaceProjects');\n\n      if (currentWorkspaceProject !== undefined) {\n        return currentWorkspaceProject.filter(project => {\n          return !project.get('suspended') && !checkedProjectsIds.includes(project.id) && !project.get('originWorkspaceName');\n        });\n      }\n    }),\n    memberIsNotCurrentUser: Ember.computed('userPreferences.currentUser', 'member', function () {\n      return this.get('userPreferences.currentUser') !== this.get('member');\n    }),\n    currentUser: Ember.computed('userPreferences.currentUser', function () {\n      return this.get('userPreferences.currentUser');\n    }),\n    projectRoles: Ember.computed('member.projectRoles.[]', 'currentWorkspaceFilter', function () {\n      if (this.get('member.projectRoles')) {\n        return this.get('member.projectRoles').filterBy('project.workspace.id', this.get('currentWorkspaceFilter.id'));\n      }\n    }),\n    formatedSuspendedAt: Ember.computed('editMemberRole.suspendedAt', function () {\n      if (Ember.isPresent(this.get('editMemberRole.suspendedAt'))) {\n        const suspendedAt = this.get('editMemberRole.suspendedAt');\n        return (0, _moment.default)(suspendedAt).format('YYYY-MM-DD');\n      }\n    }),\n    assignedProjects: Ember.computed('projectRoles', function () {\n      const projectRoles = this.get('projectRoles');\n\n      if (Ember.isEmpty(projectRoles)) {\n        return [];\n      }\n\n      return projectRoles.mapBy('project');\n    }),\n    assignedProjectsIds: Ember.computed('assignedProjects', function () {\n      if (Ember.isEmpty(this.get('assignedProjects'))) {\n        return null;\n      } else {\n        return this.get('assignedProjects').mapBy('id');\n      }\n    }),\n    hideAssignToProjectButton: Ember.computed('projectToAssign', function () {\n      return Ember.isEmpty(this.get('projectToAssign.id'));\n    }),\n\n    didReceiveAttrs() {\n      this.set('projectToAssign', Ember.Object.create({\n        name: this.get('i18n').t('workspace-form.select-project')\n      }));\n    },\n\n    setEditMemberRole: Ember.observer('member', function () {\n      this.set('editMemberRole', this.get('memberRole'));\n    }),\n    isTargetWorkspace: Ember.computed('memberRole', function () {\n      return this.get('memberRole.constructor.modelName') === 'workspace-role';\n    }),\n    availableRolesForEdit: Ember.computed('isTargetWorkspace', function () {\n      if (this.get('isTargetWorkspace')) {\n        return this.get('currentWorkspaceFilter.permissions.create-internal-members-roles');\n      } else {\n        return this.get('currentWorkspaceFilter.permissions.create-external-members-roles');\n      }\n    }),\n    availableRolesForSelectize: Ember.computed('availableRolesForEdit.[]', function () {\n      return this.get('availableRolesForEdit').map(role => {\n        return {\n          label: this.get('i18n').t('member-role.' + role),\n          value: role\n        };\n      });\n    }),\n    selectedRole: Ember.computed('availableRolesForSelectize.@each.value', 'role', function () {\n      return this.get('availableRolesForSelectize').filter(item => {\n        return item.value.match(this.get('role'));\n      })[0];\n    }),\n    role: Ember.computed('memberRole', 'newRole', function () {\n      if (Ember.isPresent(this.get('newRole'))) {\n        return this.get('newRole');\n      } else {\n        return this.get('memberRole.role');\n      }\n    }),\n    actions: {\n      submit() {\n        this.updateMember(this.get('member'), this.get('role'), null, this.get('assignedProjectsIds'), this.get('isTargetWorkspace'));\n      },\n\n      close() {\n        this.set('modalOpen', false);\n        this.set('newRole', null);\n      },\n\n      changeRole(role) {\n        this.set('newRole', role.value);\n      },\n\n      suspendTeamMember() {\n        if (this.get('editMemberRole.suspended')) {\n          this.set('editMemberRole.suspended', !this.get('editMemberRole.suspended'));\n          this.updateMember(this.get('member'), null, this.get('editMemberRole.suspended'), this.get('assignedProjectsIds'), true);\n        } else {\n          this.showSuspendMemberModal(this.member, this.get('editMemberRole'));\n        }\n      },\n\n      removeTeamMember() {\n        this.showDeleteTeamMemberModal(this.member);\n        this.set('modalOpen', false);\n      },\n\n      removeProject(project) {\n        this.get('assignedProjects').removeObject(project);\n        this.updateMember(this.get('member'), this.get('role'), null, this.get('assignedProjectsIds'), this.get('isTargetWorkspace'), false);\n        Ember.run.later(this, function () {\n          this.get('member').reload();\n        }, 2000);\n      },\n\n      assignToProject() {\n        let assignmentType;\n\n        if (/^external/.test(this.get('memberRole.role'))) {\n          assignmentType = 'invited';\n        } else {\n          assignmentType = 'assigned';\n        }\n\n        this.assignMemberToProject(this.get('member'), this.get('projectToAssign'), assignmentType);\n        this.set('projectToAssign', Ember.Object.create({\n          name: this.get('i18n').t('workspace-form.select-project')\n        }));\n        this.get('member').reload();\n      },\n\n      setProjectToAssign(project) {\n        this.set('projectToAssign', project);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/membership-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"v8GcN/XL\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"project\\\",\\\"project\\\",\\\"role\\\"],\\\"statements\\\":[[6,[37,30],null,[[\\\"open\\\",\\\"onHidden\\\",\\\"class\\\"],[[35,29],[30,[36,2],[[32,0],\\\"close\\\"],null],\\\"membership-modal\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,28],[[30,[36,27],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/membership-modal/template.hbs' @ L1:C93) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[34,26]],[13]],\\\"parameters\\\":[]}]]],[6,[37,28],[[30,[36,27],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/membership-modal/template.hbs' @ L1:C171) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-7 col-sm-7 media\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"media-left\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"team-member-status\\\"],[12],[6,[37,1],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,1],[[35,15]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,14],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.activity\\\",[30,[36,13],[[35,12],[35,11],[35,9,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,10],null,[[\\\"user\\\",\\\"status\\\"],[[35,9],[35,9,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,10],null,[[\\\"user\\\",\\\"status\\\"],[[35,9],[35,9,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"media-body\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"media-heading \\\",[30,[36,1],[[35,16],\\\"edit\\\",\\\"\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"team-member-info\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h4\\\"],[12],[1,[35,9,[\\\"firstName\\\"]]],[2,\\\" \\\"],[1,[35,9,[\\\"lastName\\\"]]],[2,\\\" \\\"],[6,[37,1],[[35,8,[\\\"suspended\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,1,\\\"suspend-icon\\\"],[14,0,\\\"fa fa-lock\\\"],[12],[13],[6,[37,6],null,[[\\\"side\\\",\\\"class\\\",\\\"target\\\"],[\\\"right\\\",\\\"show-tooltip\\\",\\\"#suspend-icon\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"workspace-team.membership-suspended\\\"],[[\\\"suspendedBy\\\",\\\"suspendedAt\\\"],[[35,8,[\\\"suspendedBy\\\"]],[35,7]]]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\" \\\"],[13],[13],[10,\\\"div\\\"],[14,0,\\\"member-role-label\\\"],[12],[10,\\\"a\\\"],[15,6,[31,[\\\"mailto:\\\",[34,9,[\\\"email\\\"]]]]],[12],[1,[35,9,[\\\"email\\\"]]],[13],[13],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-5 col-sm-5 edit-member-actions\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-6 col-sm-6 col-xs-6 col-right\\\"],[12],[6,[37,1],[[35,8,[\\\"suspended\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,3],null,[[\\\"onClick\\\",\\\"type\\\",\\\"elementId\\\"],[[30,[36,2],[[32,0],\\\"suspendTeamMember\\\"],null],\\\"success\\\",\\\"suspend-button\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-form.resume\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,6],null,[[\\\"side\\\",\\\"class\\\",\\\"target\\\"],[\\\"right\\\",\\\"show-tooltip\\\",\\\"#suspend-button\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"workspace-team.membership-suspended-resume\\\"],[[\\\"suspendedBy\\\"],[[35,5,[\\\"suspendedBy\\\"]]]]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,1],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,2],[[32,0],\\\"suspendTeamMember\\\"],null],\\\"warning\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-form.suspend\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-6 col-sm-6 col-xs-6\\\"],[12],[6,[37,3],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,2],[[32,0],\\\"removeTeamMember\\\"],null],\\\"danger\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-form.remove\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[10,\\\"br\\\"],[12],[13],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"membership-modal.role\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-7 col-sm-5 col-xs-7 col-left\\\"],[12],[6,[37,19],null,[[\\\"options\\\",\\\"selected\\\",\\\"searchEnabled\\\",\\\"searchField\\\",\\\"onchange\\\"],[[35,18],[35,17],false,\\\"label\\\",[30,[36,2],[[32,0],\\\"changeRole\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,4,[\\\"label\\\"]]]],\\\"parameters\\\":[4]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-3 col-sm-3 col-xs-5 col-left\\\"],[12],[6,[37,3],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,2],[[32,0],\\\"submit\\\"],null],\\\"warning\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-form.update-role\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"note\\\"],[12],[1,[30,[36,0],[\\\"membership-modal.note\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"assigned-projects\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"membership-modal.assigned-projects\\\"],null]],[13],[10,\\\"table\\\"],[14,0,\\\"table table-hover membership-projects\\\"],[12],[10,\\\"tbody\\\"],[12],[6,[37,22],[[30,[36,21],[[30,[36,21],[[35,20]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"tr\\\"],[12],[10,\\\"td\\\"],[14,0,\\\"col-md-8 col-sm-8 col-xs-8\\\"],[12],[6,[37,1],[[32,3,[\\\"originWorkspaceName\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[32,3,[\\\"name\\\"]]],[2,\\\" (\\\"],[1,[32,3,[\\\"originWorkspaceName\\\"]]],[2,\\\")\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[32,3,[\\\"name\\\"]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"td\\\"],[14,0,\\\"col-md-4 col-sm-4 col-xs-4 text-right\\\"],[12],[6,[37,3],null,[[\\\"onClick\\\",\\\"type\\\",\\\"class\\\",\\\"disabled\\\"],[[30,[36,2],[[32,0],\\\"removeProject\\\",[32,3]],null],\\\"danger\\\",\\\"btn-xs\\\",[32,3,[\\\"originWorkspaceName\\\"]]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-form.remove\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[3]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-7 col-sm-5 col-xs-7 col-left\\\"],[12],[6,[37,19],null,[[\\\"options\\\",\\\"searchField\\\",\\\"selected\\\",\\\"onchange\\\",\\\"renderInPlace\\\"],[[35,24],\\\"name\\\",[35,23],[30,[36,2],[[32,0],\\\"setProjectToAssign\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"name\\\"]]]],\\\"parameters\\\":[2]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-3 col-sm-3 col-xs-5 col-left\\\"],[12],[6,[37,3],null,[[\\\"onClick\\\",\\\"type\\\",\\\"disabled\\\"],[[30,[36,2],[[32,0],\\\"assignToProject\\\"],null],\\\"success\\\",[35,25]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-form.assign-to-project\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"if\\\",\\\"action\\\",\\\"bs-button\\\",\\\"memberIsNotCurrentUser\\\",\\\"memberRole\\\",\\\"tooltip-on-element\\\",\\\"formatedSuspendedAt\\\",\\\"editMemberRole\\\",\\\"member\\\",\\\"member-avatar\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canReadMembersActivity\\\",\\\"setMemberForEdit\\\",\\\"selectedRole\\\",\\\"availableRolesForSelectize\\\",\\\"power-select\\\",\\\"assignedProjects\\\",\\\"-track-array\\\",\\\"each\\\",\\\"projectToAssign\\\",\\\"sortedAvailableProjectsToAssign\\\",\\\"hideAssignToProjectButton\\\",\\\"headerTitle\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/membership-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/merge-task-modal-form/component\", [\"exports\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, {\n    session: Ember.inject.service(),\n    i18n: Ember.inject.service(),\n    store: Ember.inject.service(),\n    filteredTask: null,\n    taskToMerge: null,\n    taskProjectId: null,\n\n    init() {\n      this._super(...arguments);\n\n      this.tasksForSelectedTaskProject = this.tasksForSelectedTaskProject || [];\n    },\n\n    projectOrTaskDidChange: Ember.observer('taskProjectId', 'taskToMerge', function () {\n      Ember.run.once(this, \"initializeTasks\");\n    }),\n\n    initializeTasks() {\n      new Ember.RSVP.Promise(resolve => {\n        this.performTasksSearch(null, resolve);\n      }).then(tasks => {\n        this.set('tasksForSelectedTaskProject', tasks);\n      });\n    },\n\n    performTasksSearch(title, resolve) {\n      const limit = 50;\n      resolve(this.get('store').query('task', {\n        project_id: this.get('taskProjectId'),\n        limit,\n        title\n      }).then(tasks => {\n        const taskToMerge = this.get('store').peekRecord('task', this.get('taskToMerge.id'));\n        return tasks.without(taskToMerge);\n      }));\n    },\n\n    actions: {\n      mergeTask(taskToMerge, filteredTask) {\n        if (this.saveBtnDisabled) return;\n        this.set('saveBtnDisabled', true);\n        this.showSpinner();\n        this.mergeTask(taskToMerge, filteredTask).finally(() => {\n          this.set('saveBtnDisabled', false);\n          this.hideSpinner();\n        });\n      },\n\n      cancel() {\n        this.set('openTaskToMergeModal', false);\n        this.set('filteredTask', null);\n      },\n\n      searchTasks(title) {\n        return new Ember.RSVP.Promise(resolve => {\n          Ember.run.debounce(this, this.performTasksSearch, title, resolve, 300);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/merge-task-modal-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"qanGavBd\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"task\\\"],\\\"statements\\\":[[6,[37,11],null,[[\\\"open\\\",\\\"onHidden\\\",\\\"class\\\"],[[35,10],[30,[36,2],[[32,0],\\\"cancel\\\"],null],\\\"merge-task-modal-form\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,8],[[30,[36,7],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/merge-task-modal-form/template.hbs' @ L1:C110) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title report\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.modal.merge-task-title\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,8],[[30,[36,7],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/merge-task-modal-form/template.hbs' @ L1:C230) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.modal.merge-task-description\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.modal.task\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[10,\\\"h5\\\"],[12],[1,[35,1,[\\\"title\\\"]]],[13],[13],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.modal.merge-into\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,6],null,[[\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"class\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"search\\\",\\\"renderInPlace\\\"],[[30,[36,0],[\\\"authenticated.tasks.modal.merge-task-select\\\"],null],[35,5],[35,3],\\\"form-control\\\",[30,[36,2],[[32,0],[30,[36,4],[[35,3]],null]],null],\\\"title\\\",[30,[36,2],[[32,0],\\\"searchTasks\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"title\\\"]]]],\\\"parameters\\\":[2]}]]],[13],[13],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"action-btns\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[11,\\\"a\\\"],[16,\\\"disabled\\\",[34,9]],[24,0,\\\"btn btn-success\\\"],[4,[38,2],[[32,0],\\\"mergeTask\\\",[35,1],[35,3]],null],[12],[1,[30,[36,0],[\\\"authenticated.tasks.modal.save\\\"],null]],[13],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"taskToMerge\\\",\\\"action\\\",\\\"filteredTask\\\",\\\"mut\\\",\\\"tasksForSelectedTaskProject\\\",\\\"power-select\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"saveBtnDisabled\\\",\\\"openTaskToMergeModal\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/merge-task-modal-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/monthly-statistics/component\", [\"exports\", \"web-app-ember-v2/helpers/minutes-to-duration\"], function (_exports, _minutesToDuration) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    formatInMinutes: Ember.computed('userPreferences', function () {\n      return this.get('userPreferences.statsDurationFormatMinutes');\n    }),\n    tooltipFormatInMinutes: Ember.computed.not('formatInMinutes'),\n    weekly_daily_stats: Ember.computed(\"stats.weekly_daily_stats\", function () {\n      return this.get(\"stats.weekly_daily_stats\").map(week => {\n        let totalTimeFromRows = week.daily_stats.reduce(function (memo, stat) {\n          return memo + stat.duration;\n        }, 0);\n        let formatedTotalTime = this.formatedTotalTime(week.daily_stats, totalTimeFromRows, this.formatInMinutes);\n        return Object.assign({\n          weekIsEmpty: week.daily_stats.reduce((sum, ds) => sum + ds.duration, 0) === 0,\n          totalTime: formatedTotalTime\n        }, week);\n      });\n    }),\n\n    formatedTotalTime(tasks, totalTime, formatInMinutes) {\n      if (formatInMinutes) {\n        return (0, _minutesToDuration.minutesToDuration)([totalTime, formatInMinutes]);\n      } else {\n        let totalTimeFromRows = tasks.reduce(function (memo, stat) {\n          let hoursWithRoundedFraction = Math.round(Math.ceil(stat.duration / 60 * 10) / 10 * 10) / 10;\n          return memo + hoursWithRoundedFraction;\n        }, 0);\n        return totalTimeFromRows.toFixed(1);\n      }\n\n      ;\n    },\n\n    actions: {\n      showEmptyWeek(week) {\n        Ember.set(week, \"weekIsEmpty\", false);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/monthly-statistics/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"bgOGKgwJ\",\n    \"block\": \"{\\\"symbols\\\":[\\\"week\\\",\\\"day_stats\\\"],\\\"statements\\\":[[6,[37,21],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row reports-date-range\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[1,[30,[36,20],null,[[\\\"startDate\\\",\\\"endDate\\\",\\\"stats\\\",\\\"selectedUser\\\",\\\"dateChanged\\\",\\\"reloadData\\\"],[[35,19],[35,18],[35,17],[35,16],[35,15],[35,14]]]]],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,10],[[30,[36,9],[[30,[36,9],[[35,22]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row weekly-daily-stats\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-8 col-sm-12 col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-6 col-sm-6 col-xs-7\\\"],[12],[10,\\\"h4\\\"],[14,0,\\\"day-title\\\"],[12],[1,[30,[36,12],[[32,1,[\\\"start_date\\\"]],[32,1,[\\\"end_date\\\"]]],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-6 col-sm-6 col-xs-5\\\"],[12],[10,\\\"h4\\\"],[14,0,\\\"day-title\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"pull-right \\\",[30,[36,7],[[30,[36,6],[[30,[36,11],[[32,1,[\\\"daily_stats\\\"]],[35,5]],null]],null],\\\"duration-grayed-out\\\"],null]]]],[12],[1,[32,1,[\\\"totalTime\\\"]]],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.total-weekly-time\\\"],[[\\\"time\\\"],[[30,[36,3],[[30,[36,11],[[32,1,[\\\"daily_stats\\\"]]],null],[35,2]],null]]]]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-12 col-sm-12 col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"date-separator\\\"],[12],[13],[13],[13],[13],[6,[37,13],[[32,1,[\\\"weekIsEmpty\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,10],[[30,[36,9],[[30,[36,9],[[32,1,[\\\"daily_stats\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-8 col-sm-12 col-xs-12 day-stats-columns\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-lg-offset-8 col-md-offset-7 col-sm-offset-8 col-xs-offset-4\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-lg-6 col-md-7 col-sm-6 col-xs-9 col-right\\\"],[12],[1,[30,[36,4],[[32,2,[\\\"day\\\"]]],null]],[13],[10,\\\"div\\\"],[14,0,\\\"col-lg-6 col-md-5 col-sm-6 col-xs-3 col-right\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"pull-right total-duration \\\",[30,[36,7],[[30,[36,6],[[30,[36,3],[[32,2,[\\\"duration\\\"]],[35,5]],null]],null],\\\"duration-grayed-out\\\"],null]]]],[12],[1,[30,[36,3],[[32,2,[\\\"duration\\\"]],[35,5]],null]],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"authenticated.tasks.total-daily-time\\\"],[[\\\"time\\\"],[[30,[36,3],[[32,2,[\\\"duration\\\"]],[35,2]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[13]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[11,\\\"div\\\"],[24,0,\\\"collapsed-empty-entries col-md-8 col-sm-12 col-xs-12 day-stats-columns\\\"],[4,[38,0],[[32,0],\\\"showEmptyWeek\\\",[32,1]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-eye empty-icon\\\"],[12],[13],[10,\\\"span\\\"],[14,0,\\\"empty-text\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.show-empty-week\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"tooltipFormatInMinutes\\\",\\\"minutes-to-duration\\\",\\\"format-day\\\",\\\"formatInMinutes\\\",\\\"check-if-equals-zero\\\",\\\"if\\\",\\\"tooltip-on-element\\\",\\\"-track-array\\\",\\\"each\\\",\\\"week-sum\\\",\\\"format-week\\\",\\\"unless\\\",\\\"reloadData\\\",\\\"dateChanged\\\",\\\"user\\\",\\\"stats\\\",\\\"endDate\\\",\\\"startDate\\\",\\\"date-range\\\",\\\"sticky-bar\\\",\\\"weekly_daily_stats\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/monthly-statistics/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/monthly-team-statistics/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"jquery\"], function (_exports, _currentSelectors, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    canReadMembersActivity: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.permissions.read-members-activity'),\n    formatInMinutes: Ember.computed('userPreferences', function () {\n      return this.get('userPreferences.statsDurationFormatMinutes');\n    }),\n    tooltipFormatInMinutes: Ember.computed.not('formatInMinutes'),\n    usersStat: Ember.computed('stats.user_stats', function () {\n      const stats = this.get('stats.user_stats');\n      let userStats = Object.entries(stats).map(([key]) => stats[key]);\n      return userStats.sortBy('user.firstName');\n    }),\n    weeklyStats: Ember.computed('stats.user_stats', function () {\n      const stats = this.get('usersStat');\n      let usersWeekly = stats.flatMap(stat => stat.weekly_daily_stats);\n      let uniqueWeekly = [];\n\n      for (let week of usersWeekly) {\n        const foundWeek = uniqueWeekly.find(uw => {\n          return uw.start_date === week.start_date && uw.end_date === week.end_date;\n        });\n\n        if (foundWeek) {\n          for (let ds of foundWeek.daily_stats) {\n            const dayStat = week.daily_stats.find(dailyStat => {\n              return dailyStat.day === ds.day;\n            });\n\n            if (dayStat) {\n              ds.duration += dayStat.duration;\n            }\n          }\n        } else {\n          uniqueWeekly.pushObject(_jquery.default.extend(true, {}, week));\n        }\n      }\n\n      uniqueWeekly.forEach(uniqueWeek => {\n        uniqueWeek.weekIsEmpty = uniqueWeek.daily_stats.reduce((sum, ds) => sum + ds.duration, 0) === 0;\n      });\n      return uniqueWeekly;\n    }),\n    actions: {\n      showEmptyWeek(week) {\n        Ember.set(week, \"weekIsEmpty\", false);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/monthly-team-statistics/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"QZ834ayo\",\n    \"block\": \"{\\\"symbols\\\":[\\\"userStat\\\",\\\"week\\\",\\\"dayStats\\\",\\\"week\\\",\\\"dayStats\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-lg-4 col-md-5 col-sm-7 col-xs-12 small-padding-right\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"day-stats-advanced-date-picker\\\"],[12],[1,[30,[36,31],null,[[\\\"startDate\\\",\\\"endDate\\\",\\\"stats\\\",\\\"selectedUser\\\",\\\"dateChanged\\\",\\\"reloadData\\\",\\\"advencedStat\\\",\\\"compact\\\"],[[35,30],[35,29],[35,28],[35,27],[35,26],[35,25],true,true]]]],[13],[6,[37,10],[[30,[36,9],[[30,[36,9],[[35,20]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-xs-12 no-padding-right\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-7 col-sm-8 col-xs-8\\\"],[12],[10,\\\"h4\\\"],[14,0,\\\"day-title\\\"],[12],[1,[30,[36,24],[[32,4,[\\\"start_date\\\"]],[32,4,[\\\"end_date\\\"]]],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-5 col-sm-4 col-xs-4 extra-padding-right\\\"],[12],[10,\\\"h4\\\"],[14,0,\\\"day-title\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"pull-right \\\",[30,[36,6],[[30,[36,5],[[30,[36,23],[[32,4,[\\\"daily_stats\\\"]],[35,4]],null]],null],\\\"duration-grayed-out\\\"],null]]]],[12],[1,[30,[36,2],[[30,[36,23],[[32,4,[\\\"daily_stats\\\"]]],null],[35,4]],null]],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[\\\"authenticated.tasks.total-weekly-time\\\"],[[\\\"time\\\"],[[30,[36,2],[[30,[36,23],[[32,4,[\\\"daily_stats\\\"]]],null],[35,0]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"date-separator\\\"],[12],[13],[13],[13],[13],[6,[37,6],[[32,4,[\\\"weekIsEmpty\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[11,\\\"div\\\"],[24,0,\\\"collapsed-empty-entries col-xs-12 day-stats-columns\\\"],[4,[38,22],[[32,0],\\\"showEmptyWeek\\\",[32,4]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-eye empty-icon\\\"],[12],[13],[10,\\\"span\\\"],[14,0,\\\"empty-text\\\"],[12],[1,[30,[36,3],[\\\"authenticated.tasks.show-empty-week\\\"],null]],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,10],[[30,[36,9],[[30,[36,9],[[32,4,[\\\"daily_stats\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-xs-12 day-stats-columns no-padding-right\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-lg-offset-5 col-md-offset-6 col-xs-offset-4\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-7 col-right\\\"],[12],[1,[30,[36,21],[[32,5,[\\\"day\\\"]]],null]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-5 col-right\\\"],[12],[10,\\\"span\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"total-duration \\\",[30,[36,6],[[30,[36,5],[[30,[36,2],[[32,5,[\\\"duration\\\"]],[35,4]],null]],null],\\\"duration-grayed-out\\\"],null]]]],[12],[1,[30,[36,2],[[32,5,[\\\"duration\\\"]],[35,4]],null]],[13],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[\\\"authenticated.tasks.total-daily-time\\\"],[[\\\"time\\\"],[[30,[36,2],[[32,5,[\\\"duration\\\"]],[35,0]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[13]],\\\"parameters\\\":[5]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[4]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-md-7 hidden-xs day-stats-advanced-user-column-wrapper\\\"],[12],[6,[37,10],[[30,[36,9],[[30,[36,9],[[35,32]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"day-stats-advanced-user-column\\\"],[12],[10,\\\"header\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"team-member-status\\\"],[12],[6,[37,6],[[35,19]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,18],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,17],[[35,16],[35,15],[32,1,[\\\"user\\\",\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,14],null,[[\\\"user\\\",\\\"status\\\"],[[32,1,[\\\"user\\\"]],[32,1,[\\\"user\\\",\\\"status\\\"]]]]]],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,13],[[32,1,[\\\"user\\\",\\\"firstName\\\"]],\\\" \\\",[32,1,[\\\"user\\\",\\\"lastName\\\"]]],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,14],null,[[\\\"user\\\",\\\"status\\\"],[[32,1,[\\\"user\\\"]],[32,1,[\\\"user\\\",\\\"status\\\"]]]]]],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,13],[[32,1,[\\\"user\\\",\\\"firstName\\\"]],\\\" \\\",[32,1,[\\\"user\\\",\\\"lastName\\\"]]],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"h4\\\"],[12],[1,[30,[36,2],[[32,1,[\\\"total_time\\\"]],[35,4]],null]],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[\\\"authenticated.tasks.total-time-period\\\"],[[\\\"time\\\"],[[30,[36,2],[[32,1,[\\\"total_time\\\"]],[35,0]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[6,[37,10],[[30,[36,9],[[30,[36,9],[[35,20]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"h4\\\"],[15,0,[31,[\\\"day-title \\\",[30,[36,6],[[30,[36,5],[[30,[36,2],[[30,[36,11],[[32,1],[32,2]],null],[35,4]],null]],null],\\\"duration-grayed-out\\\"],null]]]],[12],[1,[30,[36,2],[[30,[36,11],[[32,1],[32,2]],null],[35,4]],null]],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[\\\"authenticated.tasks.total-weekly-time\\\"],[[\\\"time\\\"],[[30,[36,2],[[30,[36,11],[[32,1],[32,2]],null],[35,0]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"date-separator\\\"],[12],[13],[6,[37,12],[[32,2,[\\\"weekIsEmpty\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,10],[[30,[36,9],[[30,[36,9],[[32,2,[\\\"daily_stats\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-xs-12 day-stats-columns\\\"],[12],[10,\\\"span\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"total-duration \\\",[30,[36,6],[[30,[36,5],[[30,[36,2],[[30,[36,1],[[32,1],[32,3,[\\\"day\\\"]]],null],[35,4]],null]],null],\\\"duration-grayed-out\\\"],null]]]],[12],[1,[30,[36,7],[[30,[36,2],[[30,[36,1],[[32,1],[32,3,[\\\"day\\\"]]],null],[35,4]],null]],null]],[13],[6,[37,8],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[\\\"authenticated.tasks.total-daily-time\\\"],[[\\\"time\\\"],[[30,[36,2],[[30,[36,1],[[32,1],[32,3,[\\\"day\\\"]]],null],[35,0]],null]]]]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[3]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-xs-12 day-stats-columns\\\"],[12],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[13],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[2]}]]],[13]],\\\"parameters\\\":[1]}]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"tooltipFormatInMinutes\\\",\\\"user-day-sum\\\",\\\"minutes-to-duration\\\",\\\"t\\\",\\\"formatInMinutes\\\",\\\"check-if-equals-zero\\\",\\\"if\\\",\\\"zero-to-dash\\\",\\\"tooltip-on-element\\\",\\\"-track-array\\\",\\\"each\\\",\\\"user-week-sum\\\",\\\"unless\\\",\\\"concat\\\",\\\"member-avatar\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canReadMembersActivity\\\",\\\"weeklyStats\\\",\\\"format-day\\\",\\\"action\\\",\\\"week-sum\\\",\\\"format-week\\\",\\\"reloadData\\\",\\\"dateChanged\\\",\\\"user\\\",\\\"stats\\\",\\\"endDate\\\",\\\"startDate\\\",\\\"date-range\\\",\\\"usersStat\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/monthly-team-statistics/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/move-task-modal-form/component\", [\"exports\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, {\n    session: Ember.inject.service(),\n    i18n: Ember.inject.service(),\n    store: Ember.inject.service(),\n    projectsForSelectedWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.projects'),\n    sortProjects: Object.freeze(['name:asc']),\n    sortedProjects: Ember.computed.sort('projectsForSelectedWorkspaceFilter', 'sortProjects'),\n    selectedProject: null,\n    selectedProjectError: null,\n    withExternalSystem: true,\n    actions: {\n      moveTask(taskToMove, selectedProject, withExternalSystem) {\n        if (this.saveBtnDisabled) return;\n\n        if (selectedProject) {\n          this.set('saveBtnDisabled', true);\n          this.showSpinner();\n          this.moveTask(taskToMove, selectedProject, withExternalSystem).finally(() => {\n            this.set('saveBtnDisabled', false);\n            this.hideSpinner();\n          });\n        } else {\n          const errorMessage = this.get('i18n').t('authenticated.tasks.modal.project-required');\n          this.set(\"selectedProjectError\", errorMessage);\n        }\n      },\n\n      cancel() {\n        this.set('openTaskToMoveModal', false);\n        this.set('selectedProject', null);\n        this.set('withExternalSystem', false);\n        this.set(\"selectedProjectError\", null);\n        this.set('taskAlreadyExists', false);\n      },\n\n      selectedProjectChanged(selectedProject) {\n        const errorMessage = this.get('i18n').t('authenticated.tasks.modal.project-required');\n        this.set(\"selectedProjectError\", selectedProject ? null : errorMessage);\n        this.set(\"selectedProject\", selectedProject);\n        this.set('taskAlreadyExists', false);\n\n        if (selectedProject) {\n          // NOTE: Check if a task with the same name doesn't\n          //       already exist in the target project.\n          this.store.query('task', {\n            project_id: selectedProject.id,\n            exact_title: this.taskToMove.title\n          }).then(duplicatedTasks => {\n            if (duplicatedTasks.length > 0) {\n              this.set('taskAlreadyExists', true);\n            }\n          });\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/move-task-modal-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"yQxgbR0Z\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"project\\\"],\\\"statements\\\":[[6,[37,15],null,[[\\\"open\\\",\\\"onHidden\\\",\\\"class\\\"],[[35,14],[30,[36,3],[[32,0],\\\"cancel\\\"],null],\\\"move-task-modal-form\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/move-task-modal-form/template.hbs' @ L1:C108) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title report\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.move-task-title\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,12],[[30,[36,11],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/move-task-modal-form/template.hbs' @ L1:C227) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.move-task-description\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.task\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[1,[35,2,[\\\"title\\\"]]],[13],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.current-project\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[1,[35,2,[\\\"projectName\\\"]]],[13],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.move-to-project\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,5],null,[[\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"searchEnabled\\\",\\\"class\\\",\\\"onchange\\\",\\\"required\\\",\\\"initiallyOpened\\\",\\\"renderInPlace\\\",\\\"searchField\\\"],[[30,[36,1],[\\\"authenticated.tasks.modal.select-project\\\"],null],[35,4],[35,0],false,\\\"form-control\\\",[30,[36,3],[[32,0],\\\"selectedProjectChanged\\\"],null],true,true,true,\\\"name\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"name\\\"]]]],\\\"parameters\\\":[2]}]]],[1,[34,6]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,1],[\\\"authenticated.tasks.modal.with-external-system\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8 with-external-system-checkbox\\\"],[12],[1,[30,[36,8],null,[[\\\"type\\\",\\\"checked\\\"],[\\\"checkbox\\\",[35,7]]]]],[13],[13],[13],[6,[37,10],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"tasks-already-exists\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-info-circle info-icon\\\"],[12],[13],[1,[30,[36,1],[\\\"authenticated.tasks.modal.task-already-exists\\\"],[[\\\"project\\\"],[[35,0,[\\\"name\\\"]]]]]],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[11,\\\"a\\\"],[24,0,\\\"btn btn-default\\\"],[4,[38,3],[[32,0],\\\"cancel\\\"],null],[12],[1,[30,[36,1],[\\\"modal.button.cancel\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[11,\\\"a\\\"],[16,\\\"disabled\\\",[34,13]],[24,0,\\\"btn btn-success\\\"],[4,[38,3],[[32,0],\\\"moveTask\\\",[35,2],[35,0],[35,7]],null],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.save\\\"],null]],[13],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"selectedProject\\\",\\\"t\\\",\\\"taskToMove\\\",\\\"action\\\",\\\"sortedProjects\\\",\\\"power-select\\\",\\\"selectedProjectError\\\",\\\"withExternalSystem\\\",\\\"input\\\",\\\"taskAlreadyExists\\\",\\\"if\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"saveBtnDisabled\\\",\\\"openTaskToMoveModal\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/move-task-modal-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/multiselect-checkboxes\", [\"exports\", \"ember-multiselect-checkboxes/components/multiselect-checkboxes\"], function (_exports, _multiselectCheckboxes) {\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 _multiselectCheckboxes.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/nav-bar/component\", [\"exports\", \"jquery\", \"web-app-ember-v2/mixins/current-selectors\"], function (_exports, _jquery, _currentSelectors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    i18n: Ember.inject.service(),\n    store: Ember.inject.service(),\n    router: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    newProject: null,\n    onTaskPage: Ember.computed('router.currentRouteName', function () {\n      return this.get('router.currentRouteName').includes(\"authenticated.workspaces.show.projects.show.tasks\");\n    }),\n    currentWorkspaceName: Ember.computed.oneWay('userPreferences.currentProject'),\n    currentWorkspaceFilterModel: Ember.computed('filtersForWorkspaces', 'userPreferences.currentWorkspaceFilter', function () {\n      return this.get('workspaces').find(workspace => {\n        return workspace.id === this.get('userPreferences.currentWorkspaceFilter.id');\n      });\n    }),\n    filtersForWorkspaces: Ember.computed('workspaces.@each.buffer', function () {\n      let filtersForWorkspaces = this.get('workspaces').map(workspace => {\n        return Ember.Object.create({\n          id: workspace.get('buffer.id'),\n          name: workspace.get('buffer.name')\n        });\n      });\n      filtersForWorkspaces[filtersForWorkspaces.length] = Ember.Object.create({\n        id: 'All',\n        name: this.get('i18n').t('filters-for-workspaces.all-workspaces').toString()\n      });\n      return filtersForWorkspaces.reverse('name');\n    }),\n    currentProjectFilter: Ember.computed('userPreferences.currentProject', function () {\n      return this.get('userPreferences.currentProject');\n    }),\n    currentUserId: Ember.computed('userPreferences.currentUser', function () {\n      return this.get('userPreferences.currentUser.id');\n    }),\n    activityCurrentUserFilterId: Ember.computed('userPreferences.activityCurrentUserFilter', 'currentUserId', function () {\n      if (this.get('userPreferences.activityCurrentUserFilter.id')) {\n        return this.get('userPreferences.activityCurrentUserFilter.id');\n      } else {\n        return this.get('currentUserId');\n      }\n    }),\n    suspended: Ember.computed('user', 'currentWorkspaceFilterId', function () {\n      if (Ember.isPresent(this.get('user.suspendedWorkspaces')) || Ember.isPresent(this.get('user.deletedWorkspaces'))) {\n        return this.get('user.suspendedWorkspaces').includes(this.get('currentWorkspaceFilterId')) || this.get('user.deletedWorkspaces').includes(this.get('currentWorkspaceFilterId'));\n      } else {\n        return false;\n      }\n    }),\n\n    init() {\n      this._super(...arguments);\n\n      this.workspaces = this.workspaces || [];\n    },\n\n    didUpdate() {\n      (0, _jquery.default)(document).on('scroll', () => {\n        Ember.run(() => {\n          this.actions.hideNav();\n        });\n      });\n\n      this._super();\n    },\n\n    willDestroyElement() {\n      (0, _jquery.default)(document).off('scroll');\n    },\n\n    actions: {\n      cancel() {\n        const project = this.get('currentProjectFilter');\n        project.rollbackAttributes();\n        project.rollbackRelationship('timeRounding');\n        project.rollbackRelationship('client');\n        project.get('projectSystems').forEach(system => {\n          system.rollbackAttributes();\n        });\n      },\n\n      initializeLeaveWorkspaceModal() {\n        this.initializeLeaveWorkspaceModal();\n      },\n\n      newSessionAction() {\n        this.newSessionAction();\n      },\n\n      newSummaryAction() {\n        this.newSummaryAction();\n      },\n\n      newTaskAction() {\n        this.newTaskAction();\n      },\n\n      newWorkplanAction() {\n        this.newWorkplanAction();\n      },\n\n      resumeAction(timeSession) {\n        this.resumeAction(timeSession);\n      },\n\n      stopAction(timeSession) {\n        this.stopAction(timeSession);\n      },\n\n      gotoCurrentWorkspaceTimeSessions() {\n        this.gotoCurrentWorkspaceTimeSessions();\n      },\n\n      refreshAuthenticatedRoute() {\n        this.refreshAuthenticatedRoute();\n      },\n\n      createClient(newClient) {\n        return this.createClient(newClient);\n      },\n\n      hideNav(e) {\n        // condition needed to toggle the state when scrolling and to hide the nav open state\n        // triggering click on toggle prevents bubbling\n        if (!e && (0, _jquery.default)('.navbar-collapse').hasClass('in')) {\n          (0, _jquery.default)('.navbar-toggle').trigger('click');\n        } else {\n          if ((0, _jquery.default)('.navbar-collapse').hasClass('in')) {\n            (0, _jquery.default)('.navbar-collapse').removeClass('in');\n            (0, _jquery.default)('.navbar-toggle').blur().addClass('collapsed');\n          }\n        }\n\n        return true;\n      },\n\n      hideDropdowns(dropdowns) {\n        dropdowns.each(function () {\n          if ((0, _jquery.default)(this).hasClass('open')) {\n            (0, _jquery.default)(this).trigger('click');\n          }\n        });\n      },\n\n      navigateTo(route) {\n        const currentRoute = this.router.currentRouteName;\n\n        if (route === currentRoute) {\n          this.refreshAuthenticatedRoute();\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/nav-bar/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"fbPEhMsc\",\n    \"block\": \"{\\\"symbols\\\":[\\\"navbar\\\",\\\"nav\\\",\\\"dd\\\",\\\"menu\\\",\\\"nav\\\",\\\"nav\\\",\\\"dd\\\",\\\"menu\\\"],\\\"statements\\\":[[6,[37,26],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"div\\\"],[14,0,\\\"navbar-header\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,3],[[30,[36,2],[[32,1,[\\\"toggle\\\"]],\\\"expected `navbar.toggle` to be a contextual component but found a string. Did you mean `(component navbar.toggle)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L3:C7) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"sr-only\\\"],[12],[2,\\\"Toggle navigation\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"icon-bar\\\"],[12],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"icon-bar\\\"],[12],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"icon-bar\\\"],[12],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[10,\\\"a\\\"],[14,0,\\\"navbar-brand\\\"],[14,6,\\\"/\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"img\\\"],[15,\\\"src\\\",[31,[[34,25]]]],[12],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,3],[[30,[36,2],[[32,1,[\\\"nav\\\"]],\\\"expected `navbar.nav` to be a contextual component but found a string. Did you mean `(component navbar.nav)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L12:C7) \\\"],null]],[[\\\"click\\\",\\\"class\\\"],[[30,[36,0],[[32,0],\\\"hideNav\\\"],null],\\\"navbar-right navbar-controls navbar-mobile-controls\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,6,[\\\"item\\\"]],\\\"expected `nav.item` to be a contextual component but found a string. Did you mean `(component nav.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L13:C9) \\\"],null]],[[\\\"class\\\"],[\\\"navbar-time\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,6,[\\\"link-to\\\"]],\\\"expected `nav.link-to` to be a contextual component but found a string. Did you mean `(component nav.link-to)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L14:C11) \\\"],null],\\\"authenticated.workspaces.show.projects.show.activity\\\",[35,23],[35,9],[35,8]],[[\\\"class\\\"],[\\\"nav-link\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[1,[34,7]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[1,[30,[36,13],null,[[\\\"user\\\",\\\"resumeAction\\\",\\\"stopAction\\\",\\\"duplicateAction\\\",\\\"class\\\"],[[35,12],[30,[36,0],[[32,0],\\\"resumeAction\\\"],null],[30,[36,0],[[32,0],\\\"stopAction\\\"],null],[30,[36,11],[\\\"duplicate\\\"],null],\\\"navbar-session-control\\\"]]]],[2,\\\"\\\\n\\\"],[6,[37,24],null,[[\\\"tagName\\\",\\\"class\\\"],[\\\"li\\\",\\\"new-activity-menu\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,7,[\\\"toggle\\\"]],\\\"expected `dd.toggle` to be a contextual component but found a string. Did you mean `(component dd.toggle)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L24:C11) \\\"],null]],[[\\\"toggleType\\\"],[\\\"a\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"span\\\"],[15,\\\"onClick\\\",[30,[36,0],[[32,0],\\\"newSessionAction\\\"],null]],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/add-ico.png\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,6],null,[[\\\"spacing\\\",\\\"side\\\"],[20,\\\"bottom\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[1,[30,[36,1],[\\\"nav-bar.new-time-session\\\"],null]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[14,0,\\\"caret\\\"],[12],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,7,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L33:C11) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,8,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L34:C13) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[10,\\\"a\\\"],[15,\\\"onClick\\\",[30,[36,0],[[32,0],\\\"newSessionAction\\\"],null]],[14,6,\\\"#\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-plus\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[1,[30,[36,1],[\\\"nav-bar.new-time-session\\\"],null]],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"a\\\"],[15,\\\"onClick\\\",[30,[36,0],[[32,0],\\\"newSummaryAction\\\"],null]],[14,6,\\\"#\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-list-alt\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[1,[30,[36,1],[\\\"nav-bar.new-summary\\\"],null]],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"a\\\"],[15,\\\"onClick\\\",[30,[36,0],[[32,0],\\\"newTaskAction\\\"],null]],[14,6,\\\"#\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-plus\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[1,[30,[36,1],[\\\"nav-bar.new-task\\\"],null]],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,5],[[30,[36,4],[\\\"workplans\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"a\\\"],[15,\\\"onClick\\\",[30,[36,0],[[32,0],\\\"newWorkplanAction\\\"],null]],[14,6,\\\"#\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"fa fa-calendar-plus-o\\\"],[12],[13],[2,\\\"\\\\n                \\\"],[1,[30,[36,1],[\\\"nav-bar.new-workplan\\\"],null]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[8]}]]]],\\\"parameters\\\":[7]}]]],[2,\\\"      \\\"],[1,[30,[36,14],null,[[\\\"user\\\",\\\"nav\\\",\\\"refreshAuthenticatedRoute\\\",\\\"tagName\\\"],[[35,12],[32,6],[30,[36,0],[[32,0],\\\"refreshAuthenticatedRoute\\\"],null],\\\"li\\\"]]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[6]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,3],[[30,[36,2],[[32,1,[\\\"content\\\"]],\\\"expected `navbar.content` to be a contextual component but found a string. Did you mean `(component navbar.content)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L62:C5) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"form\\\"],[14,0,\\\"navbar-form navbar-left\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,20],null,[[\\\"workspaces\\\",\\\"changeWorkspace\\\",\\\"initializeLeaveWorkspaceModal\\\"],[[35,19],[30,[36,11],[\\\"changeWorkspace\\\"],null],[30,[36,0],[[32,0],\\\"initializeLeaveWorkspaceModal\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,22],null,[[\\\"projects\\\",\\\"changeProject\\\",\\\"openLeaveProjectModal\\\"],[[35,21,[\\\"projects\\\"]],[30,[36,11],[\\\"changeProject\\\"],null],[30,[36,11],[\\\"openLeaveProjectModal\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,3],[[30,[36,2],[[32,1,[\\\"nav\\\"]],\\\"expected `navbar.nav` to be a contextual component but found a string. Did you mean `(component navbar.nav)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L79:C7) \\\"],null]],[[\\\"class\\\"],[\\\"navbar-left nav-links\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,5,[\\\"item\\\"]],\\\"expected `nav.item` to be a contextual component but found a string. Did you mean `(component nav.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L80:C9) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,5,[\\\"link-to\\\"]],\\\"expected `nav.link-to` to be a contextual component but found a string. Did you mean `(component nav.link-to)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L81:C11) \\\"],null],\\\"authenticated.workspaces.show.projects.show.activity\\\",[35,10],[35,9],[35,18]],[[\\\"click\\\",\\\"data-test-activity\\\"],[[30,[36,0],[[32,0],\\\"navigateTo\\\",\\\"authenticated.workspaces.show.projects.show.activity\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/activity-menu-ico.png\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,1],[\\\"nav-bar.activity\\\"],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,5,[\\\"item\\\"]],\\\"expected `nav.item` to be a contextual component but found a string. Did you mean `(component nav.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L88:C9) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,5,[\\\"link-to\\\"]],\\\"expected `nav.link-to` to be a contextual component but found a string. Did you mean `(component nav.link-to)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L89:C11) \\\"],null],\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[35,10],[35,9],[35,15]],[[\\\"disabled\\\",\\\"current-when\\\",\\\"click\\\",\\\"data-test-tasks\\\"],[[35,16],[35,17],[30,[36,0],[[32,0],\\\"navigateTo\\\",\\\"authenticated.workspaces.show.projects.show.tasks.index\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/task-menu-ico.png\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,1],[\\\"nav-bar.tasks\\\"],null]],[13],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,16]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,6],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n                \\\"],[1,[30,[36,1],[\\\"nav-bar.membership-suspended\\\"],null]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,5,[\\\"item\\\"]],\\\"expected `nav.item` to be a contextual component but found a string. Did you mean `(component nav.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L103:C9) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,5,[\\\"link-to\\\"]],\\\"expected `nav.link-to` to be a contextual component but found a string. Did you mean `(component nav.link-to)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L104:C11) \\\"],null],\\\"authenticated.workspaces.show.projects.show.team\\\",[35,10],[35,9]],[[\\\"disabled\\\",\\\"click\\\",\\\"data-test-team\\\"],[[35,16],[30,[36,0],[[32,0],\\\"navigateTo\\\",\\\"authenticated.workspaces.show.projects.show.team\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/team-menu-ico.png\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,1],[\\\"nav-bar.team\\\"],null]],[13],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,16]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,6],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n                \\\"],[1,[30,[36,1],[\\\"nav-bar.membership-suspended\\\"],null]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,5,[\\\"item\\\"]],\\\"expected `nav.item` to be a contextual component but found a string. Did you mean `(component nav.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L118:C9) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,5,[\\\"link-to\\\"]],\\\"expected `nav.link-to` to be a contextual component but found a string. Did you mean `(component nav.link-to)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L119:C11) \\\"],null],\\\"authenticated.workspaces.show.projects.show.reports\\\",[35,10],[35,9],[35,15]],[[\\\"click\\\",\\\"data-test-stats\\\"],[[30,[36,0],[[32,0],\\\"navigateTo\\\",\\\"authenticated.workspaces.show.projects.show.reports\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/stats-menu-ico.png\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,1],[\\\"nav-bar.reports\\\"],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[5]}]]],[6,[37,3],[[30,[36,2],[[32,1,[\\\"nav\\\"]],\\\"expected `navbar.nav` to be a contextual component but found a string. Did you mean `(component navbar.nav)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L127:C7) \\\"],null]],[[\\\"class\\\"],[\\\"navbar-right navbar-controls collapsed-nav-hidden\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,2,[\\\"item\\\"]],\\\"expected `nav.item` to be a contextual component but found a string. Did you mean `(component nav.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L128:C9) \\\"],null]],[[\\\"class\\\"],[\\\"navbar-time\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,2,[\\\"link-to\\\"]],\\\"expected `nav.link-to` to be a contextual component but found a string. Did you mean `(component nav.link-to)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L129:C11) \\\"],null],\\\"authenticated.workspaces.show.projects.show.activity\\\",[35,10],[35,9],[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[1,[34,7]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[1,[30,[36,13],null,[[\\\"user\\\",\\\"resumeAction\\\",\\\"stopAction\\\",\\\"duplicateAction\\\",\\\"class\\\"],[[35,12],[30,[36,0],[[32,0],\\\"resumeAction\\\"],null],[30,[36,0],[[32,0],\\\"stopAction\\\"],null],[30,[36,11],[\\\"duplicate\\\"],null],\\\"navbar-session-control\\\"]]]],[2,\\\"\\\\n\\\"],[6,[37,3],[[30,[36,2],[[32,2,[\\\"dropdown\\\"]],\\\"expected `nav.dropdown` to be a contextual component but found a string. Did you mean `(component nav.dropdown)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L138:C9) \\\"],null]],[[\\\"tagName\\\",\\\"class\\\"],[\\\"li\\\",\\\"new-activity-menu\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,3,[\\\"toggle\\\"]],\\\"expected `dd.toggle` to be a contextual component but found a string. Did you mean `(component dd.toggle)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L139:C11) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[11,\\\"span\\\"],[24,\\\"data-test-time-session-add-new\\\",\\\"true\\\"],[4,[38,0],[[32,0],\\\"newSessionAction\\\"],[[\\\"bubbles\\\"],[false]]],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/add-ico.png\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,6],null,[[\\\"spacing\\\",\\\"side\\\"],[20,\\\"bottom\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[1,[30,[36,1],[\\\"nav-bar.new-time-session\\\"],null]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[14,0,\\\"caret\\\"],[12],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,3,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L148:C11) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L149:C13) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[11,\\\"a\\\"],[24,0,\\\"dropdown-item\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-time-session-dropdown-add-new\\\",\\\"true\\\"],[4,[38,0],[[32,0],\\\"newSessionAction\\\"],[[\\\"bubbles\\\"],[false]]],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-plus\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[1,[30,[36,1],[\\\"nav-bar.new-time-session\\\"],null]],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L155:C13) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[11,\\\"a\\\"],[24,0,\\\"dropdown-item\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-project-summary-dropdown-add-new\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"newSummaryAction\\\"],[[\\\"bubbles\\\"],[false]]],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-list-alt\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[1,[30,[36,1],[\\\"nav-bar.new-summary\\\"],null]],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L161:C13) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[11,\\\"a\\\"],[24,0,\\\"dropdown-item\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-task-dropdown-add-new\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"newTaskAction\\\"],[[\\\"bubbles\\\"],[false]]],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-plus\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[1,[30,[36,1],[\\\"nav-bar.new-task\\\"],null]],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,5],[[30,[36,4],[\\\"workplans\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/nav-bar/template.hbs' @ L168:C15) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[11,\\\"a\\\"],[24,0,\\\"dropdown-item\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-work-plan-dropdown-add-new\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"newWorkplanAction\\\"],[[\\\"bubbles\\\"],[false]]],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"fa fa-calendar-plus-o\\\"],[12],[13],[2,\\\"\\\\n                \\\"],[1,[30,[36,1],[\\\"nav-bar.new-workplan\\\"],null]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[4]}]]]],\\\"parameters\\\":[3]}]]],[2,\\\"      \\\"],[1,[30,[36,14],null,[[\\\"user\\\",\\\"nav\\\",\\\"refreshAuthenticatedRoute\\\",\\\"tagName\\\"],[[35,12],[32,2],[30,[36,0],[[32,0],\\\"refreshAuthenticatedRoute\\\"],null],\\\"li\\\"]]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"feature-flag\\\",\\\"if\\\",\\\"tooltip-on-element\\\",\\\"today-work-time-counter\\\",\\\"currentUserId\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"route-action\\\",\\\"user\\\",\\\"resume-stop-time-session\\\",\\\"user-menu\\\",\\\"currentUserFilterId\\\",\\\"suspended\\\",\\\"onTaskPage\\\",\\\"activityCurrentUserFilterId\\\",\\\"workspaces\\\",\\\"filters-for-workspaces\\\",\\\"currentWorkspaceFilterModel\\\",\\\"filters-for-projects\\\",\\\"currentWorkspaceId\\\",\\\"bs-dropdown\\\",\\\"get-logo-url\\\",\\\"bs-navbar\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/nav-bar/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/notification-container\", [\"exports\", \"ember-cli-notifications/components/notification-container\"], function (_exports, _notificationContainer) {\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 _notificationContainer.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/notification-message\", [\"exports\", \"ember-cli-notifications/components/notification-message\", \"ember-get-config\"], function (_exports, _notificationMessage, _emberGetConfig) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const globals = _emberGetConfig.default['ember-cli-notifications'] || {}; // Import app config object\n\n  var _default = _notificationMessage.default.extend({\n    init() {\n      this._super(...arguments);\n\n      this.icons = globals.icons || 'svg';\n      this.svgs = {\n        'success': 'success',\n        'warning': 'warning',\n        'info': 'info',\n        'error': 'error'\n      };\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/popover-on-component\", [\"exports\", \"ember-tooltips/components/popover-on-component\"], function (_exports, _popoverOnComponent) {\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 _popoverOnComponent.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/popover-on-element\", [\"exports\", \"ember-tooltips/components/popover-on-element\"], function (_exports, _popoverOnElement) {\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 _popoverOnElement.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select-multiple-with-create\", [\"exports\", \"ember-power-select-with-create/components/power-select-multiple-with-create\"], function (_exports, _powerSelectMultipleWithCreate) {\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 _powerSelectMultipleWithCreate.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select-multiple\", [\"exports\", \"ember-power-select/components/power-select-multiple\"], function (_exports, _powerSelectMultiple) {\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 _powerSelectMultiple.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select-multiple/trigger\", [\"exports\", \"ember-power-select/components/power-select-multiple/trigger\"], function (_exports, _trigger) {\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 _trigger.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select-with-create\", [\"exports\", \"ember-power-select-with-create/components/power-select-with-create\"], function (_exports, _powerSelectWithCreate) {\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 _powerSelectWithCreate.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select-with-create/suggested-option\", [\"exports\", \"ember-power-select-with-create/components/power-select-with-create/suggested-option\"], function (_exports, _suggestedOption) {\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 _suggestedOption.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select\", [\"exports\", \"ember-power-select/components/power-select\"], function (_exports, _powerSelect) {\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 _powerSelect.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select/before-options\", [\"exports\", \"ember-power-select/components/power-select/before-options\"], function (_exports, _beforeOptions) {\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 _beforeOptions.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select/options\", [\"exports\", \"ember-power-select/components/power-select/options\"], function (_exports, _options) {\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 _options.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select/placeholder\", [\"exports\", \"ember-power-select/components/power-select/placeholder\"], function (_exports, _placeholder) {\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 _placeholder.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select/power-select-group\", [\"exports\", \"ember-power-select/components/power-select/power-select-group\"], function (_exports, _powerSelectGroup) {\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 _powerSelectGroup.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select/search-message\", [\"exports\", \"ember-power-select/components/power-select/search-message\"], function (_exports, _searchMessage) {\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 _searchMessage.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/power-select/trigger\", [\"exports\", \"ember-power-select/components/power-select/trigger\"], function (_exports, _trigger) {\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 _trigger.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/project-form/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    store: Ember.inject.service(),\n    session: Ember.inject.service(),\n    showSuspendModal: false,\n    showDeleteModal: false,\n    configureProjectContent: true,\n    confirmDeleteProjectContent: false,\n    confirmSuspendProjectContent: false,\n    defaultTagColor: '#79abb2',\n    currentProjectAccessRole: 'workspace_staff',\n    projectAccessRoles: Object.freeze(['workspace_staff', 'project_staff']),\n    sortRoundings: Object.freeze(['value:asc']),\n    sortTagsProps: Object.freeze(['isNew:asc', 'shortlisted:desc', 'label:asc']),\n    sortedTags: Ember.computed.sort('model.tags', 'sortTagsProps'),\n    projectSetting: Ember.computed.alias('model.projectSetting'),\n\n    init() {\n      if (!this.model.get('projectSetting.id')) {\n        const newProjectSetting = this.get('store').createRecord('project-setting', {\n          extraTags: true,\n          timeSessionsDescriptionRequired: false\n        });\n        this.set('projectSetting', newProjectSetting);\n      }\n\n      this._super(...arguments);\n    },\n\n    didReceiveAttrs() {\n      if (Ember.isEmpty(this.get('model.accessRole'))) {\n        this.set('model.accessRole', this.get('currentProjectAccessRole'));\n      }\n    },\n\n    sortedTimeRoundings: Ember.computed.sort('timeRoundings', 'sortRoundings'),\n    hasAdminOrManagerRoleForCurrentProject: Ember.computed(function () {\n      return this.get('userPreferences').currentUserProjectsWithAdminRole.includes(this.model.get('id')) || this.get('userPreferences').currentUserProjectsWithManagerRole.includes(this.model.get('id'));\n    }),\n    canDeleteProject: Ember.computed('model.{permissions.delete,discardedAt}', function () {\n      return !this.get('model.discardedAt') && this.get('model.permissions.delete');\n    }),\n    canSuspendProject: Ember.computed('model', function () {\n      return this.get('model.permissions.suspend');\n    }),\n    projectsForSelectedWorkspaceFilter: Ember.computed('externalSystems', function () {\n      let externalSystems = this.get('externalSystems');\n      return externalSystems.map(system => {\n        return {\n          label: system.get('label'),\n          value: system.get('value')\n        };\n      });\n    }),\n    pendingChanges: Ember.computed('model.sessionTypes.@each.{name}', function () {\n      return this.get('model.sessionTypes').any(function (sessionType) {\n        return Ember.isPresent(sessionType.changedAttributes().name);\n      });\n    }),\n    actions: {\n      save() {\n        this.saveProject(this.model);\n      },\n\n      reset() {\n        this.cancelProject(this.model);\n      },\n\n      addProjectSystem() {\n        this.model.get('projectSystems').createRecord({\n          externalSystem: this.get('externalSystems.firstObject.value')\n        });\n      },\n\n      removeProjectSystem(projectSystem) {\n        this.model.get('projectSystems').removeObject(projectSystem);\n      },\n\n      updateExternalSystem(projectSystem, property, value) {\n        projectSystem.set(property, value.value);\n      },\n\n      addTag() {\n        this.model.get('tags').createRecord({\n          color: this.defaultTagColor\n        });\n      },\n\n      removeTag(tag) {\n        this.model.get('tags').removeObject(tag);\n      },\n\n      changeRole(role) {\n        this.set('model.accessRole', role);\n      },\n\n      confirmDeleteProject(project) {\n        this.deleteProject(project);\n        this.set('showDeleteModal', false);\n      },\n\n      cancelDeleteProject() {\n        this.set('showDeleteModal', false);\n      },\n\n      confirmSuspendProject(stopOngoingTimeSessions) {\n        this.set('showSuspendModal', false);\n        this.set('model.suspended', true);\n        this.set('model.stopOngoingTimeSessions', stopOngoingTimeSessions);\n        this.saveProject(this.model);\n      },\n\n      cancelSuspendProject() {\n        this.set('showSuspendModal', false);\n      },\n\n      deleteProjectModal() {\n        this.set('showDeleteModal', true);\n      },\n\n      suspendProject() {\n        if (this.get('model.suspended')) {\n          this.set('model.suspended', false);\n          this.set('model.discardedAt', '');\n          this.saveProject(this.model);\n        } else {\n          this.set('showSuspendModal', true);\n          this.set('headerTitle', this.get('i18n').t('project-form.suspend-project'));\n        }\n      },\n\n      createClient(newClientName) {\n        this.createClient(newClientName).then(client => {\n          this.get('model').set('client', client);\n        });\n      },\n\n      createClientSuggestion(term) {\n        return `Add new client: ${term}`;\n      },\n\n      doNothing() {}\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/project-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"M2c2+78z\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"modal\\\",\\\"f\\\",\\\"tag\\\",\\\"ff\\\",\\\"projectSystem\\\",\\\"ff\\\",\\\"ff\\\",\\\"role\\\",\\\"client\\\",\\\"timeRounding\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-lg-offset-2 project-form\\\"],[12],[6,[37,28],[[35,1]],[[\\\"submit\\\",\\\"reset\\\"],[[30,[36,4],[[32,0],\\\"save\\\"],null],[30,[36,4],[[32,0],\\\"reset\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,3,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C126) \\\"],null],\\\"name\\\"],[[\\\"fieldClasses\\\"],[\\\"form-group first-child\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,13,[\\\"label\\\"]]],[1,[30,[36,3],[[30,[36,2],[[32,13,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C209) \\\"],null]],[[\\\"autofocus\\\",\\\"class\\\"],[\\\"autofocus\\\",\\\"form-control\\\"]]]]],\\\"parameters\\\":[13]}]]],[6,[37,3],[[30,[36,2],[[32,3,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C286) \\\"],null],\\\"description\\\"],[[\\\"control\\\",\\\"fieldClasses\\\"],[\\\"form-controls/textarea\\\",\\\"form-group first-child\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,12,[\\\"label\\\"]]],[1,[30,[36,3],[[30,[36,2],[[32,12,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C409) \\\"],null]],[[\\\"class\\\"],[\\\"form-control\\\"]]]]],\\\"parameters\\\":[12]}]]],[1,[30,[36,13],null,[[\\\"model\\\"],[[35,1]]]]],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"project-form.time-rounding\\\"],null]],[13],[6,[37,16],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchEnabled\\\",\\\"typeAheadMatcher\\\"],[[35,15],[35,1,[\\\"timeRounding\\\"]],[30,[36,4],[[32,0],[30,[36,14],[[35,1,[\\\"timeRounding\\\"]]],null]],null],false,[30,[36,4],[[32,0],\\\"doNothing\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,12],[[32,11]],null]]],\\\"parameters\\\":[11]}]]],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"project-form.client\\\"],null]],[13],[6,[37,18],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"oncreate\\\",\\\"buildSuggestion\\\"],[[35,17],[35,1,[\\\"client\\\"]],[30,[36,4],[[32,0],[30,[36,14],[[35,1,[\\\"client\\\"]]],null]],null],[30,[36,4],[[32,0],\\\"createClient\\\"],null],[30,[36,4],[[32,0],\\\"createClientSuggestion\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,10,[\\\"name\\\"]]]],\\\"parameters\\\":[10]}]]],[10,\\\"h5\\\"],[12],[10,\\\"strong\\\"],[12],[1,[30,[36,0],[\\\"project-form.access\\\"],null]],[2,\\\" \\\"],[13],[13],[6,[37,16],null,[[\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchEnabled\\\"],[[35,19],[35,1,[\\\"accessRole\\\"]],[30,[36,4],[[32,0],[30,[36,14],[[35,1,[\\\"accessRole\\\"]]],null]],null],false]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,11],[[32,9]],null]]],\\\"parameters\\\":[9]}]]],[10,\\\"br\\\"],[12],[13],[10,\\\"br\\\"],[12],[13],[10,\\\"label\\\"],[12],[1,[30,[36,0],[\\\"project-form.external-systems\\\"],null]],[13],[10,\\\"table\\\"],[14,0,\\\"table table-hover form-group\\\"],[12],[10,\\\"thead\\\"],[12],[10,\\\"tr\\\"],[12],[10,\\\"th\\\"],[14,0,\\\"col-sm-6\\\"],[12],[1,[30,[36,0],[\\\"project-form.name\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"col-sm-5\\\"],[12],[1,[30,[36,0],[\\\"project-form.url\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"col-sm-1\\\"],[12],[13],[13],[13],[6,[37,21],[[30,[36,20],[[30,[36,20],[[35,1,[\\\"projectSystems\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"tbody\\\"],[12],[10,\\\"tr\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"td\\\"],[12],[6,[37,3],[[30,[36,2],[[32,3,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C1646) \\\"],null],\\\"externalSystem\\\"],[[\\\"object\\\",\\\"control\\\",\\\"update\\\"],[[32,6],\\\"form-controls/select\\\",[30,[36,4],[[32,0],\\\"updateExternalSystem\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[[30,[36,2],[[32,8,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C1780) \\\"],null]],[[\\\"options\\\",\\\"optionValuePath\\\",\\\"optionLabelPath\\\",\\\"class\\\"],[[35,10],\\\"value\\\",\\\"label\\\",\\\"form-control\\\"]]]]],\\\"parameters\\\":[8]}]]],[13],[10,\\\"td\\\"],[12],[6,[37,3],[[30,[36,2],[[32,3,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C1935) \\\"],null],\\\"url\\\"],[[\\\"object\\\",\\\"control\\\"],[[32,6],\\\"form-controls/input\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[[30,[36,2],[[32,7,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C2018) \\\"],null]],[[\\\"class\\\"],[\\\"form-control\\\"]]]],[1,[30,[36,3],[[30,[36,2],[[32,7,[\\\"errors\\\"]],\\\"expected `ff.errors` to be a contextual component but found a string. Did you mean `(component ff.errors)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C2053) \\\"],null]],[[\\\"class\\\"],[\\\"has-error\\\"]]]]],\\\"parameters\\\":[7]}]]],[13],[10,\\\"td\\\"],[12],[11,\\\"button\\\"],[24,0,\\\"btn btn-danger\\\"],[4,[38,4],[[32,0],\\\"removeProjectSystem\\\",[32,6]],null],[12],[2,\\\"-\\\"],[13],[13],[13],[13]],\\\"parameters\\\":[6]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[11,\\\"button\\\"],[24,0,\\\"btn btn-primary\\\"],[4,[38,4],[[32,0],\\\"addProjectSystem\\\"],null],[12],[1,[30,[36,0],[\\\"project-form.add+\\\"],null]],[13],[13],[10,\\\"label\\\"],[12],[1,[30,[36,0],[\\\"project-form.tags\\\"],null]],[13],[10,\\\"table\\\"],[14,0,\\\"table table-hover form-group\\\"],[12],[10,\\\"thead\\\"],[12],[10,\\\"tr\\\"],[12],[10,\\\"th\\\"],[14,0,\\\"col-sm-1\\\"],[12],[1,[30,[36,0],[\\\"project-form.tag.color\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"col-sm-9\\\"],[12],[1,[30,[36,0],[\\\"project-form.tag.label\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"col-sm-1\\\"],[12],[1,[30,[36,0],[\\\"project-form.tag.show-on-top\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"col-sm-1\\\"],[12],[1,[30,[36,0],[\\\"project-form.tag.actions\\\"],null]],[13],[13],[13],[10,\\\"tbody\\\"],[12],[6,[37,21],[[30,[36,20],[[30,[36,20],[[35,22]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"tr\\\"],[12],[10,\\\"td\\\"],[12],[1,[30,[36,8],null,[[\\\"value\\\",\\\"format\\\",\\\"saveLabel\\\"],[[32,4,[\\\"color\\\"]],\\\"hex\\\",\\\"Set Color\\\"]]]],[13],[10,\\\"td\\\"],[12],[6,[37,3],[[30,[36,2],[[32,3,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C2825) \\\"],null],\\\"label\\\"],[[\\\"object\\\",\\\"control\\\"],[[32,4],\\\"form-controls/input\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],[[30,[36,2],[[32,5,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C2900) \\\"],null]],[[\\\"class\\\"],[\\\"form-control\\\"]]]],[1,[30,[36,3],[[30,[36,2],[[32,5,[\\\"errors\\\"]],\\\"expected `ff.errors` to be a contextual component but found a string. Did you mean `(component ff.errors)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C2935) \\\"],null]],[[\\\"class\\\"],[\\\"has-error\\\"]]]]],\\\"parameters\\\":[5]}]]],[13],[10,\\\"td\\\"],[12],[1,[30,[36,9],null,[[\\\"type\\\",\\\"checked\\\"],[\\\"checkbox\\\",[32,4,[\\\"shortlisted\\\"]]]]]],[13],[10,\\\"td\\\"],[12],[11,\\\"button\\\"],[24,0,\\\"btn btn-danger\\\"],[4,[38,4],[[32,0],\\\"removeTag\\\",[32,4]],null],[12],[2,\\\"-\\\"],[13],[13],[13]],\\\"parameters\\\":[4]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[11,\\\"button\\\"],[24,0,\\\"btn btn-primary\\\"],[4,[38,4],[[32,0],\\\"addTag\\\"],null],[12],[1,[30,[36,0],[\\\"project-form.add+\\\"],null]],[13],[13],[1,[30,[36,23],null,[[\\\"sessionTypes\\\"],[[35,1,[\\\"sessionTypes\\\"]]]]]],[10,\\\"div\\\"],[14,0,\\\"settings row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"h5\\\"],[12],[1,[30,[36,0],[\\\"project-form.settings\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"setting col-xs-12\\\"],[12],[1,[30,[36,9],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\"],[\\\"checkbox\\\",[35,24,[\\\"extraTags\\\"]],\\\"extraTagsSettingCheckbox\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"extraTagsSettingCheckbox\\\"],[12],[1,[30,[36,0],[\\\"project-form.allow-custom-tags\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"setting col-xs-12\\\"],[12],[1,[30,[36,9],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\"],[\\\"checkbox\\\",[35,24,[\\\"timeSessionsDescriptionRequired\\\"]],\\\"timeSessionsDescriptionRequired\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"timeSessionsDescriptionRequired\\\"],[12],[1,[30,[36,0],[\\\"project-form.desc-required\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"setting col-xs-12\\\"],[12],[1,[30,[36,9],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\"],[\\\"checkbox\\\",[35,24,[\\\"onlyProjectSessionTypes\\\"]],\\\"onlyProjectSessionTypesCheckbox\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"onlyProjectSessionTypesCheckbox\\\"],[12],[1,[30,[36,0],[\\\"project-form.only-project-session-types\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"setting col-xs-12\\\"],[12],[1,[30,[36,9],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\"],[\\\"checkbox\\\",[35,24,[\\\"onlyProjectTags\\\"]],\\\"onlyProjectTagsCheckbox\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"onlyProjectTagsCheckbox\\\"],[12],[1,[30,[36,0],[\\\"project-form.only-project-tags\\\"],null]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"flex-display\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"text-left\\\"],[12],[6,[37,6],[[35,25]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,5],null,[[\\\"type\\\",\\\"onClick\\\"],[\\\"danger\\\",[30,[36,4],[[32,0],\\\"deleteProjectModal\\\",[35,7]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"projects.delete\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,6],[[35,26]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,6],[[35,1,[\\\"suspended\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,5],null,[[\\\"onClick\\\",\\\"type\\\",\\\"elementId\\\"],[[30,[36,4],[[32,0],\\\"suspendProject\\\"],null],\\\"success\\\",\\\"suspend-button\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-form.resume\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,5],null,[[\\\"onClick\\\",\\\"type\\\",\\\"class\\\"],[[30,[36,4],[[32,0],\\\"suspendProject\\\"],null],\\\"warning\\\",\\\"text-right\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-form.suspend\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"text-right\\\"],[12],[6,[37,6],[[35,27]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"pending-changes\\\"],[12],[1,[30,[36,0],[\\\"project-form.pending-changes\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[1,[30,[36,3],[[30,[36,2],[[32,3,[\\\"reset\\\"]],\\\"expected `f.reset` to be a contextual component but found a string. Did you mean `(component f.reset)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C5030) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"project-form.cancel\\\"],null],\\\"btn btn-default\\\"]]]],[1,[30,[36,3],[[30,[36,2],[[32,3,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C5097) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"project-form.save\\\"],null],\\\"btn btn-success\\\"]]]],[13],[13],[13]],\\\"parameters\\\":[3]}]]],[13],[6,[37,30],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,29],[30,[36,4],[[32,0],\\\"cancelSuspendProject\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,2,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C5288) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"project-form.suspend-project\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,2,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C5387) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"suspend-project-modal.notification\\\"],null]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,5],null,[[\\\"onClick\\\"],[[30,[36,4],[[32,0],\\\"confirmSuspendProject\\\",false],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"suspend-project-modal.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,5],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,4],[[32,0],\\\"confirmSuspendProject\\\",true],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"suspend-project-modal.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[2]}]]],[6,[37,30],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,31],[30,[36,4],[[32,0],\\\"cancelDeleteProject\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C5819) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"projects.delete-project\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/project-form/template.hbs' @ L1:C5913) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"projects.delete-project-question\\\"],[[\\\"currentProjectName\\\"],[[35,1,[\\\"name\\\"]]]]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,5],null,[[\\\"onClick\\\"],[[30,[36,4],[[32,0],\\\"cancelDeleteProject\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-configure-form-modal.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,5],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,4],[[32,0],\\\"confirmDeleteProject\\\",[35,1]],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-configure-form-modal.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"model\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"if\\\",\\\"currentProject\\\",\\\"color-picker\\\",\\\"input\\\",\\\"projectsForSelectedWorkspaceFilter\\\",\\\"format-user-role\\\",\\\"time-rounding-label\\\",\\\"date-format-power-select\\\",\\\"mut\\\",\\\"sortedTimeRoundings\\\",\\\"power-select\\\",\\\"clients\\\",\\\"power-select-with-create\\\",\\\"projectAccessRoles\\\",\\\"-track-array\\\",\\\"each\\\",\\\"sortedTags\\\",\\\"session-types-editable-table\\\",\\\"projectSetting\\\",\\\"canDeleteProject\\\",\\\"canSuspendProject\\\",\\\"pendingChanges\\\",\\\"form-for\\\",\\\"showSuspendModal\\\",\\\"bs-modal\\\",\\\"showDeleteModal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/project-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/project-link/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    tagName: '',\n    isVisible: Ember.computed('projectId', 'projectName', 'userPreferences.currentProject', function () {\n      const selectedProjectId = this.get('userPreferences.currentProject.id');\n      return selectedProjectId !== this.get('projectId');\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/project-link/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"mXk/IBJR\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,6],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"project-link\\\"],[12],[2,\\\"- \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,2],[[32,0],[30,[36,1],[\\\"redirectToProject\\\",[35,0]],null]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[1,[30,[36,4],[[35,3]],null]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"projectId\\\",\\\"route-action\\\",\\\"action\\\",\\\"projectName\\\",\\\"capitalize\\\",\\\"isVisible\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/project-link/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/public-nav-bar/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"u4qG+xy5\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"nav\\\"],[14,0,\\\"navbar navbar-default\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"container-fluid\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"navbar-header\\\"],[12],[6,[37,1],null,[[\\\"class\\\",\\\"route\\\"],[\\\"navbar-brand\\\",\\\"application\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"img\\\"],[15,\\\"src\\\",[34,0]],[12],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"get-logo-url\\\",\\\"link-to\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/public-nav-bar/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/radio-button-input\", [\"exports\", \"ember-radio-button/components/radio-button-input\"], function (_exports, _radioButtonInput) {\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 _radioButtonInput.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/radio-button\", [\"exports\", \"ember-radio-button/components/radio-button\"], function (_exports, _radioButton) {\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 _radioButton.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/resend-invitation-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    invitationEmail: Ember.computed('invitation', function () {\n      return this.get('invitation.email');\n    }),\n    actions: {\n      resend() {\n        this.resendInvitation(this.get('invitation'));\n        this.set('modalOpen', false);\n      },\n\n      closeResendInvitationModal() {\n        this.set('modalOpen', false);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/resend-invitation-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"74DECzph\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,7],null,[[\\\"open\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/resend-invitation-modal/template.hbs' @ L1:C42) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"resend-invitation-modal.resend-invitation\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/resend-invitation-modal/template.hbs' @ L1:C154) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"resend-invitation-modal.do-you-want-to-resend-invitation-for-email\\\"],[[\\\"email\\\"],[[35,1]]]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,5],null,[[\\\"onClick\\\"],[[30,[36,4],[[32,0],\\\"closeResendInvitationModal\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"resend-invitation-modal.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,5],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,4],[[32,0],\\\"resend\\\"],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"resend-invitation-modal.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"invitationEmail\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/resend-invitation-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/reset-password-form/component\", [\"exports\", \"web-app-ember-v2/components/reset-password-form/template\", \"web-app-ember-v2/mixins/autofocus\"], function (_exports, _template, _autofocus) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_autofocus.default, {\n    layout: _template.default,\n    actions: {\n      resetPassword(model) {\n        this.resetPassword(model);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/reset-password-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"2XbKcESU\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content reset-password\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"container reset-password__form\\\"],[12],[6,[37,5],[[35,4]],[[\\\"submit\\\"],[[30,[36,3],[[32,0],\\\"resetPassword\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h2\\\"],[14,0,\\\"reset-password__title\\\"],[12],[1,[30,[36,0],[\\\"reset-password-form.reset-password\\\"],null]],[13],[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/reset-password-form/template.hbs' @ L1:C227) \\\"],null],\\\"email\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/email-input\\\",\\\"form-group first-child\\\",[30,[36,0],[\\\"reset-password-form.email\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,2,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/reset-password-form/template.hbs' @ L1:C385) \\\"],null]],[[\\\"placeholder\\\",\\\"autofocus\\\",\\\"class\\\"],[[30,[36,0],[\\\"reset-password-form.email-placeholder\\\"],null],\\\"true\\\",\\\"input-lg form-control reset-password__input input-radiousless\\\"]]]]],\\\"parameters\\\":[2]}]]],[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/reset-password-form/template.hbs' @ L1:C561) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"reset-password-form.reset-password\\\"],null],\\\"btn-lg btn-block btn btn-radiusless btn-submit\\\"]]]]],\\\"parameters\\\":[1]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-12 sign-in__footer\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-6 text-center\\\"],[12],[10,\\\"h2\\\"],[14,0,\\\"reset-password__footer-title\\\"],[12],[1,[30,[36,0],[\\\"reset-password-form.not-registered\\\"],null]],[13],[6,[37,6],null,[[\\\"class\\\",\\\"route\\\"],[\\\"btn-lg btn btn-radiusless btn-violet btn-wide\\\",\\\"sign-up\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"reset-password-form.sign-up\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-6 text-center\\\"],[12],[10,\\\"h2\\\"],[14,0,\\\"reset-password__footer-title\\\"],[12],[1,[30,[36,0],[\\\"reset-password-form.remember-password\\\"],null]],[13],[6,[37,6],null,[[\\\"class\\\",\\\"route\\\"],[\\\"btn-lg btn btn-radiusless btn-orange btn-thin \\\",\\\"sign-in\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"reset-password-form.login\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"model\\\",\\\"form-for\\\",\\\"link-to\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/reset-password-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/resume-stop-time-session/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    store: Ember.inject.service(),\n    tagName: 'li',\n    lastTimeSession: Ember.computed.oneWay('user.status.timeSession'),\n    actions: {\n      stopOngoingTimeSession() {\n        const timeSessionId = this.get('lastTimeSession.id');\n        const timeSession = this.get('store').peekRecord('time-session', timeSessionId);\n        this.stopAction(timeSession);\n      },\n\n      resumeOrDuplicatePrevTimeSession() {\n        const lastTimeSession = this.get('lastTimeSession');\n        const timeSessionDescRequired = lastTimeSession.get('project.projectSetting.timeSessionsDescriptionRequired');\n\n        if (timeSessionDescRequired) {\n          this.get('duplicateAction')(lastTimeSession, {\n            focusDescription: true\n          });\n        } else {\n          const timeSession = this.get('store').createRecord('time-session');\n          timeSession.clonePropertiesFrom(lastTimeSession).then(timeSession => {\n            this.resumeAction(timeSession);\n          });\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/resume-stop-time-session/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"A19+0QCY\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,4],[[35,2]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,4],[[35,2,[\\\"isOngoing\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,\\\"data-test-time-session-stop\\\",\\\"\\\"],[4,[38,3],[[32,0],\\\"stopOngoingTimeSession\\\"],null],[12],[10,\\\"span\\\"],[12],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/pause-ico.png\\\"],[12],[13],[6,[37,1],null,[[\\\"spacing\\\",\\\"side\\\",\\\"class\\\",\\\"keepInWindow\\\"],[20,\\\"bottom\\\",\\\"show-tooltip stop-resume-tooltip\\\",false]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[35,2,[\\\"task\\\",\\\"title\\\"]]],[2,\\\" \\\"],[10,\\\"div\\\"],[14,0,\\\"br\\\"],[12],[13],[10,\\\"span\\\"],[14,0,\\\"label label-primary session-type-button\\\"],[12],[1,[35,2,[\\\"sessionType\\\",\\\"name\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"br\\\"],[12],[13],[1,[35,2,[\\\"project\\\",\\\"name\\\"]]],[2,\\\" \\\"]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[11,\\\"a\\\"],[24,\\\"data-test-time-session-resume\\\",\\\"\\\"],[4,[38,3],[[32,0],\\\"resumeOrDuplicatePrevTimeSession\\\"],null],[12],[10,\\\"span\\\"],[12],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/play-ico.png\\\"],[12],[13],[6,[37,1],null,[[\\\"spacing\\\",\\\"side\\\",\\\"class\\\",\\\"keepInWindow\\\"],[20,\\\"bottom\\\",\\\"show-tooltip stop-resume-tooltip\\\",false]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[35,2,[\\\"task\\\",\\\"title\\\"]]],[2,\\\" \\\"],[10,\\\"div\\\"],[14,0,\\\"br\\\"],[12],[13],[10,\\\"span\\\"],[14,0,\\\"label label-primary session-type-button\\\"],[12],[1,[35,2,[\\\"sessionType\\\",\\\"name\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"br\\\"],[12],[13],[1,[35,2,[\\\"project\\\",\\\"name\\\"]]],[2,\\\" \\\"]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"a\\\"],[14,\\\"data-test-time-session-resume\\\",\\\"\\\"],[12],[10,\\\"span\\\"],[12],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/play-ico.png\\\"],[12],[13],[6,[37,1],null,[[\\\"spacing\\\",\\\"side\\\",\\\"class\\\"],[20,\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"nav-bar.no-time-session-to-resume\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"tooltip-on-element\\\",\\\"lastTimeSession\\\",\\\"action\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/resume-stop-time-session/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/session-type-form-row/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    tagName: 'tr',\n    isNewRecord: Ember.computed.readOnly('sessionType.isNew'),\n    isRowActive: Ember.computed.oneWay('isNewRecord'),\n    isRecordNewAndDirty: Ember.computed.and('isNewRecord', 'isDirty'),\n    isDirty: Ember.computed('sessionType.{name,isDirty}', function () {\n      return Ember.isPresent(this.get('sessionType').changedAttributes().name);\n    }),\n    actions: {\n      removeSessionType() {\n        this.removeSessionType(this.get('sessionType'));\n      },\n\n      closeSessionType() {\n        const sessionType = this.get('sessionType');\n        this.set('isRowActive', false);\n        sessionType.rollbackAttributes();\n      },\n\n      acceptChanges() {\n        const sessionType = this.get('sessionType');\n\n        if (sessionType.validate()) {\n          this.set('isRowActive', false);\n        } else {\n          sessionType.rollbackAttributes();\n        }\n      },\n\n      activateRow() {\n        this.set('isRowActive', true);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/session-type-form-row/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"+dt8ov1O\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"td\\\"],[14,0,\\\"session-type-form-row\\\"],[12],[6,[37,4],[[35,11]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,10],[[35,3]],[[\\\"class\\\"],[\\\"session-type-form\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,9],[[30,[36,8],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/session-type-form-row/template.hbs' @ L1:C114) \\\"],null],\\\"name\\\"],[[\\\"control\\\"],[\\\"form-controls/input\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,9],[[30,[36,8],[[32,2,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/session-type-form-row/template.hbs' @ L1:C177) \\\"],null]],[[\\\"class\\\"],[\\\"form-control session-type-name-input\\\"]]]],[1,[30,[36,9],[[30,[36,8],[[32,2,[\\\"errors\\\"]],\\\"expected `ff.errors` to be a contextual component but found a string. Did you mean `(component ff.errors)`? ('web-app-ember-v2/components/session-type-form-row/template.hbs' @ L1:C236) \\\"],null]],[[\\\"class\\\"],[\\\"has-error\\\"]]]]],\\\"parameters\\\":[2]}]]],[11,\\\"a\\\"],[24,0,\\\"accept-change-icon\\\"],[4,[38,0],[[32,0],\\\"acceptChanges\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-check\\\"],[12],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[11,\\\"span\\\"],[4,[38,0],[[32,0],\\\"activateRow\\\"],null],[12],[1,[35,3,[\\\"name\\\"]]],[13],[6,[37,4],[[35,7]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-info-circle session-type-icon-info\\\"],[12],[6,[37,2],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,1],[\\\"project-form.record-to-save\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"td\\\"],[14,0,\\\"action-buttons-column-tbody\\\"],[12],[6,[37,4],[[35,11]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,0,\\\"close-action\\\"],[4,[38,0],[[32,0],\\\"closeSessionType\\\",[35,3]],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-times-circle close-action-icon\\\"],[12],[13],[10,\\\"span\\\"],[12],[1,[30,[36,1],[\\\"project-form.cancel\\\"],null]],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"right-icon\\\"],[12],[6,[37,4],[[35,3,[\\\"hasSessions\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-info-circle session-type-icon-info\\\"],[12],[6,[37,2],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,1],[\\\"project-form.session-type-has-sessions\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"removeSessionType\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-trash\\\"],[12],[13],[13]],\\\"parameters\\\":[]}]]],[13],[6,[37,6],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"left-icon\\\"],[12],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"activateRow\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-pencil\\\"],[12],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"tooltip-on-element\\\",\\\"sessionType\\\",\\\"if\\\",\\\"isRecordNewAndDirty\\\",\\\"unless\\\",\\\"isDirty\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"form-for\\\",\\\"isRowActive\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/session-type-form-row/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/session-types-editable-table/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      addSessionType() {\n        this.get('sessionTypes').createRecord({});\n      },\n\n      removeSessionType(sessionType) {\n        this.get('sessionTypes').removeObject(sessionType);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/session-types-editable-table/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"AFdB8oOe\",\n    \"block\": \"{\\\"symbols\\\":[\\\"sessionType\\\"],\\\"statements\\\":[[10,\\\"label\\\"],[14,0,\\\"title-section\\\"],[12],[1,[30,[36,2],[\\\"session-types-editable-table.title\\\"],null]],[13],[10,\\\"table\\\"],[14,0,\\\"table form-group session-types-editable-table\\\"],[12],[10,\\\"thead\\\"],[12],[10,\\\"tr\\\"],[12],[10,\\\"th\\\"],[12],[1,[30,[36,2],[\\\"session-types-editable-table.name\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"action-buttons-column\\\"],[12],[1,[30,[36,2],[\\\"session-types-editable-table.actions\\\"],null]],[13],[13],[13],[10,\\\"tbody\\\"],[12],[6,[37,5],[[30,[36,4],[[30,[36,4],[[35,3]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"data-test-session-type-row\\\",\\\"sessionType\\\",\\\"removeSessionType\\\"],[true,[32,1],[30,[36,0],[[32,0],\\\"removeSessionType\\\",[32,1]],null]]]]]],\\\"parameters\\\":[1]}]]],[10,\\\"tr\\\"],[12],[10,\\\"td\\\"],[14,0,\\\"add-row-action\\\"],[12],[11,\\\"a\\\"],[24,\\\"data-test-session-type-add-button\\\",\\\"\\\"],[4,[38,0],[[32,0],\\\"addSessionType\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-plus\\\"],[12],[13],[1,[30,[36,2],[\\\"session-types-editable-table.add-session-type\\\"],null]],[13],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"session-type-form-row\\\",\\\"t\\\",\\\"sessionTypes\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/session-types-editable-table/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/sign-in-form/component\", [\"exports\", \"web-app-ember-v2/components/sign-in-form/template\", \"web-app-ember-v2/mixins/autofocus\"], function (_exports, _template, _autofocus) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_autofocus.default, {\n    layout: _template.default,\n    actions: {\n      authenticate(model) {\n        this.authenticate(model);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/sign-in-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"iytCLgt9\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content sign-in\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"container sign-in__form\\\"],[12],[6,[37,6],[[35,5]],[[\\\"submit\\\"],[[30,[36,4],[[32,0],\\\"authenticate\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h2\\\"],[14,0,\\\"sign-in__title\\\"],[12],[1,[30,[36,0],[\\\"sign-in.login\\\"],null]],[13],[6,[37,3],[[30,[36,2],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-in-form/template.hbs' @ L1:C184) \\\"],null],\\\"email\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/email-input\\\",\\\"form-group first-child\\\",[30,[36,0],[\\\"sign-in.email\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,3,[\\\"label\\\"]]],[1,[30,[36,3],[[30,[36,2],[[32,3,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/sign-in-form/template.hbs' @ L1:C330) \\\"],null]],[[\\\"placeholder\\\",\\\"autofocus\\\",\\\"autocomplete\\\",\\\"disabled\\\",\\\"class\\\"],[[30,[36,0],[\\\"sign-in.email-placeholder\\\"],null],\\\"true\\\",\\\"email\\\",[35,1],\\\"input-lg form-control input-radiousless\\\"]]]]],\\\"parameters\\\":[3]}]]],[6,[37,3],[[30,[36,2],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-in-form/template.hbs' @ L1:C512) \\\"],null],\\\"password\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/password-input\\\",\\\"form-group last-child\\\",[30,[36,0],[\\\"user.password\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"label\\\"]]],[1,[30,[36,3],[[30,[36,2],[[32,2,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/sign-in-form/template.hbs' @ L1:C663) \\\"],null]],[[\\\"placeholder\\\",\\\"autocomplete\\\",\\\"disabled\\\",\\\"class\\\"],[[30,[36,0],[\\\"user.password\\\"],null],\\\"current-password\\\",[35,1],\\\"input-lg form-control input-radiousless\\\"]]]]],\\\"parameters\\\":[2]}]]],[1,[30,[36,3],[[30,[36,2],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/sign-in-form/template.hbs' @ L1:C826) \\\"],null]],[[\\\"value\\\",\\\"disabled\\\",\\\"class\\\"],[[30,[36,0],[\\\"sign-in.sign-in\\\"],null],[35,1],\\\"btn-lg btn-block btn btn-radiusless btn-submit\\\"]]]]],\\\"parameters\\\":[1]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-12 sign-in__footer\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-6 text-center\\\"],[12],[10,\\\"h2\\\"],[14,0,\\\"sign-in__footer-title\\\"],[12],[1,[30,[36,0],[\\\"sign-in.not-registered\\\"],null]],[13],[6,[37,7],null,[[\\\"class\\\",\\\"data-test-create-account\\\",\\\"route\\\"],[\\\"btn-lg btn btn-radiusless btn-violet btn-wide\\\",true,\\\"sign-up\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"sign-in.sign-up\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-6 text-center\\\"],[12],[10,\\\"h2\\\"],[14,0,\\\"sign-in__footer-title\\\"],[12],[1,[30,[36,0],[\\\"sign-in.forget-password\\\"],null]],[13],[6,[37,7],null,[[\\\"class\\\",\\\"data-test-reset-password\\\",\\\"route\\\"],[\\\"btn-lg btn btn-radiusless btn-orange btn-thin\\\",true,\\\"password.reset\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"sign-in.reset-password\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"disabled\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"model\\\",\\\"form-for\\\",\\\"link-to\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/sign-in-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/sign-up-form/component\", [\"exports\", \"web-app-ember-v2/mixins/autofocus\"], function (_exports, _autofocus) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_autofocus.default, {\n    response: null,\n    reset: true,\n\n    init() {\n      this._super();\n\n      this.setDateFormat(this.get('selectedDateFormat'));\n    },\n\n    selectedDateFormat: Ember.computed('detectedDateFormat', function () {\n      if (navigator.language === \"en-US\") {\n        return \"MDY\";\n      } else {\n        return \"DMY\";\n      }\n    }),\n    actions: {\n      register() {\n        const user = this.get('model');\n\n        if (Ember.isPresent(user.get('captcha'))) {\n          this.register(user);\n        } else {\n          window.grecaptcha.execute();\n        }\n      },\n\n      setTimezone(timezone) {\n        this.setTimezone(timezone);\n      },\n\n      setDateFormat(value) {\n        this.setDateFormat(value);\n      },\n\n      changeFirstName(value) {\n        const workspaceName = value.currentTarget.value ? `${value.currentTarget.value}'s Workspace` : '';\n        this.get('model').set('workspaceName', workspaceName);\n      },\n\n      onCaptchaResolved(user, response) {\n        user.set('captcha', response);\n        this.register(user);\n      },\n\n      onCaptchaExpired() {\n        this.set('model.captcha', null);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/sign-up-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"T9kglMQl\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"main-content sign-up\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"container sign-up__form\\\"],[12],[10,\\\"h2\\\"],[14,0,\\\"sign-up__title\\\"],[12],[1,[30,[36,0],[\\\"sign-up.sign-up\\\"],null]],[13],[6,[37,9],[[35,4]],[[\\\"submit\\\"],[[30,[36,2],[[32,0],\\\"register\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C182) \\\"],null],\\\"firstName\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group first-child\\\",[30,[36,0],[\\\"user.first-name\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,8,[\\\"label\\\"]]],[1,[30,[36,7],[[30,[36,6],[[32,8,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C328) \\\"],null]],[[\\\"placeholder\\\",\\\"autofocus\\\",\\\"input\\\",\\\"class\\\"],[[30,[36,0],[\\\"user.first-name\\\"],null],\\\"true\\\",[30,[36,2],[[32,0],\\\"changeFirstName\\\"],null],\\\"input-lg form-control input-radiousless\\\"]]]]],\\\"parameters\\\":[8]}]]],[6,[37,7],[[30,[36,6],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C494) \\\"],null],\\\"lastName\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group\\\",[30,[36,0],[\\\"user.last-name\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,7,[\\\"label\\\"]]],[1,[30,[36,7],[[30,[36,6],[[32,7,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C626) \\\"],null]],[[\\\"placeholder\\\",\\\"class\\\"],[[30,[36,0],[\\\"user.last-name\\\"],null],\\\"input-lg form-control input-radiousless\\\"]]]]],\\\"parameters\\\":[7]}]]],[6,[37,7],[[30,[36,6],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C741) \\\"],null],\\\"email\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/email-input\\\",\\\"form-group\\\",[30,[36,0],[\\\"user.email\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,6,[\\\"label\\\"]]],[1,[30,[36,7],[[30,[36,6],[[32,6,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C872) \\\"],null]],[[\\\"placeholder\\\",\\\"autocomplete\\\",\\\"class\\\"],[[30,[36,0],[\\\"user.email\\\"],null],\\\"email\\\",\\\"input-lg form-control input-radiousless\\\"]]]]],\\\"parameters\\\":[6]}]]],[6,[37,7],[[30,[36,6],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C1004) \\\"],null],\\\"password\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/password-input\\\",\\\"form-group last-child\\\",[30,[36,0],[\\\"user.password\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,5,[\\\"label\\\"]]],[1,[30,[36,7],[[30,[36,6],[[32,5,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C1155) \\\"],null]],[[\\\"placeholder\\\",\\\"autocomplete\\\",\\\"class\\\"],[[30,[36,0],[\\\"user.password\\\"],null],\\\"new-password\\\",\\\"input-lg form-control input-radiousless\\\"]]]]],\\\"parameters\\\":[5]}]]],[6,[37,7],[[30,[36,6],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C1297) \\\"],null],\\\"workspaceName\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group\\\",[30,[36,0],[\\\"sign-up.workspace-name\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,4,[\\\"label\\\"]]],[1,[30,[36,7],[[30,[36,6],[[32,4,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C1442) \\\"],null]],[[\\\"placeholder\\\",\\\"class\\\"],[[30,[36,0],[\\\"sign-up.workspace-name\\\"],null],\\\"input-lg form-control input-radiousless\\\"]]]]],\\\"parameters\\\":[4]}]]],[6,[37,7],[[30,[36,6],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C1565) \\\"],null],\\\"timezone\\\"],[[\\\"label\\\"],[[30,[36,0],[\\\"user.timezone\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,3,[\\\"label\\\"]]],[1,[30,[36,5],null,[[\\\"currentTimezone\\\",\\\"setTimezone\\\",\\\"data-test-timezone\\\",\\\"class\\\"],[[35,4,[\\\"timezone\\\"]],[30,[36,2],[[32,0],\\\"setTimezone\\\"],null],true,\\\"input-lg custom-field ember-view form-group input-radiousless\\\"]]]]],\\\"parameters\\\":[3]}]]],[6,[37,7],[[30,[36,6],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C1839) \\\"],null],\\\"dateFormat\\\"],[[\\\"label\\\"],[[30,[36,0],[\\\"user.date-format\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"label\\\"]]],[1,[30,[36,3],null,[[\\\"setDateFormat\\\",\\\"dateFormat\\\",\\\"data-test-date-format\\\",\\\"class\\\"],[[30,[36,2],[[32,0],\\\"setDateFormat\\\"],null],[35,1],true,\\\"input-lg custom-field ember-view form-group form-selector input-radiousless\\\"]]]]],\\\"parameters\\\":[2]}]]],[1,[30,[36,7],[[30,[36,6],[[32,1,[\\\"checkbox-field\\\"]],\\\"expected `f.checkbox-field` to be a contextual component but found a string. Did you mean `(component f.checkbox-field)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C2140) \\\"],null],\\\"terms\\\"],[[\\\"label\\\",\\\"class\\\"],[[30,[36,0],[\\\"sign-up.terms\\\"],null],\\\"input-lg sign-up-terms\\\"]]]],[1,[30,[36,7],[[30,[36,6],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/sign-up-form/template.hbs' @ L1:C2225) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"sign-up.sign-up\\\"],null],\\\"btn-lg btn-block btn btn-radiusless btn-submit\\\"]]]],[1,[30,[36,8],null,[[\\\"onSuccess\\\",\\\"onExpired\\\",\\\"size\\\"],[[30,[36,2],[[32,0],\\\"onCaptchaResolved\\\",[35,4]],null],[30,[36,2],[[32,0],\\\"onCaptchaExpired\\\"],null],\\\"invisible\\\"]]]]],\\\"parameters\\\":[1]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-12 sign-up__footer text-center\\\"],[12],[10,\\\"h2\\\"],[14,0,\\\"sign-in__footer-title\\\"],[12],[1,[30,[36,0],[\\\"sign-up.already-have-account\\\"],null]],[13],[6,[37,10],null,[[\\\"data-test-log-in\\\",\\\"class\\\",\\\"route\\\"],[true,\\\"btn-lg btn btn-radiusless btn-violet btn-wide\\\",\\\"sign-in\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"sign-up.login\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"detectedDateFormat\\\",\\\"action\\\",\\\"date-format-select\\\",\\\"model\\\",\\\"timezone-select\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"g-recaptcha\\\",\\\"form-for\\\",\\\"link-to\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/sign-up-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/sticky-bar/component\", [\"exports\", \"jquery\"], function (_exports, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNames: ['sticky-bar'],\n    userNavbarTopOffset: 15,\n    mobileLastPost: 0,\n    mobileOffset: 0,\n\n    init() {\n      this._super(...arguments);\n\n      this.handleScroll = this.handleScroll.bind(this);\n      this.handleMobileScroll = this.handleMobileScroll.bind(this);\n    },\n\n    didInsertElement() {\n      this.mobileUserNavbarScroll();\n      this.desktopUserNavbarScroll();\n\n      this._super();\n    },\n\n    didRender() {\n      this._super(...arguments);\n\n      const stickyNavbar = (0, _jquery.default)(this.element);\n      this.stickyNavbarInitialPosition = stickyNavbar.offset().top;\n      this.scrollablePartHeight = (0, _jquery.default)('.navbar').height() + (0, _jquery.default)('.sticky-bar').outerHeight();\n      this.navbar = (0, _jquery.default)('.navbar');\n    },\n\n    handleScroll() {\n      const stickyUserNavbar = (0, _jquery.default)('.sticky-bar');\n\n      if (stickyUserNavbar.offset().top - this.get('userNavbarTopOffset') <= (0, _jquery.default)('.navbar').height()) {\n        stickyUserNavbar.addClass('sticky-shadow');\n      } else {\n        stickyUserNavbar.removeClass('sticky-shadow');\n      }\n    },\n\n    handleMobileScroll() {\n      const topOfScreen = (0, _jquery.default)(window).scrollTop();\n      const howMuchScrolled = topOfScreen - this.mobileLastPost;\n      /**\n       * NOTE: when user scrolls down gradually hide (pull up out of the screen [by offset]) scrollable part\n       *       but when the entire scrollable part is hidden don't pull it up anymore - we want it just outside\n       *       of the visible part of the screen\n       */\n\n      const isEntireScrollablePartHidden = this.mobileOffset + howMuchScrolled > this.scrollablePartHeight;\n\n      if (isEntireScrollablePartHidden) {\n        this.set(\"mobileOffset\", this.scrollablePartHeight);\n      } else {\n        this.set(\"mobileOffset\", this.mobileOffset + howMuchScrolled);\n      }\n      /**\n       * NOTE: when user scrolls up gradually show (pull down into the screen [by offset]) scrollable part\n       *       but when the entire scrollable part is visible don't pull it down anymore - we want it on the top\n       *       of the visible screen\n       */\n\n\n      const isEntireScrollablePartVisible = this.mobileOffset < 0 || topOfScreen < 0;\n\n      if (isEntireScrollablePartVisible) {\n        this.set(\"mobileOffset\", 0);\n      }\n\n      this.navbar.css('marginTop', -this.mobileOffset + 'px');\n      this.element.style.marginTop = `${-this.mobileOffset}px`;\n      const isStickyClassAddedForFirstTime = !this.element.classList.contains(\"sticky\");\n\n      if (topOfScreen > this.stickyNavbarInitialPosition + 150 && isStickyClassAddedForFirstTime) {\n        this.element.classList.add('sticky');\n      }\n\n      if (topOfScreen + this.navbar.height() < this.stickyNavbarInitialPosition) {\n        this.element.classList.remove('sticky');\n      }\n\n      this.set(\"mobileLastPost\", topOfScreen);\n    },\n\n    desktopUserNavbarScroll() {\n      (0, _jquery.default)('.main-content').on('scroll', this.handleScroll);\n    },\n\n    mobileUserNavbarScroll() {\n      (0, _jquery.default)(document).on('scroll', this.handleMobileScroll);\n    },\n\n    willDestroyElement() {\n      (0, _jquery.default)('.main-content').off('scroll', this.handleScroll);\n      (0, _jquery.default)(document).off('scroll', this.handleMobileScroll);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/sticky-bar/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"EaCI51Cg\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[18,1,null]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/sticky-bar/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/summary-form/component\", [\"exports\", \"web-app-ember-v2/mixins/filters-for-workspaces\", \"web-app-ember-v2/mixins/spinner\", \"web-app-ember-v2/components/summary-form/template\", \"jquery\"], function (_exports, _filtersForWorkspaces, _spinner, _template, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const {\n    escapeExpression\n  } = Ember.Handlebars.Utils;\n\n  var _default = Ember.Component.extend(_filtersForWorkspaces.default, _spinner.default, {\n    layout: _template.default,\n    sortProjects: Object.freeze(['name:asc']),\n    store: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n\n    init() {\n      const currentWorkspaceFilter = this.userPreferences.get('currentWorkspaceFilter');\n      this.set('_workspaceId', currentWorkspaceFilter.get('id'));\n      this.tributeOptions = {\n        values: this.searchForTasks.bind(this),\n        lookup: 'key',\n        fillAttr: 'value',\n        trigger: '#'\n      };\n\n      this._super(...arguments);\n    },\n\n    searchForTasks(title, done) {\n      const projectId = this.summary.get(\"project.id\");\n      if (Ember.isEmpty(projectId)) return done([]);\n      const limit = 5;\n      this.get('store').query('task', {\n        project_id: projectId,\n        limit,\n        title\n      }).then(tasks => {\n        done(tasks.toArray().map(task => {\n          let taskTitleKey = escapeExpression(task.get('title'));\n          const taskExternalIds = task.get('externalResources').mapBy('externalId').join(', ');\n\n          if (Ember.isPresent(taskExternalIds)) {\n            taskTitleKey = taskTitleKey + ` (${taskExternalIds})`;\n          }\n\n          return {\n            key: taskTitleKey,\n            value: task.get('title')\n          };\n        }));\n      });\n    },\n\n    sortedProjects: Ember.computed.sort('projectsForSelectedWorkspaceFilter', 'sortProjects'),\n    projectsForSelectedWorkspaceFilter: Ember.computed('_workspaceId', function () {\n      let projects;\n      projects = this.get('store').peekRecord('workspace', this.get('_workspaceId')).get('projects');\n      return projects.filterBy('suspended', false);\n    }),\n    selectedWorkspaceFilter: Ember.computed('_workspaceId', {\n      get() {\n        return this.get('filtersForWorkspaces').findBy('id', this.get('_workspaceId'));\n      },\n\n      set(key, value) {\n        this.set('_workspaceId', value.id);\n        return value;\n      }\n\n    }),\n    selectedProject: Ember.computed('sortedProjects', {\n      get() {\n        return this.get('summary.project');\n      },\n\n      set(key, value) {\n        this.set('summary.project', value);\n        Ember.run.next(this, function () {\n          this.get(\"summary\").validate();\n        });\n        return value;\n      }\n\n    }),\n    actions: {\n      cancel() {\n        this.cancelSummary(this.summary);\n      },\n\n      async saveSummary() {\n        const summary = this.get('summary'); //NOTE: Line required because of the Safari bug\n\n        summary.set(\"description\", (0, _jquery.default)(\"#summary-desc\").val());\n\n        if (summary.validate()) {\n          this.set(\"saveBtnDisabled\", true);\n          this.showSpinner();\n          await this.saveSummary(summary);\n          this.hideSpinner();\n          this.set(\"saveBtnDisabled\", false);\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/summary-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"obtC6s/+\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"ff\\\",\\\"project\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"summary-form\\\"],[12],[6,[37,15],[[35,10]],[[\\\"submit\\\",\\\"reset\\\",\\\"horizontal\\\"],[[30,[36,5],[[32,0],\\\"saveSummary\\\"],null],[30,[36,5],[[32,0],\\\"cancel\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,11],[\\\"workspace\\\"],[[\\\"object\\\"],[[35,10]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,5,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[1,[35,9,[\\\"name\\\"]]],[13],[13],[13]],\\\"parameters\\\":[5]}]]],[6,[37,11],[\\\"project\\\"],[[\\\"object\\\"],[[35,10]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,3,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,8],null,[[\\\"disabled\\\",\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"class\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"renderInPlace\\\"],[[35,7],[30,[36,0],[\\\"summary-form.select\\\"],null],[35,6],[35,3],\\\"form-control\\\",[30,[36,5],[[32,0],[30,[36,4],[[35,3]],null]],null],\\\"name\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,4,[\\\"name\\\"]]]],\\\"parameters\\\":[4]}]]],[1,[32,3,[\\\"errors\\\"]]],[13],[13]],\\\"parameters\\\":[3]}]]],[6,[37,13],null,[[\\\"options\\\",\\\"target\\\"],[[35,12],\\\"#summary-desc\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[30,[36,1],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/summary-form/template.hbs' @ L1:C871) \\\"],null],\\\"description\\\"],[[\\\"control\\\"],[\\\"form-controls/textarea\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[32,2,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,2,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/summary-form/template.hbs' @ L1:C1003) \\\"],null]],[[\\\"rows\\\",\\\"class\\\",\\\"id\\\"],[\\\"3\\\",\\\"ember-view form-control\\\",\\\"summary-desc\\\"]]]],[1,[32,2,[\\\"errors\\\"]]],[10,\\\"small\\\"],[12],[6,[37,2],[[30,[36,1],[[32,2,[\\\"label\\\"]],\\\"expected `ff.label` to be a contextual component but found a string. Did you mean `(component ff.label)`? ('web-app-ember-v2/components/summary-form/template.hbs' @ L1:C1097) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"summary-form.more-info\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 text-right\\\"],[12],[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"reset\\\"]],\\\"expected `f.reset` to be a contextual component but found a string. Did you mean `(component f.reset)`? ('web-app-ember-v2/components/summary-form/template.hbs' @ L1:C1257) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"time-session-form.cancel\\\"],null],\\\"btn btn-default summary-button-cancel\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/summary-form/template.hbs' @ L1:C1379) \\\"],null]],[[\\\"value\\\",\\\"class\\\",\\\"disabled\\\"],[[30,[36,0],[\\\"time-session-form.submit\\\"],null],\\\"btn btn-primary\\\",[35,14]]]]],[13],[13],[13]],\\\"parameters\\\":[1]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"selectedProject\\\",\\\"mut\\\",\\\"action\\\",\\\"sortedProjects\\\",\\\"userSuspended\\\",\\\"power-select\\\",\\\"selectedWorkspaceFilter\\\",\\\"summary\\\",\\\"form-field\\\",\\\"tributeOptions\\\",\\\"ui-tribute\\\",\\\"saveBtnDisabled\\\",\\\"form-for\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/summary-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/suspend-team-member-modal/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      close() {\n        this.set('modalOpen', false);\n      },\n\n      suspendMember() {\n        this.set('modalOpen', false);\n        Ember.run.later(() => {\n          this.updateMember();\n        }, 500);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/suspend-team-member-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"9mKYCtkS\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\"],\\\"statements\\\":[[6,[37,7],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,6],[30,[36,4],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[30,[36,2],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/suspend-team-member-modal/template.hbs' @ L1:C68) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[34,1]],[13]],\\\"parameters\\\":[]}]]],[6,[37,3],[[30,[36,2],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/suspend-team-member-modal/template.hbs' @ L1:C146) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"suspend-team-member-modal.notification\\\"],null]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,5],null,[[\\\"onClick\\\"],[[30,[36,4],[[32,0],\\\"close\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"suspend-team-member-modal.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,5],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,4],[[32,0],\\\"suspendMember\\\"],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"suspend-team-member-modal.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"headerTitle\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/suspend-team-member-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tag-labels/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    tagName: 'span',\n    sortProps: Object.freeze(['label']),\n    sortedTags: Ember.computed.sort('tags', 'sortProps')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tag-labels/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"B0NzqfHb\",\n    \"block\": \"{\\\"symbols\\\":[\\\"tag\\\"],\\\"statements\\\":[[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"#\\\"]],\\\"parameters\\\":[]}]]],[6,[37,4],[[30,[36,3],[[30,[36,3],[[35,2]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"label tag-label\\\"],[12],[1,[32,1,[\\\"label\\\"]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"withHash\\\",\\\"if\\\",\\\"sortedTags\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/tag-labels/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-badge-with-status/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    tagName: '',\n    // do not wrap in a div, it would breaks positioning of the element\n    systemIsConfigured: Ember.computed.bool('externalResource.projectSystem.externalSystem'),\n    class: Ember.computed('externalResource.state', function () {\n      const state = this.get('externalResource.state');\n\n      if (state === 'opened') {\n        return 'label label-success';\n      } else if (state === 'closed') {\n        return 'label label-default';\n      } else {\n        return 'label label-no-integration';\n      }\n    }),\n    isVisible: Ember.computed('externalResource', function () {\n      const externalResource = this.get('externalResource');\n\n      if (!externalResource) {\n        return false;\n      }\n\n      return Ember.isPresent(externalResource.get('externalUrl'));\n    }),\n    isExtraInfo: Ember.computed('externalResource.{state,status,labels}', function () {\n      return Ember.isPresent(this.get('externalResource.state') || this.get('externalResource.status') || this.get('externalResource.labels'));\n    }),\n    labelWithId: Ember.computed('externalResource.{projectSystem.label,externalId}', function () {\n      return this.get('externalResource.projectSystem.label') + ' ' + (this.get('externalResource.externalId') || '');\n    }),\n    externalResourceStatusWithDash: Ember.computed('externalResource.status', function () {\n      if (this.get('externalResource.status')) {\n        return '- ' + this.get('externalResource.status');\n      }\n    }),\n    externalResourceState: Ember.computed('externalResource.state', function () {\n      if (this.get('externalResource.state') === 'opened') {\n        return 'open';\n      }\n\n      return 'closed';\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-badge-with-status/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"pcCeo5OZ\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,9],[[35,14]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[31,[[34,11]]]],[12],[6,[37,9],[[30,[36,13],[[35,12]],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"a\\\"],[14,\\\"target\\\",\\\"_blank\\\"],[14,\\\"rel\\\",\\\"noopener noreferrer\\\"],[15,6,[34,4,[\\\"externalUrl\\\"]]],[12],[1,[30,[36,10],[[35,4,[\\\"externalUrl\\\"]]],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"a\\\"],[14,\\\"target\\\",\\\"_blank\\\"],[14,\\\"rel\\\",\\\"noopener noreferrer\\\"],[15,6,[34,4,[\\\"externalUrl\\\"]]],[12],[1,[34,0]],[2,\\\" \\\"],[1,[34,7]],[6,[37,9],[[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,6],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"task-badge-with-status-tooltip\\\"],[12],[10,\\\"span\\\"],[12],[1,[34,0]],[13],[10,\\\"span\\\"],[12],[1,[30,[36,3],[\\\"task-badge-with-status.state\\\"],[[\\\"value\\\"],[[30,[36,2],[[35,1]],null]]]]],[13],[10,\\\"span\\\"],[12],[1,[30,[36,3],[\\\"task-badge-with-status.status\\\"],[[\\\"value\\\"],[[30,[36,2],[[35,4,[\\\"status\\\"]]],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"labels\\\"],[12],[1,[30,[36,3],[\\\"task-badge-with-status.labels\\\"],null]],[1,[30,[36,5],null,[[\\\"labels\\\"],[[35,4,[\\\"labels\\\"]]]]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"labelWithId\\\",\\\"externalResourceState\\\",\\\"capitalize\\\",\\\"t\\\",\\\"externalResource\\\",\\\"external-resource-tag-label\\\",\\\"tooltip-on-element\\\",\\\"externalResourceStatusWithDash\\\",\\\"isExtraInfo\\\",\\\"if\\\",\\\"domain-name\\\",\\\"class\\\",\\\"systemIsConfigured\\\",\\\"not\\\",\\\"isVisible\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-badge-with-status/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-badge/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    tagName: '',\n    // do not wrap in a div, it would breaks positioning of the element\n    isVisible: Ember.computed('externalResource', function () {\n      const externalResource = this.get('externalResource');\n\n      if (!externalResource) {\n        return false;\n      }\n\n      return Ember.isPresent(externalResource.get('externalId') && externalResource.get('externalUrl') && externalResource.get('projectSystem.externalSystem'));\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-badge/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"9KhTJqbj\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,3],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[31,[[34,0]]]],[12],[10,\\\"a\\\"],[14,\\\"target\\\",\\\"_blank\\\"],[15,6,[34,1,[\\\"externalUrl\\\"]]],[12],[1,[35,1,[\\\"projectSystem\\\",\\\"label\\\"]]],[2,\\\" \\\"],[1,[35,1,[\\\"externalId\\\"]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"class\\\",\\\"externalResource\\\",\\\"isVisible\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-badge/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-modal-form/component\", [\"exports\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, {\n    store: Ember.inject.service(),\n    i18n: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    editMode: Ember.computed.equal('mode', 'edit'),\n    projectSystems: Ember.computed.readOnly('task.project.projectSystems'),\n    externalResources: Ember.computed.readOnly('task.externalResources'),\n    currentWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n    noValidatedAttributes: Ember.computed.and('firstValidation', 'pendingChanges'),\n    modalTitle: Ember.computed('modal', function () {\n      return this.get('i18n').t(`authenticated.tasks.modal.${this.mode}-task-title`);\n    }),\n    modalDescription: Ember.computed('modal', function () {\n      return this.get('i18n').t(`authenticated.tasks.modal.${this.mode}-task-description`);\n    }),\n    pendingChanges: Ember.computed('externalResources.@each.{externalUrl,projectSystem,externalId}', function () {\n      return this.get('externalResources').any(function (externalResource) {\n        return externalResource.get('isDirty') || externalResource.get('isNew');\n      });\n    }),\n    filteredExternalResources: Ember.computed('externalResources.[]', 'externalResourceToEdit', function () {\n      return this.get('externalResources').filter(externalResource => {\n        return externalResource !== this.get('externalResourceToEdit');\n      });\n    }),\n    projectsForSelectedWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.projects'),\n    sortProjects: Object.freeze(['name:asc']),\n    sortedProjects: Ember.computed.sort('projectsForSelectedWorkspaceFilter', 'sortProjects'),\n    selectedProjectError: null,\n\n    init() {\n      this._super(...arguments);\n\n      this.externalFormActive = this.externalFormActive || false;\n      this.externalResourceToEdit = this.externalResourceToEdit || {};\n      this.firstValidation = this.firstValidation || false;\n    },\n\n    validAndRollbackAttributes(task, valid) {\n      if (!valid && this.get('firstValidation')) {\n        this.rollbackExternalResources(task);\n      }\n\n      this.set('firstValidation', true);\n    },\n\n    rollbackExternalResources(task) {\n      task.get('externalResources').forEach(externalResource => {\n        if (!externalResource.validate()) {\n          externalResource.rollbackAttributes();\n        }\n      });\n    },\n\n    setProjectError() {\n      this.set(\"selectedProjectError\", this.get('i18n').t('authenticated.tasks.modal.project-required'));\n    },\n\n    actions: {\n      save(task) {\n        if (!task.get('project.id')) {\n          return this.setProjectError();\n        }\n\n        const valid = task.validate();\n\n        if (this.get('firstValidation') || valid) {\n          this.rollbackExternalResources(task);\n          this.set('saveBtnDisabled', true);\n          this.showSpinner();\n          this.saveTask(task).then(() => {\n            this.set('openTaskModalForm', false);\n          }).finally(() => {\n            this.set('saveBtnDisabled', false);\n            this.hideSpinner();\n          });\n        } else {\n          this.validAndRollbackAttributes(task, valid);\n        }\n      },\n\n      cancel() {\n        this.get('task').rollback();\n        this.get('externalResources').forEach(externalResource => {\n          externalResource.rollback();\n        });\n        this.set('openTaskModalForm', false);\n        const cancelAction = this.get('cancelAction');\n\n        if (typeof cancelAction === 'function') {\n          cancelAction();\n        }\n      },\n\n      addExternalResource() {\n        this.get('externalResources').createRecord();\n      },\n\n      removeExternalResource(externalResource) {\n        this.get('externalResources').removeObject(externalResource);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-modal-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"GV9sPkJN\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"f\\\",\\\"externalResource\\\",\\\"ff\\\",\\\"ff\\\",\\\"project\\\",\\\"ff\\\"],\\\"statements\\\":[[6,[37,27],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,26],[30,[36,4],[[32,0],\\\"cancel\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,8],[[30,[36,7],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/task-modal-form/template.hbs' @ L1:C77) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title report\\\"],[12],[1,[34,25]],[13]],\\\"parameters\\\":[]}]]],[6,[37,8],[[30,[36,7],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/task-modal-form/template.hbs' @ L1:C161) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[34,23]],[13],[6,[37,24],[[35,9]],[[\\\"submit\\\",\\\"reset\\\"],[[30,[36,4],[[32,0],\\\"save\\\"],null],[30,[36,4],[[32,0],\\\"cancel\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[6,[37,16],[\\\"workspace\\\"],[[\\\"object\\\"],[[35,9]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,7,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[1,[35,15,[\\\"name\\\"]]],[13],[13],[13]],\\\"parameters\\\":[7]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[6,[37,16],[\\\"project\\\"],[[\\\"object\\\"],[[35,9]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,5,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,3],[[35,14]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[1,[35,9,[\\\"project\\\",\\\"name\\\"]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,12],null,[[\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"class\\\",\\\"name\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"required\\\",\\\"renderInPlace\\\"],[[30,[36,0],[\\\"authenticated.tasks.modal.select\\\"],null],[35,11],[35,9,[\\\"project\\\"]],\\\"form-control\\\",\\\"task[project]\\\",[30,[36,4],[[32,0],[30,[36,10],[[35,9,[\\\"project\\\"]]],null]],null],\\\"name\\\",true,true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,6,[\\\"name\\\"]]]],\\\"parameters\\\":[6]}]]],[1,[34,13]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[5]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[6,[37,8],[[30,[36,7],[[32,2,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/task-modal-form/template.hbs' @ L1:C1139) \\\"],null],\\\"title\\\"],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,4,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[1,[30,[36,8],[[30,[36,7],[[32,4,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/task-modal-form/template.hbs' @ L1:C1259) \\\"],null]],[[\\\"class\\\"],[\\\"form-control\\\"]]]],[1,[32,4,[\\\"errors\\\"]]],[13],[13]],\\\"parameters\\\":[4]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"row external-url-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"external-url-title\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.modal.edit-task-external-url\\\"],null]],[13],[6,[37,19],[[30,[36,18],[[30,[36,18],[[35,17]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,6],null,[[\\\"externalResource\\\",\\\"projectSystems\\\",\\\"removeExternalResource\\\"],[[32,3],[35,5],[30,[36,4],[[32,0],\\\"removeExternalResource\\\",[32,3]],null]]]]]],\\\"parameters\\\":[3]}]]],[10,\\\"div\\\"],[14,0,\\\"add-next-external-resource\\\"],[12],[6,[37,20],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,4],[[32,0],\\\"addExternalResource\\\"],null],\\\"primary\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"glyphicon glyphicon-plus text-default add-icon\\\"],[12],[13],[1,[30,[36,0],[\\\"authenticated.tasks.modal.add-external-url\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[6,[37,3],[[35,21]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"pending-changes\\\"],[12],[6,[37,3],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-exclamation-triangle text-danger\\\"],[12],[6,[37,1],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.modal.fill-field\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[1,[30,[36,0],[\\\"authenticated.tasks.modal.pending-changes\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[1,[30,[36,8],[[30,[36,7],[[32,2,[\\\"reset\\\"]],\\\"expected `f.reset` to be a contextual component but found a string. Did you mean `(component f.reset)`? ('web-app-ember-v2/components/task-modal-form/template.hbs' @ L1:C2363) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"modal.button.cancel\\\"],null],\\\"btn btn-default\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[1,[30,[36,8],[[30,[36,7],[[32,2,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/task-modal-form/template.hbs' @ L1:C2458) \\\"],null]],[[\\\"value\\\",\\\"disabled\\\",\\\"class\\\"],[[30,[36,0],[\\\"authenticated.tasks.modal.save\\\"],null],[35,22],\\\"btn btn-success\\\"]]]],[13],[13]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"tooltip-on-element\\\",\\\"noValidatedAttributes\\\",\\\"if\\\",\\\"action\\\",\\\"projectSystems\\\",\\\"external-resource-form\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"task\\\",\\\"mut\\\",\\\"sortedProjects\\\",\\\"power-select\\\",\\\"selectedProjectError\\\",\\\"editMode\\\",\\\"currentWorkspaceFilter\\\",\\\"form-field\\\",\\\"filteredExternalResources\\\",\\\"-track-array\\\",\\\"each\\\",\\\"bs-button\\\",\\\"pendingChanges\\\",\\\"saveBtnDisabled\\\",\\\"modalDescription\\\",\\\"form-for\\\",\\\"modalTitle\\\",\\\"openTaskModalForm\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-modal-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-session-types-stats/box-session-type/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNames: ['box-session-type'],\n    showHyphen: true,\n    formatInMinutes: Ember.computed.readOnly('userPreferences.tasksDurationFormatMinutes')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-session-types-stats/box-session-type/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"slNG69iV\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"box-session-type-name text-right\\\"],[12],[1,[35,1,[\\\"name\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"box-times\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"text-right\\\"],[12],[10,\\\"span\\\"],[15,0,[31,[\\\"session-type-duration \\\",[30,[36,3],[[30,[36,2],[[35,1,[\\\"periodSummary\\\"]],0],null],\\\"hyphen\\\"],null]]]],[12],[1,[30,[36,6],[[35,1,[\\\"periodSummary\\\"]],[35,5],[35,4]],null]],[13],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-calendar\\\"],[12],[6,[37,7],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.selected-period\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"text-right duration-with-icon\\\"],[12],[10,\\\"span\\\"],[15,0,[31,[\\\"session-type-duration \\\",[30,[36,3],[[30,[36,2],[[35,1,[\\\"totalSummary\\\"]],0],null],\\\"hyphen\\\"],null]]]],[12],[1,[30,[36,6],[[35,1,[\\\"totalSummary\\\"]],[35,5],[35,4]],null]],[13],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-dashboard\\\"],[12],[6,[37,7],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.total-time-to-date\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"sessionTypeSummary\\\",\\\"eq\\\",\\\"if\\\",\\\"showHyphen\\\",\\\"formatInMinutes\\\",\\\"minutes-to-duration\\\",\\\"tooltip-on-element\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-session-types-stats/box-session-type/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-session-types-stats/component\", [\"exports\", \"web-app-ember-v2/mixins/user-permissions\", \"web-app-ember-v2/mixins/current-selectors\"], function (_exports, _userPermissions, _currentSelectors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_userPermissions.default, _currentSelectors.default, {\n    classNames: ['task-session-types-stats']\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-session-types-stats/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"w/zSHzUs\",\n    \"block\": \"{\\\"symbols\\\":[\\\"userSummary\\\",\\\"sessionTypeSummary\\\",\\\"sessionTypeSummary\\\"],\\\"statements\\\":[[6,[37,9],[[35,13,[\\\"sessionTypeSummaries\\\",\\\"total\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"user-box-stats\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-box-avatar\\\"],[12],[6,[37,7],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,6],[[35,5],[35,13,[\\\"projectId\\\"]],\\\"all\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"member-avatar clocked_out team-avatar\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-users avatar-team-logo\\\"],[12],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,3],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,12],[\\\"authenticated.tasks.team-members\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"box-stats\\\"],[12],[6,[37,11],[[30,[36,10],[[30,[36,10],[[35,13,[\\\"sessionTypeSummaries\\\",\\\"total\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"task-session-types-stats/box-session-type\\\"],[[\\\"sessionTypeSummary\\\"],[[32,3]]]]]],\\\"parameters\\\":[3]}]]],[13],[13],[6,[37,11],[[30,[36,10],[[30,[36,10],[[35,13,[\\\"sessionTypeSummaries\\\",\\\"usersSummary\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"user-box-stats\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-box-avatar\\\"],[12],[6,[37,9],[[35,8]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,7],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,6],[[35,5],[35,4],[32,1,[\\\"user\\\",\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"user\\\",\\\"status\\\"],[[32,1,[\\\"user\\\"]],[32,1,[\\\"user\\\",\\\"status\\\"]]]]]],[6,[37,3],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[[32,1,[\\\"user\\\",\\\"firstName\\\"]],\\\" \\\",[32,1,[\\\"user\\\",\\\"lastName\\\"]]],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"user\\\",\\\"status\\\"],[[32,1,[\\\"user\\\"]],[32,1,[\\\"user\\\",\\\"status\\\"]]]]]],[6,[37,3],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[[32,1,[\\\"user\\\",\\\"firstName\\\"]],\\\" \\\",[32,1,[\\\"user\\\",\\\"lastName\\\"]]],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"box-stats\\\"],[12],[6,[37,11],[[30,[36,10],[[30,[36,10],[[32,1,[\\\"summaries\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"task-session-types-stats/box-session-type\\\"],[[\\\"sessionTypeSummary\\\"],[[32,2]]]]]],\\\"parameters\\\":[2]}]]],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"component\\\",\\\"concat\\\",\\\"member-avatar\\\",\\\"tooltip-on-element\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canReadMembersActivity\\\",\\\"if\\\",\\\"-track-array\\\",\\\"each\\\",\\\"t\\\",\\\"task\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-session-types-stats/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-status-badge/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const TASK_SATE_OPENED = 'task-state--opened';\n  const TASK_SATE_CLOSED = 'task-state--closed';\n\n  var _default = Ember.Component.extend({\n    classNames: ['task-state'],\n    classNameBindings: ['statusClass'],\n    statusClass: Ember.computed('externalResource.state', function () {\n      if (this.get('externalResource.state') == 'closed') {\n        return TASK_SATE_CLOSED;\n      } else {\n        return TASK_SATE_OPENED;\n      }\n    }),\n    isVisible: Ember.computed.bool('externalResource.state')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-status-badge/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"HZN/XD3d\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,4],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"fa fa-circle\\\"],[12],[6,[37,2],null,[[\\\"side\\\"],[\\\"top\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"task-status-badge.state\\\"],null]],[1,[35,1,[\\\"state\\\"]]],[13],[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"task-status-badge.status\\\"],null]],[1,[35,1,[\\\"status\\\"]]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"externalResource\\\",\\\"tooltip-on-element\\\",\\\"isVisible\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-status-badge/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-summary-row/actions-dropdown/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    store: Ember.inject.service(),\n    classNames: ['task-menu'],\n    openTaskToMoveModal: false,\n    openTaskToMergeModal: false,\n    openTaskModalForm: false,\n    openTaskToDeleteModal: false,\n    actions: {\n      newTimeSession(task) {\n        this.get('store').findRecord('task', task.id).then(result => {\n          this.newTimeSession(result);\n        });\n      },\n\n      toggleEditTaskModal(task) {\n        return this.get('store').findRecord('task', task.id).then(result => {\n          this.set('taskToEdit', result);\n          this.toggleProperty('openTaskModalForm');\n        });\n      },\n\n      toggleMoveTaskModal(task) {\n        this.set('taskToMove', task);\n        this.toggleProperty('openTaskToMoveModal');\n      },\n\n      toggleMergeTaskModal(task) {\n        const projectId = this.get('store').peekAll('project').filterBy('name', task.projectName).get('firstObject.id');\n        this.set('taskToMerge', task);\n        this.set('taskProjectId', projectId);\n        this.toggleProperty('openTaskToMergeModal');\n      },\n\n      toggleDeleteTaskModal(task) {\n        this.set('taskToDelete', task);\n        this.toggleProperty('openTaskToDeleteModal');\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-summary-row/actions-dropdown/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"KhqIKlXT\",\n    \"block\": \"{\\\"symbols\\\":[\\\"dd\\\"],\\\"statements\\\":[[6,[37,12],null,[[\\\"delay\\\"],[\\\"0\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,11],[[30,[36,10],[[32,1,[\\\"trigger\\\"]],\\\"expected `dd.trigger` to be a contextual component but found a string. Did you mean `(component dd.trigger)`? ('web-app-ember-v2/components/task-summary-row/actions-dropdown/template.hbs' @ L1:C46) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"task-menu-trigger fa fa-ellipsis-v fa-lg\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,11],[[30,[36,10],[[32,1,[\\\"content\\\"]],\\\"expected `dd.content` to be a contextual component but found a string. Did you mean `(component dd.content)`? ('web-app-ember-v2/components/task-summary-row/actions-dropdown/template.hbs' @ L1:C132) \\\"],null]],[[\\\"class\\\"],[\\\"task-dropdown-content\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"div\\\"],[24,0,\\\"task-dropdown-item\\\"],[4,[38,5],[[32,0],\\\"newTimeSession\\\",[35,4]],null],[4,[38,5],[[32,0],[32,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-plus\\\"],[12],[13],[1,[30,[36,6],[\\\"authenticated.tasks.add-time-session\\\"],null]],[13],[11,\\\"div\\\"],[24,0,\\\"task-dropdown-item\\\"],[4,[38,5],[[32,0],\\\"toggleEditTaskModal\\\",[35,4]],null],[4,[38,5],[[32,0],[32,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-edit\\\"],[12],[13],[1,[30,[36,6],[\\\"authenticated.tasks.edit-task\\\"],null]],[13],[6,[37,8],[[30,[36,9],[[35,4,[\\\"projectName\\\"]]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"div\\\"],[24,0,\\\"task-dropdown-item\\\"],[4,[38,5],[[32,0],\\\"toggleMoveTaskModal\\\",[35,4]],null],[4,[38,5],[[32,0],[32,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-share-square-o\\\"],[12],[13],[1,[30,[36,6],[\\\"authenticated.tasks.move-task\\\"],null]],[13],[11,\\\"div\\\"],[24,0,\\\"task-dropdown-item\\\"],[4,[38,5],[[32,0],\\\"toggleMergeTaskModal\\\",[35,4]],null],[4,[38,5],[[32,0],[32,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-compress\\\"],[12],[13],[1,[30,[36,6],[\\\"authenticated.tasks.merge-task\\\"],null]],[13],[6,[37,8],[[35,7]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"div\\\"],[24,0,\\\"task-dropdown-item\\\"],[4,[38,5],[[32,0],\\\"toggleDeleteTaskModal\\\",[35,4]],null],[4,[38,5],[[32,0],[32,1,[\\\"actions\\\",\\\"close\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-remove\\\"],[12],[13],[1,[30,[36,6],[\\\"authenticated.tasks.delete-task\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]],[6,[37,8],[[35,7]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"task\\\",\\\"openTaskToDeleteModal\\\",\\\"deleteTask\\\"],[[35,2],[35,1],[30,[36,0],[\\\"deleteTask\\\"],null]]]]]],\\\"parameters\\\":[]}]]],[1,[30,[36,15],null,[[\\\"taskToMove\\\",\\\"openTaskToMoveModal\\\",\\\"moveTask\\\"],[[35,14],[35,13],[30,[36,0],[\\\"moveTask\\\"],null]]]]],[1,[30,[36,19],null,[[\\\"taskToMerge\\\",\\\"taskProjectId\\\",\\\"openTaskToMergeModal\\\",\\\"mergeTask\\\"],[[35,18],[35,17],[35,16],[30,[36,0],[\\\"mergeTask\\\"],null]]]]],[1,[30,[36,23],null,[[\\\"mode\\\",\\\"task\\\",\\\"saveTask\\\",\\\"externalSystems\\\",\\\"openTaskModalForm\\\"],[\\\"edit\\\",[35,22],[30,[36,0],[\\\"saveTask\\\"],null],[35,21],[35,20]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"openTaskToDeleteModal\\\",\\\"taskToDelete\\\",\\\"delete-task-modal\\\",\\\"task\\\",\\\"action\\\",\\\"t\\\",\\\"showDeleteTaskAction\\\",\\\"if\\\",\\\"check-if-can-merge-or-move-tasks\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"basic-dropdown-hover\\\",\\\"openTaskToMoveModal\\\",\\\"taskToMove\\\",\\\"move-task-modal-form\\\",\\\"openTaskToMergeModal\\\",\\\"taskProjectId\\\",\\\"taskToMerge\\\",\\\"merge-task-modal-form\\\",\\\"openTaskModalForm\\\",\\\"externalSystems\\\",\\\"taskToEdit\\\",\\\"task-modal-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-summary-row/actions-dropdown/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-summary-row/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"web-app-ember-v2/mixins/user-permissions\", \"web-app-ember-v2/helpers/minutes-to-duration\"], function (_exports, _currentSelectors, _userPermissions, _minutesToDuration) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, _userPermissions.default, {\n    classNames: ['task-summary-row'],\n    notTaskDetail: Ember.computed.not('taskDetail'),\n    showTaskLink: Ember.computed.and('notTaskDetail', 'canReadMembersActivity'),\n    dateRangeParams: Ember.computed.and('startDate', 'endDate'),\n    formatedSummaryDuration: Ember.computed('task', 'formatInMinutes', function () {\n      const task = this.get('task');\n\n      if (this.get('formatInMinutes')) {\n        return (0, _minutesToDuration.minutesToDuration)([task.summaryDuration, this.get('formatInMinutes')]);\n      } else {\n        if (Ember.isPresent(task.usersSummary)) {\n          let hoursWithRoundedFraction = task.usersSummary.reduce(function (memoUser, userStat) {\n            if (Ember.isPresent(userStat.weeklySummary)) {\n              return memoUser + Math.round(Math.ceil(userStat.weeklySummary / 60 * 10) / 10 * 10) / 10;\n            } else if (Ember.isPresent(userStat.dailySummary)) {\n              return memoUser + Math.round(Math.ceil(userStat.dailySummary / 60 * 10) / 10 * 10) / 10;\n            } else {\n              return memoUser + Math.round(Math.ceil(userStat.periodSummary / 60 * 10) / 10 * 10) / 10;\n            }\n          }, 0);\n          return hoursWithRoundedFraction.toFixed(1);\n        } else {\n          return (0, _minutesToDuration.minutesToDuration)([task.summaryDuration, this.get('formatInMinutes')]);\n        }\n      }\n\n      ;\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-summary-row/durations-box/component\", [\"exports\", \"web-app-ember-v2/helpers/minutes-to-duration\"], function (_exports, _minutesToDuration) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    formatInMinutes: Ember.computed.readOnly('userPreferences.tasksDurationFormatMinutes'),\n    classNameBindings: ['ongoing:ongoing-task'],\n    classNames: ['time-recorded with-border icons-on-hover'],\n    formatedTotalTime: Ember.computed('formatedSummaryDuration', 'summaryDuration', function () {\n      if (this.get('formatedSummaryDuration') != null) {\n        return this.get('formatedSummaryDuration');\n      } else {\n        return (0, _minutesToDuration.minutesToDuration)([this.get('summaryDuration'), this.get('formatInMinutes')]);\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-summary-row/durations-box/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"BpjpWCCp\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,6],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"task-duration\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"time\\\"],[12],[1,[34,3]],[13],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-refresh\\\"],[12],[6,[37,4],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[35,1]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.on-this-day\\\"],null]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.on-this-week\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"total-time\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"time\\\"],[12],[1,[30,[36,9],[[35,8],[35,7]],null]],[13],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-calendar\\\"],[12],[6,[37,4],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.selected-period\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"total-time\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"time\\\"],[12],[1,[30,[36,9],[[35,10],[35,7]],null]],[13],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-dashboard\\\"],[12],[6,[37,4],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.total-time-to-date\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"isDaily\\\",\\\"if\\\",\\\"formatedTotalTime\\\",\\\"tooltip-on-element\\\",\\\"isPeriod\\\",\\\"unless\\\",\\\"formatInMinutes\\\",\\\"periodSummaryDuration\\\",\\\"minutes-to-duration\\\",\\\"totalSummaryDuration\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-summary-row/durations-box/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-summary-row/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"HOwJhQN3\",\n    \"block\": \"{\\\"symbols\\\":[\\\"externalResource\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-xs-8 task-content\\\"],[12],[10,\\\"div\\\"],[12],[6,[37,10],[[35,11]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,10],[[35,9]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,5],null,[[\\\"class\\\",\\\"query\\\",\\\"route\\\",\\\"models\\\"],[\\\"task-link\\\",[30,[36,8],null,[[\\\"startDate\\\",\\\"endDate\\\"],[[35,7],[35,6]]]],\\\"authenticated.workspaces.show.projects.show.tasks.show\\\",[30,[36,4],[[35,3],[35,2],\\\"all\\\",[35,1,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"strong\\\"],[12],[1,[35,1,[\\\"title\\\"]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,5],null,[[\\\"class\\\",\\\"route\\\",\\\"models\\\"],[\\\"task-link\\\",\\\"authenticated.workspaces.show.projects.show.tasks.show\\\",[30,[36,4],[[35,3],[35,2],\\\"all\\\",[35,1,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"strong\\\"],[12],[1,[35,1,[\\\"title\\\"]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"strong\\\"],[12],[1,[35,1,[\\\"title\\\"]]],[13]],\\\"parameters\\\":[]}]]],[1,[30,[36,12],null,[[\\\"projectId\\\",\\\"projectName\\\"],[[35,1,[\\\"projectId\\\"]],[35,1,[\\\"projectName\\\"]]]]]],[6,[37,14],[[30,[36,13],[[30,[36,13],[[35,1,[\\\"externalResources\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],null,[[\\\"externalResource\\\"],[[32,1]]]]]],\\\"parameters\\\":[1]}]]],[1,[30,[36,15],null,[[\\\"tags\\\"],[[35,1,[\\\"tags\\\"]]]]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-4 task-summary-square\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"task-summary-time-wrapper\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-time with-icons-on-hover\\\"],[12],[1,[30,[36,17],[\\\"task-summary-row/actions-dropdown\\\"],[[\\\"task\\\",\\\"newTimeSession\\\"],[[35,1],[30,[36,16],[\\\"newTimeSession\\\"],null]]]]],[1,[30,[36,17],[\\\"task-summary-row/durations-box\\\"],[[\\\"ongoing\\\",\\\"summaryDuration\\\",\\\"formatedSummaryDuration\\\",\\\"isDaily\\\",\\\"isPeriod\\\",\\\"periodSummaryDuration\\\",\\\"totalSummaryDuration\\\",\\\"class\\\"],[[35,1,[\\\"ongoing\\\"]],[35,1,[\\\"summaryDuration\\\"]],[35,20],[35,19],[35,18],[35,1,[\\\"totalSummary\\\"]],[35,1,[\\\"totalSummarySinceStart\\\"]],\\\"task-time-summary\\\"]]]],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"task-badge-with-status\\\",\\\"task\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"endDate\\\",\\\"startDate\\\",\\\"-hash\\\",\\\"dateRangeParams\\\",\\\"if\\\",\\\"showTaskLink\\\",\\\"project-link\\\",\\\"-track-array\\\",\\\"each\\\",\\\"tag-labels\\\",\\\"route-action\\\",\\\"component\\\",\\\"isPeriod\\\",\\\"isDaily\\\",\\\"formatedSummaryDuration\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-summary-row/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-summary-row/users-summary/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"web-app-ember-v2/mixins/user-permissions\"], function (_exports, _currentSelectors, _userPermissions) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, _userPermissions.default, {\n    classNames: ['task-summary-row']\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/task-summary-row/users-summary/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"SBpjkdUB\",\n    \"block\": \"{\\\"symbols\\\":[\\\"userSummary\\\"],\\\"statements\\\":[[6,[37,14],[[30,[36,13],[[30,[36,13],[[35,12]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"user-time with-icons-on-hover\\\"],[12],[6,[37,8],[[35,7]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,6],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,5],[[35,4],[35,3],[32,1,[\\\"user\\\",\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"user\\\",\\\"status\\\"],[[32,1,[\\\"user\\\"]],[32,1,[\\\"user\\\",\\\"status\\\"]]]]]],[6,[37,2],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[[32,1,[\\\"user\\\",\\\"firstName\\\"]],\\\" \\\",[32,1,[\\\"user\\\",\\\"lastName\\\"]]],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"user\\\",\\\"status\\\"],[[32,1,[\\\"user\\\"]],[32,1,[\\\"user\\\",\\\"status\\\"]]]]]],[6,[37,2],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[[32,1,[\\\"user\\\",\\\"firstName\\\"]],\\\" \\\",[32,1,[\\\"user\\\",\\\"lastName\\\"]]],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[1,[30,[36,11],[\\\"task-summary-row/durations-box\\\"],[[\\\"ongoing\\\",\\\"isDaily\\\",\\\"isPeriod\\\",\\\"summaryDuration\\\",\\\"periodSummaryDuration\\\",\\\"totalSummaryDuration\\\"],[[32,1,[\\\"ongoing\\\"]],[35,9],[35,10],[30,[36,8],[[35,9],[32,1,[\\\"dailySummary\\\"]],[32,1,[\\\"weeklySummary\\\"]]],null],[32,1,[\\\"periodSummary\\\"]],[32,1,[\\\"totalSummary\\\"]]]]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"concat\\\",\\\"member-avatar\\\",\\\"tooltip-on-element\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canReadMembersActivity\\\",\\\"if\\\",\\\"isDaily\\\",\\\"isPeriod\\\",\\\"component\\\",\\\"usersSummary\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/task-summary-row/users-summary/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-list-item/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    tagName: 'tr',\n    actions: {\n      removeSessionType() {\n        this.removeTask(this.get('task'));\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-list-item/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"XwhUQGS5\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"td\\\"],[14,0,\\\"session-type-form-row\\\"],[12],[10,\\\"span\\\"],[12],[1,[35,0,[\\\"title\\\"]]],[13],[13],[10,\\\"td\\\"],[14,0,\\\"action-buttons-column-tbody\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"right-icon\\\"],[12],[11,\\\"a\\\"],[4,[38,1],[[32,0],\\\"removeSessionType\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-trash\\\"],[12],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"task\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/tasks-list-item/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-list/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    store: Ember.inject.service(),\n    tableVisible: Ember.computed('tasks.[]', function () {\n      return this.get('tasks').length > 0;\n    }),\n    actions: {\n      onTaskRemoved(removedTask) {\n        this.get('removeTask')(removedTask);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-list/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"lt4Sm9jX\",\n    \"block\": \"{\\\"symbols\\\":[\\\"task\\\"],\\\"statements\\\":[[6,[37,7],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"table\\\"],[14,0,\\\"table session-types-editable-table\\\"],[12],[10,\\\"thead\\\"],[12],[10,\\\"tr\\\"],[12],[10,\\\"th\\\"],[12],[1,[30,[36,2],[\\\"tasks-list.task-title\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"action-buttons-column\\\"],[12],[1,[30,[36,2],[\\\"tasks-list.actions\\\"],null]],[13],[13],[13],[10,\\\"tbody\\\"],[12],[6,[37,5],[[30,[36,4],[[30,[36,4],[[35,3]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"task\\\",\\\"removeTask\\\"],[[32,1],[30,[36,0],[[32,0],\\\"onTaskRemoved\\\",[32,1]],null]]]]]],\\\"parameters\\\":[1]}]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"tasks-list-item\\\",\\\"t\\\",\\\"tasks\\\",\\\"-track-array\\\",\\\"each\\\",\\\"tableVisible\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/tasks-list/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-summary-team/component\", [\"exports\", \"web-app-ember-v2/components/tasks-summary/component\", \"ember-group-by\", \"ember-local-storage\"], function (_exports, _component, _emberGroupBy, _emberLocalStorage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _component.default.extend({\n    summaryState: (0, _emberLocalStorage.storageFor)('summaryState'),\n    formatInMinutes: Ember.computed('userPreferences', function () {\n      return this.get('userPreferences.tasksDurationFormatMinutes');\n    }),\n    tooltipFormatInMinutes: Ember.computed.not('formatInMinutes'),\n    dayGroupedTasks: (0, _emberGroupBy.default)('tasks', 'day'),\n    weekGroupedTasks: (0, _emberGroupBy.default)('tasks', 'startDate'),\n    periodGroupedTasks: (0, _emberGroupBy.default)('tasks', 'startDate'),\n    selectedPeriod: Ember.computed.alias('summaryState.selectedPeriod'),\n    isDaily: Ember.computed.equal('selectedPeriod', 'daily'),\n    isWeekly: Ember.computed.equal('selectedPeriod', 'weekly'),\n    isPeriod: Ember.computed.equal('selectedPeriod', 'period'),\n    groupedTasks: Ember.computed('dayGroupedTasks.[]', 'weekGroupedTasks.[]', 'grouping', function () {\n      let tasks;\n\n      if (this.get('isDaily')) {\n        tasks = this.get('dayGroupedTasks');\n      } else if (this.get('isWeekly')) {\n        tasks = this.get('weekGroupedTasks');\n      } else {\n        tasks = this.get('periodGroupedTasks');\n      }\n\n      let sortedTasks = tasks.sortBy('value').reverse();\n      return sortedTasks.map(task => {\n        const sumDuration = task.items.reduce((accumulator, currentValue) => accumulator + currentValue.summaryDuration, 0);\n        let formatedTotalTime = this.formatedTotalTime(task.items, sumDuration, this.formatInMinutes);\n        return Object.assign({}, task, {\n          items: task.items.sortBy('title'),\n          totalTime: formatedTotalTime\n        });\n      });\n    }),\n\n    formatedTotalTime(tasks, totalTime, formatInMinutes) {\n      if (formatInMinutes) {\n        return minutesToDuration([totalTime, formatInMinutes]);\n      } else {\n        let totalTimeFromRows = tasks.reduce(function (memo, stat) {\n          let tasktime = Math.round(Math.ceil(stat.summaryDuration / 60 * 10) / 10 * 10) / 10;\n\n          if (Ember.isPresent(stat.usersSummary)) {\n            tasktime = stat.usersSummary.reduce(function (memoUser, userStat) {\n              if (Ember.isPresent(userStat.weeklySummary)) {\n                return memoUser + Math.round(Math.ceil(userStat.weeklySummary / 60 * 10) / 10 * 10) / 10;\n              } else if (Ember.isPresent(userStat.dailySummary)) {\n                return memoUser + Math.round(Math.ceil(userStat.dailySummary / 60 * 10) / 10 * 10) / 10;\n              } else {\n                return memoUser + Math.round(Math.ceil(userStat.periodSummary / 60 * 10) / 10 * 10) / 10;\n              }\n            }, 0);\n          }\n\n          return memo + tasktime;\n        }, 0);\n        return totalTimeFromRows.toFixed(1);\n      }\n\n      ;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-summary-team/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"q+qEDsrR\",\n    \"block\": \"{\\\"symbols\\\":[\\\"group\\\",\\\"task\\\"],\\\"statements\\\":[[6,[37,21],[[35,27]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,26],[[30,[36,25],[[30,[36,25],[[35,27]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12 no-padding-right\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row task-header-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-5 col-sm-7 col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-9\\\"],[12],[6,[37,21],[[35,10]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"period-title\\\"],[12],[1,[30,[36,22],[[32,1,[\\\"value\\\"]]],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,21],[[35,20]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"period-title\\\"],[12],[1,[30,[36,19],[[32,1,[\\\"value\\\"]]],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"period-title\\\"],[12],[2,\\\"Selected Period\\\"],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 col-right\\\"],[12],[10,\\\"h4\\\"],[14,0,\\\"time-summary\\\"],[12],[1,[32,1,[\\\"totalTime\\\"]]],[6,[37,21],[[35,23]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"download-link\\\"],[12],[11,\\\"a\\\"],[16,\\\"title\\\",[31,[[30,[36,7],[\\\"authenticated.reports.download-tooltip\\\"],null]]]],[24,0,\\\"glyphicon glyphicon-download-alt\\\"],[4,[38,18],[[32,0],\\\"showDownloadTasksReportModal\\\",[32,1]],null],[12],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,24],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,7],[\\\"authenticated.tasks.total-daily-time\\\"],[[\\\"time\\\"],[[30,[36,17],[[30,[36,16],[[32,1,[\\\"items\\\"]]],null],[35,15]],null]]]]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-lg-12 col-xs-12 no-padding-right\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"date-separator\\\"],[12],[13],[13],[13],[6,[37,26],[[30,[36,25],[[30,[36,25],[[32,1,[\\\"items\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row task-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-5 col-sm-7 col-xs-12 no-padding-right\\\"],[12],[1,[30,[36,13],null,[[\\\"startDate\\\",\\\"endDate\\\",\\\"task\\\",\\\"isDaily\\\",\\\"isPeriod\\\",\\\"moveTask\\\",\\\"mergeTask\\\",\\\"newTimeSession\\\"],[[35,12],[35,11],[32,2],[35,10],[35,9],[30,[36,8],[\\\"moveTask\\\"],null],[30,[36,8],[\\\"mergeTask\\\"],null],[30,[36,8],[\\\"newTimeSession\\\"],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-7 col-sm-5 hidden-xs no-padding-right\\\"],[12],[1,[30,[36,14],[\\\"task-summary-row/users-summary\\\"],[[\\\"usersSummary\\\",\\\"isDaily\\\",\\\"isPeriod\\\"],[[32,2,[\\\"usersSummary\\\"]],[35,10],[35,9]]]]],[13],[13]],\\\"parameters\\\":[2]}]]],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row col-md-8\\\"],[12],[10,\\\"br\\\"],[12],[13],[10,\\\"h4\\\"],[12],[1,[30,[36,7],[\\\"authenticated.tasks.no-tasks\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,21],[[35,23]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,6],null,[[\\\"modalOpen\\\",\\\"selectedUser\\\",\\\"startDate\\\",\\\"endDate\\\",\\\"roundingOptions\\\",\\\"selectedPeriod\\\",\\\"checkboxClass\\\"],[[35,5],[35,4],[35,3],[35,2],[35,1],[35,0],\\\"tasks-summary-include-external-system-with-task\\\"]]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"selectedPeriod\\\",\\\"roundingOptions\\\",\\\"tasksReportEndDate\\\",\\\"tasksReportStartDate\\\",\\\"selectedUser\\\",\\\"isDownloadTasksReportModal\\\",\\\"download-tasks-report-modal\\\",\\\"t\\\",\\\"route-action\\\",\\\"isPeriod\\\",\\\"isDaily\\\",\\\"endDate\\\",\\\"startDate\\\",\\\"task-summary-row\\\",\\\"component\\\",\\\"tooltipFormatInMinutes\\\",\\\"tasks-sum\\\",\\\"minutes-to-duration\\\",\\\"action\\\",\\\"week-format\\\",\\\"isWeekly\\\",\\\"if\\\",\\\"day-format\\\",\\\"canDownloadMemberActivity\\\",\\\"tooltip-on-element\\\",\\\"-track-array\\\",\\\"each\\\",\\\"groupedTasks\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/tasks-summary-team/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-summary/component\", [\"exports\", \"web-app-ember-v2/mixins/user-permissions\", \"web-app-ember-v2/mixins/current-selectors\", \"ember-group-by\", \"web-app-ember-v2/helpers/minutes-to-duration\", \"ember-local-storage\"], function (_exports, _userPermissions, _currentSelectors, _emberGroupBy, _minutesToDuration, _emberLocalStorage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, _userPermissions.default, {\n    store: Ember.inject.service(),\n    summaryState: (0, _emberLocalStorage.storageFor)('summaryState'),\n    isDownloadTasksReportModal: false,\n    dayGroupedTasks: (0, _emberGroupBy.default)('tasks', 'day'),\n    weekGroupedTasks: (0, _emberGroupBy.default)('tasks', 'startDate'),\n    periodGroupedTasks: (0, _emberGroupBy.default)('tasks', 'startDate'),\n    selectedPeriod: Ember.computed.alias('summaryState.selectedPeriod'),\n    isDaily: Ember.computed.equal('selectedPeriod', 'daily'),\n    isWeekly: Ember.computed.equal('selectedPeriod', 'weekly'),\n    isPeriod: Ember.computed.equal('selectedPeriod', 'period'),\n    groupedTasks: Ember.computed('dayGroupedTasks.[]', 'weekGroupedTasks.[]', 'grouping', function () {\n      let tasks;\n\n      if (this.get('isDaily')) {\n        tasks = this.get('dayGroupedTasks');\n      } else if (this.get('isWeekly')) {\n        tasks = this.get('weekGroupedTasks');\n      } else {\n        tasks = this.get('periodGroupedTasks');\n      }\n\n      let sortedTasks = tasks.sortBy('value').reverse();\n      return sortedTasks.map(task => {\n        let totalTimeFromRows = task.items.reduce(function (memo, stat) {\n          return memo + stat.summaryDuration;\n        }, 0);\n        let formatedTotalTime = this.formatedTotalTime(task.items, totalTimeFromRows, this.formatInMinutes);\n        return Object.assign({}, task, {\n          items: task.items.sortBy('title'),\n          totalTime: formatedTotalTime\n        });\n      });\n    }),\n    formatInMinutes: Ember.computed('userPreferences', function () {\n      return this.get('userPreferences.tasksDurationFormatMinutes');\n    }),\n\n    formatedTotalTime(tasks, totalTime, formatInMinutes) {\n      if (formatInMinutes) {\n        return (0, _minutesToDuration.minutesToDuration)([totalTime, formatInMinutes]);\n      } else {\n        let totalTimeFromRows = tasks.reduce(function (memo, stat) {\n          let hoursWithRoundedFraction = Math.round(Math.ceil(stat.summaryDuration / 60 * 10) / 10 * 10) / 10;\n          return memo + hoursWithRoundedFraction;\n        }, 0);\n        return totalTimeFromRows.toFixed(1);\n      }\n\n      ;\n    },\n\n    tooltipFormatInMinutes: Ember.computed.not('formatInMinutes'),\n    actions: {\n      showDownloadTasksReportModal({\n        items\n      }) {\n        const groupItem = items.firstObject;\n        let groupStartDate = null;\n        let groupEndDate = null; // day grouping\n\n        if (groupItem.day) {\n          groupStartDate = groupEndDate = groupItem.day;\n        } else {\n          // week or period grouping\n          groupStartDate = groupItem.startDate;\n          groupEndDate = groupItem.endDate;\n        }\n\n        this.set('tasksReportStartDate', groupStartDate);\n        this.set('tasksReportEndDate', groupEndDate);\n        this.set('isDownloadTasksReportModal', true);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-summary/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"UMl3dM//\",\n    \"block\": \"{\\\"symbols\\\":[\\\"group\\\",\\\"task\\\"],\\\"statements\\\":[[6,[37,20],[[35,26]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,25],[[30,[36,24],[[30,[36,24],[[35,26]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row task-header-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-5 col-xs-8\\\"],[12],[6,[37,20],[[35,10]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"period-title\\\"],[12],[1,[30,[36,21],[[32,1,[\\\"value\\\"]]],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,20],[[35,19]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"period-title\\\"],[12],[1,[30,[36,18],[[32,1,[\\\"value\\\"]]],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"period-title\\\"],[12],[2,\\\"Selected Period\\\"],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-1 col-md-offset-2 col-xs-1 col-xs-offset-3 sum-duration-col\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"sum-duration\\\"],[12],[10,\\\"h4\\\"],[14,0,\\\"date-title\\\"],[12],[1,[32,1,[\\\"totalTime\\\"]]],[6,[37,22],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,7],[\\\"authenticated.tasks.total-daily-time\\\"],[[\\\"time\\\"],[[30,[36,17],[[30,[36,16],[[32,1,[\\\"items\\\"]]],null],[35,15]],null]]]]],[13]],\\\"parameters\\\":[]}]]],[13],[6,[37,20],[[35,23]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"download-link\\\"],[12],[11,\\\"a\\\"],[16,\\\"title\\\",[31,[[30,[36,7],[\\\"authenticated.reports.download-tooltip\\\"],null]]]],[24,0,\\\"glyphicon glyphicon-download-alt\\\"],[4,[38,14],[[32,0],\\\"showDownloadTasksReportModal\\\",[32,1]],null],[12],[13],[13]],\\\"parameters\\\":[]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-md-8 col-xs-12 no-padding\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"date-separator\\\"],[12],[13],[13],[13],[6,[37,25],[[30,[36,24],[[30,[36,24],[[32,1,[\\\"items\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-8 col-sm-12 task-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[1,[30,[36,13],null,[[\\\"startDate\\\",\\\"endDate\\\",\\\"task\\\",\\\"isDaily\\\",\\\"isPeriod\\\",\\\"moveTask\\\",\\\"mergeTask\\\",\\\"newTimeSession\\\"],[[35,12],[35,11],[32,2],[35,10],[35,9],[30,[36,8],[\\\"moveTask\\\"],null],[30,[36,8],[\\\"mergeTask\\\"],null],[30,[36,8],[\\\"newTimeSession\\\"],null]]]]],[13],[13],[13]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[1]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row col-md-8\\\"],[12],[10,\\\"br\\\"],[12],[13],[10,\\\"h4\\\"],[12],[1,[30,[36,7],[\\\"authenticated.tasks.no-tasks\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,20],[[35,23]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,6],null,[[\\\"modalOpen\\\",\\\"selectedUser\\\",\\\"startDate\\\",\\\"endDate\\\",\\\"roundingOptions\\\",\\\"selectedPeriod\\\",\\\"checkboxClass\\\"],[[35,5],[35,4],[35,3],[35,2],[35,1],[35,0],\\\"tasks-summary-include-external-system-with-task\\\"]]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"selectedPeriod\\\",\\\"roundingOptions\\\",\\\"tasksReportEndDate\\\",\\\"tasksReportStartDate\\\",\\\"selectedUser\\\",\\\"isDownloadTasksReportModal\\\",\\\"download-tasks-report-modal\\\",\\\"t\\\",\\\"route-action\\\",\\\"isPeriod\\\",\\\"isDaily\\\",\\\"endDate\\\",\\\"startDate\\\",\\\"task-summary-row\\\",\\\"action\\\",\\\"tooltipFormatInMinutes\\\",\\\"tasks-sum\\\",\\\"minutes-to-duration\\\",\\\"week-format\\\",\\\"isWeekly\\\",\\\"if\\\",\\\"day-format\\\",\\\"tooltip-on-element\\\",\\\"canDownloadMemberActivity\\\",\\\"-track-array\\\",\\\"each\\\",\\\"groupedTasks\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/tasks-summary/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-without-activity/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    store: Ember.inject.service(),\n    openTaskToDeleteModal: false,\n    openTaskToMoveModal: false,\n    openTaskToMergeModal: false,\n    openTaskModalForm: false,\n    actions: {\n      toggleDeleteTaskModal(task, dropdown) {\n        dropdown.actions.close();\n        this.set('taskToDelete', task);\n        this.toggleProperty('openTaskToDeleteModal');\n      },\n\n      toggleMoveTaskModal(task, dropdown) {\n        dropdown.actions.close();\n        this.set('taskToMove', task);\n        this.toggleProperty('openTaskToMoveModal');\n      },\n\n      toggleMergeTaskModal(task, dropdown) {\n        dropdown.actions.close();\n        const projectId = this.get('store').peekAll('project').filterBy('name', task.projectName).get('firstObject.id');\n        this.set('taskToMerge', task);\n        this.set('taskProjectId', projectId);\n        this.toggleProperty('openTaskToMergeModal');\n      },\n\n      toggleEditTaskModal(task, dropdown) {\n        dropdown.actions.close();\n        return this.get('store').findRecord('task', task.id).then(result => {\n          this.toggleProperty('openTaskModalForm');\n          this.set('taskToEdit', result);\n        });\n      },\n\n      newTimeSession(task, dropdown) {\n        dropdown.actions.close();\n        this.get('store').findRecord('task', task.id).then(result => {\n          this.newTimeSession(result);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-without-activity/header/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\"], function (_exports, _currentSelectors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    actions: {\n      reloadData() {\n        this.reloadData();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-without-activity/header/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"XoGV0uVG\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row col-md-8 col-sm-12 tasks-without-activity\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"header\\\"],[12],[10,\\\"li\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"h4\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.tasks-without-activity\\\"],null]],[13],[13],[10,\\\"li\\\"],[12],[11,\\\"a\\\"],[4,[38,1],[[32,0],\\\"reloadData\\\"],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-refresh\\\"],[12],[13],[13],[13],[10,\\\"li\\\"],[12],[6,[37,6],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,5],[[35,4],[35,3],[35,2]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"authenticated.tasks.show-tasks-with-activity\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"li\\\"],[12],[6,[37,8],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,7],[\\\"newTask\\\"],null],\\\"primary\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"add-new-task-icon fa fa-plus\\\"],[12],[13],[1,[30,[36,0],[\\\"authenticated.tasks.add-new-task\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"action\\\",\\\"currentUserFilterId\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"route-action\\\",\\\"bs-button\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/tasks-without-activity/header/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tasks-without-activity/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"u+oDg4MB\",\n    \"block\": \"{\\\"symbols\\\":[\\\"task\\\",\\\"externalResource\\\"],\\\"statements\\\":[[6,[37,8],[[35,7]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,4],[[30,[36,3],[[30,[36,3],[[35,7]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-8 col-sm-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"task-summary-row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-11 col-xs-10 task-content\\\"],[12],[10,\\\"div\\\"],[12],[10,\\\"strong\\\"],[12],[1,[32,1,[\\\"title\\\"]]],[13],[1,[30,[36,2],null,[[\\\"projectId\\\",\\\"projectName\\\"],[[32,1,[\\\"projectId\\\"]],[32,1,[\\\"projectName\\\"]]]]]],[6,[37,4],[[30,[36,3],[[30,[36,3],[[32,1,[\\\"externalResources\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"externalResource\\\"],[[32,2]]]]]],\\\"parameters\\\":[2]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-1 col-xs-1 task-content\\\"],[12],[1,[30,[36,6],[\\\"task-summary-row/actions-dropdown\\\"],[[\\\"task\\\",\\\"classNames\\\",\\\"showDeleteTaskAction\\\",\\\"newTimeSession\\\"],[[32,1],\\\"visible\\\",true,[30,[36,5],[\\\"newTimeSession\\\"],null]]]]],[13],[13],[13],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row col-md-8\\\"],[12],[10,\\\"br\\\"],[12],[13],[10,\\\"h4\\\"],[12],[1,[30,[36,0],[\\\"authenticated.tasks.no-tasks\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"task-badge-with-status\\\",\\\"project-link\\\",\\\"-track-array\\\",\\\"each\\\",\\\"route-action\\\",\\\"component\\\",\\\"tasks\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/tasks-without-activity/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tether-popover-on-component\", [\"exports\", \"ember-tooltips/components/tether-popover-on-component\"], function (_exports, _tetherPopoverOnComponent) {\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 _tetherPopoverOnComponent.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/tether-popover-on-element\", [\"exports\", \"ember-tooltips/components/tether-popover-on-element\"], function (_exports, _tetherPopoverOnElement) {\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 _tetherPopoverOnElement.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/tether-tooltip-on-component\", [\"exports\", \"ember-tooltips/components/tether-tooltip-on-component\"], function (_exports, _tetherTooltipOnComponent) {\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 _tetherTooltipOnComponent.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/tether-tooltip-on-element\", [\"exports\", \"ember-tooltips/components/tether-tooltip-on-element\"], function (_exports, _tetherTooltipOnElement) {\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 _tetherTooltipOnElement.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/time-limit-bar/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNames: ['time-limit-bar'],\n    timeLimitThresholdPercentage: 80,\n    timeLimitThreshold: Ember.computed('limit.hoursLimit', function () {\n      return (this.get('limit.hoursLimit') * this.get('timeLimitThresholdPercentage') / 100).toFixed(1);\n    }),\n    usagePercentage: Ember.computed('limit.{hoursSpent,hoursLimit}', function () {\n      return Math.floor(this.get('limit.hoursSpent') / this.get('limit.hoursLimit') * 100);\n    }),\n    progressBarWidth: Ember.computed('usagePercentage', function () {\n      const usagePercentage = this.get('usagePercentage');\n      return usagePercentage <= 100 ? usagePercentage : 100;\n    }),\n    limitExceeded: Ember.computed.gt('usagePercentage', 100),\n    thresholdExceeded: Ember.computed('usagePercentage', function () {\n      return this.get('usagePercentage') > this.get('timeLimitThresholdPercentage');\n    }),\n    exceededNumber: Ember.computed('limit.{hoursSpent,hoursLimit}', function () {\n      return (this.get('limit.hoursSpent') - this.get('limit.hoursLimit')).toFixed(1);\n    }),\n    progressBarStateClass: Ember.computed('usagePercentage', function () {\n      const usagePercentage = this.get('usagePercentage');\n\n      if (usagePercentage >= 100) {\n        return 'tlb__state--limit-exceeded';\n      } else if (usagePercentage > this.get('timeLimitThresholdPercentage')) {\n        return 'tlb__state--limit-threshold-hit';\n      } else {\n        return '';\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-limit-bar/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"wDHTr1mk\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,8],[[35,7]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"tlb__threshold-indicator\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"tlb__background-text-holder\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"tlb__text-hours-spent\\\"],[12],[1,[30,[36,1],[\\\"authenticated.reports.time-limit-bar.used\\\"],[[\\\"used\\\"],[[35,3,[\\\"hoursSpent\\\"]]]]]],[6,[37,10],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,6],[\\\", \\\",[30,[36,1],[\\\"authenticated.reports.time-limit-bar.exceeding\\\"],[[\\\"exceeding\\\"],[[35,5]]]]],null]]],\\\"parameters\\\":[]}]]],[13],[6,[37,8],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"tlb__text-hours-left\\\"],[12],[1,[30,[36,1],[\\\"authenticated.reports.time-limit-bar.left\\\"],[[\\\"left\\\"],[[30,[36,4],[[35,3,[\\\"hoursSpent\\\"]],[35,3,[\\\"hoursLimit\\\"]]],null]]]]],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[15,5,[31,[\\\"width: \\\",[34,11],\\\"%;\\\"]]],[14,0,\\\"tlb__progress-visualization\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"tlb__foreground-text-holder \\\",[34,12]]]],[12],[10,\\\"div\\\"],[14,0,\\\"tlb__text-hours-spent\\\"],[12],[1,[30,[36,1],[\\\"authenticated.reports.time-limit-bar.used\\\"],[[\\\"used\\\"],[[35,3,[\\\"hoursSpent\\\"]]]]]],[6,[37,10],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,6],[\\\", \\\",[30,[36,1],[\\\"authenticated.reports.time-limit-bar.exceeding\\\"],[[\\\"exceeding\\\"],[[35,5]]]]],null]]],\\\"parameters\\\":[]}]]],[13],[6,[37,8],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"tlb__text-hours-left\\\"],[12],[1,[30,[36,1],[\\\"authenticated.reports.time-limit-bar.left\\\"],[[\\\"left\\\"],[[30,[36,4],[[35,3,[\\\"hoursSpent\\\"]],[35,3,[\\\"hoursLimit\\\"]]],null]]]]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13],[6,[37,8],[[35,7]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],[\\\"authenticated.reports.time-limit-bar.threshold\\\"],[[\\\"threshold\\\",\\\"count\\\"],[[35,0],[35,0]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"timeLimitThreshold\\\",\\\"t\\\",\\\"tooltip-on-element\\\",\\\"limit\\\",\\\"project-limit-left-time\\\",\\\"exceededNumber\\\",\\\"concat\\\",\\\"thresholdExceeded\\\",\\\"unless\\\",\\\"limitExceeded\\\",\\\"if\\\",\\\"progressBarWidth\\\",\\\"progressBarStateClass\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/time-limit-bar/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-limit-form-modal-visibility-option/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({});\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-limit-form-modal-visibility-option/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"HGWxJD4Z\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[34,0]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"option\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/time-limit-form-modal-visibility-option/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-limit-form-modal/component\", [\"exports\", \"moment\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _moment, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, {\n    i18n: Ember.inject.service(),\n    store: Ember.inject.service(),\n    sortProjects: Object.freeze(['name:asc']),\n    sortTeamMembers: Object.freeze(['fullName:asc']),\n    recurringOptions: Object.freeze(['non_recurring', 'recurring_monthly', 'recurring_weekly']),\n    visibilityRoles: Object.freeze(['PMs', 'Ext. PMs', 'Staff', 'Ext. Staff', 'Owner']),\n    aggregationTypes: Object.freeze([{\n      label: 'Project',\n      value: 'Project'\n    }, {\n      label: 'Task',\n      value: 'Task'\n    }, {\n      label: 'Team Member',\n      value: 'User'\n    }]),\n\n    init() {\n      this._super(...arguments);\n\n      this._setInitialTasksForProject();\n\n      let timeLimit = this.get('timeLimit');\n\n      if (timeLimit.get('isNew')) {\n        this.set('startedAtDate', (0, _moment.default)());\n        return;\n      }\n\n      this._setLimitablesForLimit(timeLimit);\n\n      const timeLimitVisibilities = timeLimit.get('visibility').split(', ');\n      this.get('visibilityRoleObjects').filter(role => timeLimitVisibilities.includes(role.value) && role.value != 'Owner').forEach(role => {\n        role.set('checked', true);\n        this.get('selectedVisibilityRoles').pushObject(role.label);\n      });\n    },\n\n    currentProject: Ember.computed.oneWay('userPreferences.currentProject'),\n    currentWorkspaceFilter: Ember.computed.oneWay('userPreferences.currentWorkspaceFilter'),\n    sortedProjects: Ember.computed.sort('projectsForSelectedWorkspaceFilter', 'sortProjects'),\n    sortedTeamMembers: Ember.computed.sort('timeLimit.project.users', 'sortTeamMembers'),\n    dateFormat: Ember.computed.readOnly('userPreferences.currentUser.fullDateFormat'),\n    limitableType: Ember.computed('timeLimit.timeLimitablesType', {\n      get() {\n        const timeLimitType = this.get('timeLimit.timeLimitablesType');\n        return this.get('aggregationTypes').findBy('value', timeLimitType);\n      },\n\n      set(key, type) {\n        this.set('timeLimit.timeLimitablesType', type.value);\n        return type;\n      }\n\n    }),\n    startedAtDate: Ember.computed('timeLimit.startDate', {\n      get() {\n        return this.get('timeLimit.startDate');\n      },\n\n      set(key, value) {\n        if (Ember.isPresent(value)) {\n          value = (0, _moment.default)(value).toDate();\n        }\n\n        return this.set('timeLimit.startDate', value);\n      }\n\n    }),\n    endAtDate: Ember.computed('timeLimit.endDate', {\n      get() {\n        return this.get('timeLimit.endDate');\n      },\n\n      set(key, value) {\n        if (Ember.isPresent(value)) {\n          value = (0, _moment.default)(value).toDate();\n        }\n\n        return this.set('timeLimit.endDate', value);\n      }\n\n    }),\n    dateFormatWithTime: Ember.computed('dateFormat', function () {\n      return this.get('dateFormat') + \" HH:mm\";\n    }),\n    selectedVisibilityRoles: Ember.computed(function () {\n      return [this.get('i18n').t('time-limit-form-modal.Owner')];\n    }),\n    visibilityRoleObjects: Ember.computed('visibilityRoles.[]', function () {\n      return this.get('visibilityRoles').map(role => {\n        if (role === 'Owner') {\n          return Ember.Object.create({\n            label: this.get('i18n').t('time-limit-form-modal.' + role),\n            value: role,\n            checked: true,\n            disabled: true\n          });\n        } else {\n          return Ember.Object.create({\n            label: this.get('i18n').t('time-limit-form-modal.' + role),\n            value: role,\n            checked: false\n          });\n        }\n      });\n    }),\n    projectsForSelectedWorkspaceFilter: Ember.computed(function () {\n      let projects;\n      projects = this.get('store').peekRecord('workspace', this.userPreferences.get('currentWorkspaceFilter.id')).get('projects');\n      return projects.filterBy('suspended', false);\n    }),\n    actions: {\n      toggleRoleCheck(role) {\n        if (role.checked) {\n          role.set('checked', false);\n          this.get('selectedVisibilityRoles').removeObject(role.label);\n          this.updateModelAttribiute(role.value, false);\n        } else {\n          role.set('checked', true);\n          this.get('selectedVisibilityRoles').pushObject(role.label);\n          this.updateModelAttribiute(role.value, true);\n        }\n      },\n\n      submit() {\n        this.set('timeLimit.timeLimit', this.get('timeLimit.hoursLimit') * 60);\n        this.set('saveBtnDisabled', true);\n        this.showSpinner();\n        this.saveTimeLimit(this.get('timeLimit')).finally(() => {\n          this.set('saveBtnDisabled', false);\n          this.hideSpinner();\n        });\n      },\n\n      cancel() {\n        this.cancelTimeLimitFormModal();\n      },\n\n      aggregationSelected(aggregations) {\n        this.setProperties({\n          selectedAggregations: aggregations,\n          'timeLimit.timeLimitableIds': aggregations.mapBy('id').join(','),\n          'timeLimit.timeLimitables': aggregations\n        });\n      },\n\n      searchTasks(title) {\n        const projectId = this.get('timeLimit.project.id');\n        return this.get('store').query('task', {\n          project_id: projectId,\n          title\n        });\n      }\n\n    },\n\n    resetModal() {\n      Ember.run.later(() => {\n        this.set('endAtDate', undefined);\n        this.set('startedAtDate', (0, _moment.default)());\n        this.set('selectedVisibilityRoles', [this.get('i18n').t('time-limit-form-modal.Owner')]);\n        this.get('visibilityRoleObjects').map(role => {\n          if (role.value !== 'Owner') {\n            role.set('checked', false);\n          }\n        });\n      }, 100);\n    },\n\n    updateModelAttribiute(attribiute, value) {\n      switch (attribiute) {\n        case 'PMs':\n          this.get('timeLimit').set('notifyManagers', value);\n          break;\n\n        case 'Ext. PMs':\n          this.get('timeLimit').set('notifyExtManagers', value);\n          break;\n\n        case 'Staff':\n          this.get('timeLimit').set('notifyStaff', value);\n          break;\n\n        case 'Ext. Staff':\n          this.get('timeLimit').set('notifyTeam', value);\n          break;\n      }\n    },\n\n    _setLimitablesForLimit(timeLimit) {\n      const timeLimitables = timeLimit.get('timeLimitables');\n      this.set(`selectedAggregations`, timeLimitables);\n      timeLimit.set('timeLimitableIds', timeLimitables.mapBy('id'));\n    },\n\n    _setInitialTasksForProject() {\n      const projectId = this.get('timeLimit.project.id');\n      this.get('store').query('task', {\n        project_id: projectId\n      }).then(result => {\n        this.set('tasksForPorject', result);\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-limit-form-modal/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"UKgjg+es\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"f\\\",\\\"ff\\\",\\\"role\\\",\\\"ff\\\",\\\"type\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\",\\\"ff\\\",\\\"user\\\",\\\"ff\\\",\\\"task\\\",\\\"ff\\\",\\\"type\\\",\\\"ff\\\",\\\"ff\\\",\\\"project\\\",\\\"ff\\\"],\\\"statements\\\":[[6,[37,32],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,31],[30,[36,2],[[32,0],\\\"cancel\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,13],[[30,[36,12],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/time-limit-form-modal/template.hbs' @ L1:C69) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.header\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,13],[[30,[36,12],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/time-limit-form-modal/template.hbs' @ L1:C168) \\\"],null]],[[\\\"classNames\\\"],[\\\"time-limit-form-modal-body\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"time-limit-form-modal\\\"],[12],[6,[37,30],[[35,8]],[[\\\"submit\\\",\\\"reset\\\",\\\"horizontal\\\"],[[30,[36,2],[[32,0],\\\"submit\\\"],null],[30,[36,2],[[32,0],\\\"cancel\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,21],[\\\"workspace\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.workspace\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[1,[35,26,[\\\"name\\\"]]],[13],[13],[13]],\\\"parameters\\\":[19]}]]],[6,[37,21],[\\\"project\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group required\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.project\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,5],null,[[\\\"disabled\\\",\\\"options\\\",\\\"searchField\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchEnabled\\\",\\\"class\\\",\\\"required\\\"],[[35,11],[35,25],\\\"name\\\",[35,8,[\\\"project\\\"]],[30,[36,2],[[32,0],[30,[36,9],[[35,8,[\\\"project\\\"]]],null]],null],false,\\\"form-control\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,18,[\\\"name\\\"]]]],\\\"parameters\\\":[18]}]]],[13],[13]],\\\"parameters\\\":[17]}]]],[6,[37,21],[\\\"name\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.title\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[1,[30,[36,13],[[30,[36,12],[[32,16,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/time-limit-form-modal/template.hbs' @ L1:C1268) \\\"],null]],[[\\\"rows\\\",\\\"class\\\"],[\\\"3\\\",\\\"ember-view form-control\\\"]]]],[1,[32,16,[\\\"errors\\\"]]],[13],[13]],\\\"parameters\\\":[16]}]]],[6,[37,21],[\\\"timeLimitablesType\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group required\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.aggregation\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,5],null,[[\\\"disabled\\\",\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchEnabled\\\",\\\"class\\\",\\\"required\\\"],[[35,11],[35,24],[35,23],[30,[36,2],[[32,0],[30,[36,9],[[35,23]],null]],null],false,\\\"form-control\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,15,[\\\"label\\\"]]]],\\\"parameters\\\":[15]}]]],[1,[32,14,[\\\"errors\\\"]]],[13],[13]],\\\"parameters\\\":[14]}]]],[6,[37,28],[[30,[36,27],[[35,23,[\\\"value\\\"]],\\\"Task\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,21],[\\\"timeLimitableIds\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group required\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.tasks\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,20],null,[[\\\"disabled\\\",\\\"selected\\\",\\\"options\\\",\\\"onchange\\\",\\\"search\\\",\\\"searchField\\\",\\\"class\\\",\\\"required\\\"],[[35,11],[35,19],[35,22],[30,[36,2],[[32,0],\\\"aggregationSelected\\\"],null],[30,[36,2],[[32,0],\\\"searchTasks\\\"],null],\\\"title\\\",\\\"form-control\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,13,[\\\"title\\\"]]]],\\\"parameters\\\":[13]}]]],[1,[32,12,[\\\"errors\\\"]]],[13],[13]],\\\"parameters\\\":[12]}]]]],\\\"parameters\\\":[]}]]],[6,[37,28],[[30,[36,27],[[35,23,[\\\"value\\\"]],\\\"User\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,21],[\\\"timeLimitableIds\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group required\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.team-members\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,20],null,[[\\\"disabled\\\",\\\"selected\\\",\\\"options\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"class\\\",\\\"required\\\"],[[35,11],[35,19],[35,18],[30,[36,2],[[32,0],\\\"aggregationSelected\\\"],null],\\\"fullName\\\",\\\"form-control\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,11,[\\\"fullName\\\"]]]],\\\"parameters\\\":[11]}]]],[1,[32,10,[\\\"errors\\\"]]],[13],[13]],\\\"parameters\\\":[10]}]]]],\\\"parameters\\\":[]}]]],[6,[37,21],[\\\"startedAtDate\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.start-date\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"date\\\"],[12],[1,[30,[36,16],null,[[\\\"date\\\",\\\"updateDate\\\",\\\"noIcon\\\",\\\"format\\\"],[[35,17],[30,[36,2],[[32,0],[30,[36,9],[[35,17]],null]],null],true,[35,14]]]]],[13],[13],[13]],\\\"parameters\\\":[9]}]]],[6,[37,21],[\\\"endAtDate\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.end-date\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"date\\\"],[12],[1,[30,[36,16],null,[[\\\"date\\\",\\\"updateDate\\\",\\\"noIcon\\\",\\\"format\\\"],[[35,15],[30,[36,2],[[32,0],[30,[36,9],[[35,15]],null]],null],true,[35,14]]]]],[13],[13],[13]],\\\"parameters\\\":[8]}]]],[6,[37,21],[\\\"hoursLimit\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group required\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.limit\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[1,[30,[36,13],[[30,[36,12],[[32,7,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/time-limit-form-modal/template.hbs' @ L1:C3802) \\\"],null]],[[\\\"rows\\\",\\\"class\\\"],[\\\"1\\\",\\\"ember-view form-control\\\"]]]],[1,[32,7,[\\\"errors\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-2 minutes\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.hours\\\"],null]],[13],[13]],\\\"parameters\\\":[7]}]]],[6,[37,21],[\\\"type\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group required\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.type\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,5],null,[[\\\"disabled\\\",\\\"options\\\",\\\"selected\\\",\\\"onchange\\\",\\\"searchEnabled\\\",\\\"class\\\",\\\"required\\\"],[[35,11],[35,10],[35,8,[\\\"type\\\"]],[30,[36,2],[[32,0],[30,[36,9],[[35,8,[\\\"type\\\"]]],null]],null],false,\\\"form-control\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,7],[[30,[36,6],[[32,6]],null]],null]]],\\\"parameters\\\":[6]}]]],[1,[32,5,[\\\"errors\\\"]]],[13],[13]],\\\"parameters\\\":[5]}]]],[6,[37,21],[\\\"visibility\\\"],[[\\\"object\\\"],[[35,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,1],[\\\"time-limit-form-modal.visibility\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,5],null,[[\\\"options\\\",\\\"searchEnabled\\\",\\\"searchField\\\",\\\"selectedItemComponent\\\",\\\"selected\\\",\\\"onchange\\\"],[[35,4],false,\\\"role\\\",\\\"time-limit-form-modal-visibility-option\\\",[35,3],[30,[36,2],[[32,0],\\\"toggleRoleCheck\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"visibility-role-option\\\"],[12],[1,[30,[36,0],null,[[\\\"type\\\",\\\"checked\\\"],[\\\"checkbox\\\",[32,4,[\\\"checked\\\"]]]]]],[10,\\\"div\\\"],[12],[1,[32,4,[\\\"value\\\"]]],[13],[13]],\\\"parameters\\\":[4]}]]],[1,[32,3,[\\\"errors\\\"]]],[13],[13]],\\\"parameters\\\":[3]}]]],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 text-right\\\"],[12],[1,[30,[36,13],[[30,[36,12],[[32,2,[\\\"reset\\\"]],\\\"expected `f.reset` to be a contextual component but found a string. Did you mean `(component f.reset)`? ('web-app-ember-v2/components/time-limit-form-modal/template.hbs' @ L1:C5060) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,1],[\\\"time-limit-form-modal.cancel\\\"],null],\\\"btn btn-default create-time-limit-button-cancel\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[1,[30,[36,13],[[30,[36,12],[[32,2,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/time-limit-form-modal/template.hbs' @ L1:C5196) \\\"],null]],[[\\\"value\\\",\\\"class\\\",\\\"disabled\\\"],[[30,[36,1],[\\\"time-limit-form-modal.save\\\"],null],\\\"btn btn-success\\\",[35,29]]]]],[13],[13],[13]],\\\"parameters\\\":[2]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"input\\\",\\\"t\\\",\\\"action\\\",\\\"selectedVisibilityRoles\\\",\\\"visibilityRoleObjects\\\",\\\"power-select\\\",\\\"dasherize\\\",\\\"capitalize\\\",\\\"timeLimit\\\",\\\"mut\\\",\\\"recurringOptions\\\",\\\"userSuspended\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"dateFormatWithTime\\\",\\\"endAtDate\\\",\\\"bs-datetimepicker\\\",\\\"startedAtDate\\\",\\\"sortedTeamMembers\\\",\\\"selectedAggregations\\\",\\\"power-select-multiple\\\",\\\"form-field\\\",\\\"tasksForPorject\\\",\\\"limitableType\\\",\\\"aggregationTypes\\\",\\\"sortedProjects\\\",\\\"currentWorkspaceFilter\\\",\\\"eq\\\",\\\"if\\\",\\\"saveBtnDisabled\\\",\\\"form-for\\\",\\\"modalOpen\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/time-limit-form-modal/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-limits-table/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    sortedTimeLimits: Ember.computed.sort('timeLimits.[]', 'sortProps'),\n    currentProject: Ember.computed.readOnly('userPreferences.currentProject'),\n    dateFormat: Ember.computed.readOnly('userPreferences.currentUser.fullDateFormat'),\n    currentUserId: Ember.computed.readOnly('userPreferences.currentUserFilter.id'),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    showTimeLimits: Ember.computed('currentProject', 'currentUserId', function () {\n      return Ember.isPresent(this.get('currentProject.id'));\n    }),\n\n    init() {\n      this._super(...arguments);\n\n      this.sortProps = [''];\n    },\n\n    getOppositeSortVal(currentVal) {\n      return currentVal.includes('desc') ? currentVal.split(':')[0] : `${currentVal}:desc`;\n    },\n\n    actions: {\n      openCreateTimeLimitModal() {\n        this.openCreateTimeLimitModal();\n      },\n\n      openEditTimeLimitModal(timeLimit) {\n        this.openEditTimeLimitModal(timeLimit);\n      },\n\n      openDeleteTimeLimitModal(timeLimit) {\n        this.openDeleteTimeLimitModal(timeLimit);\n      },\n\n      saveTimeLimit(timeLimit) {\n        return this.saveTimeLimit(timeLimit);\n      },\n\n      cancelTimeLimitFormModal() {\n        this.cancelTimeLimitFormModal();\n      },\n\n      setSorting(colName) {\n        const currentSort = this.sortProps.pop();\n\n        if (currentSort.includes(colName)) {\n          const oppositeVal = this.getOppositeSortVal(currentSort);\n          this.set('sortProps', [oppositeVal]);\n        } else {\n          this.set('sortProps', [colName]);\n        }\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-limits-table/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"W4EmDuzT\",\n    \"block\": \"{\\\"symbols\\\":[\\\"limit\\\",\\\"timeLimitable\\\",\\\"index\\\"],\\\"statements\\\":[[6,[37,11],[[35,26]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row project-limits-header\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-2 project-limits-header__title\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"span\\\"],[12],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/sliders-h-solid.svg\\\"],[12],[13],[13],[10,\\\"div\\\"],[14,0,\\\"project-limits-header__title--text\\\"],[12],[10,\\\"h4\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.header\\\"],null]],[13],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-3 project-limits-header__title\\\"],[12],[11,\\\"button\\\"],[24,0,\\\"btn btn-primary\\\"],[4,[38,4],[[32,0],\\\"openCreateTimeLimitModal\\\"],null],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-plus\\\"],[12],[13],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.add-limit\\\"],null]],[13],[13],[13],[6,[37,11],[[30,[36,25],[[35,24,[\\\"length\\\"]],[35,5],[35,6]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row project-limits-table\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-12 col-lg-10\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"table-responsive\\\"],[12],[10,\\\"table\\\"],[14,0,\\\"table table-hover time-limits-table\\\"],[12],[10,\\\"thead\\\"],[12],[10,\\\"tr\\\"],[12],[10,\\\"th\\\"],[15,\\\"onclick\\\",[30,[36,4],[[32,0],\\\"setSorting\\\",\\\"startDate\\\"],null]],[14,0,\\\"sortable\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.start_date\\\"],null]],[10,\\\"i\\\"],[15,0,[31,[[30,[36,23],[\\\"startDate\\\",[35,22]],null]]]],[12],[13],[13],[10,\\\"th\\\"],[15,\\\"onclick\\\",[30,[36,4],[[32,0],\\\"setSorting\\\",\\\"endDate\\\"],null]],[14,0,\\\"sortable\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.end_date\\\"],null]],[10,\\\"i\\\"],[15,0,[31,[[30,[36,23],[\\\"endDate\\\",[35,22]],null]]]],[12],[13],[13],[10,\\\"th\\\"],[15,\\\"onclick\\\",[30,[36,4],[[32,0],\\\"setSorting\\\",\\\"timeLimit\\\"],null]],[14,0,\\\"sortable\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.limit\\\"],null]],[10,\\\"i\\\"],[15,0,[31,[[30,[36,23],[\\\"timeLimit\\\",[35,22]],null]]]],[12],[13],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.usage-in-hours\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.aggregation\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.visibility\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"project-limits-recurring-icon\\\"],[12],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.title\\\"],null]],[13],[10,\\\"th\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.actions\\\"],null]],[13],[13],[13],[10,\\\"tbody\\\"],[12],[6,[37,13],[[30,[36,12],[[30,[36,12],[[35,24]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,11],[[32,1,[\\\"id\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"tr\\\"],[12],[10,\\\"td\\\"],[14,0,\\\"text-center\\\"],[12],[1,[30,[36,16],[[32,1,[\\\"startDate\\\"]],[35,15],[35,14]],null]],[13],[10,\\\"td\\\"],[14,0,\\\"text-center\\\"],[12],[1,[30,[36,16],[[32,1,[\\\"endDate\\\"]],[35,15],[35,14]],null]],[13],[10,\\\"td\\\"],[14,0,\\\"text-center\\\"],[12],[1,[30,[36,0],[\\\"authenticated.reports.time-limits.hours\\\"],[[\\\"hours\\\",\\\"count\\\"],[[32,1,[\\\"hoursLimit\\\"]],[32,1,[\\\"hoursLimit\\\"]]]]]],[13],[10,\\\"td\\\"],[14,0,\\\"text-center\\\"],[12],[1,[30,[36,17],null,[[\\\"limit\\\"],[[32,1]]]]],[13],[10,\\\"td\\\"],[14,0,\\\"text-center\\\"],[12],[1,[30,[36,18],[[32,1,[\\\"timeLimitablesType\\\"]]],null]],[6,[37,11],[[32,1,[\\\"timeLimitables\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"fa fa-info-circle\\\"],[12],[6,[37,9],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip wider-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,13],[[30,[36,12],[[30,[36,12],[[32,1,[\\\"timeLimitables\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[12],[6,[37,11],[[30,[36,10],[[32,1,[\\\"timeLimitablesType\\\"]],\\\"Task\\\"],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"title\\\"]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,11],[[30,[36,10],[[32,1,[\\\"timeLimitablesType\\\"]],\\\"User\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"fullName\\\"]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[2,3]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13],[10,\\\"td\\\"],[14,0,\\\"text-center\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"project-limits-owner\\\"],[12],[1,[30,[36,19],[[32,1,[\\\"visibility\\\"]],[32,1,[\\\"owner\\\"]]],null]],[6,[37,9],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,1,[\\\"owner\\\"]]]],\\\"parameters\\\":[]}]]],[13],[1,[30,[36,20],[[32,1,[\\\"visibility\\\"]]],null]],[13],[10,\\\"td\\\"],[14,0,\\\"text-center project-limits-recurring-icon\\\"],[12],[6,[37,11],[[30,[36,21],[[32,1,[\\\"type\\\"]],\\\"non_recurring\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-repeat\\\"],[12],[13],[6,[37,9],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,8],[[32,1,[\\\"type\\\"]]],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"td\\\"],[14,0,\\\"text-center\\\"],[12],[1,[32,1,[\\\"name\\\"]]],[13],[10,\\\"td\\\"],[14,0,\\\"text-center project-limits-actions text-nowrap\\\"],[12],[6,[37,11],[[32,1,[\\\"manage\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"span\\\"],[24,0,\\\"fa fa-pencil\\\"],[4,[38,4],[[32,0],\\\"openEditTimeLimitModal\\\",[32,1]],null],[12],[13],[11,\\\"span\\\"],[24,0,\\\"fa fa-trash-o\\\"],[4,[38,4],[[32,0],\\\"openDeleteTimeLimitModal\\\",[32,1]],null],[12],[13]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]],[13],[13],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,11],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,7],null,[[\\\"modalOpen\\\",\\\"saveTimeLimit\\\",\\\"timeLimit\\\",\\\"cancelTimeLimitFormModal\\\"],[[35,6],[30,[36,4],[[32,0],\\\"saveTimeLimit\\\"],null],[35,5],[30,[36,4],[[32,0],\\\"cancelTimeLimitFormModal\\\"],null]]]]]],\\\"parameters\\\":[]}]]],[6,[37,11],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"open\\\",\\\"onConfirm\\\",\\\"text\\\",\\\"confirm\\\",\\\"cancel\\\"],[[35,2],[35,1],[30,[36,0],[\\\"authenticated.reports.time-limits-delete-modal.text\\\"],null],[30,[36,0],[\\\"authenticated.reports.time-limits-delete-modal.delete\\\"],null],[30,[36,0],[\\\"authenticated.reports.time-limits-delete-modal.cancel\\\"],null]]]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"deleteTimeLimit\\\",\\\"showTimeLimitDeleteModal\\\",\\\"confirmation-dialog\\\",\\\"action\\\",\\\"timeLimit\\\",\\\"showTimeLimitFormModal\\\",\\\"time-limit-form-modal\\\",\\\"recurring-type\\\",\\\"tooltip-on-element\\\",\\\"eq\\\",\\\"if\\\",\\\"-track-array\\\",\\\"each\\\",\\\"currentUserTimezone\\\",\\\"dateFormat\\\",\\\"format-date\\\",\\\"time-limit-bar\\\",\\\"capitalize\\\",\\\"project-limit-visibility-owner\\\",\\\"project-limit-visibility-abbreviation\\\",\\\"not_eq\\\",\\\"sortProps\\\",\\\"get-sort-icon\\\",\\\"sortedTimeLimits\\\",\\\"check-timelimit-table\\\",\\\"showTimeLimits\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/time-limits-table/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-session-actions-dropdown/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    store: Ember.inject.service(),\n    openTaskModalForm: false,\n    taskToEdit: null,\n    actions: {\n      startStopOrDuplicate(timeSession) {\n        const isRestricted = this.get('isRestricted');\n\n        if (!isRestricted && timeSession.get('isOngoing')) {\n          this.stop(timeSession);\n        } else {\n          const timeSessionDescRequired = timeSession.get('project.projectSetting.timeSessionsDescriptionRequired');\n\n          if (timeSessionDescRequired) {\n            this.get('duplicate')({\n              focusDescription: true\n            });\n          } else {\n            this.start(timeSession);\n          }\n        }\n      },\n\n      toggleEditTaskModal(task) {\n        return this.get('store').findRecord('task', task.get(\"id\")).then(result => {\n          this.toggleProperty('openTaskModalForm');\n          this.set('taskToEdit', result);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-session-actions-dropdown/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"+B7XcVVZ\",\n    \"block\": \"{\\\"symbols\\\":[\\\"dd\\\"],\\\"statements\\\":[[6,[37,12],null,null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,9],null,[[\\\"onClick\\\"],[[30,[36,2],[[32,0],\\\"startStopOrDuplicate\\\",[35,0]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,4],[[30,[36,8],[[30,[36,7],[[35,6]],null],[35,0,[\\\"isOngoing\\\"]]],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,\\\"data-test-time-session-pause\\\",\\\"\\\"],[14,0,\\\"fa fa-pause\\\"],[12],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"span\\\"],[14,\\\"data-test-time-session-play\\\",\\\"\\\"],[14,0,\\\"fa fa-play\\\"],[12],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,11],[[30,[36,10],[[32,1,[\\\"button\\\"]],\\\"expected `dd.button` to be a contextual component but found a string. Did you mean `(component dd.button)`? ('web-app-ember-v2/components/time-session-actions-dropdown/template.hbs' @ L1:C298) \\\"],null]],[[\\\"ariaRole\\\"],[\\\"time-session-actions-dropdown\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"caret\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,11],[[30,[36,10],[[32,1,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/time-session-actions-dropdown/template.hbs' @ L1:C394) \\\"],null]],[[\\\"align\\\",\\\"class\\\"],[\\\"right\\\",\\\"time-sessions-dropdown\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"role\\\",\\\"time-session-actions-duplicate\\\"],[4,[38,2],[[32,0],[30,[36,1],[\\\"duplicate\\\",[35,0]],null]],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-files-o\\\"],[12],[13],[2,\\\"  \\\"],[1,[30,[36,3],[\\\"time-session-actions-dropdown.duplicate\\\"],null]],[13],[13],[6,[37,5],[[35,0,[\\\"lockedAt\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,4],[[35,0,[\\\"permissions\\\",\\\"edit\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"role\\\",\\\"time-session-actions-edit\\\"],[4,[38,2],[[32,0],[30,[36,1],[\\\"edit\\\",[35,0]],null]],null],[12],[11,\\\"span\\\"],[24,0,\\\"fa fa-edit\\\"],[4,[38,2],[[32,0],\\\"edit\\\",[35,0]],null],[12],[13],[2,\\\"  \\\"],[1,[30,[36,3],[\\\"time-session-actions-dropdown.edit\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,4],[[35,0,[\\\"permissions\\\",\\\"delete\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"role\\\",\\\"time-session-actions-remove\\\"],[4,[38,2],[[32,0],[30,[36,1],[\\\"confirmSessionDelete\\\",[35,0]],null]],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-remove\\\"],[12],[13],[2,\\\"  \\\"],[1,[30,[36,3],[\\\"time-session-actions-dropdown.remove\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]],[10,\\\"hr\\\"],[14,0,\\\"time-session-dd-separator\\\"],[12],[13],[10,\\\"li\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"role\\\",\\\"time-session-actions-task-edit\\\"],[4,[38,2],[[32,0],\\\"toggleEditTaskModal\\\",[35,0,[\\\"task\\\"]]],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-wrench\\\"],[12],[13],[2,\\\"  \\\"],[1,[30,[36,3],[\\\"authenticated.tasks.edit-task\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]],[1,[30,[36,16],null,[[\\\"mode\\\",\\\"task\\\",\\\"saveTask\\\",\\\"externalSystems\\\",\\\"openTaskModalForm\\\"],[\\\"edit\\\",[35,15],[30,[36,1],[\\\"saveTask\\\"],null],[35,14],[35,13]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"timeSession\\\",\\\"route-action\\\",\\\"action\\\",\\\"t\\\",\\\"if\\\",\\\"unless\\\",\\\"isRestricted\\\",\\\"not\\\",\\\"and\\\",\\\"bs-button\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"bs-dropdown\\\",\\\"openTaskModalForm\\\",\\\"externalSystems\\\",\\\"taskToEdit\\\",\\\"task-modal-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/time-session-actions-dropdown/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-session-duration/component\", [\"exports\", \"web-app-ember-v2/components/time-session-duration/template\"], function (_exports, _template) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    layout: _template.default\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-session-duration/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"iMIVp10x\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,5],[[35,4,[\\\"isOngoing\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"ongoing\\\"],[12],[1,[30,[36,2],[[35,1],[35,3]],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"time\\\"],[12],[1,[30,[36,2],[[35,1],[35,0]],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"endedAt\\\",\\\"startedAt\\\",\\\"format-duration\\\",\\\"ongoingEndedAt\\\",\\\"model\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/time-session-duration/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-session-form/component\", [\"exports\", \"web-app-ember-v2/mixins/filters-for-workspaces\", \"jquery\", \"moment\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _filtersForWorkspaces, _jquery, _moment, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, _filtersForWorkspaces.default, {\n    store: Ember.inject.service(),\n    showNotification: Ember.inject.service(),\n    newTask: null,\n    newTaskCreation: false,\n    showTagsInput: false,\n    tagsInputPlaceholder: '',\n    sortSessionTypes: Object.freeze(['name:asc']),\n    sortProjects: Object.freeze(['name:asc']),\n    currentWorkspaceSessionTypes: Ember.computed.or('setWorkspaceSessionTypes', 'workspaceSessionTypes'),\n    sessionTypes: Ember.computed.union('currentWorkspaceSessionTypes', 'projectSessionTypes'),\n    sortedSessionTypes: Ember.computed.sort('sessionTypes', 'sortSessionTypes'),\n    sortedTags: Ember.computed('filteredTags', function () {\n      return this.get(\"filteredTags\").sort(this.sortTags);\n    }),\n    filteredTags: Ember.computed.setDiff('mixedTags', 'changeset.tags'),\n    sortedProjects: Ember.computed.sort('projectsForSelectedWorkspaceFilter', 'sortProjects'),\n    dateFormat: Ember.computed.readOnly('userPreferences.currentUser.fullDateFormat'),\n    sortedProjectSystems: Ember.computed.oneWay('changeset.project.projectSystems'),\n    mixedTags: Ember.computed.union('workspaceTags', 'projectTags'),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    timeSessionSelectDisable: Ember.computed('changeset.project', 'userSuspended', function () {\n      return !this.get('changeset.project.id') || this.get('userSuspended');\n    }),\n    timeSessionSelectPlaceholder: Ember.computed('timeSessionSelectDisable', function () {\n      if (this.get('timeSessionSelectDisable')) {\n        return this.i18n.t('time-session-form.first-select-the-project');\n      } else {\n        return this.i18n.t('time-session-form.select');\n      }\n    }),\n    minDateEndedAt: Ember.computed('changeset.startedAt', function () {\n      if (this.get('changeset.startedAt')) {\n        return (0, _moment.default)(this.get('changeset.startedAt')).subtract(1, 'days').toDate();\n      } else {\n        return (0, _moment.default)().subtract(1, 'days').toDate();\n      }\n    }),\n    development: Ember.computed(function () {\n      return Ember.getOwner(this).resolveRegistration('config:environment').environment === \"development\";\n    }),\n    externalResources: Ember.computed.alias('changeset.task.externalResources'),\n    externalResourcesProjectSystem: Ember.computed('externalResources.[]', function () {\n      return this.get('externalResources').mapBy('projectSystem').toArray();\n    }),\n    projectSystems: Ember.computed.oneWay('externalResourcesProjectSystem'),\n    saveBtnDisabled: Ember.computed.or('isSubmitting', 'userSuspended'),\n\n    init() {\n      _moment.default.tz.setDefault(this.currentUserTimezone);\n\n      this.tasksForSelectedProject = this.tasksForSelectedProject || [];\n\n      if (this.get('changeset').get('isNew')) {\n        this.setProperties({\n          'changeset.startedAt': new Date(),\n          startedAtDate: (0, _moment.default)(),\n          startedAtTime: (0, _moment.default)(),\n          startedAt: (0, _moment.default)(),\n          showOngoingCheckedInput: true,\n          isNewTimeSession: true\n        });\n      } else {\n        this.setProperties({\n          startedAtDate: (0, _moment.default)(this.get('changeset.startedAt')),\n          startedAtTime: (0, _moment.default)(this.get('changeset.startedAt')),\n          startedAt: (0, _moment.default)(this.get('changeset.startedAt'))\n        });\n\n        if (Ember.isPresent(this.get('changeset.endedAt'))) {\n          this.setProperties({\n            endedAtDate: (0, _moment.default)(this.get('changeset.endedAt')),\n            endedAtTime: (0, _moment.default)(this.get('changeset.endedAt')),\n            endedAt: (0, _moment.default)(this.get('changeset.endedAt'))\n          });\n        }\n      }\n\n      const currentWorkspaceFilter = this.userPreferences.get('currentWorkspaceFilter');\n      this.set('_workspaceId', currentWorkspaceFilter.get('id'));\n      this.initHelper();\n\n      this._super();\n    },\n\n    initHelper() {\n      // Copy data to the component properties\n      // in order to avoid clearing model data trough ember-selectize\n      // when data has changed to the same object (i.e. Saving ember-data relationships).\n      this.set('_projectId', this.get('timeSession.project.id'));\n      this.set('projectTags', this.get('timeSession.project.tags'));\n      this.set('tasksForSelectedProject', this.get('tasksForSelectedProject').toArray());\n      this.setMaxDateAndScheduleUpdate();\n      this.updateSessionTypes();\n      this.updateProjectTags();\n\n      if (this.get('isNewTimeSession') && this.get('timeSession.project.id') && this.get('actionType') !== 'duplicate') {\n        this.updateTasksForSelectedProject(null, false);\n      }\n    },\n\n    didReceiveAttrs() {\n      const startedAt = this.get('timeSession.startedAt');\n      const endedAt = this.get('timeSession.endedAt');\n\n      if (Ember.isPresent(startedAt) && Ember.isEmpty(endedAt)) {\n        this.set('isOngoing', true);\n      }\n\n      this._updateDuration();\n\n      this.updateExtraTagsPermission();\n    },\n\n    startedAtSplitter: Ember.observer('startedAtTime', 'startedAtDate', function () {\n      this.set('startedAt', undefined);\n\n      if (Ember.isPresent(this.get('startedAtDate')) && Ember.isPresent(this.get('startedAtTime'))) {\n        const startedAt = (0, _moment.default)(this.get('startedAtDate')).hour(this.get('startedAtTime').hour()).minute(this.get('startedAtTime').minute()).second(this.get('startedAtTime').second());\n        this.set('startedAt', startedAt.toDate());\n      }\n    }),\n    endedAtSplitter: Ember.observer('endedAtTime', 'endedAtDate', function () {\n      this.set('endedAt', undefined);\n\n      if (Ember.isPresent(this.get('endedAtDate')) && Ember.isPresent(this.get('endedAtTime'))) {\n        const endedAt = (0, _moment.default)(this.get('endedAtDate')).hour(this.get('endedAtTime').hour()).minute(this.get('endedAtTime').minute()).second(this.get('endedAtTime').second());\n        this.set('endedAt', endedAt.toDate());\n      }\n    }),\n    setDataFromStartedAtAndEndedAt: Ember.observer('startedAt', 'endedAt', function () {\n      this.set('changedInitialStartedAtEndedAt', true);\n      const startedAt = this.get('startedAt');\n      const endedAt = this.get('endedAt');\n\n      if (Ember.isPresent(startedAt) && (Ember.isPresent(this.endedAtDate) && Ember.isEmpty(this.endedAtTime) || Ember.isEmpty(this.endedAtDate) && Ember.isPresent(this.endedAtTime)) || Ember.isPresent(endedAt) && (Ember.isPresent(this.startedAtDate) && Ember.isEmpty(this.startedAtTime) || Ember.isEmpty(this.startedAtDate) && Ember.isPresent(this.startedAtTime))) {\n        return this.set('duration', this.i18n.t('time-session-form.wrong-duration'));\n      }\n\n      if (!this.get('checkedSetTimeManually')) {\n        return;\n      }\n\n      this._updateDuration();\n    }),\n    didCheckedSetTimeMaunually: Ember.observer('checkedSetTimeManually', function () {\n      this._updateDuration(); //reset start of time session when user did check 'Set time manually' option\n\n\n      if (this.isNewTimeSession && this.checkedSetTimeManually) {\n        const now = new Date();\n        this.set('startedAtDate', (0, _moment.default)(now));\n        this.set('startedAtTime', (0, _moment.default)(now));\n        this.set('isOngoing', true);\n        this.set('changedInitialStartedAtEndedAt', false);\n      } else {\n        this.setProperties({\n          startedAtDate: (0, _moment.default)(this.get('timeSession.startedAt')),\n          startedAtTime: (0, _moment.default)(this.get('timeSession.startedAt')),\n          startedAt: (0, _moment.default)(this.get('timeSession.startedAt'))\n        });\n\n        if (this.isNewTimeSession) {\n          this.set('changedInitialStartedAtEndedAt', false);\n        }\n\n        if (Ember.isPresent(this.get('timeSession.endedAt'))) {\n          this.setProperties({\n            endedAtDate: (0, _moment.default)(this.get('timeSession.endedAt')),\n            endedAtTime: (0, _moment.default)(this.get('timeSession.endedAt')),\n            endedAt: (0, _moment.default)(this.get('timeSession.endedAt')),\n            isOngoing: false\n          });\n        } else {\n          this.set('isOngoing', true);\n        }\n\n        this._updateDuration();\n      }\n    }),\n    didCheckedIsOngoing: Ember.observer('isOngoing', function () {\n      if (!this.changeset.get('isNew')) return;\n\n      if (this.isOngoing) {\n        this.set('endedAtDate', null);\n        this.set('endedAtTime', null);\n\n        this._updateDuration();\n      } else {\n        this.set('endedAtDate', (0, _moment.default)());\n        this.set('endedAtTime', (0, _moment.default)());\n      }\n    }),\n    printTimeSessionInfo: Ember.computed('isNewTimeSession', 'checkedSetTimeManually', function () {\n      if (this.isNewTimeSession && !this.checkedSetTimeManually) {\n        return false;\n      } else {\n        return true;\n      }\n    }),\n    workspaceSuspended: Ember.computed('selectedWorkspaceFilter', 'userPreferences.currentUser', function () {\n      return this.get('userPreferences.currentUser.suspendedWorkspaces').includes(this.get('selectedWorkspaceFilter.id'));\n    }),\n    workspaceDeleted: Ember.computed('selectedWorkspaceFilter', 'userPreferences.currentUser', function () {\n      return this.get('userPreferences.currentUser.deletedWorkspaces').includes(this.get('selectedWorkspaceFilter.id'));\n    }),\n    projectSuspended: Ember.computed('timeSession.project', function () {\n      return this.get('userPreferences.currentUser.suspendedProjects').includes(this.get('timeSession.project.id'));\n    }),\n    userSuspended: Ember.computed('workspaceSuspended', 'projectSuspended', function () {\n      return this.get('workspaceSuspended') || this.get('projectSuspended') || this.get('workspaceDeleted');\n    }),\n    selectedWorkspaceFilter: Ember.computed('_workspaceId', {\n      get() {\n        return this.get('filtersForWorkspaces').findBy('id', this.get('_workspaceId'));\n      },\n\n      set(key, value) {\n        this.set('_workspaceId', value.id);\n        return value;\n      }\n\n    }),\n    selectedWorkspaceFilterDidChange: Ember.observer('selectedWorkspaceFilter', function () {\n      Ember.run.once(this, 'clearProjectIfNotInTheSelectedWorkspaceFilter');\n    }),\n    projectsForSelectedWorkspaceFilter: Ember.computed('_workspaceId', function () {\n      let projects;\n      projects = this.get('store').peekRecord('workspace', this.get('_workspaceId')).get('projects');\n      return projects.filterBy('suspended', false);\n    }),\n    ensureSelectedProjectBelongsToSelectedWorkspace: Ember.observer('projectsForSelectedWorkspaceFilter', function () {\n      const projectsIds = this.get('projectsForSelectedWorkspaceFilter').map(project => project.get('id'));\n\n      if (!projectsIds.includes(this.get('timeSession.project.id'))) {\n        this.set('_projectId', undefined);\n        this.set('timeSession.project', undefined);\n        this.set('timeSession.task', undefined);\n        this.set('timeSession.tags', []);\n      }\n    }),\n\n    validDuration() {\n      const startedAt = this.get('startedAt');\n      const endedAt = this.get('endedAt');\n\n      if (this.get('duration.string') === this.i18n.t('time-session-form.wrong-duration').string) {\n        return false;\n      }\n\n      if (!startedAt && endedAt) {\n        return false;\n      }\n\n      if (Ember.isPresent(startedAt) && Ember.isEmpty(endedAt) && this.get('isOngoing')) {\n        return true;\n      }\n\n      const durationInMinutes = this.calculateDuration(startedAt, endedAt)[0];\n\n      if (0 > durationInMinutes || durationInMinutes > 24 * 60) {\n        return false;\n      }\n\n      return true;\n    },\n\n    calculateDuration(startedAt, endedAt) {\n      const durationInMinutes = Math.floor(((0, _moment.default)(new Date(endedAt)).startOf('minute') - (0, _moment.default)(new Date(startedAt)).startOf('minute')) / (60 * 1000));\n      const hours = Math.floor(durationInMinutes / 60);\n      const minutes = durationInMinutes % 60;\n      return [durationInMinutes, hours, minutes];\n    },\n\n    clearProjectIfNotInTheSelectedWorkspaceFilter() {\n      if (Ember.isEqual(this.get('selectedWorkspaceFilter.id'), 'All')) {\n        return;\n      }\n\n      const projectsIdsForSelectedWorkspaceFilter = this.get('store').peekRecord('workspace', this.get('selectedWorkspaceFilter.id')).get('projects').mapBy('id');\n\n      if (!projectsIdsForSelectedWorkspaceFilter.includes(this.get('timeSession.project.id'))) {\n        this.set('timeSession.project', null);\n      }\n    },\n\n    timerFormat: function (num, size) {\n      let format = Math.round(num) + \"\";\n\n      if (format.length < size) {\n        format = \"0\" + format;\n      }\n\n      return format;\n    },\n    projectDidChange: Ember.observer('changeset.project', function () {\n      Ember.run.once(this, () => {\n        const newProjectId = this.get('changeset.project.id');\n\n        if (Ember.isEmpty(newProjectId) && Ember.isPresent(this._projectId)) {\n          const _project = this.get('store').peekRecord('project', this.get('_projectId'));\n\n          if (Ember.isPresent(_project)) {\n            this.set('changeset.project', _project);\n          }\n        } else if (Ember.isPresent(newProjectId) && this.get('_projectId') !== newProjectId) {\n          this.set('tasksForSelectedProject', []);\n          this.set('projectTags', []);\n          this.set('_projectId', newProjectId);\n        }\n\n        if (!this.get('timeSession').get('canceled')) {\n          // Trigger validation msg for empty session type field\n          const sessionTypeNotSelected = Ember.isEmpty(this.get('changeset.sessionType.id'));\n\n          if (sessionTypeNotSelected) {\n            this.set('changeset.sessionType', null);\n          }\n\n          this.clearProjectSpecificSessionType();\n          this.clearTags();\n          this.updateTasksForSelectedProject();\n          this.updateSessionTypes();\n          this.clearSessionTypeIfWorkspaceSessionTypesNotAllowed();\n          this.updateProjectTags();\n          this.updateExtraTagsPermission();\n        }\n\n        this.get('timeSession').set('canceled', false);\n      });\n    }),\n\n    updateTasksForSelectedProject(title = null, reset = true) {\n      if (this.get('newTaskCreation')) {\n        this.set('newTaskCreation', false);\n        return;\n      }\n\n      const changeset = this.get('changeset');\n\n      if (reset) {\n        changeset.set('task', null);\n      }\n\n      const projectId = changeset.get('project.id');\n\n      if (projectId) {\n        const limit = 50;\n        this.get('store').query('task', {\n          project_id: projectId,\n          limit,\n          title\n        }).then(tasks => {\n          if (!(this.get('isDestroyed') || this.get('isDestroying'))) {\n            this.set('tasksForSelectedProject', tasks.toArray());\n          }\n        });\n      } else {\n        this.set('tasksForSelectedProject', []);\n      }\n    },\n\n    // NOTE: Should be called for previous project's session types\n    clearProjectSpecificSessionType() {\n      const projectSessionTypesRelation = this.get(\"projectSessionTypes\");\n      if (Ember.isEmpty(projectSessionTypesRelation)) return;\n      projectSessionTypesRelation.then(projectSessionTypes => {\n        const changeset = this.get('changeset');\n        const selectedSessionTypeIsProjectSpecific = projectSessionTypes.find(projectSessionType => changeset.get(\"sessionType.id\") === projectSessionType.id);\n\n        if (selectedSessionTypeIsProjectSpecific) {\n          changeset.set('sessionType', null);\n        }\n      });\n    },\n\n    clearSessionTypeIfWorkspaceSessionTypesNotAllowed() {\n      const changeset = this.get('changeset');\n      const project = changeset.get('project');\n\n      if (project.get('projectSetting.onlyProjectSessionTypes')) {\n        changeset.set('sessionType', null);\n      }\n    },\n\n    updateSessionTypes() {\n      const changeset = this.get('changeset');\n      const project = changeset.get('project');\n\n      if (project.get('id')) {\n        this.set('projectSessionTypes', this.get('store').query('session-type', {\n          projectId: project.get('id')\n        }));\n      }\n\n      if (project.get('projectSetting.onlyProjectSessionTypes')) {\n        this.set('currentWorkspaceSessionTypes', []);\n      } else if (project.get('originWorkspaceId')) {\n        this.set('currentWorkspaceSessionTypes', this.get('store').query('session-type', {\n          workspaceId: project.get('originWorkspaceId')\n        }));\n      } else {\n        this.set('currentWorkspaceSessionTypes', this.get('workspaceSessionTypes'));\n      }\n    },\n\n    updateProjectTags() {\n      const changeset = this.get('changeset');\n      const project = changeset.get('project');\n\n      if (project) {\n        this.set('projectTags', project.get('tags'));\n      } else {\n        this.set('projectTags', []);\n      }\n\n      if (project.get('projectSetting.onlyProjectTags')) {\n        this.set('workspaceTags', []);\n      } else {\n        this.set('currentWorkspaceSessionTypes', this.get('workspaceSessionTypes'));\n      }\n    },\n\n    updateExtraTagsPermission() {\n      const extraTagsAllowed = this.get('changeset.project.projectSetting.extraTags');\n      const projectTagsPresent = this.projectTags && (this.projectTags.content || []).length > 0;\n      const workspaceTagsPresent = this.getWithDefault('workspaceTags.length', 0) > 0;\n\n      if (extraTagsAllowed) {\n        this.set('tagsInputPlaceholder', this.get('i18n').t('time-session-form.select-with-create'));\n      } else {\n        this.set('tagsInputPlaceholder', this.get('i18n').t('time-session-form.select'));\n      }\n\n      const showTagsInput = extraTagsAllowed || projectTagsPresent || workspaceTagsPresent;\n      this.set('showTagsInput', showTagsInput);\n    },\n\n    clearTags() {\n      const changeset = this.get('changeset');\n      changeset.set('tags', []);\n    },\n\n    setMaxDateAndScheduleUpdate() {\n      this.set('maxDate', (0, _moment.default)().toDate());\n      const self = this;\n\n      if (!Ember.testing) {\n        const delay = 60 - (0, _moment.default)().format('ss');\n        const scheduledDateTimeUpdate = Ember.run.later(function () {\n          self.setMaxDateAndScheduleUpdate();\n        }, delay * 1000);\n        this.set('scheduledDateTimeUpdate', scheduledDateTimeUpdate);\n      }\n    },\n\n    willDestroy() {\n      this._super();\n\n      const scheduledDateTimeUpdate = this.get('scheduledDateTimeUpdate');\n\n      if (scheduledDateTimeUpdate) {\n        Ember.run.cancel(scheduledDateTimeUpdate);\n      }\n\n      if (this.get('store').peekAll('task').filterBy('id', null).get('firstObject')) {\n        this.get('store').peekAll('task').filterBy('id', null).get('firstObject').destroyRecord();\n      }\n    },\n\n    errors: Ember.computed.readOnly('changeset.errors'),\n    overlappingErrors: Ember.computed.filterBy('errors', 'key', 'overlapping'),\n    overlappingTimeSessions: Ember.computed('overlappingErrors', function () {\n      return this.getWithDefault('overlappingErrors', []).map(error => error.validation).slice(0, 3);\n    }),\n\n    sortTags(prevTag, nextTag) {\n      if (nextTag.get(\"shortlisted\")) return 1;\n      return prevTag.get(\"label\").localeCompare(nextTag.get(\"label\"));\n    },\n\n    performTasksSearch(title, resolve) {\n      const projectId = this.get('changeset.project.id');\n      resolve(this.get('store').query('task', {\n        project_id: projectId,\n        title\n      }));\n    },\n\n    actions: {\n      selectedTagsChanged(tags) {\n        this.set(\"changeset.tags\", tags);\n      },\n\n      changeProject(selectedProject) {\n        this.set('changeset.project', selectedProject); // NOTE: Trigger description validator\n\n        this.set('changeset.description', this.get('changeset.description'));\n      },\n\n      showCreateTagOption(value) {\n        const existingOption = this.projectTags.findBy('label', value);\n        const extraTagsAllowed = this.get('changeset.project.projectSetting.extraTags');\n        return extraTagsAllowed && Ember.isEmpty(existingOption);\n      },\n\n      customSuggestion(term) {\n        return `Add ${term}...`;\n      },\n\n      cancel(changeset) {\n        changeset.rollback();\n        this.cancelTimeSession();\n      },\n\n      saveTimeSession(timeSessionChangeset) {\n        if (!this.validDuration()) {\n          return this.showNotification.call('error', this.i18n.t('time-session-form.wrong-duration'));\n        }\n\n        if (!this.changedInitialStartedAtEndedAt && this.isNewTimeSession) {\n          timeSessionChangeset.set('startedAt', null);\n        } else if (this.get('startedAt')) {\n          timeSessionChangeset.set('startedAt', (0, _moment.default)(this.get('startedAt')).toDate());\n        }\n\n        if (this.get('endedAt') && !this.get('isOngoing')) {\n          timeSessionChangeset.set('endedAt', (0, _moment.default)(this.get('endedAt')).toDate());\n        } else {\n          timeSessionChangeset.set('endedAt', null);\n        }\n\n        if (this.get('overlappingErrors')) {\n          timeSessionChangeset.set('overlapping', null);\n        }\n\n        timeSessionChangeset.validate().then(() => {\n          if (timeSessionChangeset.get('isValid')) {\n            this.set(\"isSubmitting\", true);\n            this.showSpinner();\n            this.newTimeSession(timeSessionChangeset).finally(() => {\n              this.set(\"isSubmitting\", false);\n              this.hideSpinner();\n            });\n          }\n        });\n      },\n\n      newTask(newTaskTitle) {\n        this.set('newTaskCreation', true);\n        const newTaskParams = {\n          title: newTaskTitle,\n          project: this.get('timeSession.project')\n        };\n        const newTask = this.get('store').createRecord('task', newTaskParams);\n        this.get('tasksForSelectedProject').pushObject(newTask);\n        const timeSession = this.get('timeSession');\n        Ember.run.later(function () {\n          timeSession.set('task', newTask);\n        }, 50);\n      },\n\n      setStartedAtTime(value) {\n        if (Ember.isPresent(value)) {\n          this.set('startedAtTime', (0, _moment.default)(value.utc().format()));\n        }\n      },\n\n      setStartedAtDate(value) {\n        if (Ember.isPresent(value)) {\n          this.set('startedAtDate', (0, _moment.default)(value.utc().format()));\n        }\n      },\n\n      setEndedAtTime(value) {\n        if (Ember.isPresent(value)) {\n          this.set('endedAtTime', (0, _moment.default)(value.utc().format()));\n        }\n      },\n\n      setEndedAtDate(value) {\n        if (Ember.isPresent(value)) {\n          this.set('endedAtDate', (0, _moment.default)(value.utc().format()));\n        }\n      },\n\n      // invoked by datetimepicker on duration input, to update endedAt when duration changed\n      updateEndedAt(duration) {\n        const duration_data_picker = (0, _jquery.default)('.duration-output .bootstrap-datetimepicker-widget');\n\n        if (duration_data_picker.length) {\n          let startedAtDate = (0, _moment.default)(new Date(this.get('startedAtDate')));\n          let startedAtTime = (0, _moment.default)(new Date(this.get('startedAtTime')));\n          let hours = duration.hours();\n          let minutes = duration.minutes();\n          startedAtDate.add(hours, 'hour');\n          startedAtDate.add(minutes, 'minute');\n          startedAtTime.add(hours, 'hour');\n          startedAtTime.add(minutes, 'minute');\n          this.set('endedAtDate', startedAtDate);\n          this.set('endedAtTime', startedAtTime);\n        }\n      },\n\n      addExternalResource(changeset) {\n        changeset.get('task.externalResources').createRecord();\n      },\n\n      removeExternalResource(changeset, externalResource) {\n        changeset.get('task.externalResources').removeObject(externalResource);\n      },\n\n      changeExternalRosource(index, externalResource, projectSystem) {\n        let changeset = this.get('changeset');\n        changeset.set(`task.externalResources.objectAt(${index}).projectSystem`, projectSystem);\n        const projectSystems = this.get('projectSystems').toArray();\n        this.set('projectSystems', projectSystems.replace(index, 1, [projectSystem]));\n      },\n\n      externalIdChanged(index, externalId) {\n        let changeset = this.get('changeset');\n        changeset.set(`task.externalResources.objectAt(${index}).externalId`, externalId);\n        this.set('externalResourceSystem', externalId);\n      },\n\n      externalResourceId(index) {\n        let changeset = this.get('changeset');\n        changeset.get(`task.externalResources.objectAt(${index}).externalId`);\n      },\n\n      searchTasks(title) {\n        return new Ember.RSVP.Promise(resolve => {\n          Ember.run.debounce(this, this.performTasksSearch, title, resolve, 300);\n        });\n      },\n\n      createTask(newTaskTitle) {\n        this.set('newTaskCreation', true);\n        const changeset = this.get('changeset');\n        const newTask = this.get('store').createRecord('task', {\n          title: newTaskTitle,\n          project: changeset.get('project')\n        });\n        changeset.set('task', newTask);\n        this.get('tasksForSelectedProject').pushObject(newTask);\n      },\n\n      createTag(tagLabel) {\n        const changeset = this.get('changeset');\n        const newTag = this.get('store').createRecord('tag', {\n          label: tagLabel,\n          project: changeset.get('project')\n        });\n        changeset.get('tags').pushObject(newTag);\n      }\n\n    },\n    externalResourceSystem: Ember.computed.oneWay('externalResources.firstObject.projectSystem'),\n\n    _updateDuration() {\n      const startedAt = this.get('startedAt');\n      const endedAt = this.getWithDefault('endedAt', new Date());\n      const [durationInMinutes, hours, minutes] = this.calculateDuration(startedAt, endedAt);\n      const duration_data_picker = (0, _jquery.default)('.duration-output .bootstrap-datetimepicker-widget');\n      const formattedTime = this.timerFormat(hours, 2) + \":\" + this.timerFormat(minutes, 2); // DOM element -> 'duration_data_picker' is used to determine if duration input is in edit mode\n      // When duration input is changed by datetimepicker, the endedAt is recalculated and updated,\n      // but any changes on endedAt will trigger update on duration, duration changes will update endedAt,\n      // loop exists, to stop it\n      // update on duration is skipped when duration input is in edit mode.\n\n      if (!duration_data_picker.length) {\n        if (0 <= durationInMinutes && durationInMinutes < 24 * 60) {\n          this.set('isDisabledDurationInput', false);\n          this.set('duration', formattedTime);\n        } // fix for long lasted durations, duration input disabled, otherwise is error\n        // max time setting in duration input is limited to 24h by datetimepicker\n        else if (durationInMinutes > 24 * 60) {\n            this.set('isDisabledDurationInput', true);\n            this.set('duration', formattedTime);\n          } else {\n            if (this.checkedSetTimeManually) {\n              this.set('isDisabledDurationInput', true);\n              this.set('duration', '00:00');\n            } else {\n              this.set('duration', this.i18n.t('time-session-form.wrong-duration'));\n            }\n          }\n      }\n\n      if (this.isOngoing) {\n        this.set('isDisabledDurationInput', true);\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-session-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"APbmZ5L0\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"session\\\",\\\"ff\\\",\\\"ff\\\",\\\"tag\\\",\\\"ff\\\",\\\"sessionType\\\",\\\"externalResource\\\",\\\"index\\\",\\\"ff\\\",\\\"projectSystem\\\",\\\"ff\\\",\\\"ff\\\",\\\"task\\\",\\\"ff\\\",\\\"project\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"time-session-form\\\"],[12],[6,[37,50],[[35,6]],[[\\\"submit\\\",\\\"reset\\\",\\\"horizontal\\\"],[[30,[36,14],[[32,0],\\\"saveTimeSession\\\"],null],[30,[36,14],[[32,0],\\\"cancel\\\",[35,6]],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,41],[\\\"workspace\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,17,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[1,[35,46,[\\\"name\\\"]]],[13],[13],[13]],\\\"parameters\\\":[17]}]]],[6,[37,41],[\\\"project\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,15,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,34],null,[[\\\"disabled\\\",\\\"options\\\",\\\"selected\\\",\\\"searchField\\\",\\\"placeholder\\\",\\\"onchange\\\",\\\"renderInPlace\\\"],[[35,27],[35,45],[35,6,[\\\"project\\\"]],\\\"name\\\",[30,[36,0],[\\\"time-session-form.select\\\"],null],[30,[36,14],[[32,0],\\\"changeProject\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,16,[\\\"name\\\"]]]],\\\"parameters\\\":[16]}]]],[10,\\\"span\\\"],[14,0,\\\"changset-error\\\"],[12],[1,[35,6,[\\\"error\\\",\\\"project\\\",\\\"validation\\\"]]],[13],[13],[13]],\\\"parameters\\\":[15]}]]],[6,[37,41],[\\\"task\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,13,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,43],null,[[\\\"disabled\\\",\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"search\\\",\\\"oncreate\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"showCreatePosition\\\",\\\"renderInPlace\\\"],[[35,33],[35,32],[35,42],[35,6,[\\\"task\\\"]],[30,[36,14],[[32,0],\\\"searchTasks\\\"],null],[30,[36,14],[[32,0],\\\"createTask\\\"],null],[30,[36,14],[[32,0],[30,[36,30],[[35,6,[\\\"task\\\"]]],null]],null],\\\"title\\\",\\\"bottom\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,14,[\\\"title\\\"]]]],\\\"parameters\\\":[14]}]]],[10,\\\"span\\\"],[14,0,\\\"changset-error\\\"],[12],[1,[35,6,[\\\"error\\\",\\\"task\\\",\\\"validation\\\"]]],[13],[6,[37,9],[[35,44]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,9],[[35,6,[\\\"task\\\",\\\"isNew\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"new-task-text\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.task-will-be-created\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[13]}]]],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.external-resources.external-url\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,3],[[30,[36,2],[[30,[36,2],[[35,47]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row external-resource-card\\\"],[12],[11,\\\"a\\\"],[4,[38,14],[[32,0],\\\"removeExternalResource\\\",[35,6],[32,8]],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-close\\\"],[12],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[6,[37,40],[[30,[36,39],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/time-session-form/template.hbs' @ L1:C1989) \\\"],null],\\\"externalUrl\\\"],[[\\\"object\\\",\\\"control\\\"],[[32,8],\\\"form-controls/input\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,12,[\\\"label\\\"]]],[1,[30,[36,40],[[30,[36,39],[[32,12,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/time-session-form/template.hbs' @ L1:C2095) \\\"],null]],[[\\\"class\\\"],[\\\"form-control\\\"]]]],[1,[30,[36,40],[[30,[36,39],[[32,12,[\\\"errors\\\"]],\\\"expected `ff.errors` to be a contextual component but found a string. Did you mean `(component ff.errors)`? ('web-app-ember-v2/components/time-session-form/template.hbs' @ L1:C2130) \\\"],null]],[[\\\"class\\\"],[\\\"has-error\\\"]]]]],\\\"parameters\\\":[12]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[6,[37,41],[\\\"externalSystem\\\"],[[\\\"object\\\"],[[32,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,10,[\\\"label\\\"]]],[6,[37,34],null,[[\\\"disabled\\\",\\\"options\\\",\\\"selected\\\",\\\"searchField\\\",\\\"onchange\\\",\\\"renderInPlace\\\"],[[35,27],[35,38],[30,[36,37],[[35,36],[32,9]],null],\\\"externalSystem\\\",[30,[36,14],[[32,0],\\\"changeExternalRosource\\\",[32,9],[32,8]],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,35],[[32,11,[\\\"externalSystem\\\"]]],null]]],\\\"parameters\\\":[11]}]]]],\\\"parameters\\\":[10]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.external-resources.external-id\\\"],null]],[13],[10,\\\"input\\\"],[15,2,[32,8,[\\\"externalId\\\"]]],[15,\\\"oninput\\\",[30,[36,14],[[32,0],[30,[36,14],[[32,0],\\\"externalIdChanged\\\",[32,9]],null]],[[\\\"value\\\"],[\\\"target.value\\\"]]]],[14,0,\\\"form-control\\\"],[14,4,\\\"text\\\"],[12],[13],[13],[13]],\\\"parameters\\\":[8,9]}]]],[6,[37,9],[[35,6,[\\\"task\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[4,[38,14],[[32,0],\\\"addExternalResource\\\",[35,6]],null],[12],[10,\\\"i\\\"],[14,0,\\\"fa fa-plus new-external-resource-icon\\\"],[12],[13],[1,[30,[36,0],[\\\"time-session-form.add-external-resource\\\"],null]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,0],[\\\"time-session-form.first-select-task\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[13],[6,[37,41],[\\\"sessionType\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,6,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,34],null,[[\\\"disabled\\\",\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"class\\\",\\\"searchField\\\",\\\"name\\\",\\\"onchange\\\",\\\"renderInPlace\\\"],[[35,33],[35,32],[35,31],[35,6,[\\\"sessionType\\\"]],\\\"form-control\\\",\\\"name\\\",\\\"time-session[type]\\\",[30,[36,14],[[32,0],[30,[36,30],[[35,6,[\\\"sessionType\\\"]]],null]],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,7,[\\\"name\\\"]]]],\\\"parameters\\\":[7]}]]],[10,\\\"span\\\"],[14,0,\\\"changset-error\\\"],[12],[1,[35,6,[\\\"error\\\",\\\"sessionType\\\",\\\"validation\\\"]]],[13],[13],[13]],\\\"parameters\\\":[6]}]]],[6,[37,41],[\\\"tag\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,4,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,9],[[35,29]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,28],null,[[\\\"disabled\\\",\\\"placeholder\\\",\\\"options\\\",\\\"selected\\\",\\\"searchField\\\",\\\"showCreateWhen\\\",\\\"buildSuggestion\\\",\\\"oncreate\\\",\\\"onchange\\\"],[[35,27],[35,26],[35,25],[35,6,[\\\"tags\\\"]],\\\"label\\\",[30,[36,14],[[32,0],\\\"showCreateTagOption\\\"],null],[30,[36,14],[[32,0],\\\"customSuggestion\\\"],null],[30,[36,14],[[32,0],\\\"createTag\\\"],null],[30,[36,14],[[32,0],\\\"selectedTagsChanged\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,5,[\\\"label\\\"]]]],\\\"parameters\\\":[5]}]]],[1,[32,4,[\\\"errors\\\"]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"control-label text-left\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.missing-tags-configuration\\\"],null]],[10,\\\"div\\\"],[14,0,\\\"fa fa-question missing-tags-tooltip\\\"],[12],[6,[37,24],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.missing-tags-tooltip\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"parameters\\\":[4]}]]],[6,[37,41],[\\\"description\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[32,3,[\\\"label\\\"]]],[1,[30,[36,23],null,[[\\\"name\\\",\\\"value\\\",\\\"class\\\",\\\"rows\\\",\\\"autofocus\\\"],[\\\"time-session[description]\\\",[35,6,[\\\"description\\\"]],\\\"form-control\\\",\\\"3\\\",[35,22,[\\\"focusDescription\\\"]]]]]],[10,\\\"span\\\"],[14,0,\\\"changset-error\\\"],[12],[1,[35,6,[\\\"error\\\",\\\"description\\\",\\\"validation\\\"]]],[13],[13],[13]],\\\"parameters\\\":[3]}]]],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 set-time-manually\\\"],[12],[1,[30,[36,12],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\",\\\"class\\\",\\\"disabled\\\"],[\\\"checkbox\\\",[35,48],\\\"set-time-manually\\\",\\\"set-time-manually-checkbox\\\",[35,27]]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"set-time-manually\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.set-time-manually\\\"],null]],[13],[13],[13],[6,[37,9],[[35,48]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"duration\\\"],[12],[10,\\\"label\\\"],[14,0,\\\"control-label\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.duration\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"duration-output\\\"],[12],[1,[30,[36,16],null,[[\\\"date\\\",\\\"noIcon\\\",\\\"format\\\",\\\"minDate\\\",\\\"updateDate\\\",\\\"disabled\\\"],[[35,8],true,\\\"HH:mm\\\",[35,15],[30,[36,14],[[32,0],\\\"updateEndedAt\\\"],null],[35,13]]]]],[13],[13],[13],[13],[10,\\\"div\\\"],[15,0,[31,[\\\"form-group \\\",[30,[36,9],[[35,1],\\\"has-error\\\"],null]]]],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"started-at \\\",[30,[36,9],[[35,1],\\\"text-danger\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"label\\\"],[14,0,\\\"control-label\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.started-at\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"date\\\"],[12],[1,[30,[36,16],null,[[\\\"date\\\",\\\"updateDate\\\",\\\"noIcon\\\",\\\"format\\\",\\\"minDate\\\",\\\"timeZone\\\"],[[35,17],[30,[36,14],[[32,0],\\\"setStartedAtDate\\\"],null],true,[35,5],[35,15],[35,4]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"time\\\"],[12],[1,[30,[36,16],null,[[\\\"date\\\",\\\"updateDate\\\",\\\"noIcon\\\",\\\"format\\\",\\\"minDate\\\",\\\"timeZone\\\"],[[35,18],[30,[36,14],[[32,0],\\\"setStartedAtTime\\\"],null],true,\\\"HH:mm\\\",[35,15],[35,4]]]]],[13],[13],[13],[13],[10,\\\"div\\\"],[15,0,[31,[\\\"form-group \\\",[30,[36,9],[[35,1],\\\"has-error\\\"],null]]]],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"ended-at \\\",[30,[36,9],[[35,1],\\\"text-danger\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"label\\\"],[14,0,\\\"control-label\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.ended-at\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"date\\\"],[12],[1,[30,[36,16],null,[[\\\"date\\\",\\\"updateDate\\\",\\\"noIcon\\\",\\\"format\\\",\\\"minDate\\\",\\\"disabled\\\",\\\"timeZone\\\"],[[35,19],[30,[36,14],[[32,0],\\\"setEndedAtDate\\\"],null],true,[35,5],[35,15],[35,10],[35,4]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"time\\\"],[12],[1,[30,[36,16],null,[[\\\"date\\\",\\\"updateDate\\\",\\\"noIcon\\\",\\\"format\\\",\\\"minDate\\\",\\\"disabled\\\",\\\"timeZone\\\"],[[35,20],[30,[36,14],[[32,0],\\\"setEndedAtTime\\\"],null],true,\\\"HH:mm\\\",[35,15],[35,10],[35,4]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"isongoing\\\"],[12],[6,[37,9],[[35,21]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,12],null,[[\\\"type\\\",\\\"checked\\\",\\\"id\\\",\\\"class\\\"],[\\\"checkbox\\\",[35,10],\\\"set-session-ongoing\\\",\\\"set-time-manually-checkbox\\\"]]]],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"set-session-ongoing\\\"],[12],[1,[30,[36,0],[\\\"format-duration.ongoing\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,9],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"duration\\\"],[12],[10,\\\"label\\\"],[14,0,\\\"control-label\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.duration\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"duration-output\\\"],[12],[1,[34,8]],[13],[13],[13],[13],[10,\\\"div\\\"],[15,0,[31,[\\\"form-group \\\",[30,[36,9],[[35,1],\\\"has-error\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"duration \\\",[30,[36,9],[[35,1],\\\"text-danger\\\"],null]]]],[12],[10,\\\"label\\\"],[14,0,\\\"control-label\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.started-at\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"duration-output\\\"],[12],[1,[30,[36,7],[[35,6,[\\\"startedAt\\\"]],[35,5],[35,4]],null]],[13],[13],[13],[13],[10,\\\"div\\\"],[15,0,[31,[\\\"form-group \\\",[30,[36,9],[[35,1],\\\"has-error\\\"],null]]]],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"div\\\"],[15,0,[31,[\\\"duration \\\",[30,[36,9],[[35,1],\\\"text-danger\\\"],null]]]],[12],[10,\\\"label\\\"],[14,0,\\\"control-label\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.ended-at\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"duration-output\\\"],[12],[6,[37,9],[[35,10]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"format-duration.ongoing\\\"],null]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,7],[[35,6,[\\\"endedAt\\\"]],[35,5],[35,4]],null]]],\\\"parameters\\\":[]}]]],[13],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,9],[[35,1]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 text-danger\\\"],[12],[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"time-session-form.overlapping-session\\\"],null]],[13],[10,\\\"ul\\\"],[14,0,\\\"list-overlapping list-unstyled\\\"],[12],[6,[37,3],[[30,[36,2],[[30,[36,2],[[35,1]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"li\\\"],[12],[1,[32,2]],[13]],\\\"parameters\\\":[2]}]]],[13],[13],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 text-right\\\"],[12],[1,[30,[36,40],[[30,[36,39],[[32,1,[\\\"reset\\\"]],\\\"expected `f.reset` to be a contextual component but found a string. Did you mean `(component f.reset)`? ('web-app-ember-v2/components/time-session-form/template.hbs' @ L1:C8414) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"time-session-form.cancel\\\"],null],\\\"btn btn-default time-session-button-cancel\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[1,[30,[36,40],[[30,[36,39],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/time-session-form/template.hbs' @ L1:C8541) \\\"],null]],[[\\\"value\\\",\\\"class\\\",\\\"disabled\\\"],[[30,[36,0],[\\\"time-session-form.submit\\\"],null],\\\"btn btn-primary\\\",[35,49]]]]],[13],[13],[13]],\\\"parameters\\\":[1]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"overlappingTimeSessions\\\",\\\"-track-array\\\",\\\"each\\\",\\\"currentUserTimezone\\\",\\\"dateFormat\\\",\\\"changeset\\\",\\\"format-date\\\",\\\"duration\\\",\\\"if\\\",\\\"isOngoing\\\",\\\"printTimeSessionInfo\\\",\\\"input\\\",\\\"isDisabledDurationInput\\\",\\\"action\\\",\\\"minDate\\\",\\\"bs-datetimepicker\\\",\\\"startedAtDate\\\",\\\"startedAtTime\\\",\\\"endedAtDate\\\",\\\"endedAtTime\\\",\\\"showOngoingCheckedInput\\\",\\\"options\\\",\\\"textarea\\\",\\\"tooltip-on-element\\\",\\\"sortedTags\\\",\\\"tagsInputPlaceholder\\\",\\\"userSuspended\\\",\\\"power-select-multiple-with-create\\\",\\\"showTagsInput\\\",\\\"mut\\\",\\\"sortedSessionTypes\\\",\\\"timeSessionSelectPlaceholder\\\",\\\"timeSessionSelectDisable\\\",\\\"power-select\\\",\\\"capitalize\\\",\\\"projectSystems\\\",\\\"get\\\",\\\"sortedProjectSystems\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"form-field\\\",\\\"tasksForSelectedProject\\\",\\\"power-select-with-create\\\",\\\"development\\\",\\\"sortedProjects\\\",\\\"selectedWorkspaceFilter\\\",\\\"externalResources\\\",\\\"checkedSetTimeManually\\\",\\\"saveBtnDisabled\\\",\\\"form-for\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/time-session-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-session/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"web-app-ember-v2/mixins/user-permissions\", \"ember-get-config\"], function (_exports, _currentSelectors, _userPermissions, _emberGetConfig) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, _userPermissions.default, {\n    userPreferences: Ember.inject.service(),\n    clock: Ember.inject.service('ongoing-clock'),\n    currentWorkspaceFilterIsAll: Ember.computed.equal('currentWorkspaceFilterId', 'All'),\n    ongoingEndedAt: Ember.computed.readOnly('clock.time'),\n\n    /*\n     * to switch on/off the display of actions dropdown (edit, delete) if current user time-session\n     * disabled feature at now\n      isCurrentUser: computed('timeSession', 'userPreferences', function() {\n        const ts_user_id = this.get('timeSession.user.id');\n        const current_user_id = this.get('userPreferences.currentUser.id');\n        return ts_user_id === current_user_id;\n      }),\n    */\n    isRestricted: Ember.computed('timeSession', function () {\n      return !(this.get('timeSession.permissions.edit') && this.get('timeSession.permissions.delete')) || this.get('timeSession.project.suspended');\n    }),\n    chromeExtension: Ember.computed(function () {\n      return _emberGetConfig.default.modulePrefix === 'chrome-extension';\n    }),\n    webApplication: Ember.computed(function () {\n      return _emberGetConfig.default.modulePrefix !== 'chrome-extension';\n    }),\n    actions: {\n      openProjectPage(workspaceId, projectId) {\n        window.open(_emberGetConfig.default.APP.urls.workspaces + '/' + workspaceId + '/projects/' + projectId);\n      },\n\n      redirectToProject(projectId) {\n        this.redirectToProject(projectId);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/time-session/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"TpDqwqPi\",\n    \"block\": \"{\\\"symbols\\\":[\\\"externalResource\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"time-session\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-sm-9 col-xs-8\\\"],[12],[10,\\\"h2\\\"],[14,0,\\\"h4 time-session-title\\\"],[12],[6,[37,6],[[35,3,[\\\"task\\\",\\\"title\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,6],[[35,11]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,10],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.show\\\",[30,[36,9],[[35,8],[35,7],\\\"all\\\",[35,3,[\\\"task\\\",\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[35,3,[\\\"task\\\",\\\"title\\\"]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[35,3,[\\\"task\\\",\\\"title\\\"]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[6,[37,6],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,6],[[35,3,[\\\"description\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[14,0,\\\"time-session-description\\\"],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-sticky-note-o\\\"],[12],[13],[1,[35,3,[\\\"description\\\"]]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"time-session-meta\\\"],[12],[6,[37,6],[[35,13]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[35,3,[\\\"workspace\\\",\\\"name\\\"]]],[2,\\\" > \\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"meta-project\\\"],[12],[11,\\\"a\\\"],[4,[38,5],[[32,0],\\\"redirectToProject\\\",[35,3,[\\\"project\\\",\\\"id\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[1,[35,3,[\\\"project\\\",\\\"name\\\"]]],[2,\\\" \\\"],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,6],[[35,3,[\\\"sessionType\\\",\\\"name\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,\\\"data-test-time-session-session-type\\\",\\\"\\\"],[12],[1,[35,3,[\\\"sessionType\\\",\\\"name\\\"]]],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"tags\\\"],[12],[6,[37,6],[[35,3,[\\\"tags\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,4],null,[[\\\"tags\\\",\\\"withHash\\\"],[[35,3,[\\\"tags\\\"]],true]]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"task-badge-with-status\\\"],[12],[6,[37,15],[[30,[36,14],[[30,[36,14],[[35,3,[\\\"task\\\",\\\"externalResources\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"externalResource\\\"],[[32,1]]]]]],\\\"parameters\\\":[1]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-sm-3 col-xs-4 time-session-actions\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[30,[36,20],null,[[\\\"timeSession\\\",\\\"isRestricted\\\",\\\"start\\\",\\\"stop\\\",\\\"duplicate\\\",\\\"class\\\"],[[35,3],[35,19],[30,[36,5],[[32,0],[35,18]],null],[30,[36,5],[[32,0],[35,17]],null],[30,[36,16],[\\\"duplicate\\\",[35,3]],null],\\\"pull-right\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"is-manual pull-right hidden-xs\\\"],[12],[6,[37,6],[[35,3,[\\\"isManual\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-exclamation-triangle\\\"],[12],[6,[37,1],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"time-session-tooltip-content.is-manual\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,6],[[35,3,[\\\"lockedAt\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-lock\\\"],[12],[6,[37,1],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"time-session-tooltip-content.is-locked\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[30,[36,22],null,[[\\\"model\\\",\\\"startedAt\\\",\\\"ongoingEndedAt\\\",\\\"endedAt\\\",\\\"class\\\"],[[35,3],[35,3,[\\\"startedAt\\\"]],[35,21],[35,3,[\\\"endedAt\\\"]],\\\"time-session-duration pull-right\\\"]]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"row visible-xs\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"is-manual pull-right\\\"],[12],[6,[37,6],[[35,3,[\\\"isManual\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-exclamation-triangle\\\"],[12],[6,[37,1],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"time-session-tooltip-content.is-manual\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,6],[[35,3,[\\\"lockedAt\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"i\\\"],[14,0,\\\"fa fa-lock\\\"],[12],[6,[37,1],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"time-session-tooltip-content.is-locked\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13],[13],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"tooltip-on-element\\\",\\\"task-badge-with-status\\\",\\\"timeSession\\\",\\\"tag-labels\\\",\\\"action\\\",\\\"if\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canReadMembersActivity\\\",\\\"webApplication\\\",\\\"currentWorkspaceFilterIsAll\\\",\\\"-track-array\\\",\\\"each\\\",\\\"route-action\\\",\\\"stopOngoingTimeSession\\\",\\\"startOngoingTimeSession\\\",\\\"isRestricted\\\",\\\"time-session-actions-dropdown\\\",\\\"ongoingEndedAt\\\",\\\"time-session-duration\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/time-session/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/timezone-select/component\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    _currentTimezone: null,\n\n    didReceiveAttrs() {\n      this.set('_currentTimezone', this.get('currentTimezone'));\n    },\n\n    selectedTimezone: Ember.computed('_currentTimezone', 'timezones', function () {\n      const timezoneName = this.get('_currentTimezone');\n\n      if (Ember.isPresent(timezoneName)) {\n        return this.get('timezones').filter(item => {\n          return item.value.match(timezoneName);\n        })[0];\n      }\n    }),\n    timezones: Ember.computed('timezones', function () {\n      const timezones = _moment.default.tz.names().map(name => {\n        return this.formatTimezone(name);\n      }).sortBy(\"name\");\n\n      const minusTimezones = timezones.filter(item => {\n        return item.name.match(/UTC-/);\n      });\n      const plusTimezones = timezones.filter(item => {\n        return item.name.match(/UTC\\+/);\n      });\n      return minusTimezones.reverse().concat(plusTimezones);\n    }),\n    actions: {\n      selected(timezone) {\n        this.set('_currentTimezone', timezone.value);\n        this.setTimezone(timezone.value);\n      }\n\n    },\n\n    formatTimezone(name) {\n      return {\n        value: name,\n        name: `(UTC${_moment.default.tz(name).format('Z')}) ${name}`\n      };\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/timezone-select/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"6ZjKNFZW\",\n    \"block\": \"{\\\"symbols\\\":[\\\"timezone\\\"],\\\"statements\\\":[[6,[37,4],null,[[\\\"options\\\",\\\"placeholder\\\",\\\"selected\\\",\\\"searchField\\\",\\\"onchange\\\"],[[35,3],[30,[36,2],[\\\"timezone-select.placeholder\\\"],null],[35,1],\\\"name\\\",[30,[36,0],[[32,0],\\\"selected\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,1,[\\\"name\\\"]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"selectedTimezone\\\",\\\"t\\\",\\\"timezones\\\",\\\"power-select\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/timezone-select/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/today-work-time-counter/component\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    timer: Ember.inject.service('ongoing-timer'),\n    store: Ember.inject.service(),\n    pubnub: Ember.inject.service(),\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    userStatus: Ember.inject.service(),\n    todayTime: Ember.computed.oneWay('userPreferences.todayDuration'),\n    currentTimeSession: Ember.computed.oneWay('userStatus.currentUserStatus.timeSession'),\n    currentTodayTime: Ember.computed('timer.time', 'currentTimeSession', 'todayTime', function () {\n      if (this.get('currentTimeSession.isOngoing')) {\n        const timeSessionDuration = (0, _moment.default)(this.get('timer.time')).diff((0, _moment.default)(this.get('currentTimeSession.startedAt')), 'seconds');\n        const durationInMinutes = Math.ceil(timeSessionDuration / 60) * 60;\n        return this.get('todayTime') + durationInMinutes;\n      } else {\n        return this.get('todayTime');\n      }\n    }),\n\n    init() {\n      this._super(...arguments);\n\n      this._updateForTimeSession = this._updateForTimeSession.bind(this);\n      this.get('pubnub').on('receive', this._updateForTimeSession);\n\n      this._updateTodayTime();\n    },\n\n    willDestroyElement() {\n      this._super(...arguments);\n\n      this.get('pubnub').off('receive', this._updateForTimeSession);\n    },\n\n    _updateForTimeSession(payload) {\n      if (payload.model === 'time_session') {\n        if (payload.action === 'update') {\n          const {\n            id\n          } = payload;\n          this.get('store').findRecord('time-session', id).then(timeSession => {\n            this._updateTodayTime();\n\n            this.notifyPropertyChange('currentTodayTime');\n\n            if (id === this.get('currentTimeSession.id') && Ember.isPresent(payload['attributes']['ended-at'])) {\n              timeSession.set('endedAt', payload['attributes']['ended-at']);\n              this.get('userStatus').set('currentTimeSession', timeSession);\n            }\n\n            this.get('userStatus').reloadCurrentUserStatus();\n          });\n        } else if (payload.action === 'create') {\n          const {\n            id\n          } = payload;\n          this.get('store').findRecord('time-session', id).then(timeSession => {\n            this.get('userStatus').set('currentTimeSession', timeSession);\n\n            this._updateTodayTime();\n\n            this.get('userStatus').reloadCurrentUserStatus();\n          });\n        } else if (payload.action === 'destroy') {\n          this._updateTodayTime();\n\n          this.get('userStatus').reloadCurrentUserStatus();\n        }\n      }\n    },\n\n    _updateTodayTime() {\n      this.userPreferences.reloadTodayDuration();\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/today-work-time-counter/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"oPAsYz5s\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"seconds-to-duration\\\"],[12],[1,[30,[36,2],[[35,1]],null]],[13],[6,[37,3],null,[[\\\"side\\\",\\\"class\\\"],[\\\"bottom\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"today-work-time-counter.todays-work-time\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"currentTodayTime\\\",\\\"seconds-to-duration\\\",\\\"tooltip-on-element\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/today-work-time-counter/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tooltip-on-component\", [\"exports\", \"ember-tooltips/components/tooltip-on-component\"], function (_exports, _tooltipOnComponent) {\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 _tooltipOnComponent.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/tooltip-on-element\", [\"exports\", \"web-app-ember-v2/config/environment\", \"ember-tooltips/components/tooltip-on-element\"], function (_exports, _environment, _tooltipOnElement) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  let _didUpdateTimeoutLength = _environment.default.environment === 'test' ? 0 : 1000;\n\n  var _default = _tooltipOnElement.default.extend({\n    _didUpdateTimeoutLength\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/tooltip-on-element/component\", [\"exports\", \"ember-tooltips/components/tooltip-on-element\"], function (_exports, _tooltipOnElement) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _tooltipOnElement.default.extend({\n    enableLazyRendering: true\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/ui-tribute\", [\"exports\", \"ember-tribute/components/ui-tribute\"], function (_exports, _uiTribute) {\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 _uiTribute.default;\n    }\n  });\n});","define(\"web-app-ember-v2/components/user-info/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\"], function (_exports, _currentSelectors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    router: Ember.inject.service(),\n    isDeleteTeamMemberModal: false,\n    isSuspendTeamMemberModal: false,\n    memberForDeleteMemberModal: null,\n    showInviteNewMemberModal: false,\n    memberForEdit: undefined,\n    memberRoleForEdit: undefined,\n    membershipModalOpen: false,\n    showDropdown: true,\n    currentProjectFilter: Ember.computed.readOnly('userPreferences.currentProject'),\n    currentWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n    selectedUser: Ember.computed('selectedUser', function () {\n      return this.get('selectedUser') || this.get('userPreferences.currentUserFilter') || this.get('userPreferences.currentUser');\n    }),\n    templateName: Ember.computed('router.currentRouteName', function () {\n      const currentRouteName = this.get('router.currentRouteName');\n\n      if (currentRouteName === 'authenticated.workspaces.show.projects.show.tasks.index') {\n        return 'tasks';\n      }\n\n      return currentRouteName.split('.').pop();\n    }),\n    header: Ember.computed('templateName', function () {\n      const templateName = this.get('templateName');\n      return `authenticated.${templateName}.my-${templateName}`;\n    }),\n    showUserInfo: Ember.computed('selectedUser', function () {\n      return this.get('selectedUser.id') !== \"all\";\n    }),\n    canReadMembersActivity: Ember.computed('currentWorkspaceFilter', function () {\n      return this.get('currentWorkspaceFilter.permissions.read-members-activity');\n    }),\n    actions: {\n      updateMember(member, memberRole) {\n        this.send('updateMember', member, memberRole);\n      },\n\n      showSuspendMemberModal(member, memberRole) {\n        this.set('suspended', !this.get('memberRole.suspended'));\n        this.set('memberForSuspendMemberModal', member);\n        this.set('memberRoleForSuspendMemberModal', memberRole);\n        this.set('isSuspendTeamMemberModal', true);\n      },\n\n      closeInviteNewMemberModal() {\n        this.set('showInviteNewMemberModal', false);\n        this.set('newMemberEmail', null);\n      },\n\n      toggleEditMembershipModal(memberForEdit, memberRoleForEdit) {\n        this.set('memberForEdit', memberForEdit);\n        this.set('memberRoleForEdit', memberRoleForEdit);\n        this.set('membershipModalOpen', !!memberForEdit);\n      },\n\n      toggleDeleteMembershipModal(member) {\n        this.set('memberForDeleteMemberModal', member);\n        this.set('isDeleteTeamMemberModal', !!member);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-info/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"CNR+341e\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,21],[[35,22]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,21],[[35,20]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row activity\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-sm-12\\\"],[12],[1,[30,[36,6],null,[[\\\"target\\\",\\\"member\\\",\\\"setMemberForEdit\\\",\\\"redirectToProject\\\",\\\"cannotEdit\\\",\\\"showEditButton\\\",\\\"alwaysDisplay\\\"],[[35,5],[35,4],[30,[36,3],[[32,0],\\\"toggleEditMembershipModal\\\"],null],[30,[36,2],[\\\"redirectToProject\\\"],null],true,true,true]]]],[1,[30,[36,10],null,[[\\\"headerTitle\\\",\\\"member\\\",\\\"memberRole\\\",\\\"modalOpen\\\",\\\"updateMember\\\",\\\"forWorkspace\\\",\\\"assignMemberToProject\\\",\\\"showDeleteTeamMemberModal\\\",\\\"closeMembershipModal\\\",\\\"showSuspendMemberModal\\\"],[[30,[36,1],[\\\"workspace-team.edit-membership\\\"],null],[35,9],[35,8],[35,7],[30,[36,2],[\\\"updateMember\\\"],null],true,[30,[36,2],[\\\"assignMemberToProject\\\"],null],[30,[36,3],[[32,0],\\\"toggleDeleteMembershipModal\\\"],null],[30,[36,3],[[32,0],\\\"toggleEditMembershipModal\\\"],null],[30,[36,3],[[32,0],\\\"showSuspendMemberModal\\\"],null]]]]],[1,[30,[36,13],null,[[\\\"headerTitle\\\",\\\"modalOpen\\\",\\\"member\\\",\\\"deleteMember\\\"],[[30,[36,1],[\\\"workspace-team.delete-team-member\\\"],null],[35,12],[35,11],[30,[36,2],[\\\"deleteMember\\\",[35,11]],null]]]]],[1,[30,[36,19],null,[[\\\"headerTitle\\\",\\\"modalOpen\\\",\\\"member\\\",\\\"memberRole\\\",\\\"updateMember\\\"],[[30,[36,1],[\\\"workspace-team.suspend-team-member\\\"],null],[35,18],[35,16],[35,17],[30,[36,2],[\\\"updateMember\\\",[35,16],null,[35,15],[35,14],true],null]]]]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row activity\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-4\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"user-select-header\\\"],[12],[10,\\\"h3\\\"],[12],[1,[30,[36,1],[[35,0]],null]],[13],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"header\\\",\\\"t\\\",\\\"route-action\\\",\\\"action\\\",\\\"selectedUser\\\",\\\"currentProjectFilter\\\",\\\"manage-team-member\\\",\\\"membershipModalOpen\\\",\\\"memberRoleForEdit\\\",\\\"memberForEdit\\\",\\\"membership-modal\\\",\\\"memberForDeleteMemberModal\\\",\\\"isDeleteTeamMemberModal\\\",\\\"delete-team-member-modal\\\",\\\"checkedProjects\\\",\\\"suspended\\\",\\\"memberForSuspendMemberModal\\\",\\\"memberRoleForSuspendMemberModal\\\",\\\"isSuspendTeamMemberModal\\\",\\\"suspend-team-member-modal\\\",\\\"showUserInfo\\\",\\\"if\\\",\\\"canReadMembersActivity\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/user-info/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-menu/component\", [\"exports\", \"web-app-ember-v2/config/environment\", \"moment\", \"web-app-ember-v2/mixins/current-selectors\", \"web-app-ember-v2/mixins/server-error-handler-mixin\"], function (_exports, _environment, _moment, _currentSelectors, _serverErrorHandlerMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, _serverErrorHandlerMixin.default, {\n    userPreferences: Ember.inject.service(),\n    userPresence: Ember.inject.service(),\n    store: Ember.inject.service(),\n    router: Ember.inject.service(),\n    openStatusModal: false,\n    classNames: ['user-menu'],\n    dashboardUrl: _environment.default.APP.urls.dashboard,\n    activityUrl: _environment.default.APP.urls.activity,\n    reportsUrl: _environment.default.APP.urls.reports,\n    profileUrl: _environment.default.APP.urls.profile,\n    preferencesUrl: _environment.default.APP.urls.preferences,\n    securityUrl: _environment.default.APP.urls.security,\n    linkToCrx: _environment.default.APP.urls.crx,\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    minDate: (0, _moment.default)().startOf('day'),\n\n    init() {\n      this.set('beBackAtDate', (0, _moment.default)().tz(this.get('currentUserTimezone')));\n      this.set('beBackAtTime', (0, _moment.default)().tz(this.get('currentUserTimezone')));\n\n      this._super();\n    },\n\n    minTime: Ember.computed('beBackAtDate', function () {\n      const now = (0, _moment.default)().tz(this.get('currentUserTimezone'));\n\n      if (this.get('beBackAtDate').date() === now.date()) {\n        return now;\n      }\n    }),\n    dateFormat: Ember.computed.readOnly('userPreferences.currentUser.fullDateFormat'),\n    currentPresenceType: Ember.computed.readOnly('memberStatus.presenceType'),\n    currentUserId: Ember.computed.readOnly('userPreferences.currentUser.id'),\n    memberStatus: Ember.computed.readOnly('userPreferences.currentUser.status'),\n    isAway: Ember.computed.equal('currentPresenceType', 'away'),\n    disableSubmitButton: Ember.computed.empty('beBackAtDate'),\n    currentPresenceClass: Ember.computed('currentPresenceType', function () {\n      return (this.get('currentPresenceType') || 'clocked_out').replace('_', '-');\n    }),\n    isClockedIn: Ember.computed('currentPresenceType', function () {\n      const currentPresenceType = this.get('currentPresenceType');\n      return currentPresenceType === 'clocked_in' || currentPresenceType === 'returned';\n    }),\n    isClockedOut: Ember.computed('currentPresenceType', function () {\n      const currentPresenceType = this.get('currentPresenceType');\n      return currentPresenceType === 'clocked_out' || Ember.isEmpty(currentPresenceType) || currentPresenceType === 'not_active';\n    }),\n    setBeBackAtTimeToDefault: Ember.observer('beBackAtTime', function () {\n      if (this.get('beBackAtTime') < (0, _moment.default)().tz(this.get('currentUserTimezone'))) {\n        this.set('beBackAtTime', (0, _moment.default)().tz(this.get('currentUserTimezone')));\n      }\n    }),\n\n    goToCrxDownload() {\n      window.open(this.linkToCrx, '_blank');\n    },\n\n    actions: {\n      setStatusToClocked(type) {\n        let value = {\n          presence_type: type\n        };\n        this.get('userPresence').createNewPresence(type, value).then(response => {\n          this.send('handleSuccessResponse', response, type);\n        });\n      },\n\n      setStatusToAway(type) {\n        const years = this.get('beBackAtDate').year();\n        const months = this.get('beBackAtDate').month();\n        const days = this.get('beBackAtDate').date();\n        const hours = this.get('beBackAtTime').hours();\n        const minutes = this.get('beBackAtTime').minutes();\n        const seconds = this.get('beBackAtTime').seconds();\n        const timezone = this.get('currentUserTimezone');\n\n        const beBackAt = _moment.default.tz({\n          years,\n          months,\n          days,\n          hours,\n          minutes,\n          seconds\n        }, timezone).tz('UTC').toDate();\n\n        let value = {\n          'be_back_at': beBackAt,\n          presence_type: type\n        };\n        this.toggleProperty('openStatusModal');\n        this.get('userPresence').createNewPresence(type, value).then(response => {\n          this.send('handleSuccessResponse', response, type);\n          this.get('userPreferences').reloadCurrentUserLatestTimeSession();\n        });\n      },\n\n      setStatusToReturned(type) {\n        let value = {\n          presence_type: type\n        };\n        this.get('userPresence').createNewPresence(type, value).then(response => {\n          this.send('handleSuccessResponse', response, type);\n        });\n      },\n\n      changeStatus(type) {\n        this.send('setStatusTo' + type.capitalize().split('_')[0], type);\n      },\n\n      handleSuccessResponse(model, type) {\n        this.set('userPresence.currentStatus', model);\n        const currentUser = this.get('userPreferences').getCurrentUser();\n        const currentRouteName = this.get('router.currentRouteName');\n        const i18n = this.get('i18n');\n        const successNotificationMessage = i18n.t('presence-dropdown.you-changed-status-to', {\n          firstName: currentUser.get('firstName'),\n          type: i18n.t(`presence-dropdown.${type}`).string.toLowerCase()\n        });\n        this.showNotification.call('success', successNotificationMessage);\n\n        switch (currentRouteName) {\n          case 'authenticated.workspaces.show.projects.show.reports':\n          case 'authenticated.workspaces.show.projects.show.tasks.index':\n            if (type === 'clocked_out' || type === 'away') {\n              this.refreshAuthenticatedRoute();\n            }\n\n            break;\n\n          case 'authenticated.workspaces.show.projects.show.activity':\n            this.refreshAuthenticatedRoute();\n            break;\n        }\n      },\n\n      toggleStatusModal() {\n        this.set('minDate', (0, _moment.default)().tz(this.get('currentUserTimezone')).startOf('day'));\n        this.set('beBackAtDate', Ember.computed('beBackAtDate', function () {\n          if (this.get('beBackAtDate').date() === (0, _moment.default)().date()) {\n            return (0, _moment.default)().tz(this.get('currentUserTimezone'));\n          }\n        }));\n        this.set('beBackAtDate', (0, _moment.default)().tz(this.get('currentUserTimezone')).add(30, 'minutes'));\n        this.set('beBackAtTime', (0, _moment.default)().tz(this.get('currentUserTimezone')).add(30, 'minutes'));\n        this.toggleProperty('openStatusModal');\n      },\n\n      hideCrxInfo() {\n        let userPreferences = this.get('userPreferences');\n\n        if (!userPreferences.get('isHiddenCrxInfo')) {\n          userPreferences.hideCrxInfo().then(() => {\n            userPreferences.set('isHiddenCrxInfo', true);\n          });\n        }\n\n        this.goToCrxDownload();\n      },\n\n      setPredefinedAwayTime(time) {\n        this.set('beBackAtTime', (0, _moment.default)().tz(this.get('currentUserTimezone')).add(time, 'minutes'));\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-menu/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"t6r3efhF\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"footer\\\",\\\"dd\\\",\\\"menu\\\"],\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[35,27,[\\\"dropdown\\\"]],\\\"expected `nav.dropdown` to be a contextual component but found a string. Did you mean `(component nav.dropdown)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C3) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[32,3,[\\\"toggle\\\"]],\\\"expected `dd.toggle` to be a contextual component but found a string. Did you mean `(component dd.toggle)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C28) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,26],null,[[\\\"user\\\",\\\"status\\\",\\\"size\\\",\\\"class\\\"],[[35,25],[35,25,[\\\"status\\\",\\\"presenceType\\\"]],40,[30,[36,24],[\\\"with-border \\\",[35,23]],null]]]]],[10,\\\"span\\\"],[14,0,\\\"caret\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[6,[37,12],[[30,[36,11],[[32,3,[\\\"menu\\\"]],\\\"expected `dd.menu` to be a contextual component but found a string. Did you mean `(component dd.menu)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C201) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,14],[[35,13]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C242) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-user-dropdown-clock-out\\\",\\\"\\\"],[4,[38,1],[[32,0],\\\"changeStatus\\\",\\\"clocked_out\\\"],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-power-off clocked-out\\\"],[12],[13],[1,[30,[36,0],[\\\"presence-dropdown.clock-out\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,14],[[35,16]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C472) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-user-dropdown-clock-in\\\",\\\"\\\"],[4,[38,1],[[32,0],\\\"changeStatus\\\",\\\"clocked_in\\\"],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-power-off clocked-in\\\"],[12],[13],[10,\\\"span\\\"],[14,0,\\\"status-label\\\"],[12],[1,[30,[36,0],[\\\"presence-dropdown.clock-in\\\"],null]],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,14],[[35,15]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C726) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-user-dropdown-clock-out\\\",\\\"\\\"],[4,[38,1],[[32,0],\\\"changeStatus\\\",\\\"clocked_out\\\"],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-power-off clocked-out\\\"],[12],[13],[1,[30,[36,0],[\\\"presence-dropdown.clock-out\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,17],[[35,16]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,14],[[35,13]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C979) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-user-dropdown-away\\\",\\\"\\\"],[4,[38,1],[[32,0],\\\"toggleStatusModal\\\"],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-power-off away\\\"],[12],[13],[1,[30,[36,0],[\\\"presence-dropdown.away\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[6,[37,14],[[35,15]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[32,4,[\\\"item\\\"]],\\\"expected `menu.item` to be a contextual component but found a string. Did you mean `(component menu.item)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C1177) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-user-dropdown-return\\\",\\\"\\\"],[4,[38,1],[[32,0],\\\"changeStatus\\\",\\\"returned\\\"],null],[12],[10,\\\"span\\\"],[14,0,\\\"fa fa-power-off returned\\\"],[12],[13],[1,[30,[36,0],[\\\"presence-dropdown.return\\\"],null]],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[10,\\\"li\\\"],[14,\\\"role\\\",\\\"separator\\\"],[14,0,\\\"divider\\\"],[12],[13],[10,\\\"li\\\"],[12],[6,[37,22],null,[[\\\"data-test-user-dropdown-activity\\\",\\\"route\\\",\\\"models\\\"],[true,\\\"authenticated.workspaces.show.projects.show.activity\\\",[30,[36,21],[[35,20],[35,19],[35,18]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/activity-ico.png\\\"],[12],[13],[1,[30,[36,0],[\\\"user-menu.activity\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"li\\\"],[12],[6,[37,22],null,[[\\\"data-test-user-dropdown-reports\\\",\\\"route\\\",\\\"models\\\"],[true,\\\"authenticated.workspaces.show.projects.show.reports\\\",[30,[36,21],[[35,20],[35,19],[35,18]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/stat-ico.png\\\"],[12],[13],[1,[30,[36,0],[\\\"user-menu.reports\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"li\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,\\\"data-test-user-dropdown-get-crx\\\",\\\"\\\"],[4,[38,1],[[32,0],\\\"hideCrxInfo\\\"],null],[12],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/assets/icons/download-ico.png\\\"],[12],[13],[1,[30,[36,0],[\\\"link-to-crx-menu-version.text\\\"],null]],[13],[13],[10,\\\"li\\\"],[14,\\\"role\\\",\\\"separator\\\"],[14,0,\\\"divider\\\"],[12],[13],[10,\\\"li\\\"],[12],[6,[37,22],null,[[\\\"data-test-user-dropdown-profile\\\",\\\"route\\\"],[true,\\\"authenticated.profile\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-user\\\"],[12],[13],[1,[30,[36,0],[\\\"user-menu.profile\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"li\\\"],[12],[6,[37,22],null,[[\\\"data-test-user-dropdown-preferences\\\",\\\"route\\\"],[true,\\\"authenticated.preferences\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-cog\\\"],[12],[13],[1,[30,[36,0],[\\\"user-menu.preferences\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"li\\\"],[12],[6,[37,22],null,[[\\\"data-test-user-dropdown-security\\\",\\\"route\\\"],[true,\\\"authenticated.security\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-lock\\\"],[12],[13],[1,[30,[36,0],[\\\"user-menu.security\\\"],null]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"li\\\"],[12],[6,[37,22],null,[[\\\"data-test-user-dropdown-logout\\\",\\\"route\\\"],[true,\\\"authenticated.sign-out\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-log-out\\\"],[12],[13],[1,[30,[36,0],[\\\"user-menu.sign-out\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[4]}]]]],\\\"parameters\\\":[3]}]]],[6,[37,29],null,[[\\\"open\\\",\\\"title\\\",\\\"classNames\\\"],[[35,28],[30,[36,0],[\\\"presence-modal.back-time\\\"],null],\\\"presence-modal\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,12],[[30,[36,11],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C2954) \\\"],null]],[[\\\"classNames\\\"],[\\\"presence-modal-body\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"when-back-label\\\"],[12],[1,[30,[36,0],[\\\"presence-modal.back-time\\\"],null]],[13],[6,[37,2],null,[[\\\"onClick\\\"],[[30,[36,1],[[32,0],\\\"setPredefinedAwayTime\\\",15],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"presence-modal.min\\\"],[[\\\"duration\\\"],[15]]]]],\\\"parameters\\\":[]}]]],[6,[37,2],null,[[\\\"onClick\\\",\\\"class\\\"],[[30,[36,1],[[32,0],\\\"setPredefinedAwayTime\\\",30],null],\\\"presence-button\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"presence-modal.min\\\"],[[\\\"duration\\\"],[30]]]]],\\\"parameters\\\":[]}]]],[6,[37,2],null,[[\\\"onClick\\\",\\\"class\\\"],[[30,[36,1],[[32,0],\\\"setPredefinedAwayTime\\\",60],null],\\\"presence-button\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"presence-modal.hour\\\"],[[\\\"duration\\\"],[1]]]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"be-back-at-label\\\"],[12],[1,[30,[36,0],[\\\"presence-modal.custom-time\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"be-back-at-pickers\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"datepicker-wrapper\\\"],[12],[1,[30,[36,8],null,[[\\\"date\\\",\\\"updateDate\\\",\\\"noIcon\\\",\\\"format\\\",\\\"minDate\\\"],[[35,6],[30,[36,1],[[32,0],[30,[36,7],[[35,6]],null]],null],true,[35,5],[35,4]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"timepicker-wrapper\\\"],[12],[1,[30,[36,8],null,[[\\\"date\\\",\\\"updateDate\\\",\\\"noIcon\\\",\\\"format\\\",\\\"minDate\\\"],[[35,10],[30,[36,1],[[32,0],[30,[36,7],[[35,10]],null]],null],true,\\\"HH:mm\\\",[35,9]]]]],[13],[13]],\\\"parameters\\\":[]}]]],[6,[37,12],[[30,[36,11],[[32,1,[\\\"footer\\\"]],\\\"expected `modal.footer` to be a contextual component but found a string. Did you mean `(component modal.footer)`? ('web-app-ember-v2/components/user-menu/template.hbs' @ L1:C3891) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],null,[[\\\"onClick\\\"],[[30,[36,1],[[32,0],[32,1,[\\\"close\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"presence-modal.cancel\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,2],null,[[\\\"onClick\\\",\\\"buttonType\\\",\\\"type\\\",\\\"disabled\\\"],[[30,[36,1],[[32,0],\\\"changeStatus\\\",\\\"away\\\"],null],\\\"submit\\\",\\\"success\\\",[35,3]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"presence-modal.create\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"action\\\",\\\"bs-button\\\",\\\"disableSubmitButton\\\",\\\"minDate\\\",\\\"dateFormat\\\",\\\"beBackAtDate\\\",\\\"mut\\\",\\\"bs-datetimepicker\\\",\\\"minTime\\\",\\\"beBackAtTime\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"isClockedIn\\\",\\\"if\\\",\\\"isAway\\\",\\\"isClockedOut\\\",\\\"unless\\\",\\\"currentUserId\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"currentPresenceClass\\\",\\\"concat\\\",\\\"user\\\",\\\"member-avatar\\\",\\\"nav\\\",\\\"openStatusModal\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/user-menu/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-nav-bar/component\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    init() {\n      this._super(...arguments);\n\n      this.selectedTimestamp = this.get(\"timestamp\");\n    },\n\n    actions: {\n      setDateRange() {\n        const updatedTimestamp = this.get('selectedTimestamp');\n        const prevTimestamp = this.get(\"timestamp\") ? this.get(\"timestamp\") : (0, _moment.default)();\n\n        if (!(0, _moment.default)(updatedTimestamp).isSame(prevTimestamp, 'day')) {\n          this.setDateRange(updatedTimestamp);\n        }\n      },\n\n      scrollToDate(date) {\n        this.scrollToDate(date);\n      },\n\n      reloadData() {\n        this.reloadData();\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-nav-bar/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"MtPzScEc\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row activities-header\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-9 nopadding item-wrapper\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-4 col-sm-12\\\"],[12],[1,[30,[36,5],null,[[\\\"selectedUser\\\",\\\"showUserNav\\\",\\\"showUserInfo\\\",\\\"userSelected\\\",\\\"data-test-sticky-bar-user-dropdown\\\"],[[35,1],true,false,[30,[36,2],[\\\"userSelected\\\"],null],true]]]],[13],[10,\\\"div\\\"],[14,\\\"data-test-sticky-bar-user-datepicker\\\",\\\"\\\"],[14,0,\\\"col-md-3 col-sm-12 col-xs-10 with-user-select\\\"],[12],[1,[30,[36,7],null,[[\\\"firstDay\\\",\\\"start\\\",\\\"end\\\",\\\"singleDatePicker\\\",\\\"applyAction\\\",\\\"parentEl\\\"],[1,[35,6],[35,6],true,[30,[36,3],[[32,0],\\\"setDateRange\\\"],null],\\\".activities-header .with-user-select\\\"]]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-1 col-xs-1 activities-reload-data\\\"],[12],[1,[30,[36,8],null,[[\\\"reloadData\\\",\\\"data-test-sticky-bar-user-settings\\\"],[[30,[36,2],[\\\"reloadData\\\"],null],true]]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-2 col-xs-6\\\"],[12],[11,\\\"a\\\"],[16,\\\"title\\\",[31,[[30,[36,0],[\\\"authenticated.activity.today\\\"],null]]]],[24,\\\"data-test-sticky-bar-today\\\",\\\"\\\"],[4,[38,3],[[32,0],[30,[36,3],[[32,0],\\\"scrollToDate\\\",\\\"Today\\\"],null]],null],[12],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-circle-arrow-up\\\"],[12],[13],[1,[30,[36,0],[\\\"authenticated.activity.today\\\"],null]],[13],[13],[6,[37,10],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-3 col-xs-6\\\"],[12],[11,\\\"a\\\"],[16,\\\"title\\\",[31,[[30,[36,0],[\\\"authenticated.activity.download-report\\\"],null]]]],[24,\\\"data-test-sticky-bar-download-report\\\",\\\"\\\"],[24,0,\\\"pull-right\\\"],[4,[38,3],[[32,0],[30,[36,2],[\\\"openReportsModal\\\",[35,1]],null]],null],[12],[10,\\\"span\\\"],[14,0,\\\"glyphicon glyphicon-download-alt\\\"],[12],[6,[37,4],null,[[\\\"side\\\",\\\"class\\\"],[\\\"top\\\",\\\"show-tooltip ember-tooltip-task\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"p\\\"],[12],[1,[30,[36,0],[\\\"authenticated.activity.download-report\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13],[13],[13]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"activityUser\\\",\\\"route-action\\\",\\\"action\\\",\\\"tooltip-on-element\\\",\\\"user-select\\\",\\\"selectedTimestamp\\\",\\\"date-range-picker\\\",\\\"date-range-user-dropdown-actions\\\",\\\"canDownloadMemberActivity\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/user-nav-bar/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-preferences-form/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      save() {\n        this.updateMember(this.get('model'));\n      },\n\n      setTimezone(timezone) {\n        this.get('model').set('timezone', timezone);\n      },\n\n      setDateFormat(dateFormatValue) {\n        this.get('model').set('dateFormat', dateFormatValue);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-preferences-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"J2euvyMD\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[6,[37,7],[[35,0]],[[\\\"submit\\\",\\\"class\\\"],[[30,[36,1],[[32,0],\\\"save\\\"],null],\\\"form-horizontal\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-lg-offset-2 checkbox\\\"],[12],[1,[30,[36,6],[[30,[36,5],[[32,1,[\\\"checkbox-field\\\"]],\\\"expected `f.checkbox-field` to be a contextual component but found a string. Did you mean `(component f.checkbox-field)`? ('web-app-ember-v2/components/user-preferences-form/template.hbs' @ L1:C122) \\\"],null],\\\"tasksDurationFormatMinutes\\\"],[[\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-group\\\",[30,[36,4],[\\\"user-preferences-form.tasks-duration-format-minutes\\\"],null]]]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-lg-offset-2 checkbox\\\"],[12],[1,[30,[36,6],[[30,[36,5],[[32,1,[\\\"checkbox-field\\\"]],\\\"expected `f.checkbox-field` to be a contextual component but found a string. Did you mean `(component f.checkbox-field)`? ('web-app-ember-v2/components/user-preferences-form/template.hbs' @ L1:C314) \\\"],null],\\\"statsDurationFormatMinutes\\\"],[[\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-group\\\",[30,[36,4],[\\\"user-preferences-form.stats-duration-format-minutes\\\"],null]]]]],[13],[6,[37,6],[[30,[36,5],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/user-preferences-form/template.hbs' @ L1:C460) \\\"],null],\\\"timezone\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group\\\",[30,[36,4],[\\\"user.timezone\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-lg-offset-2\\\"],[12],[1,[32,3,[\\\"label\\\"]]],[1,[30,[36,3],null,[[\\\"currentTimezone\\\",\\\"setTimezone\\\",\\\"class\\\"],[[35,0,[\\\"timezone\\\"]],[30,[36,1],[[32,0],\\\"setTimezone\\\"],null],\\\"custom-field form-selector\\\"]]]],[13]],\\\"parameters\\\":[3]}]]],[6,[37,6],[[30,[36,5],[[32,1,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/user-preferences-form/template.hbs' @ L1:C775) \\\"],null],\\\"dateFormat\\\"],[[\\\"control\\\",\\\"fieldClasses\\\",\\\"label\\\"],[\\\"form-controls/input\\\",\\\"form-group\\\",[30,[36,4],[\\\"user.date-format\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-lg-offset-2\\\"],[12],[1,[32,2,[\\\"label\\\"]]],[1,[30,[36,2],null,[[\\\"setDateFormat\\\",\\\"dateFormat\\\",\\\"class\\\"],[[30,[36,1],[[32,0],\\\"setDateFormat\\\"],null],[35,0,[\\\"dateFormat\\\"]],\\\"custom-field form-selector\\\"]]]],[13]],\\\"parameters\\\":[2]}]]],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"buttons\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-lg-offset-2\\\"],[12],[1,[30,[36,6],[[30,[36,5],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/user-preferences-form/template.hbs' @ L1:C1181) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,4],[\\\"user-preferences-form.save\\\"],null],\\\"btn btn-primary\\\"]]]],[13],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"action\\\",\\\"date-format-select\\\",\\\"timezone-select\\\",\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"form-for\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/user-preferences-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-select/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"jquery\"], function (_exports, _currentSelectors, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    router: Ember.inject.service(),\n    showAvatar: true,\n    showName: true,\n    compact: false,\n    currentProjectFilter: Ember.computed.readOnly('userPreferences.currentProject'),\n    currentWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n    members: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.users'),\n    selectedUser: Ember.computed.or('selectedUser', 'userPreferences.currentUserFilter', 'userPreferences.currentUser'),\n    sortedSelectedMembers: Ember.computed.sort('members', function (a, b) {\n      return a.get('fullName').localeCompare(b.get('fullName'));\n    }),\n    templateName: Ember.computed('router.currentRouteName', function () {\n      return this.get('router.currentRouteName').split('.').pop();\n    }),\n    header: Ember.computed('templateName', function () {\n      const templateName = this.get('templateName');\n      return `authenticated.${templateName}.my-${templateName}`;\n    }),\n    canReadMembersActivity: Ember.computed('currentWorkspaceFilter', function () {\n      return this.get('currentWorkspaceFilter.permissions.read-members-activity');\n    }),\n    teamMembersOption: Ember.computed('member', function () {\n      return this.get('selectedUser.id') === 'all';\n    }),\n\n    didReceiveAttrs() {\n      this._super(...arguments);\n\n      if (this.get('checkCompactVersion')) {\n        this.toggleCompact();\n        (0, _jquery.default)(window).on('resize', this.toggleCompact.bind(this));\n      }\n    },\n\n    toggleCompact() {\n      const compact = (0, _jquery.default)(window).width() >= 768 && this.get('templateName') !== 'activity';\n      this.set('compact', compact);\n    },\n\n    willDestroyElement() {\n      this._super(...arguments);\n\n      (0, _jquery.default)(window).off('resize', this.toggleCompact());\n    },\n\n    actions: {\n      userSelected(user) {\n        this.set('selectedUser', user);\n        this.userSelected(this.get('currentWorkspaceFilterId'), this.get('currentProjectFilterId'), user.id);\n      },\n\n      scrollTo() {\n        return false;\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-select/header/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    currentProject: Ember.computed.readOnly('userPreferences.currentProject'),\n    showProjectTeamMembers: Ember.computed('templateName', 'currentProject', function () {\n      return this.get('templateName') !== 'activity' && Ember.isPresent(this.get('currentProject'));\n    }),\n\n    init() {\n      this.set('teamMembersObject', Ember.Object.create({\n        id: 'all',\n        fullName: this.get('i18n').t('authenticated.tasks.team-members')\n      }));\n\n      this._super();\n    },\n\n    actions: {\n      setProjectTeamMembers() {\n        this.userSelected(this.get('teamMembersObject'));\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-select/header/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"CzcwvKYd\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,3],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"header\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"team-member-status search-bar\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"member-avatar clocked_out\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-users\\\"],[12],[13],[13],[13],[11,\\\"span\\\"],[4,[38,0],[[32,0],\\\"setProjectTeamMembers\\\"],null],[12],[1,[30,[36,1],[\\\"authenticated.tasks.team-members\\\"],null]],[13],[13],[10,\\\"hr\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[1,[30,[36,13],[\\\"power-select/before-options\\\"],[[\\\"extra\\\",\\\"listboxId\\\",\\\"onInput\\\",\\\"onKeydown\\\",\\\"searchEnabled\\\",\\\"onFocus\\\",\\\"onBlur\\\",\\\"searchPlaceholder\\\",\\\"select\\\"],[[30,[36,5],[[35,12]],null],[30,[36,5],[[35,11]],null],[35,10],[35,9],true,[35,8],[35,7],[30,[36,5],[[35,6]],null],[30,[36,5],[[35,4]],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"t\\\",\\\"showProjectTeamMembers\\\",\\\"if\\\",\\\"select\\\",\\\"readonly\\\",\\\"searchPlaceholder\\\",\\\"onBlur\\\",\\\"onFocus\\\",\\\"onKeydown\\\",\\\"onInput\\\",\\\"listboxId\\\",\\\"extra\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/user-select/header/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-select/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"v1B3RWIJ\",\n    \"block\": \"{\\\"symbols\\\":[\\\"member\\\",\\\"member\\\"],\\\"statements\\\":[[6,[37,7],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,21]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,19],null,[[\\\"beforeOptionsComponent\\\",\\\"selectedItemComponent\\\",\\\"triggerClass\\\",\\\"dropdownClass\\\",\\\"options\\\",\\\"selected\\\",\\\"searchField\\\",\\\"scrollTo\\\",\\\"onchange\\\",\\\"matchTriggerWidth\\\"],[[30,[36,18],[\\\"user-select/header\\\"],[[\\\"userSelected\\\",\\\"templateName\\\"],[[30,[36,14],[[32,0],\\\"userSelected\\\"],null],[35,17]]]],[30,[36,18],[\\\"user-select/user-avatar-select\\\"],[[\\\"showAvatar\\\",\\\"member\\\",\\\"teamMembersOption\\\",\\\"hideSuspendIcon\\\"],[true,[35,15],[35,20],[30,[36,13],[[35,15],[35,12],[35,11]],null]]]],\\\"user-select-trigger\\\",\\\"user-select\\\",[35,16],[35,15],\\\"fullName\\\",[30,[36,14],[[32,0],\\\"scrollTo\\\"],null],[30,[36,14],[[32,0],\\\"userSelected\\\"],null],false]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"team-member-status search-bar\\\"],[12],[6,[37,7],[[35,6]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,5],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,4],[[35,3],[35,2],[35,1,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],null,[[\\\"user\\\",\\\"status\\\"],[[32,2],[32,2,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,0],null,[[\\\"user\\\",\\\"status\\\"],[[32,2],[32,2,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,2,[\\\"fullName\\\"]]]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,13],[[32,2],[35,12],[35,11]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-lock\\\"],[12],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,19],null,[[\\\"beforeOptionsComponent\\\",\\\"triggerClass\\\",\\\"dropdownClass\\\",\\\"options\\\",\\\"selected\\\",\\\"searchField\\\",\\\"searchEnabled\\\",\\\"onchange\\\",\\\"scrollTo\\\"],[[30,[36,18],[\\\"user-select/header\\\"],[[\\\"userSelected\\\",\\\"templateName\\\"],[[30,[36,14],[[32,0],\\\"userSelected\\\"],null],[35,17]]]],\\\"user-select-trigger\\\",\\\"user-select\\\",[35,16],[35,15],\\\"fullName\\\",false,[30,[36,14],[[32,0],\\\"userSelected\\\"],null],[30,[36,14],[[32,0],\\\"scrollTo\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"team-member-status search-bar\\\"],[12],[6,[37,7],[[30,[36,8],[[32,1]],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"member-avatar clocked_out\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-users\\\"],[12],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,7],[[35,6]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,5],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,4],[[35,3],[35,2],[35,1,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],null,[[\\\"user\\\",\\\"status\\\"],[[32,1],[32,1,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,0],null,[[\\\"user\\\",\\\"status\\\"],[[32,1],[32,1,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,7],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,1,[\\\"fullName\\\"]]]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,13],[[32,1],[35,12],[35,11]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-lock\\\"],[12],[13]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"member-avatar\\\",\\\"user\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canReadMembersActivity\\\",\\\"if\\\",\\\"check-if-team-members-option\\\",\\\"showAvatar\\\",\\\"showName\\\",\\\"currentProjectFilter\\\",\\\"currentWorkspaceFilter\\\",\\\"check-if-member-is-suspended\\\",\\\"action\\\",\\\"selectedUser\\\",\\\"sortedSelectedMembers\\\",\\\"templateName\\\",\\\"component\\\",\\\"power-select\\\",\\\"teamMembersOption\\\",\\\"compact\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/user-select/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-select/user-avatar-select/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNames: ['display-flex']\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/user-select/user-avatar-select/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"lsGNvjFl\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"team-member-status search-bar\\\"],[12],[6,[37,8],[[35,9]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"member-avatar clocked_out\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-users\\\"],[12],[13],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,8],[[35,7]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,6],null,[[\\\"route\\\",\\\"models\\\"],[\\\"authenticated.workspaces.show.projects.show.tasks.index\\\",[30,[36,5],[[35,4],[35,3],[35,2,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"user\\\",\\\"status\\\"],[[35,0],[35,0,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"user\\\",\\\"status\\\"],[[35,0],[35,0,[\\\"status\\\",\\\"presenceType\\\"]]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[6,[37,8],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"fa fa-lock team-member-status-icon\\\"],[12],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"member\\\",\\\"member-avatar\\\",\\\"user\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canReadMembersActivity\\\",\\\"if\\\",\\\"teamMembersOption\\\",\\\"hideSuspendIcon\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/user-select/user-avatar-select/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workplan-form/component\", [\"exports\", \"moment\", \"web-app-ember-v2/mixins/filters-for-workspaces\", \"web-app-ember-v2/mixins/server-error-handler-mixin\", \"web-app-ember-v2/mixins/spinner\"], function (_exports, _moment, _filtersForWorkspaces, _serverErrorHandlerMixin, _spinner) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_spinner.default, _filtersForWorkspaces.default, _serverErrorHandlerMixin.default, {\n    classNames: [\"workplan-form\"],\n    store: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    selectedProject: Ember.computed.readOnly('userPreferences.currentProject'),\n    saveBtnDisabled: Ember.computed.or('userSuspended', 'isSubmitting'),\n\n    init() {\n      this._super(...arguments);\n\n      this.set('ranges', {\n        \"Today\": [_moment.default.tz(this.get('currentUserTimezone')).startOf('day'), _moment.default.tz(this.get('currentUserTimezone')).endOf('day')],\n        \"This week\": [_moment.default.tz(this.get('currentUserTimezone')).startOf('week'), _moment.default.tz(this.get('currentUserTimezone')).endOf('week')],\n        \"This month\": [_moment.default.tz(this.get('currentUserTimezone')).startOf('month'), _moment.default.tz(this.get('currentUserTimezone')).endOf('month')]\n      });\n      this.getTasks().then(tasks => this.set('tasksForSelectedProject', tasks));\n    },\n\n    actions: {\n      searchTask(title) {\n        return this.getTasks(title);\n      },\n\n      addTask(selectedTask) {\n        if (this.get('workplan.isNew')) {\n          this.validateAndSave().then(() => {\n            this.addTask(selectedTask);\n          });\n        } else {\n          this.addTask(selectedTask);\n        }\n      },\n\n      removeTask(task) {\n        this.removeTask(task);\n      },\n\n      createTask(newTaskTitle) {\n        if (this.get('workplan.isNew')) {\n          this.validateAndSave().then(() => {\n            return this.createTask(newTaskTitle);\n          });\n        } else {\n          this.createTask(newTaskTitle);\n        }\n      },\n\n      cancel() {\n        const workplan = this.get('workplan');\n        this.get('cancelWorkplan')(workplan);\n      },\n\n      dateChanged(timePeriodStart, timePeriodEnd) {\n        this.set('workplan.startDate', timePeriodStart);\n        this.set('workplan.endDate', timePeriodEnd);\n      },\n\n      saveWorkplan() {\n        this.validateAndSave().then(() => {\n          this.get('workplanSaved')();\n        });\n      },\n\n      submitWorkplan() {\n        this.set(\"isSubmitting\", true);\n        this.showSpinner();\n        this.validateAndSave().then(() => {\n          return this.get('workplan').submit();\n        }).then(() => {\n          this.get('workplanSaved')();\n        }).finally(() => {\n          this.set(\"isSubmitting\", false);\n          this.hideSpinner();\n        });\n      }\n\n    },\n\n    createTask(title) {\n      const projectId = this.get('selectedProject.id');\n      const newTask = this.get('store').createRecord('task', {\n        project: projectId,\n        title\n      });\n      return this.addTask(newTask);\n    },\n\n    addTask(task) {\n      const workplan = this.get('workplan');\n      const workplanTask = this.get('store').createRecord('workplan-task', {\n        taskId: task.id,\n        workplan\n      });\n      return workplanTask.save().then(() => {\n        workplan.get('tasks').pushObject(task);\n        this.refreshTasks();\n      });\n    },\n\n    removeTask(task) {\n      const workplanTask = this.store.peekAll('workplanTask').findBy('taskId', task.id);\n      return workplanTask.destroyRecord().then(() => {\n        const workplan = this.get('workplan');\n        workplan.get('tasks').removeObject(task);\n        this.refreshTasks(task);\n      });\n    },\n\n    validateAndSave() {\n      let workplan = this.get('workplan');\n\n      if (workplan.validate()) {\n        return workplan.save().catch(response => {\n          this.handleServerErrors(response);\n          return Ember.RSVP.reject();\n        });\n      }\n    },\n\n    refreshTasks(taskToRestore = null) {\n      const selectedTasks = this.get('workplan.tasks');\n      let tasks = this.get('tasksForSelectedProject') || [];\n      tasks = tasks.reject(task => selectedTasks.includes(task));\n\n      if (taskToRestore) {\n        tasks.unshift(taskToRestore);\n      }\n\n      this.set('tasksForSelectedProject', tasks);\n    },\n\n    getTasks(title = null) {\n      const projectId = this.get('selectedProject.id');\n      return this.store.query('task', {\n        project_id: projectId,\n        limit: 50,\n        title\n      }).then(tasks => {\n        const selectedTasks = this.get('workplan.tasks');\n        return tasks.reject(task => selectedTasks.includes(task));\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workplan-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"U/gT373U\",\n    \"block\": \"{\\\"symbols\\\":[\\\"f\\\",\\\"ff\\\",\\\"task\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"summary-form\\\"],[12],[6,[37,18],[[35,21]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,20],[[35,6]],[[\\\"submit\\\",\\\"reset\\\",\\\"horizontal\\\"],[[30,[36,3],[[32,0],\\\"submitWorkplan\\\"],null],[30,[36,3],[[32,0],\\\"cancel\\\"],null],true]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,17],[\\\"period\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[10,\\\"label\\\"],[12],[1,[30,[36,0],[\\\"workplan-form.time-period\\\"],null]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"date-range-picker\\\"],[12],[1,[30,[36,16],null,[[\\\"showDropdowns\\\",\\\"minDate\\\",\\\"maxDate\\\",\\\"firstDay\\\",\\\"ranges\\\",\\\"start\\\",\\\"end\\\",\\\"applyAction\\\",\\\"alwaysShowCalendars\\\",\\\"dateLimit\\\"],[true,[35,15],[35,14],1,[35,13],[35,12],[35,11],[30,[36,3],[[32,0],\\\"dateChanged\\\"],null],true,[35,10]]]]],[13],[13],[13]],\\\"parameters\\\":[5]}]]],[6,[37,17],[\\\"description\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[32,4,[\\\"label\\\"]]],[1,[30,[36,9],null,[[\\\"name\\\",\\\"value\\\",\\\"class\\\",\\\"rows\\\",\\\"autofocus\\\"],[\\\"time-session[description]\\\",[35,6,[\\\"description\\\"]],\\\"form-control\\\",\\\"3\\\",[35,8,[\\\"focusDescription\\\"]]]]]],[13],[13]],\\\"parameters\\\":[4]}]]],[6,[37,17],[\\\"tasks\\\"],[[\\\"object\\\"],[[35,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[1,[32,2,[\\\"label\\\"]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[6,[37,5],null,[[\\\"options\\\",\\\"search\\\",\\\"oncreate\\\",\\\"onchange\\\",\\\"searchField\\\",\\\"placeholder\\\"],[[35,4],[30,[36,3],[[32,0],\\\"searchTask\\\"],null],[30,[36,3],[[32,0],\\\"createTask\\\"],null],[30,[36,3],[[32,0],\\\"addTask\\\"],null],\\\"title\\\",\\\"Start typing to search or create task...\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,3,[\\\"title\\\"]]]],\\\"parameters\\\":[3]}]]],[1,[32,2,[\\\"errors\\\"]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"form-group\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[1,[30,[36,7],null,[[\\\"tasks\\\",\\\"removeTask\\\"],[[35,6,[\\\"tasks\\\"]],[30,[36,3],[[32,0],\\\"removeTask\\\"],null]]]]],[13],[13]],\\\"parameters\\\":[2]}]]],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 text-right\\\"],[12],[6,[37,18],[[35,6,[\\\"isNew\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"reset\\\"]],\\\"expected `f.reset` to be a contextual component but found a string. Did you mean `(component f.reset)`? ('web-app-ember-v2/components/workplan-form/template.hbs' @ L1:C1534) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"workplan-form.cancel\\\"],null],\\\"btn btn-default summary-button-cancel\\\"]]]]],\\\"parameters\\\":[]}]]],[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"button\\\"]],\\\"expected `f.button` to be a contextual component but found a string. Did you mean `(component f.button)`? ('web-app-ember-v2/components/workplan-form/template.hbs' @ L1:C1631) \\\"],null]],[[\\\"value\\\",\\\"click\\\",\\\"class\\\"],[[30,[36,0],[\\\"workplan-form.save-draft\\\"],null],[30,[36,3],[[32,0],\\\"saveWorkplan\\\"],null],\\\"btn btn-default summary-button-cancel\\\"]]]],[10,\\\"div\\\"],[14,0,\\\"spinner-target\\\"],[12],[1,[30,[36,2],[[30,[36,1],[[32,1,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/workplan-form/template.hbs' @ L1:C1784) \\\"],null]],[[\\\"value\\\",\\\"class\\\",\\\"disabled\\\"],[[30,[36,0],[\\\"workplan-form.submit\\\"],null],\\\"btn btn-primary\\\",[35,19]]]]],[13],[13],[13]],\\\"parameters\\\":[1]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"select-project-first-msg\\\"],[12],[1,[30,[36,0],[\\\"workplan-form.select-project-first\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"tasksForSelectedProject\\\",\\\"power-select-with-create\\\",\\\"workplan\\\",\\\"tasks-list\\\",\\\"options\\\",\\\"textarea\\\",\\\"dateLimit\\\",\\\"selectedEndDate\\\",\\\"selectedStartDate\\\",\\\"ranges\\\",\\\"maxYear\\\",\\\"minYear\\\",\\\"date-range-picker\\\",\\\"form-field\\\",\\\"if\\\",\\\"saveBtnDisabled\\\",\\\"form-for\\\",\\\"selectedProject\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/workplan-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-form/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    store: Ember.inject.service(),\n    showDeleteModal: false,\n    defaultTagColor: '#79abb2',\n    sortTagsProps: Object.freeze(['isNew:asc', 'shortlisted:desc', 'label:asc']),\n    sortedTags: Ember.computed.sort('model.tags', 'sortTagsProps'),\n    currentWorkspaceFilter: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n    confirmDeleteButtonIsDisabled: Ember.computed(function () {\n      const workspaces = this.get('store').peekAll('workspace').filterBy('isDeleted', false);\n      return workspaces.get('length') === 1;\n    }),\n    canDelete: Ember.computed('model.{permissions.delete,discardedAt}', function () {\n      return !this.get('model.discardedAt') && this.get('model.permissions.delete');\n    }),\n    pendingChanges: Ember.computed('model.sessionTypes.@each.{name}', function () {\n      return this.get('model.sessionTypes').any(function (sessionType) {\n        return Ember.isPresent(sessionType.changedAttributes().name);\n      });\n    }),\n    actions: {\n      addTag() {\n        this.model.get('tags').createRecord({\n          color: this.defaultTagColor\n        });\n      },\n\n      removeTag(tag) {\n        this.model.get('tags').removeObject(tag);\n      },\n\n      submit() {\n        this.confirmWorkspace(this.model);\n      },\n\n      reset() {\n        this.cancelWorkspace(this.model);\n      },\n\n      confirmDeleteWorkspaceModal() {\n        this.set('showDeleteModal', true);\n      },\n\n      cancelDeleteWorkspaceModal() {\n        this.set('showDeleteModal', false);\n      },\n\n      confirmDeleteWorkspace() {\n        this.deleteWorkspace(this.model);\n        this.set('showDeleteModal', false);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-form/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"7qCntu9c\",\n    \"block\": \"{\\\"symbols\\\":[\\\"modal\\\",\\\"f\\\",\\\"tag\\\",\\\"ff\\\",\\\"ff\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-lg-8 col-lg-offset-2\\\"],[12],[6,[37,17],[[35,13]],[[\\\"submit\\\",\\\"reset\\\"],[[30,[36,3],[[32,0],\\\"submit\\\"],null],[30,[36,3],[[32,0],\\\"reset\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[30,[36,1],[[32,2,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C115) \\\"],null],\\\"name\\\"],[[\\\"fieldClasses\\\"],[\\\"form-group first-child\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,5,[\\\"label\\\"]]],[1,[30,[36,2],[[30,[36,1],[[32,5,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C198) \\\"],null]],[[\\\"placeholder\\\",\\\"autofocus\\\",\\\"class\\\"],[[30,[36,0],[\\\"workspace-form.workspace-name\\\"],null],\\\"autofocus\\\",\\\"form-control\\\"]]]]],\\\"parameters\\\":[5]}]]],[10,\\\"label\\\"],[12],[1,[30,[36,0],[\\\"project-form.tags\\\"],null]],[13],[10,\\\"table\\\"],[14,0,\\\"table table-hover form-group\\\"],[12],[10,\\\"thead\\\"],[12],[10,\\\"tr\\\"],[12],[10,\\\"th\\\"],[14,0,\\\"col-sm-1\\\"],[12],[1,[30,[36,0],[\\\"project-form.tag.color\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"col-sm-9\\\"],[12],[1,[30,[36,0],[\\\"project-form.tag.label\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"col-sm-1\\\"],[12],[1,[30,[36,0],[\\\"project-form.tag.show-on-top\\\"],null]],[13],[10,\\\"th\\\"],[14,0,\\\"col-sm-1\\\"],[12],[1,[30,[36,0],[\\\"project-form.tag.actions\\\"],null]],[13],[13],[13],[10,\\\"tbody\\\"],[12],[6,[37,12],[[30,[36,11],[[30,[36,11],[[35,10]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"tr\\\"],[14,\\\"data-test-tag-row\\\",\\\"\\\"],[12],[10,\\\"td\\\"],[14,\\\"data-test-tag-color\\\",\\\"\\\"],[12],[1,[30,[36,8],null,[[\\\"value\\\",\\\"format\\\",\\\"saveLabel\\\",\\\"data-test-tag-color\\\"],[[32,3,[\\\"color\\\"]],\\\"hex\\\",\\\"Set Color\\\",true]]]],[13],[10,\\\"td\\\"],[14,\\\"data-test-tag-label\\\",\\\"\\\"],[12],[6,[37,2],[[30,[36,1],[[32,2,[\\\"custom-field\\\"]],\\\"expected `f.custom-field` to be a contextual component but found a string. Did you mean `(component f.custom-field)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C866) \\\"],null],\\\"label\\\"],[[\\\"object\\\",\\\"control\\\"],[[32,3],\\\"form-controls/input\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,2],[[30,[36,1],[[32,4,[\\\"control\\\"]],\\\"expected `ff.control` to be a contextual component but found a string. Did you mean `(component ff.control)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C941) \\\"],null]],[[\\\"class\\\"],[\\\"form-control\\\"]]]],[1,[30,[36,2],[[30,[36,1],[[32,4,[\\\"errors\\\"]],\\\"expected `ff.errors` to be a contextual component but found a string. Did you mean `(component ff.errors)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C976) \\\"],null]],[[\\\"class\\\"],[\\\"has-error\\\"]]]]],\\\"parameters\\\":[4]}]]],[13],[10,\\\"td\\\"],[14,\\\"data-test-tag-show-on-top\\\",\\\"\\\"],[12],[1,[30,[36,9],null,[[\\\"type\\\",\\\"checked\\\"],[\\\"checkbox\\\",[32,3,[\\\"shortlisted\\\"]]]]]],[13],[10,\\\"td\\\"],[14,\\\"data-test-tag-remove\\\",\\\"\\\"],[12],[11,\\\"button\\\"],[24,0,\\\"btn btn-danger\\\"],[4,[38,3],[[32,0],\\\"removeTag\\\",[32,3]],null],[12],[2,\\\"-\\\"],[13],[13],[13]],\\\"parameters\\\":[3]}]]],[13],[13],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[11,\\\"button\\\"],[24,\\\"data-test-tag-add-button\\\",\\\"\\\"],[24,0,\\\"btn btn-primary\\\"],[4,[38,3],[[32,0],\\\"addTag\\\"],null],[12],[1,[30,[36,0],[\\\"project-form.add+\\\"],null]],[13],[13],[1,[30,[36,14],null,[[\\\"sessionTypes\\\"],[[35,13,[\\\"sessionTypes\\\"]]]]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"col-md-6 text-left\\\"],[12],[6,[37,6],[[35,15]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,4],null,[[\\\"type\\\",\\\"class\\\"],[\\\"danger\\\",\\\"disabled\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-configure-form-modal.delete\\\"],null]],[6,[37,7],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-configure-form-modal.disabled-delete-button\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,6],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,4],null,[[\\\"onClick\\\",\\\"type\\\",\\\"data-test-workspace-delete-button\\\"],[[30,[36,3],[[32,0],\\\"confirmDeleteWorkspaceModal\\\"],null],\\\"danger\\\",true]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-configure-form-modal.delete\\\"],null]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[10,\\\"div\\\"],[14,0,\\\"col-md-6 text-right\\\"],[12],[6,[37,6],[[35,16]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"pending-changes\\\"],[12],[1,[30,[36,0],[\\\"workspace-form.pending-changes\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[1,[30,[36,2],[[30,[36,1],[[32,2,[\\\"reset\\\"]],\\\"expected `f.reset` to be a contextual component but found a string. Did you mean `(component f.reset)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C2145) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"workspace-form.cancel\\\"],null],\\\"btn btn-default\\\"]]]],[1,[30,[36,2],[[30,[36,1],[[32,2,[\\\"submit\\\"]],\\\"expected `f.submit` to be a contextual component but found a string. Did you mean `(component f.submit)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C2214) \\\"],null]],[[\\\"value\\\",\\\"class\\\"],[[30,[36,0],[\\\"workspace-form.save\\\"],null],\\\"btn btn-success\\\"]]]],[13],[13]],\\\"parameters\\\":[2]}]]],[13],[6,[37,19],null,[[\\\"open\\\",\\\"onHidden\\\"],[[35,18],[30,[36,3],[[32,0],\\\"cancelDeleteWorkspaceModal\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[30,[36,1],[[32,1,[\\\"header\\\"]],\\\"expected `modal.header` to be a contextual component but found a string. Did you mean `(component modal.header)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C2406) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"h4\\\"],[14,0,\\\"modal-title\\\"],[12],[1,[30,[36,0],[\\\"workspace-configure-form-modal.delete\\\"],null]],[13]],\\\"parameters\\\":[]}]]],[6,[37,2],[[30,[36,1],[[32,1,[\\\"body\\\"]],\\\"expected `modal.body` to be a contextual component but found a string. Did you mean `(component modal.body)`? ('web-app-ember-v2/components/workspace-form/template.hbs' @ L1:C2514) \\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-configure-form-modal.delete-workspace-question\\\"],null]]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"modal-buttons\\\"],[12],[6,[37,4],null,[[\\\"onClick\\\"],[[30,[36,3],[[32,0],\\\"cancelDeleteWorkspaceModal\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-configure-form-modal.no\\\"],null]]],\\\"parameters\\\":[]}]]],[6,[37,4],null,[[\\\"onClick\\\",\\\"type\\\"],[[30,[36,3],[[32,0],\\\"confirmDeleteWorkspace\\\"],null],\\\"success\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,0],[\\\"workspace-configure-form-modal.yes\\\"],null]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[1]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"t\\\",\\\"-assert-implicit-component-helper-argument\\\",\\\"component\\\",\\\"action\\\",\\\"bs-button\\\",\\\"canDelete\\\",\\\"if\\\",\\\"tooltip-on-element\\\",\\\"color-picker\\\",\\\"input\\\",\\\"sortedTags\\\",\\\"-track-array\\\",\\\"each\\\",\\\"model\\\",\\\"session-types-editable-table\\\",\\\"confirmDeleteButtonIsDisabled\\\",\\\"pendingChanges\\\",\\\"form-for\\\",\\\"showDeleteModal\\\",\\\"bs-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/workspace-form/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-member-status/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\"], function (_exports, _currentSelectors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    store: Ember.inject.service(),\n    side: 'top',\n    currentProject: Ember.computed.readOnly('userPreferences.currentProject'),\n    currentProjectUsers: Ember.computed.readOnly('currentProject.users'),\n    member: Ember.computed.readOnly('userStatus.user'),\n    canDisplayUser: Ember.computed('currentProjectUsers', 'currentProject', 'member', function () {\n      if (this.get('currentProject')) {\n        return this.get('member.projects').mapBy('id').includes(this.get('currentProject.id'));\n      } else {\n        return true;\n      }\n    }),\n    canReadMembersActivity: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.permissions.read-members-activity');\n    }),\n    actions: {\n      redirectOrRefresh(member) {\n        const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n        const project = this.get('userPreferences.currentProject');\n\n        if (this.get('userPreferences.currentUserFilter.id') === 'all' && Ember.isEmpty(project)) {\n          this.set('userPreferences.currentUserFilter', this.get('userPreferences.currentUser'));\n        }\n\n        let currentProjectId = Ember.isPresent(project) ? project.id : 'all';\n        this.redirectOrRefresh(workspaceId, currentProjectId, member.get('id'));\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-member-status/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"yMlCZoyx\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,8],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"workspace-member-status\\\"],[12],[6,[37,8],[[35,7]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[11,\\\"div\\\"],[24,0,\\\"div\\\"],[4,[38,6],[[32,0],\\\"redirectOrRefresh\\\",[35,2]],null],[12],[1,[30,[36,3],null,[[\\\"user\\\",\\\"status\\\",\\\"size\\\"],[[35,2],[35,0,[\\\"presenceType\\\"]],60]]]],[6,[37,5],null,[[\\\"side\\\",\\\"class\\\",\\\"side\\\"],[\\\"right\\\",\\\"show-tooltip\\\",[35,4]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"userStatus\\\"],[[35,0]]]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"user\\\",\\\"status\\\",\\\"size\\\"],[[35,2],[35,0,[\\\"presenceType\\\"]],60]]]],[6,[37,5],null,[[\\\"side\\\",\\\"class\\\",\\\"side\\\"],[\\\"right\\\",\\\"show-tooltip\\\",[35,4]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"userStatus\\\"],[[35,0]]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"userStatus\\\",\\\"member-tooltip-content\\\",\\\"member\\\",\\\"member-avatar\\\",\\\"side\\\",\\\"tooltip-on-element\\\",\\\"action\\\",\\\"canReadMembersActivity\\\",\\\"if\\\",\\\"canDisplayUser\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/workspace-member-status/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-members-status/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\"], function (_exports, _currentSelectors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, {\n    store: Ember.inject.service(),\n    router: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    sortProps: Object.freeze(['user.fullName']),\n\n    init() {\n      this._super(...arguments);\n\n      this.set('userStatuses', this.store.peekAll(\"user-status\"));\n    },\n\n    sortedUserStatuses: Ember.computed.sort('workspaceUserStatuses', 'sortProps'),\n    canReadMembersActivity: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.permissions.read-members-activity'),\n    workspaceUserStatuses: Ember.computed('userStatuses.[]', 'userStatuses.@each.{workspaceId}', 'currentWorkspaceFilterId', function () {\n      const currentWorkspaceFilterId = this.get('currentWorkspaceFilterId');\n      return this.get('userStatuses').filterBy('workspaceId', currentWorkspaceFilterId).filterBy('displayOnSidebar', true);\n    }),\n    canDisplayshowTeamData: Ember.computed('userPreferences.currentProject', 'router.currentRouteName', 'canReadMembersActivity', function () {\n      if (!this.get('canReadMembersActivity')) {\n        return false;\n      }\n\n      const router = this.get('router');\n      const routeName = router.get('currentRouteName');\n      const isRouteNameTask = routeName === 'authenticated.workspaces.show.projects.show.tasks.index';\n      const isRouteNameReports = routeName === 'authenticated.workspaces.show.projects.show.reports';\n      const projectId = this.get('userPreferences.currentProject.id');\n      return projectId && (isRouteNameTask || isRouteNameReports);\n    }),\n    header: Ember.computed('userPreferences.currentProject', 'router.currentRouteName', function () {\n      const router = this.get('router');\n      const routeName = router.get('currentRouteName');\n\n      if (routeName === 'authenticated.workspaces.show.projects.show.tasks.index') {\n        return this.get('i18n').t('link-to-team-tasks.text');\n      } else if (routeName === 'authenticated.workspaces.show.projects.show.reports') {\n        return this.get('i18n').t('link-to-team-stats.text');\n      }\n    }),\n    actions: {\n      showTeamData() {\n        this.showTeamData();\n      },\n\n      redirectOrRefresh(workspaceId, currentProjectId, currentUserId) {\n        this.redirectOrRefresh(workspaceId, currentProjectId, currentUserId);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-members-status/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"qufJwkm7\",\n    \"block\": \"{\\\"symbols\\\":[\\\"userStatus\\\"],\\\"statements\\\":[[6,[37,10],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"workspace-members-status hidden-xs hidden-sm sidebar-content\\\"],[12],[6,[37,2],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"workspace-member-status\\\"],[12],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"showTeamData\\\"],null],[12],[10,\\\"div\\\"],[14,0,\\\"member-avatar clocked_out\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"fa fa-users avatar-team-logo\\\"],[12],[13],[13],[13],[6,[37,4],null,[[\\\"side\\\",\\\"class\\\"],[\\\"right\\\",\\\"show-tooltip\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[34,3]]],\\\"parameters\\\":[]}]]],[13]],\\\"parameters\\\":[]}]]],[6,[37,8],[[30,[36,7],[[30,[36,7],[[35,6]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[32,1,[\\\"user\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,1],null,[[\\\"userStatus\\\",\\\"redirectOrRefresh\\\",\\\"side\\\"],[[32,1],[30,[36,0],[[32,0],\\\"redirectOrRefresh\\\"],null],\\\"right\\\"]]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"workspace-member-status\\\",\\\"if\\\",\\\"header\\\",\\\"tooltip-on-element\\\",\\\"canDisplayshowTeamData\\\",\\\"sortedUserStatuses\\\",\\\"-track-array\\\",\\\"each\\\",\\\"isTeamRoute\\\",\\\"unless\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/workspace-members-status/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-team-last-activity/component\", [\"exports\", \"web-app-ember-v2/mixins/current-selectors\", \"web-app-ember-v2/mixins/user-permissions\", \"moment\"], function (_exports, _currentSelectors, _userPermissions, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_currentSelectors.default, _userPermissions.default, {\n    i18n: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    memberCurrentTimeSessionTask: Ember.computed.readOnly('member.status.timeSession.task'),\n    memberCurrentTimeSessionProject: Ember.computed.readOnly('member.status.timeSession.project'),\n    currentUserTimezone: Ember.computed.readOnly('userPreferences.currentUser.timezone'),\n    hasPresence: Ember.computed('member.status.presenceType', function () {\n      return Ember.isPresent(this.get('member.status.presenceType'));\n    }),\n    currentStatus: Ember.computed('member.status.presenceType', 'member', function () {\n      const currentStatusType = this.get('member.status.presenceType');\n      let member = this.get('member');\n      return this.currentStatusSentence(currentStatusType, member);\n    }),\n    currentWorkspaceFilterId: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.id');\n    }),\n\n    currentStatusSentence(statusType) {\n      if (statusType === 'away') {\n        return this.get('i18n').t('team-member-status.be-back', {\n          date: this.formatDateToHour(this.get('member.status.presence.beBackAt'))\n        });\n      } else if (statusType === 'clocked_in') {\n        return this.get('i18n').t('team-member-status.clocked-in', {\n          date: this.formatDateToTimeAgo(this.get('member.status.presence.occurredAt'))\n        });\n      } else if (statusType === 'returned') {\n        return this.get('i18n').t('team-member-status.clocked-in', {\n          date: this.formatDateToTimeAgo(this.get('member.status.presence.startedAt'))\n        });\n      } else if (statusType === 'clocked_out') {\n        return this.get('i18n').t('team-member-status.clocked-out', {\n          date: this.formatDateToTimeAgo(this.get('member.status.presence.occurredAt'))\n        });\n      } else {\n        return this.get('i18n').t('team-member-status.not-activity-yet');\n      }\n    },\n\n    formatDateToTimeAgo(date) {\n      return (0, _moment.default)(new Date(date)).startOf('second').fromNow().slice(0, -4);\n    },\n\n    formatDateToHour(date) {\n      return (0, _moment.default)(date).tz(this.get('currentUserTimezone')).format('HH:mm');\n    },\n\n    actions: {\n      redirectToProject(projectId) {\n        this.redirectToProject(projectId);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-team-last-activity/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Cv9m5Nh2\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"p\\\"],[14,\\\"data-test-user-info-current-status\\\",\\\"\\\"],[12],[1,[34,9]],[13],[10,\\\"div\\\"],[14,0,\\\"member-activity-project\\\"],[12],[6,[37,6],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,6],[[35,5]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,4],null,[[\\\"data-test-user-info-last-task\\\",\\\"route\\\",\\\"models\\\"],[true,\\\"authenticated.workspaces.show.projects.show.tasks.show\\\",[30,[36,3],[[35,2],[35,1],\\\"all\\\",[35,0,[\\\"id\\\"]]],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[35,0,[\\\"title\\\"]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[35,0,[\\\"title\\\"]]]],\\\"parameters\\\":[]}]]],[2,\\\" - \\\"],[11,\\\"a\\\"],[24,\\\"data-test-user-info-last-task-project\\\",\\\"\\\"],[4,[38,8],[[32,0],\\\"redirectToProject\\\",[35,7,[\\\"id\\\"]]],[[\\\"on\\\"],[\\\"click\\\"]]],[12],[1,[35,7,[\\\"name\\\"]]],[13]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"memberCurrentTimeSessionTask\\\",\\\"currentProjectFilterId\\\",\\\"currentWorkspaceFilterId\\\",\\\"array\\\",\\\"link-to\\\",\\\"canReadMembersActivity\\\",\\\"if\\\",\\\"memberCurrentTimeSessionProject\\\",\\\"action\\\",\\\"currentStatus\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/workspace-team-last-activity/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-team/component\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const EXTERNAL_MANAGER_ROLE = 'external_manager';\n  const EXTERNAL_STAFF_ROLE = 'external_staff';\n  const EXTERNAL_ROLES = [EXTERNAL_MANAGER_ROLE, EXTERNAL_STAFF_ROLE];\n\n  var _default = Ember.Component.extend({\n    i18n: Ember.inject.service(),\n    store: Ember.inject.service(),\n    router: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    isDeleteTeamMemberModal: false,\n    isSuspendTeamMemberModal: false,\n    memberForDeleteMemberModal: null,\n    showInviteNewMemberModal: false,\n    memberForEdit: undefined,\n    memberRoleForEdit: undefined,\n    membershipModalOpen: false,\n    sortDefinition: Object.freeze(['firstName']),\n    selectedRole: 'User',\n    sortedMembers: Ember.computed.sort('workspaceMembers', 'sortDefinition'),\n    sortedInternalWorkspaceMembers: Ember.computed.sort('internalWorkspaceMembers', 'sortDefinition'),\n    sortedExternalWorkspaceMembers: Ember.computed.sort('externalWorkspaceMembers', 'sortDefinition'),\n    internalWorkspaceMembers: Ember.computed('workspaceMembers', 'userPreferences.currentWorkspaceFilter', function () {\n      return this.get('workspaceMembers').filter(member => {\n        return member.get('workspaceRoles').mapBy('workspaceId').includes(this.get('userPreferences.currentWorkspaceFilter.id'));\n      });\n    }),\n    externalWorkspaceMembers: Ember.computed('workspaceMembers', 'userPreferences.currentWorkspaceFilter', function () {\n      return this.get('workspaceMembers').filter(member => {\n        return !member.get('workspaceRoles').mapBy('workspaceId').includes(this.get('userPreferences.currentWorkspaceFilter.id'));\n      });\n    }),\n    suspendedWorkspaceMembers: Ember.computed('suspendedInternalWorkspaceMembers', 'filteredSuspendedExternalWorkspaceMembers', 'currentUserWorkspaceRole', function () {\n      return this.get('currentUserWorkspaceRole') !== 'limited_staff' && (this.get('suspendedInternalWorkspaceMembers') || this.get('filteredSuspendedExternalWorkspaceMembers'));\n    }),\n    workspaceRoles: Ember.computed(function () {\n      return this.get('store').peekAll('workspaceRole');\n    }),\n    projectRoles: Ember.computed(function () {\n      return this.get('store').peekAll('projectRole');\n    }),\n    suspendedInternalWorkspaceMembers: Ember.computed('userPreferences.currentWorkspaceFilter', 'workspaceRoles.@each.suspendedAt', 'currentProject', function () {\n      const workspaceRoles = this.get('workspaceRoles');\n      const currentProject = this.get('currentProject');\n      const filteredWorkspaceRoles = workspaceRoles.filterBy('workspace.id', this.get('userPreferences.currentWorkspaceFilter.id'));\n      const filteredSuspendedWorkspaceRoles = filteredWorkspaceRoles.filter(workspaceRole => {\n        if (currentProject) {\n          const currentProjectUserIds = currentProject.get('projectRoles').mapBy('user.id');\n          return workspaceRole.get('suspendedAt') && currentProjectUserIds.includes(workspaceRole.get('user.id'));\n        } else {\n          return workspaceRole.get('suspendedAt');\n        }\n      });\n      return filteredSuspendedWorkspaceRoles.length > 0;\n    }),\n    filteredSuspendedExternalWorkspaceMembers: Ember.computed('externalWorkspaceMembers', 'projectRoles.@each.suspendedAt', function () {\n      const filteredExternalWorkspaceMembers = this.get('externalWorkspaceMembers').filter(workspaceMember => {\n        const memberRole = this.memberExternalRoles(workspaceMember, this.get('projectRoles'));\n\n        if (memberRole) {\n          return this.memberExternalRoles(workspaceMember, this.get('projectRoles')).get('suspendedAt');\n        }\n      });\n      return filteredExternalWorkspaceMembers.length > 0;\n    }),\n\n    memberExternalRoles(user, projectRoles) {\n      let userProjectRoles = projectRoles.filter(projectRole => {\n        return projectRole.get('user.id') === user.get('id');\n      });\n      return userProjectRoles.filter(projectRole => {\n        return EXTERNAL_ROLES.includes(projectRole.get('role'));\n      }).get('firstObject');\n    },\n\n    currentUserWorkspaceRole: Ember.computed('userPreferences.currentWorkspaceFilter', function () {\n      const currentUser = this.get('userPreferences.currentUser');\n      return currentUser.get('workspaceRoles').filter(workspaceRole => {\n        return workspaceRole.get('workspace.id') === this.get('userPreferences.currentWorkspaceFilter.id');\n      }).get('firstObject.role');\n    }),\n    currentWorkspaceBufferName: Ember.computed('currentWorkspace', 'currentWorkspace.buffer', function () {\n      return this.get('currentWorkspace.buffer.name');\n    }),\n    currentWorkspaceFilterId: Ember.computed('userPreferences.workspaceId', function () {\n      return this.get('userPreferences.workspaceId');\n    }),\n    checkDefaultProjects: Ember.observer('member', function () {\n      this.set('checkedProjects', []);\n      const checkedProjects = this.get('checkedProjects');\n      const memberProjects = this.get('member.projects');\n      memberProjects.forEach(memberProject => {\n        checkedProjects.pushObject(memberProject.id);\n      });\n    }),\n    actions: {\n      updateMember(member, memberRole) {\n        this.send('updateMember', member, memberRole);\n      },\n\n      showSuspendMemberModal(member, memberRole) {\n        this.set('suspended', !this.get('memberRole.suspended'));\n        this.set('memberForSuspendMemberModal', member);\n        this.set('memberRoleForSuspendMemberModal', memberRole);\n        this.set('isSuspendTeamMemberModal', true);\n      },\n\n      showDeleteTeamMemberModal(member) {\n        this.set('memberForDeleteMemberModal', member);\n        this.set('isDeleteTeamMemberModal', true);\n      },\n\n      closeDeleteMemberModal() {\n        this.set('isDeleteTeamMemberModal', false);\n        this.set('memberForDeleteMemberModal', null);\n      },\n\n      closeInviteNewMemberModal() {\n        this.set('showInviteNewMemberModal', false);\n        this.set('newMemberEmail', null);\n      },\n\n      setMemberForEdit(memberForEdit, memberRoleForEdit) {\n        this.set('memberForEdit', memberForEdit);\n        this.set('memberRoleForEdit', memberRoleForEdit);\n        this.set('membershipModalOpen', true);\n      },\n\n      closeMembershipModal() {\n        this.set('memberForEdit', undefined);\n        this.set('membershipModalOpen', false);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/components/workspace-team/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"74cGAxf7\",\n    \"block\": \"{\\\"symbols\\\":[\\\"member\\\",\\\"member\\\",\\\"member\\\",\\\"member\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"col-md-12\\\"],[12],[6,[37,12],[[35,10]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"team-members-status row\\\"],[12],[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,9]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"currentWorkspace\\\",\\\"member\\\",\\\"setMemberForEdit\\\",\\\"showDeleteTeamMemberModal\\\",\\\"showSuspendMemberModal\\\",\\\"updateMember\\\",\\\"redirectToProject\\\",\\\"onlyActive\\\"],[[35,2],[32,4],[30,[36,1],[[32,0],\\\"setMemberForEdit\\\"],null],[30,[36,1],[[32,0],\\\"showDeleteTeamMemberModal\\\"],null],[30,[36,1],[[32,0],\\\"showSuspendMemberModal\\\"],null],[30,[36,0],[\\\"updateMember\\\"],null],[30,[36,0],[\\\"redirectToProject\\\"],null],true]]]]],\\\"parameters\\\":[4]}]]],[1,[30,[36,11],null,[[\\\"currentProject\\\",\\\"inviteMembers\\\",\\\"type\\\"],[[35,10],[30,[36,0],[\\\"inviteMembers\\\"],null],\\\"internal\\\"]]]],[13]],\\\"parameters\\\":[]},{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"team-members-status row\\\"],[12],[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,9]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"currentWorkspace\\\",\\\"member\\\",\\\"setMemberForEdit\\\",\\\"showDeleteTeamMemberModal\\\",\\\"showSuspendMemberModal\\\",\\\"updateMember\\\",\\\"redirectToProject\\\",\\\"onlyActive\\\"],[[35,2],[32,3],[30,[36,1],[[32,0],\\\"setMemberForEdit\\\"],null],[30,[36,1],[[32,0],\\\"showDeleteTeamMemberModal\\\"],null],[30,[36,1],[[32,0],\\\"showSuspendMemberModal\\\"],null],[30,[36,0],[\\\"updateMember\\\"],null],[30,[36,0],[\\\"redirectToProject\\\"],null],true]]]]],\\\"parameters\\\":[3]}]]],[10,\\\"div\\\"],[14,0,\\\"col-md-10 equalization col-sm-12\\\"],[12],[13],[13]],\\\"parameters\\\":[]}]]],[10,\\\"div\\\"],[14,0,\\\"h3\\\"],[12],[1,[30,[36,4],[\\\"workspace-team.external-team-members\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"team-members-status row\\\"],[12],[6,[37,12],[[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,8]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"currentWorkspace\\\",\\\"member\\\",\\\"setMemberForEdit\\\",\\\"showDeleteTeamMemberModal\\\",\\\"showSuspendMemberModal\\\",\\\"updateMember\\\",\\\"redirectToProject\\\",\\\"onlyActive\\\"],[[35,2],[32,2],[30,[36,1],[[32,0],\\\"setMemberForEdit\\\"],null],[30,[36,1],[[32,0],\\\"showDeleteTeamMemberModal\\\"],null],[30,[36,1],[[32,0],\\\"showSuspendMemberModal\\\"],null],[30,[36,0],[\\\"updateMember\\\"],null],[30,[36,0],[\\\"redirectToProject\\\"],null],true]]]]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]}]]],[1,[30,[36,11],null,[[\\\"currentProject\\\",\\\"inviteMembers\\\",\\\"type\\\"],[[35,10],[30,[36,0],[\\\"inviteMembers\\\"],null],\\\"external\\\"]]]],[13],[6,[37,12],[[35,13]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"h3\\\"],[12],[1,[30,[36,4],[\\\"workspace-team.suspended-members\\\"],null]],[13],[10,\\\"div\\\"],[14,0,\\\"team-members-status row\\\"],[12],[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,5]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"currentWorkspace\\\",\\\"member\\\",\\\"setMemberForEdit\\\",\\\"showDeleteTeamMemberModal\\\",\\\"showSuspendMemberModal\\\",\\\"updateMember\\\",\\\"redirectToProject\\\",\\\"onlySuspended\\\"],[[35,2],[32,1],[30,[36,1],[[32,0],\\\"setMemberForEdit\\\"],null],[30,[36,1],[[32,0],\\\"showDeleteTeamMemberModal\\\"],null],[30,[36,1],[[32,0],\\\"showSuspendMemberModal\\\"],null],[30,[36,0],[\\\"updateMember\\\"],null],[30,[36,0],[\\\"redirectToProject\\\"],null],true]]]]],\\\"parameters\\\":[1]}]]],[10,\\\"div\\\"],[14,0,\\\"col-md-10 equalization col-sm-12\\\"],[12],[13],[13]],\\\"parameters\\\":[]}]]],[1,[30,[36,19],null,[[\\\"headerTitle\\\",\\\"member\\\",\\\"memberRole\\\",\\\"modalOpen\\\",\\\"closeMembershipModal\\\",\\\"showSuspendMemberModal\\\",\\\"projects\\\",\\\"forWorkspace\\\",\\\"target\\\",\\\"updateMember\\\",\\\"assignMemberToProject\\\",\\\"showDeleteTeamMemberModal\\\"],[[30,[36,4],[\\\"workspace-team.edit-membership\\\"],null],[35,18],[35,17],[35,16],\\\"closeMembershipModal\\\",[30,[36,1],[[32,0],\\\"showSuspendMemberModal\\\"],null],[35,15],true,[35,14],[30,[36,0],[\\\"updateMember\\\"],null],[30,[36,0],[\\\"assignMemberToProject\\\"],null],[30,[36,1],[[32,0],\\\"showDeleteTeamMemberModal\\\"],null]]]]],[1,[30,[36,22],null,[[\\\"headerTitle\\\",\\\"modalOpen\\\",\\\"member\\\",\\\"deleteMember\\\"],[[30,[36,4],[\\\"workspace-team.delete-team-member\\\"],null],[35,21],[35,20],[30,[36,0],[\\\"deleteMember\\\",[35,20]],null]]]]],[1,[30,[36,28],null,[[\\\"headerTitle\\\",\\\"modalOpen\\\",\\\"member\\\",\\\"memberRole\\\",\\\"updateMember\\\"],[[30,[36,4],[\\\"workspace-team.suspend-team-member\\\"],null],[35,27],[35,25],[35,26],[30,[36,0],[\\\"updateMember\\\",[35,25],null,[35,24],[35,23],true],null]]]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"action\\\",\\\"currentWorkspace\\\",\\\"manage-team-member\\\",\\\"t\\\",\\\"sortedMembers\\\",\\\"-track-array\\\",\\\"each\\\",\\\"sortedExternalWorkspaceMembers\\\",\\\"sortedInternalWorkspaceMembers\\\",\\\"currentProject\\\",\\\"add-new-member-widget\\\",\\\"if\\\",\\\"suspendedWorkspaceMembers\\\",\\\"target\\\",\\\"projects\\\",\\\"membershipModalOpen\\\",\\\"memberRoleForEdit\\\",\\\"memberForEdit\\\",\\\"membership-modal\\\",\\\"memberForDeleteMemberModal\\\",\\\"isDeleteTeamMemberModal\\\",\\\"delete-team-member-modal\\\",\\\"checkedProjects\\\",\\\"suspended\\\",\\\"memberForSuspendMemberModal\\\",\\\"memberRoleForSuspendMemberModal\\\",\\\"isSuspendTeamMemberModal\\\",\\\"suspend-team-member-modal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/components/workspace-team/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/controllers/array\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = Ember.Controller;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/controllers/object\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = Ember.Controller;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/current-state/storage\", [\"exports\", \"ember-local-storage/local/object\"], function (_exports, _object) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  const Store = _object.default.extend();\n\n  Store.reopenClass({\n    initialState() {\n      return {};\n    }\n\n  });\n  var _default = Store;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/data-adapter\", [\"exports\", \"@ember-data/debug\"], function (_exports, _debug) {\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 _debug.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/add-activity-class-to-member\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.addActivityClassToMember = addActivityClassToMember;\n  _exports.default = void 0;\n\n  function addActivityClassToMember(params) {\n    const currentActivity = params[0];\n    let activityClass = null;\n\n    if (currentActivity) {\n      activityClass = currentActivity.replace(\"_\", \"-\");\n    }\n\n    const availableActivityTypes = ['clocked-out', 'clocked-in', 'away', 'returned'];\n\n    if (availableActivityTypes.indexOf(activityClass) !== -1) {\n      return activityClass;\n    }\n  }\n\n  var _default = Ember.Helper.helper(addActivityClassToMember);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/and\", [\"exports\", \"ember-truth-helpers/helpers/and\"], function (_exports, _and) {\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 _and.default;\n    }\n  });\n  Object.defineProperty(_exports, \"and\", {\n    enumerable: true,\n    get: function () {\n      return _and.and;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/app-version\", [\"exports\", \"web-app-ember-v2/config/environment\", \"ember-cli-app-version/utils/regexp\"], function (_exports, _environment, _regexp) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.appVersion = appVersion;\n  _exports.default = void 0;\n\n  function appVersion(_, hash = {}) {\n    const version = _environment.default.APP.version; // e.g. 1.0.0-alpha.1+4jds75hf\n    // Allow use of 'hideSha' and 'hideVersion' For backwards compatibility\n\n    let versionOnly = hash.versionOnly || hash.hideSha;\n    let shaOnly = hash.shaOnly || hash.hideVersion;\n    let match = null;\n\n    if (versionOnly) {\n      if (hash.showExtended) {\n        match = version.match(_regexp.versionExtendedRegExp); // 1.0.0-alpha.1\n      } // Fallback to just version\n\n\n      if (!match) {\n        match = version.match(_regexp.versionRegExp); // 1.0.0\n      }\n    }\n\n    if (shaOnly) {\n      match = version.match(_regexp.shaRegExp); // 4jds75hf\n    }\n\n    return match ? match[0] : version;\n  }\n\n  var _default = Ember.Helper.helper(appVersion);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/assign\", [\"exports\", \"ember-assign-helper/helpers/assign\"], function (_exports, _assign) {\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 _assign.default;\n    }\n  });\n  Object.defineProperty(_exports, \"assign\", {\n    enumerable: true,\n    get: function () {\n      return _assign.assign;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/bs-contains\", [\"exports\", \"ember-bootstrap/helpers/bs-contains\"], function (_exports, _bsContains) {\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 _bsContains.default;\n    }\n  });\n  Object.defineProperty(_exports, \"bsContains\", {\n    enumerable: true,\n    get: function () {\n      return _bsContains.bsContains;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/bs-eq\", [\"exports\", \"ember-bootstrap/helpers/bs-eq\"], function (_exports, _bsEq) {\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 _bsEq.default;\n    }\n  });\n  Object.defineProperty(_exports, \"eq\", {\n    enumerable: true,\n    get: function () {\n      return _bsEq.eq;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/cancel-all\", [\"exports\", \"ember-concurrency/helpers/cancel-all\"], function (_exports, _cancelAll) {\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 _cancelAll.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/capitalize\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.capitalizeString = capitalizeString;\n  _exports.default = void 0;\n\n  function capitalizeString([string]) {\n    if (Ember.isPresent(string)) {\n      return Ember.String.capitalize(string);\n    }\n  }\n\n  var _default = Ember.Helper.helper(capitalizeString);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/changeset-get\", [\"exports\", \"ember-changeset/helpers/changeset-get\"], function (_exports, _changesetGet) {\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 _changesetGet.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/changeset-set\", [\"exports\", \"ember-changeset/helpers/changeset-set\"], function (_exports, _changesetSet) {\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 _changesetSet.default;\n    }\n  });\n  Object.defineProperty(_exports, \"changesetSet\", {\n    enumerable: true,\n    get: function () {\n      return _changesetSet.changesetSet;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/changeset\", [\"exports\", \"ember-changeset-validations/helpers/changeset\"], function (_exports, _changeset) {\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 _changeset.default;\n    }\n  });\n  Object.defineProperty(_exports, \"changeset\", {\n    enumerable: true,\n    get: function () {\n      return _changeset.changeset;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/check-if-active\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.checkIfActive = checkIfActive;\n  _exports.default = void 0;\n\n  function checkIfActive(params) {\n    const project = params[0];\n    const currentProject = params[1];\n\n    if (project.id === currentProject.id) {\n      return 'active';\n    }\n  }\n\n  var _default = Ember.Helper.helper(checkIfActive);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/check-if-can-merge-or-move-tasks\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    store: Ember.inject.service(),\n\n    compute([projectName]) {\n      const project = this.get('store').peekAll('project').findBy('name', projectName);\n      return project.get('permissions.merge-tasks');\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/check-if-equals-zero\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.checkIfEqualsZero = checkIfEqualsZero;\n  _exports.default = void 0;\n\n  function checkIfEqualsZero(nb) {\n    if (Array.isArray(nb)) {\n      nb = nb[0];\n    }\n\n    if (typeof nb === \"string\") {\n      nb = nb.replace(\":\", \".\");\n    }\n\n    const parsedNb = Number.parseFloat(nb);\n    if (Number.isNaN(parsedNb)) throw `Argument ${nb} is not a valid number`;\n    return parsedNb === 0;\n  }\n\n  var _default = Ember.Helper.helper(checkIfEqualsZero);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/check-if-external-project\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.checkIfExternalProject = checkIfExternalProject;\n  _exports.default = void 0;\n\n  function checkIfExternalProject(params) {\n    const project = params[0];\n\n    if (Ember.isPresent(project.get('originWorkspaceName'))) {\n      return true;\n    }\n  }\n\n  var _default = Ember.Helper.helper(checkIfExternalProject);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/check-if-member-is-suspended\", [\"exports\", \"web-app-ember-v2/mixins/role-helper\"], function (_exports, _roleHelper) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend(_roleHelper.default, {\n    compute(params) {\n      const member = params[0];\n\n      if (member.id === 'all') {\n        return false;\n      }\n\n      const currentWorkspaceFilter = params[1];\n      const currentProjectFilter = params[2];\n      const workspaceRole = this.workspaceRole(member, currentWorkspaceFilter);\n      let role;\n\n      if (workspaceRole) {\n        role = workspaceRole;\n      } else {\n        const memberProjectRoles = this.projectRoles(member, currentWorkspaceFilter);\n\n        if (Ember.isPresent(currentProjectFilter)) {\n          role = this.findProjectRoleByProject(memberProjectRoles, currentProjectFilter);\n\n          if (!Ember.isPresent(role)) {\n            role = this.highestExternalRole(memberProjectRoles);\n          }\n        } else {\n          role = this.highestExternalRole(memberProjectRoles);\n        }\n      }\n\n      return Ember.isPresent(role) && role.get('suspended');\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/check-if-odd-length\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.checkIfOddLength = checkIfOddLength;\n  _exports.default = void 0;\n\n  function checkIfOddLength(params) {\n    const obj = params[0];\n    return obj && obj.get('length') % 2 !== 0;\n  }\n\n  var _default = Ember.Helper.helper(checkIfOddLength);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/check-if-team-members-option\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.checkIfTeamMembersOption = checkIfTeamMembersOption;\n  _exports.default = void 0;\n\n  function checkIfTeamMembersOption(member) {\n    return member[0].id === 'all';\n  }\n\n  var _default = Ember.Helper.helper(checkIfTeamMembersOption);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/check-member-is-admin-or-manager\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    userPreferences: Ember.inject.service(),\n\n    compute(params) {\n      const member = params[0];\n      const target = params[1];\n      const userPreferences = this.get('userPreferences');\n      const isMemberIsCurrentUser = userPreferences.getCurrentUser().get('id') === member.get('id');\n\n      if (target === 'workspace') {\n        const isCurrentUserIsAdminOfCurrentWorkspace = userPreferences.currentUserWorkspacesWithAdminRole.includes(userPreferences.workspaceId);\n        const isCurrentUserIsManagerOfCurrentWorkspace = userPreferences.currentUserWorkspacesWithManagerRole.includes(userPreferences.workspaceId);\n        const isMemberIsAdmin = member.get('workspaceRoles').reject(function (workspaceRole) {\n          return workspaceRole.get('workspace.id') !== userPreferences.get('currentWorkspaceFilter.id');\n        }).get('firstObject.role') === 'admin';\n        return isMemberIsCurrentUser && !isCurrentUserIsAdminOfCurrentWorkspace || !isMemberIsCurrentUser && (isCurrentUserIsAdminOfCurrentWorkspace || isCurrentUserIsManagerOfCurrentWorkspace && !isMemberIsAdmin);\n      } else {\n        const project = params[2];\n        const isCurrentUserIsAdminOfCurrentProject = userPreferences.currentUserProjectsWithAdminRole.includes(project.get('id'));\n        const isCurrentUserIsManagerOfCurrentProject = userPreferences.currentUserProjectsWithManagerRole.includes(project.get('id'));\n        const isMemberIsAdmin = member.get('projectRoles').reject(function (projectRole) {\n          return projectRole.get('project.id') !== project.get('id');\n        }).get('firstObject.role') === 'admin';\n        return isMemberIsCurrentUser && !isCurrentUserIsAdminOfCurrentProject || !isMemberIsCurrentUser && (isCurrentUserIsAdminOfCurrentProject || isCurrentUserIsManagerOfCurrentProject && !isMemberIsAdmin);\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/check-timelimit-table\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    compute([projectLimitsLength, projectLimit, modalOpen]) {\n      return !(projectLimitsLength === 0 || projectLimitsLength === 1 && projectLimit && projectLimit.get('isNew') && modalOpen);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/contains\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.contains = contains;\n  _exports.default = void 0;\n\n  function contains([haystack, needle]) {\n    if (Ember.isArray(haystack)) {\n      return haystack.includes(needle);\n    } else if (Ember.typeOf(needle) === 'object') {\n      return needle.value === haystack;\n    } else {\n      return haystack === needle;\n    }\n  }\n\n  var _default = Ember.Helper.helper(contains);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/dasherize\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.dasherizeString = dasherizeString;\n  _exports.default = void 0;\n\n  function dasherizeString([string]) {\n    if (Ember.isPresent(string)) {\n      return Ember.String.dasherize(string);\n    }\n  }\n\n  var _default = Ember.Helper.helper(dasherizeString);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/day-format\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    userPreferences: Ember.inject.service(),\n\n    compute([date]) {\n      _moment.default.tz.setDefault(this.get('userPreferences.currentUser.timezone'));\n\n      if ((0, _moment.default)(date).isSame(new Date(), \"day\")) {\n        return 'Today';\n      } else {\n        return (0, _moment.default)(date).format(\"ddd MMM DD YYYY\");\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/domain-name\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.domainName = domainName;\n  _exports.default = void 0;\n\n  function domainName(url) {\n    let hostname = new URL(url).hostname;\n    return hostname.replace(/^\\w{3}\\./, '');\n  }\n\n  var _default = Ember.Helper.helper(domainName);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/download-report-date-picker-ranges\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.downloadReportDatePickerRanges = downloadReportDatePickerRanges;\n  _exports.default = void 0;\n\n  function downloadReportDatePickerRanges() {\n    return {\n      \"This month\": [(0, _moment.default)().startOf('month'), (0, _moment.default)()],\n      \"Last month\": [(0, _moment.default)().subtract(1, 'months').startOf('month'), (0, _moment.default)().subtract(1, 'months').endOf('month')],\n      \"Last full two weeks\": [(0, _moment.default)().subtract(2, 'weeks').startOf('week'), (0, _moment.default)().subtract(1, 'weeks').endOf('week')],\n      \"Last week\": [(0, _moment.default)().subtract(1, 'weeks').startOf('week'), (0, _moment.default)().subtract(1, 'weeks').endOf('week')],\n      \"This week\": [(0, _moment.default)().startOf('week'), (0, _moment.default)()]\n    };\n  }\n\n  var _default = Ember.Helper.helper(downloadReportDatePickerRanges);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/ember-power-select-is-group\", [\"exports\", \"ember-power-select/helpers/ember-power-select-is-group\"], function (_exports, _emberPowerSelectIsGroup) {\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 _emberPowerSelectIsGroup.default;\n    }\n  });\n  Object.defineProperty(_exports, \"emberPowerSelectIsGroup\", {\n    enumerable: true,\n    get: function () {\n      return _emberPowerSelectIsGroup.emberPowerSelectIsGroup;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/ember-power-select-is-selected\", [\"exports\", \"ember-power-select/helpers/ember-power-select-is-selected\"], function (_exports, _emberPowerSelectIsSelected) {\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 _emberPowerSelectIsSelected.default;\n    }\n  });\n  Object.defineProperty(_exports, \"emberPowerSelectIsSelected\", {\n    enumerable: true,\n    get: function () {\n      return _emberPowerSelectIsSelected.emberPowerSelectIsSelected;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/ember-power-select-true-string-if-present\", [\"exports\", \"ember-power-select/helpers/ember-power-select-true-string-if-present\"], function (_exports, _emberPowerSelectTrueStringIfPresent) {\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 _emberPowerSelectTrueStringIfPresent.default;\n    }\n  });\n  Object.defineProperty(_exports, \"emberPowerSelectTrueStringIfPresent\", {\n    enumerable: true,\n    get: function () {\n      return _emberPowerSelectTrueStringIfPresent.emberPowerSelectTrueStringIfPresent;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/eq\", [\"exports\", \"ember-truth-helpers/helpers/equal\"], function (_exports, _equal) {\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 _equal.default;\n    }\n  });\n  Object.defineProperty(_exports, \"equal\", {\n    enumerable: true,\n    get: function () {\n      return _equal.equal;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/equal\", [\"exports\", \"ember-cli-notifications/helpers/equal\"], function (_exports, _equal) {\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 _equal.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/external-user\", [\"exports\", \"web-app-ember-v2/mixins/role-helper\"], function (_exports, _roleHelper) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend(_roleHelper.default, {\n    compute(params) {\n      const member = params[0];\n\n      if (member.id === 'all') {\n        return false;\n      }\n\n      const workspace = params[1];\n      const project = params[2];\n      const projectRoles = this.projectRoles(member, workspace);\n      const role = this.findProjectRoleByProject(projectRoles, project);\n      return Ember.isPresent(this.externalRoles(role));\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/feature-flag\", [\"exports\", \"ember-feature-flags/helpers/feature-flag\"], function (_exports, _featureFlag) {\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 _featureFlag.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/format-date-to-time-ago\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.formatDateToTimeAgo = formatDateToTimeAgo;\n  _exports.default = void 0;\n\n  function formatDateToTimeAgo(params) {\n    const date = params[0];\n    return (0, _moment.default)(new Date(date)).startOf('second').fromNow().slice(0, -4);\n  }\n\n  var _default = Ember.Helper.helper(formatDateToTimeAgo);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/format-date\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute([date, dateFormat, timezone]) {\n      if (Ember.isPresent(date)) {\n        return (0, _moment.default)(new Date(date)).tz(timezone).format(dateFormat + ' HH:mm');\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/format-day\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute(date) {\n      return (0, _moment.default)(date[0]).format('ddd, MMM DD');\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/format-duration\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute(params) {\n      const [startedAt, endedAt] = params;\n\n      const result = this._calculateDuration(startedAt, endedAt);\n\n      let duration;\n\n      if (Ember.isPresent(result.seconds)) {\n        duration = `${result.seconds} s`;\n      } else {\n        duration = `${this._pad(result.hours)}:${this._pad(result.minutes)}`;\n      }\n\n      return duration;\n    },\n\n    _calculateDuration(startedAt, endedAt) {\n      const durationInSeconds = Math.floor((endedAt - startedAt) / 1000);\n      const durationInMinutes = Math.floor(((0, _moment.default)(new Date(endedAt)).startOf('minute') - (0, _moment.default)(new Date(startedAt)).startOf('minute')) / (60 * 1000));\n      const hours = Math.floor(durationInMinutes / 60);\n      const minutes = durationInMinutes % 60;\n      const seconds = Math.floor(durationInSeconds);\n      let result;\n\n      if (seconds < 60) {\n        result = {\n          seconds: seconds\n        };\n      } else {\n        result = {\n          hours: hours,\n          minutes: minutes\n        };\n      }\n\n      return result;\n    },\n\n    _pad(number) {\n      let paddedNumber = Math.round(number) + \"\";\n\n      if (paddedNumber.length < 2) {\n        paddedNumber = \"0\" + paddedNumber;\n      }\n\n      return paddedNumber;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/format-member-role\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    store: Ember.inject.service(),\n\n    compute(params) {\n      const role = params[0];\n\n      if (Ember.isPresent(role)) {\n        return role.capitalize().replace('_', ' ');\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/format-time\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.formatTime = formatTime;\n  _exports.default = void 0;\n\n  function formatTime([time, timezone]) {\n    if (time === null) {\n      return 'ongoing';\n    } else {\n      return (0, _moment.default)(time).tz(timezone).format('HH:mm');\n    }\n  }\n\n  var _default = Ember.Helper.helper(formatTime);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/format-user-initials\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.formatUserInitials = formatUserInitials;\n  _exports.default = void 0;\n\n  function formatUserInitials([member]) {\n    let firstName, lastName;\n\n    if (Ember.typeOf(member) === 'instance') {\n      ({\n        firstName,\n        lastName\n      } = member.getProperties('firstName', 'lastName'));\n    } else {\n      ({\n        firstName,\n        lastName\n      } = member);\n    }\n\n    if (!firstName && !lastName) {\n      return '';\n    }\n\n    return Ember.String.capitalize(firstName.charAt(0) + lastName.charAt(0));\n  }\n\n  var _default = Ember.Helper.helper(formatUserInitials);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/format-user-role\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute(params) {\n      if (Ember.isPresent(params[0])) {\n        return this.get('i18n').t('member-role.' + params[0]);\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/format-week\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute(params) {\n      const startDate = params[0];\n      let startDay;\n      let endDay;\n\n      if (Ember.isPresent(params[1])) {\n        startDay = (0, _moment.default)(params[0]);\n        endDay = (0, _moment.default)(params[1]);\n      } else {\n        startDay = this._getStartOfWeek(startDate);\n        endDay = this._getEndOfWeek(startDate);\n      }\n\n      return \"W\" + startDay.format(\"w (MMM D\") + \" - \" + this._endMonth(startDay, endDay) + endDay.format(\"D)\");\n    },\n\n    _getStartOfWeek(date) {\n      return (0, _moment.default)(date).startOf('week');\n    },\n\n    _getEndOfWeek(date) {\n      return (0, _moment.default)(date).endOf('week');\n    },\n\n    _endMonth(start, end) {\n      if (this._getMonth(start) !== this._getMonth(end)) {\n        return this._getMonth(end) + \" \";\n      } else {\n        return \"\";\n      }\n    },\n\n    _getMonth(date) {\n      return date.format(\"MMM\");\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/get-logo-url\", [\"exports\", \"web-app-ember-v2/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    compute() {\n      switch (_environment.default.environment) {\n        case 'production':\n          return '/assets/logos/38.png';\n\n        case 'staging':\n          return '/assets/logos/38-S.png';\n\n        default:\n          return '/assets/logos/38-D.png';\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/get-member-role\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    store: Ember.inject.service(),\n\n    compute(params) {\n      const member = params[0];\n      const target_id = params[1];\n      const workspace_id = this.get('store').peekRecord('workspace', target_id);\n\n      if (Ember.isPresent(workspace_id)) {\n        let role;\n        member.get('workspaceRoles').forEach(function (workspaceRole) {\n          if (workspaceRole.get('workspace.id') === target_id) {\n            role = workspaceRole.get('role').capitalize().replace('_', ' ');\n          }\n        });\n        return role;\n      } else {\n        let role;\n        member.get('projectRoles').forEach(function (projectRole) {\n          if (projectRole.get('project.id') === target_id) {\n            role = projectRole.get('role').capitalize().replace('_', ' ');\n          }\n        });\n        return role;\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/get-project-name\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    store: Ember.inject.service(),\n\n    compute(params) {\n      const project_id = params[0];\n\n      if (Ember.isPresent(project_id)) {\n        const project = this.get('store').peekRecord('project', project_id);\n\n        if (Ember.isPresent(project)) {\n          return this.get('store').peekRecord('project', project_id).get('name');\n        }\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/get-sort-icon\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    compute([colName, currentSort]) {\n      const sortedColumn = currentSort.find(sortedCol => sortedCol.includes(colName));\n      if (Ember.isEmpty(sortedColumn)) return 'fa fa-unsorted';\n      return sortedColumn.includes('desc') ? 'fa fa-sort-down' : 'fa fa-sort-up';\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/gt\", [\"exports\", \"ember-truth-helpers/helpers/gt\"], function (_exports, _gt) {\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 _gt.default;\n    }\n  });\n  Object.defineProperty(_exports, \"gt\", {\n    enumerable: true,\n    get: function () {\n      return _gt.gt;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/gte\", [\"exports\", \"ember-truth-helpers/helpers/gte\"], function (_exports, _gte) {\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 _gte.default;\n    }\n  });\n  Object.defineProperty(_exports, \"gte\", {\n    enumerable: true,\n    get: function () {\n      return _gte.gte;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-after\", [\"exports\", \"ember-moment/helpers/is-after\"], function (_exports, _isAfter) {\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 _isAfter.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-array\", [\"exports\", \"ember-truth-helpers/helpers/is-array\"], function (_exports, _isArray) {\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 _isArray.default;\n    }\n  });\n  Object.defineProperty(_exports, \"isArray\", {\n    enumerable: true,\n    get: function () {\n      return _isArray.isArray;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-before\", [\"exports\", \"ember-moment/helpers/is-before\"], function (_exports, _isBefore) {\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 _isBefore.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-between\", [\"exports\", \"ember-moment/helpers/is-between\"], function (_exports, _isBetween) {\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 _isBetween.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-email-valid\", [\"exports\", \"web-app-ember-v2/utils/general\"], function (_exports, _general) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.isEmailValid = isEmailValid;\n  _exports.default = void 0;\n\n  function isEmailValid([value]) {\n    return (0, _general.isEmail)(value);\n  }\n\n  var _default = Ember.Helper.helper(isEmailValid);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/is-empty\", [\"exports\", \"ember-truth-helpers/helpers/is-empty\"], function (_exports, _isEmpty) {\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 _isEmpty.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-equal\", [\"exports\", \"ember-truth-helpers/helpers/is-equal\"], function (_exports, _isEqual) {\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 _isEqual.default;\n    }\n  });\n  Object.defineProperty(_exports, \"isEqual\", {\n    enumerable: true,\n    get: function () {\n      return _isEqual.isEqual;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-same-or-after\", [\"exports\", \"ember-moment/helpers/is-same-or-after\"], function (_exports, _isSameOrAfter) {\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 _isSameOrAfter.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-same-or-before\", [\"exports\", \"ember-moment/helpers/is-same-or-before\"], function (_exports, _isSameOrBefore) {\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 _isSameOrBefore.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-same\", [\"exports\", \"ember-moment/helpers/is-same\"], function (_exports, _isSame) {\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 _isSame.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/is-starred-project\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    starredProjects: Ember.computed.readOnly('userPreferences.currentUser.starredProjects'),\n    userPreferences: Ember.inject.service(),\n\n    compute([project]) {\n      const starredProjects = this.get('starredProjects');\n\n      if (!starredProjects) {\n        return;\n      }\n\n      return starredProjects.includes(project.get('id'));\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/lt\", [\"exports\", \"ember-truth-helpers/helpers/lt\"], function (_exports, _lt) {\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 _lt.default;\n    }\n  });\n  Object.defineProperty(_exports, \"lt\", {\n    enumerable: true,\n    get: function () {\n      return _lt.lt;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/lte\", [\"exports\", \"ember-truth-helpers/helpers/lte\"], function (_exports, _lte) {\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 _lte.default;\n    }\n  });\n  Object.defineProperty(_exports, \"lte\", {\n    enumerable: true,\n    get: function () {\n      return _lte.lte;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/mardown-convert\", [\"exports\", \"marked\"], function (_exports, _marked) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.mardownConvert = mardownConvert;\n  _exports.default = void 0;\n\n  function mardownConvert(text) {\n    _marked.default.setOptions({\n      stylesheet: '/appRoot/path/to/stylesheet.css'\n    });\n\n    return (0, _marked.default)(text);\n  }\n\n  var _default = Ember.Helper.helper(mardownConvert);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/minutes-to-duration\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.minutesToDuration = minutesToDuration;\n  _exports.default = void 0;\n  const Hour = 60;\n\n  function minutesToDuration([minutes, formatInMinutes = false, hyphen = false]) {\n    if (hyphen && minutes === 0) {\n      return '-';\n    }\n\n    if (formatInMinutes) {\n      return _moment.default.duration(minutes, 'minutes').format('h:mm', {\n        trim: false\n      });\n    } else {\n      let hoursWithFraction = minutes / Hour;\n      let hoursWithRoundedFraction = Math.ceil(hoursWithFraction * 10) / 10;\n      return hoursWithRoundedFraction.toFixed(1);\n    }\n  }\n\n  var _default = Ember.Helper.helper(minutesToDuration);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/moment-add\", [\"exports\", \"ember-moment/helpers/moment-add\"], function (_exports, _momentAdd) {\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 _momentAdd.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-calendar\", [\"exports\", \"ember-moment/helpers/moment-calendar\"], function (_exports, _momentCalendar) {\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 _momentCalendar.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-diff\", [\"exports\", \"ember-moment/helpers/moment-diff\"], function (_exports, _momentDiff) {\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 _momentDiff.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-duration\", [\"exports\", \"ember-moment/helpers/moment-duration\"], function (_exports, _momentDuration) {\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 _momentDuration.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-format\", [\"exports\", \"ember-moment/helpers/moment-format\"], function (_exports, _momentFormat) {\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 _momentFormat.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-from-now\", [\"exports\", \"ember-moment/helpers/moment-from-now\"], function (_exports, _momentFromNow) {\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 _momentFromNow.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-from\", [\"exports\", \"ember-moment/helpers/moment-from\"], function (_exports, _momentFrom) {\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 _momentFrom.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-subtract\", [\"exports\", \"ember-moment/helpers/moment-subtract\"], function (_exports, _momentSubtract) {\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 _momentSubtract.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-to-date\", [\"exports\", \"ember-moment/helpers/moment-to-date\"], function (_exports, _momentToDate) {\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 _momentToDate.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-to-now\", [\"exports\", \"ember-moment/helpers/moment-to-now\"], function (_exports, _momentToNow) {\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 _momentToNow.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-to\", [\"exports\", \"ember-moment/helpers/moment-to\"], function (_exports, _momentTo) {\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 _momentTo.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment-unix\", [\"exports\", \"ember-moment/helpers/unix\"], function (_exports, _unix) {\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 _unix.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/moment\", [\"exports\", \"ember-moment/helpers/moment\"], function (_exports, _moment) {\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 _moment.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/not-eq\", [\"exports\", \"ember-truth-helpers/helpers/not-equal\"], function (_exports, _notEqual) {\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 _notEqual.default;\n    }\n  });\n  Object.defineProperty(_exports, \"notEq\", {\n    enumerable: true,\n    get: function () {\n      return _notEqual.notEq;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/not\", [\"exports\", \"ember-truth-helpers/helpers/not\"], function (_exports, _not) {\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 _not.default;\n    }\n  });\n  Object.defineProperty(_exports, \"not\", {\n    enumerable: true,\n    get: function () {\n      return _not.not;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/now\", [\"exports\", \"ember-moment/helpers/now\"], function (_exports, _now) {\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 _now.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/on-document\", [\"exports\", \"ember-on-helper/helpers/on-document\"], function (_exports, _onDocument) {\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 _onDocument.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/on-window\", [\"exports\", \"ember-on-helper/helpers/on-window\"], function (_exports, _onWindow) {\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 _onWindow.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/on\", [\"exports\", \"ember-on-helper/helpers/on\"], function (_exports, _on) {\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 _on.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/or\", [\"exports\", \"ember-truth-helpers/helpers/or\"], function (_exports, _or) {\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 _or.default;\n    }\n  });\n  Object.defineProperty(_exports, \"or\", {\n    enumerable: true,\n    get: function () {\n      return _or.or;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/perform\", [\"exports\", \"ember-concurrency/helpers/perform\"], function (_exports, _perform) {\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 _perform.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/pluralize\", [\"exports\", \"ember-inflector/lib/helpers/pluralize\"], function (_exports, _pluralize) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _pluralize.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/project-limit-left-time\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    compute([usedTime, timeLimit]) {\n      const usedTimeInHours = Number(usedTime);\n      const timeLimitInHours = Number(timeLimit);\n      return Math.round((timeLimitInHours - usedTimeInHours) * 100) / 100;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/project-limit-visibility-abbreviation\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute([visibilityRoles]) {\n      return visibilityRoles.split(',').filter(key => key !== 'Owner').map(key => {\n        return this.get('i18n').t(`authenticated.reports.time-limits.${key.trim()}`);\n      }).join(', ');\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/project-limit-visibility-owner\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute([visibilityRoles, ownerName]) {\n      const roles = visibilityRoles.split(',');\n\n      if (roles.includes('Owner')) {\n        const [firstName, lastName] = ownerName.split(' ');\n\n        if (roles.length > 1) {\n          return `${firstName[0]}${lastName[0]}, `;\n        } else {\n          return `${firstName[0]}${lastName[0]}`;\n        }\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/recurring-type\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute([recurringType]) {\n      return this.get('i18n').t(`authenticated.reports.time-limits.${recurringType.trim()}`);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/route-action\", [\"exports\", \"ember-route-action-helper/helpers/route-action\"], function (_exports, _routeAction) {\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 _routeAction.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/seconds-to-duration\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.secondsToDuration = secondsToDuration;\n  _exports.default = void 0;\n\n  function secondsToDuration(seconds) {\n    return _moment.default.duration(seconds[0], 'seconds').format(\"h:mm\", {\n      trim: false\n    });\n  }\n\n  var _default = Ember.Helper.helper(secondsToDuration);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/singularize\", [\"exports\", \"ember-inflector/lib/helpers/singularize\"], function (_exports, _singularize) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _singularize.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/t\", [\"exports\", \"ember-i18n/helper\"], function (_exports, _helper) {\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 _helper.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/task\", [\"exports\", \"ember-concurrency/helpers/task\"], function (_exports, _task) {\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 _task.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/tasks-sum\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute(params) {\n      return params[0].mapBy('summaryDuration').reduce(function (memo, num) {\n        return memo + num;\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/time-rounding-label\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute([timeRounding]) {\n      const value = timeRounding.get('value');\n      const threshold = timeRounding.get('threshold');\n\n      if (value === 0) {\n        return this.get('i18n').t('project-form.no-rounding');\n      } else {\n        return this.get('i18n').t('project-form.rounding-label', {\n          value,\n          threshold\n        });\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/unix\", [\"exports\", \"ember-moment/helpers/unix\"], function (_exports, _unix) {\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 _unix.default;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/user-day-sum\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.userDaySum = userDaySum;\n  _exports.default = void 0;\n\n  function userDaySum([stats, day]) {\n    const days = stats.weekly_daily_stats.flatMap(weekly => weekly.daily_stats);\n    const foundDay = days.findBy('day', day);\n    return foundDay ? foundDay.duration : 0;\n  }\n\n  var _default = Ember.Helper.helper(userDaySum);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/user-role\", [], function () {\n  \"use strict\";\n});","define(\"web-app-ember-v2/helpers/user-week-sum\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.userWeekSum = userWeekSum;\n  _exports.default = void 0;\n\n  function userWeekSum([stats, week]) {\n    const {\n      start_date,\n      end_date\n    } = week;\n    const foundWeek = stats.weekly_daily_stats.find(week => {\n      return week.start_date === start_date && week.end_date === end_date;\n    });\n\n    if (!foundWeek) {\n      return 0;\n    }\n\n    return foundWeek.daily_stats.reduce((sum, stat) => {\n      return sum + stat.duration;\n    }, 0);\n  }\n\n  var _default = Ember.Helper.helper(userWeekSum);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/utc\", [\"exports\", \"ember-moment/helpers/utc\"], function (_exports, _utc) {\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 _utc.default;\n    }\n  });\n  Object.defineProperty(_exports, \"utc\", {\n    enumerable: true,\n    get: function () {\n      return _utc.utc;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/week-format\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute(params) {\n      const startDate = params[0];\n      let startDay = this.getStartOfWeek(startDate);\n      let endDay = this.getEndOfWeek(startDate);\n      return \"Week No. \" + startDay.format(\"w | MMM(D\") + \" - \" + this.endMonth(startDay, endDay) + endDay.format(\"D)\");\n    },\n\n    getStartOfWeek(date) {\n      return (0, _moment.default)(date).startOf('week');\n    },\n\n    getEndOfWeek(date) {\n      return (0, _moment.default)(date).endOf('week');\n    },\n\n    endMonth(start, end) {\n      if (this.getMonth(start) !== this.getMonth(end)) {\n        return this.getMonth(end) + \" \";\n      } else {\n        return \"\";\n      }\n    },\n\n    getMonth(date) {\n      return date.format(\"MMM\");\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/week-sum\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Helper.extend({\n    i18n: Ember.inject.service(),\n\n    compute(days) {\n      if (days.length) {\n        return days[0].reduce(function (memo, num) {\n          return memo + num.duration;\n        }, 0);\n      } else {\n        return \"00:00:00\";\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/helpers/xor\", [\"exports\", \"ember-truth-helpers/helpers/xor\"], function (_exports, _xor) {\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 _xor.default;\n    }\n  });\n  Object.defineProperty(_exports, \"xor\", {\n    enumerable: true,\n    get: function () {\n      return _xor.xor;\n    }\n  });\n});","define(\"web-app-ember-v2/helpers/zero-to-dash\", [\"exports\", \"web-app-ember-v2/helpers/check-if-equals-zero\"], function (_exports, _checkIfEqualsZero) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function zeroToDash([strVal]) {\n    return (0, _checkIfEqualsZero.checkIfEqualsZero)(strVal) ? \"-\" : strVal;\n  }\n\n  var _default = Ember.Helper.helper(zeroToDash);\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/add-data-role-to-link-to\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function initialize() {\n    Ember.LinkComponent.reopen({\n      attributeBindings: ['data-role']\n    });\n  }\n\n  var _default = {\n    name: 'add-data-role-to-link-to',\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/app-version\", [\"exports\", \"ember-cli-app-version/initializer-factory\", \"web-app-ember-v2/config/environment\"], function (_exports, _initializerFactory, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  let name, version;\n\n  if (_environment.default.APP) {\n    name = _environment.default.APP.name;\n    version = _environment.default.APP.version;\n  }\n\n  var _default = {\n    name: 'App Version',\n    initialize: (0, _initializerFactory.default)(name, version)\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/container-debug-adapter\", [\"exports\", \"ember-resolver/resolvers/classic/container-debug-adapter\"], function (_exports, _containerDebugAdapter) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'container-debug-adapter',\n\n    initialize() {\n      let app = arguments[1] || arguments[0];\n      app.register('container-debug-adapter:main', _containerDebugAdapter.default);\n      app.inject('container-debug-adapter:main', 'namespace', 'application:main');\n    }\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/ember-concurrency\", [\"exports\", \"ember-concurrency/initializers/ember-concurrency\"], function (_exports, _emberConcurrency) {\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 _emberConcurrency.default;\n    }\n  });\n});","define(\"web-app-ember-v2/initializers/ember-data-change-tracker\", [\"exports\", \"ember-data-change-tracker\"], function (_exports, _emberDataChangeTracker) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'ember-data-change-tracker',\n    after: 'ember-data',\n    initialize: _emberDataChangeTracker.initializer\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/ember-data-data-adapter\", [\"exports\", \"@ember-data/debug/setup\"], function (_exports, _setup) {\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 _setup.default;\n    }\n  });\n});","define(\"web-app-ember-v2/initializers/ember-data\", [\"exports\", \"ember-data\", \"ember-data/setup-container\"], function (_exports, _emberData, _setupContainer) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  /*\n    This code initializes EmberData in an Ember application.\n  \n    It ensures that the `store` service is automatically injected\n    as the `store` property on all routes and controllers.\n  */\n  var _default = {\n    name: 'ember-data',\n    initialize: _setupContainer.default\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/ember-form-for-extend\", [\"exports\", \"ember-form-for/components/form-for\", \"ember-form-for/components/form-controls/textarea\"], function (_exports, _formFor, _textarea) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function initialize() {\n    _formFor.default.reopen({\n      classNameBindings: ['horizontal:form-horizontal'],\n      horizontal: false\n    });\n\n    _textarea.default.reopenClass({\n      positionalParams: ['value']\n    });\n  }\n\n  var _default = {\n    name: 'ember-form-for-customization',\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/ember-g-recaptcha\", [\"exports\", \"web-app-ember-v2/config/environment\", \"ember-g-recaptcha/configuration\"], function (_exports, _environment, _configuration) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  /*jshint unused:false*/\n  var _default = {\n    name: 'ember-g-recaptcha',\n    initialize: function ()\n    /* registry */\n    {\n      const config = _environment.default.gReCaptcha || {};\n\n      _configuration.default.setProperties(config);\n    }\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/ember-i18n\", [\"exports\", \"ember-i18n/initializers/ember-i18n\"], function (_exports, _emberI18n) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _emberI18n.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/ember-simple-auth\", [\"exports\", \"web-app-ember-v2/config/environment\", \"ember-simple-auth/configuration\", \"ember-simple-auth/initializers/setup-session\", \"ember-simple-auth/initializers/setup-session-service\", \"ember-simple-auth/initializers/setup-session-restoration\"], function (_exports, _environment, _configuration, _setupSession, _setupSessionService, _setupSessionRestoration) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'ember-simple-auth',\n\n    initialize(registry) {\n      const config = _environment.default['ember-simple-auth'] || {};\n      config.rootURL = _environment.default.rootURL || _environment.default.baseURL;\n\n      _configuration.default.load(config);\n\n      (0, _setupSession.default)(registry);\n      (0, _setupSessionService.default)(registry);\n      (0, _setupSessionRestoration.default)(registry);\n    }\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/export-application-global\", [\"exports\", \"web-app-ember-v2/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize() {\n    var application = arguments[1] || arguments[0];\n\n    if (_environment.default.exportApplicationGlobal !== false) {\n      var theGlobal;\n\n      if (typeof window !== 'undefined') {\n        theGlobal = window;\n      } else if (typeof global !== 'undefined') {\n        theGlobal = global;\n      } else if (typeof self !== 'undefined') {\n        theGlobal = self;\n      } else {\n        // no reasonable global, just bail\n        return;\n      }\n\n      var value = _environment.default.exportApplicationGlobal;\n      var globalName;\n\n      if (typeof value === 'string') {\n        globalName = value;\n      } else {\n        globalName = Ember.String.classify(_environment.default.modulePrefix);\n      }\n\n      if (!theGlobal[globalName]) {\n        theGlobal[globalName] = application;\n        application.reopen({\n          willDestroy: function () {\n            this._super.apply(this, arguments);\n\n            delete theGlobal[globalName];\n          }\n        });\n      }\n    }\n  }\n\n  var _default = {\n    name: 'export-application-global',\n    initialize: initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/form-for-initializer\", [\"exports\", \"web-app-ember-v2/config/environment\", \"ember-form-for/components/form-field\", \"ember-form-for/components/form-controls/button\", \"ember-form-for/components/form-controls/submit\", \"ember-form-for/components/form-controls/reset\"], function (_exports, _environment, _formField, _button, _submit, _reset) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n  const {\n    merge\n  } = Ember;\n  const DEFAULT_CONFIG = {\n    buttonClasses: ['form-button'],\n    fieldClasses: ['form-field'],\n    fieldErrorClass: 'form-field--has-errors',\n    errorClasses: ['form-field--errors'],\n    hintClasses: ['form-field--hint'],\n    inputClasses: ['form-field--control'],\n    labelClasses: ['form-field--label'],\n    resetClasses: ['form-button--reset'],\n    submitClasses: ['form-button--submit']\n  };\n\n  function initialize()\n  /* application */\n  {\n    let formForConfig = merge(DEFAULT_CONFIG, _environment.default['ember-form-for']);\n\n    _formField.default.reopen({\n      classNames: formForConfig.fieldClasses,\n      classNameBindings: [`hasErrors:${formForConfig.fieldErrorClass}`],\n      errorClasses: formForConfig.errorClasses,\n      hintClasses: formForConfig.hintClasses,\n      inputClasses: formForConfig.inputClasses,\n      labelClasses: formForConfig.labelClasses\n    });\n\n    _button.default.reopen({\n      classNames: formForConfig.buttonClasses\n    });\n\n    _submit.default.reopen({\n      classNames: formForConfig.submitClasses\n    });\n\n    _reset.default.reopen({\n      classNames: formForConfig.resetClasses\n    });\n  }\n\n  var _default = {\n    name: 'form-for-initializer',\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/i18n\", [\"exports\", \"ember-i18n-inject/initializers/i18n\"], function (_exports, _i18n) {\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 _i18n.default;\n    }\n  });\n  Object.defineProperty(_exports, \"initialize\", {\n    enumerable: true,\n    get: function () {\n      return _i18n.initialize;\n    }\n  });\n});","define(\"web-app-ember-v2/initializers/link-reload\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function initialize() {\n    Ember.LinkComponent.reopen({\n      reload: false,\n\n      _invoke(event) {\n        event.preventDefault();\n\n        if (!!this.get('active') && this.reload) {\n          const currentRouteName = Ember.getOwner(this).lookup('controller:application').get('currentRouteName');\n          const targetRouteName = this.get('targetRouteName');\n\n          if (currentRouteName !== targetRouteName) {\n            return this._super(event);\n          }\n\n          const currentRouteInstance = Ember.getOwner(this).lookup(`route:${currentRouteName}`);\n          return currentRouteInstance.refresh();\n        }\n\n        return this._super(event);\n      }\n\n    });\n  }\n\n  var _default = {\n    name: 'link-reload',\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/load-bootstrap-config\", [\"exports\", \"web-app-ember-v2/config/environment\", \"ember-bootstrap/config\"], function (_exports, _environment, _config) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize()\n  /* container, application */\n  {\n    _config.default.load(_environment.default['ember-bootstrap'] || {});\n  }\n\n  var _default = {\n    name: 'load-bootstrap-config',\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/local-storage-adapter\", [\"exports\", \"ember-local-storage/initializers/local-storage-adapter\"], function (_exports, _localStorageAdapter) {\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 _localStorageAdapter.default;\n    }\n  });\n  Object.defineProperty(_exports, \"initialize\", {\n    enumerable: true,\n    get: function () {\n      return _localStorageAdapter.initialize;\n    }\n  });\n});","define(\"web-app-ember-v2/initializers/model-locale\", [\"exports\", \"ember-model-validator/initializers/model-locale\"], function (_exports, _modelLocale) {\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 _modelLocale.default;\n    }\n  });\n  Object.defineProperty(_exports, \"initialize\", {\n    enumerable: true,\n    get: function () {\n      return _modelLocale.initialize;\n    }\n  });\n});","define(\"web-app-ember-v2/initializers/moment-configuration\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize() {\n    _moment.default.updateLocale('en', {\n      week: {\n        dow: 1\n      }\n    });\n  }\n\n  var _default = {\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/notifications\", [\"exports\", \"ember-cli-notifications/services/notifications\"], function (_exports, _notifications) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'notification-messages-service',\n\n    initialize() {\n      let application = arguments[0];\n      application.register('notification-messages:service', _notifications.default);\n      ['controller', 'component', 'route', 'router', 'service', 'show-notification:service'].forEach(injectionTarget => {\n        application.inject(injectionTarget, 'notifications', 'notification-messages:service');\n      });\n    }\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/object-proxy\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize() {\n    Ember.ObjectProxy.reopen({\n      unknownProperty(key) {\n        if (this.isDestroying || this.isDestroyed) {\n          return;\n        }\n\n        let content = this.content;\n\n        if (!content || content.isDestroying || content.isDestroyed) {\n          return;\n        }\n\n        return this._super(key);\n      }\n\n    });\n  }\n\n  var _default = {\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/preloader\", [\"exports\", \"ember-cli-preloader/services/preloader\"], function (_exports, _preloader) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const {\n    inject,\n    run\n  } = Ember;\n  var _default = {\n    name: 'preloader',\n    initialize: function (app) {\n      let options = app.preloader || {};\n\n      let service = _preloader.default.create({\n        options: options\n      });\n\n      app.register('service:preloader', service, {\n        instantiate: false\n      });\n    }\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/pubnub\", [\"exports\", \"web-app-ember-v2/services/pubnub\"], function (_exports, _pubnub) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'pubnub-service',\n\n    initialize(application) {\n      application.register('service:pubnub', _pubnub.default);\n    }\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/reopen-model\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  let hasManyByBelongsToId = {};\n\n  function commitBelongsTo(name, relationship) {\n    let belongsToIdByName = this.get('belongsToIdByName'),\n        oldBelongsToId = belongsToIdByName[name],\n        belongsToId = this.belongsTo(name).id();\n\n    if (oldBelongsToId !== belongsToId) {\n      if (oldBelongsToId) {\n        let inverse = this.getInverse(name);\n\n        if (inverse) {\n          let inverseHasMany = hasManyByBelongsToId[oldBelongsToId];\n          inverseHasMany[inverse].delete(this);\n        }\n      }\n\n      if (belongsToId) {\n        let inverse = this.getInverse(name);\n\n        if (inverse) {\n          let hasManyByName;\n\n          if (!hasManyByBelongsToId[belongsToId]) {\n            hasManyByBelongsToId[belongsToId] = {};\n          }\n\n          hasManyByName = hasManyByBelongsToId[belongsToId];\n\n          if (!hasManyByName[inverse]) {\n            hasManyByName[inverse] = new Set();\n          }\n\n          hasManyByName[inverse].add(this);\n        }\n\n        belongsToIdByName[name] = belongsToId;\n      } else {\n        delete belongsToIdByName[name];\n      }\n    }\n  }\n\n  function commit() {\n    Ember.run.schedule('actions', this, function () {\n      this.eachRelationship((name, descriptor) => {\n        if (descriptor.kind === 'belongsTo') {\n          commitBelongsTo.call(this, name, descriptor);\n        }\n      });\n    });\n  }\n\n  var _default = {\n    name: 'reopen-model',\n    initialize: function () {\n      _emberData.default.Model.reopen({\n        init: function () {\n          this._super();\n\n          this.set('belongsToIdByName', {});\n        },\n        belongsToIdByName: null,\n        getRelationship: function (name) {\n          let relationship;\n          this.eachRelationship((relationshipName, descriptor) => {\n            if (name === relationshipName) {\n              relationship = descriptor;\n            }\n          });\n          return relationship;\n        },\n        getInverse: function (name) {\n          let relationship = this.getRelationship(name),\n              inverse = relationship.options.inverse;\n\n          if (!inverse) {\n            if (relationship.kind === 'belongsTo') {\n              inverse = this.belongsTo(name).belongsToRelationship.inverseKey;\n            } else {\n              inverse = this.hasMany(name).hasManyRelationship.inverseKey;\n            }\n          }\n\n          return inverse;\n        },\n        rollbackRelationship: function (name) {\n          let relationship = this.getRelationship(name);\n\n          if (relationship.kind === 'belongsTo') {\n            let belongsToIdByName = this.get('belongsToIdByName'),\n                id = belongsToIdByName[name],\n                value = id;\n\n            if (id) {\n              let record = this.store.peekRecord(relationship.type, id);\n\n              if (record) {\n                value = record;\n              }\n            }\n\n            this.set(name, value);\n          } else {\n            let hasManyByName = hasManyByBelongsToId[this.get('id')],\n                hasMany = new Set(hasManyByName[name]);\n\n            if (hasMany) {\n              let inverse = this.getInverse(name);\n              this.get(name).forEach(child => {\n                hasMany.add(child);\n              });\n              hasMany.forEach(record => {\n                record.rollbackRelationship(inverse);\n              });\n            }\n          }\n        },\n        rollbackRelationships: function (kind) {\n          this.eachRelationship((name, descriptor) => {\n            if (!kind || descriptor.kind === kind) {\n              this.rollbackRelationship(name);\n            }\n          });\n        },\n        ready: function () {\n          commit.call(this);\n        },\n        didCreate: function () {\n          commit.call(this);\n        },\n        didLoad: function () {\n          commit.call(this);\n        },\n        didUpdate: function () {\n          commit.call(this);\n        }\n      });\n    }\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/show-notification\", [\"exports\", \"web-app-ember-v2/services/show-notification\"], function (_exports, _showNotification) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize(application) {\n    application.register('show-notification:service', _showNotification.default);\n    ['controller', 'component', 'route', 'service'].forEach(injectionTarget => application.inject(injectionTarget, 'showNotification', 'show-notification:service'));\n  }\n\n  var _default = {\n    name: 'show-notification-service',\n    initialize: initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/user-preferences\", [\"exports\", \"web-app-ember-v2/services/user-preferences\"], function (_exports, _userPreferences) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'user-preferences-service',\n\n    initialize(application) {\n      application.register('service:user-preferences', _userPreferences.default);\n      ['controller', 'component', 'route'].forEach(injectionTarget => {\n        application.inject(injectionTarget, 'userPreferences', 'service:user-preferences');\n      });\n    }\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/user-presence\", [\"exports\", \"web-app-ember-v2/services/user-presence\"], function (_exports, _userPresence) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'user-presence-service',\n    after: 'user-preferences-service',\n\n    initialize(application) {\n      application.register('service:user-presence', _userPresence.default);\n    }\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/user-time-session\", [\"exports\", \"web-app-ember-v2/services/user-time-session\"], function (_exports, _userTimeSession) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'user-time-session-service',\n\n    initialize(application) {\n      application.register('service:user-time-session', _userTimeSession.default);\n    }\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/initializers/viewport-config\", [\"exports\", \"ember-in-viewport/initializers/viewport-config\"], function (_exports, _viewportConfig) {\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 _viewportConfig.default;\n    }\n  });\n  Object.defineProperty(_exports, \"initialize\", {\n    enumerable: true,\n    get: function () {\n      return _viewportConfig.initialize;\n    }\n  });\n});","define(\"web-app-ember-v2/instance-initializers/ajax-setup\", [\"exports\", \"jquery\"], function (_exports, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize(app) {\n    _jquery.default.ajaxSetup({\n      headers: {\n        Accept: \"application/vnd.web_app+json; version=1\"\n      },\n      error: xhr => {\n        if (xhr.status === 401) {\n          let router = app.lookup('service:-routing');\n          router.transitionTo('sign-in', []);\n        }\n      }\n    });\n  }\n\n  var _default = {\n    initialize,\n    name: 'ajax-error'\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/ember-data\", [\"exports\", \"ember-data/initialize-store-service\"], function (_exports, _initializeStoreService) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'ember-data',\n    initialize: _initializeStoreService.default\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/ember-i18n\", [\"exports\", \"ember-i18n/instance-initializers/ember-i18n\"], function (_exports, _emberI18n) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _emberI18n.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/ember-simple-auth\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  // This is only needed for backwards compatibility and will be removed in the\n  // next major release of ember-simple-auth. Unfortunately, there is no way to\n  // deprecate this without hooking into Ember's internals…\n  var _default = {\n    name: 'ember-simple-auth',\n\n    initialize() {}\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/raven-setup\", [\"exports\", \"ember-cli-sentry\", \"web-app-ember-v2/config/environment\"], function (_exports, _emberCliSentry, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'sentry-setup',\n\n    initialize(application) {\n      (0, _emberCliSentry.initialize)(application.lookup ? application : application.container, _environment.default);\n    }\n\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/router-service\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize(appInstance) {\n    let routerService = appInstance.lookup('service:router');\n    routerService.reopen({\n      store: Ember.inject.service(),\n      userPreferences: Ember.inject.service(),\n      previousRoute: null,\n      previousRouteParams: null,\n\n      goBack() {\n        const prevRoute = this.get('previousRoute');\n\n        if (prevRoute && prevRoute !== this.currentURL) {\n          this.transitionTo(prevRoute);\n        } else {\n          const workspaceId = this.get('store').peekAll('workspace').get('firstObject.id');\n          const currentUserId = this.get('userPreferences.currentUser.id');\n          this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspaceId, 'all', currentUserId);\n        }\n      }\n\n    });\n  }\n\n  var _default = {\n    name: 'router-service',\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/rsvp-error-handler\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize(appInstance) {\n    let sentryService = appInstance.lookup('service:raven');\n    Ember.RSVP.on('error', function (reason) {\n      if (Ember.isBlank(reason)) {\n        return;\n      } // An aborted transition propogates an error to RSVP\n\n\n      if (reason.name !== 'TransitionAborted') {\n        sentryService.captureException(reason);\n      }\n    });\n  }\n\n  var _default = {\n    name: 'rsvp-error-handler',\n    initialize\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/user-errors-handling-service\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize(app) {\n    Ember.onerror = function (error) {\n      let i18n = app.lookup('service:i18n');\n      let showNotification = app.lookup('service:show-notification');\n      showNotification.call('error', i18n.t('notifications.errors.backend-error'));\n      throw error;\n    };\n  }\n\n  var _default = {\n    initialize,\n    name: 'user-errors-handling-service'\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/user-presence-service\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize() {}\n\n  var _default = {\n    initialize,\n    name: 'start-user-presence'\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/instance-initializers/user-time-session-service\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize() {}\n\n  var _default = {\n    initialize,\n    name: 'start-user-time-session'\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/invitations/confirmation/controller\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    showConfirmProjectInvitationModal: false,\n    invitationDate: Ember.computed('invitation', function () {\n      return (0, _moment.default)(this.get('model.invitation.createdAt')).format('dddd, YYYY-MM-DD');\n    }),\n    isExternalRole: Ember.computed('invitation', function () {\n      return /^external/.test(this.get('model.invitation.role'));\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/invitations/confirmation/route\", [\"exports\", \"jquery\", \"web-app-ember-v2/config/environment\", \"ember-simple-auth/mixins/authenticated-route-mixin\"], function (_exports, _jquery, _environment, _authenticatedRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_authenticatedRouteMixin.default, {\n    i18n: Ember.inject.service(),\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n\n    model(params) {\n      this.set('token', params.token);\n      return this.store.queryRecord('invitation', {\n        token: params.token\n      }).then(invitation => {\n        this.set('invitation', invitation);\n\n        if (invitation.get('confirmed')) {\n          let workspace = this.store.find('workspace', invitation.get('targetId'));\n          this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace);\n        } else {\n          return Ember.RSVP.hash({\n            workspaces: this.store.findAll('workspace'),\n            invitation: invitation,\n            invitationTarget: this._getTypeName(invitation),\n            invitationTargetName: this._getTargetName(invitation),\n            inviter: invitation.get('inviter'),\n            projects: this._fetchProjects(),\n            user: this.get('userPreferences').getCurrentUser()\n          });\n        }\n      }).catch(() => {\n        let firstWorkspace = this.store.peekAll('workspace').get('firstObject');\n        this.transitionTo('authenticated.workspaces.show.projects.show.activity', firstWorkspace);\n      });\n    },\n\n    _fetchProjects() {\n      return new Ember.RSVP.Promise(resolve => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'GET',\n            dataType: 'json',\n            url: _environment.default.APP.backendUrl + '/api/projects' + '?token=' + this.get('token'),\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response.data);\n          });\n        });\n      });\n    },\n\n    _getTargetName(invitation) {\n      return new Ember.RSVP.Promise(resolve => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          let target;\n\n          if (invitation.get('targetType') === 'Project') {\n            target = 'projects';\n          } else {\n            target = 'workspaces';\n          }\n\n          _jquery.default.ajax({\n            type: 'GET',\n            dataType: 'html',\n            url: _environment.default.APP.backendUrl + '/api/' + target + '/' + invitation.get('targetId') + '/name' + '?token=' + this.get('token'),\n            headers: {\n              Authorization: headerValue\n            }\n          }).done(response => {\n            resolve(response);\n          }).fail(() => {\n            resolve('*');\n            this.showNotification.call('error', 'The ' + invitation.get('targetType') + ' name was not found');\n          });\n        });\n      });\n    },\n\n    _getTypeName(invitation) {\n      const name = invitation.get('targetType').toLowerCase();\n      return this.get('i18n').t(name);\n    },\n\n    alreadyInInvitedWorkspace() {\n      let targetId = this.get('invitation.targetId');\n      const currentUser = this.userPreferences.currentUser;\n      return Ember.isPresent(currentUser.get('workspaceRoles').findBy('workspace.id', targetId));\n    },\n\n    actions: {\n      confirmInvitation() {\n        if (this.alreadyInInvitedWorkspace()) {\n          this.transitionTo('authenticated.workspaces.show.projects.show.activity', this.get('invitation.targetId'), 'all', this.get('userPreferences.currentUser.id'));\n          this.showNotification.call('success', 'You are already assigned to this workspace');\n        } else if (/^external/.test(this.get('invitation.role'))) {\n          this.controller.set('showConfirmProjectInvitationModal', true);\n        } else if (this.get('invitation.targetType') === 'Workspace') {\n          this.send('sendInvitationRequest', {\n            token: this.get('token')\n          });\n        } else {\n          if (this.get('invitation.role') === 'staff' || this.get('invitation.role') === 'limited_staff') {\n            this.send('sendInvitationRequest', {\n              token: this.get('token')\n            });\n          } else {\n            this.controller.set('showConfirmProjectInvitationModal', true);\n          }\n        }\n      },\n\n      confirmProjectInvitationInRoute(workspace) {\n        const data = {\n          workspace_id: workspace.get('id'),\n          token: this.get('token')\n        };\n        this.send('sendInvitationRequest', data);\n      },\n\n      sendInvitationRequest(data) {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          _jquery.default.ajax({\n            type: 'GET',\n            dataType: 'json',\n            url: _environment.default.APP.backendUrl + '/invitations/confirm',\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            const invitation = this.get('invitation');\n\n            if (invitation.get('targetType') === 'Workspace') {\n              if (/^external/.test(invitation.get('role'))) {\n                this.transitionTo('authenticated.workspaces.show.projects.show.activity', data.workspace_id, invitation.get('projectIds.firstObject'), this.get('userPreferences.currentUser.id'));\n              } else {\n                this.transitionTo('authenticated.workspaces.show.projects.show.activity', invitation.get('targetId'), 'all', this.get('userPreferences.currentUser.id'));\n              }\n            } else {\n              let workspace = this.get('store').peekRecord('workspace', data.workspace_id);\n              this.get('store').find('project', invitation.get('targetId')).then(project => {\n                workspace.get('projects').pushObject(project);\n                this.transitionTo('authenticated.workspaces.show.projects.show.activity', data.workspace_id, invitation.get('targetId'), this.get('userPreferences.currentUser.id'));\n              });\n            }\n\n            Ember.run.bind(this, this.showNotification.call('success', response.invitation));\n          }).fail(response => {\n            this.showNotification.call('error', response.responseJSON.errors.invitation);\n          });\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/invitations/confirmation/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"JuBXTmcw\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,5],null,[[\\\"user\\\"],[[35,4]]]]],[10,\\\"div\\\"],[14,0,\\\"main-content\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"container invitation-content\\\"],[12],[6,[37,7],[[35,6]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"model\\\",\\\"targetName\\\",\\\"inviterFirstName\\\",\\\"inviterLastName\\\",\\\"invitationDate\\\"],[[35,1],[35,1,[\\\"invitationTargetName\\\"]],[35,1,[\\\"inviter\\\",\\\"firstName\\\"]],[35,1,[\\\"inviter\\\",\\\"lastName\\\"]],[35,0]]]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"model\\\",\\\"targetName\\\",\\\"inviterFirstName\\\",\\\"inviterLastName\\\",\\\"invitationDate\\\"],[[35,1],[35,1,[\\\"invitationTargetName\\\"]],[35,1,[\\\"inviter\\\",\\\"firstName\\\"]],[35,1,[\\\"inviter\\\",\\\"lastName\\\"]],[35,0]]]]]],\\\"parameters\\\":[]}]]],[13],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"invitationDate\\\",\\\"model\\\",\\\"internal-invitation-content\\\",\\\"external-invitation-content\\\",\\\"user\\\",\\\"invitation-navbar\\\",\\\"isExternalRole\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/invitations/confirmation/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/locales/en/translations\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    'notifications': {\n      'version': {\n        'title': 'New version available',\n        'text': 'There is a new version of the application available. Please reload the page now to get access to the newest changes or do it later by doing that manually.',\n        'cancel': 'Cancel',\n        'reload': 'Reload'\n      },\n      'user': {\n        'membership': {\n          'disabled': 'Your membership has been disabled'\n        }\n      },\n      'errors': {\n        'access-denied': 'You do not have access to perform this action',\n        'backend-error': 'Something went wrong. Please try again in a few minutes',\n        'service-unavailable': 'Service is temporarily unavailable. Please try again in a few minutes'\n      }\n    },\n    'project': 'Project',\n    'workspace': 'Workspace',\n    'date-range': {\n      'work-days-info': 'Work days: {{workDays}} ({{manHours}} man-hours)',\n      'reload-view': 'Reload view',\n      'show-tracked-time': 'Show tracked time',\n      'show-billable-time': 'Show billable time',\n      'show-tasks-without-activity': 'Show tasks without activity'\n    },\n    'presence-dropdown': {\n      'clock-out': 'Clock out',\n      'clock-in': 'Clock in',\n      'away': 'Away',\n      'return': 'Return',\n      'you-changed-status-to': '{{firstName}}, you are now {{type}}',\n      'clocked_out': 'Clocked out',\n      'clocked_in': 'Clocked in',\n      'returned': 'Returned',\n      'away-label': ' (should be back at {{beBackAt}})'\n    },\n    'presence-modal': {\n      'cancel': 'Cancel',\n      'create': 'Create',\n      'be-back-at': 'be back at',\n      'back-time': \"When you'll be back?\",\n      'min': '{{duration}} min',\n      'hour': '{{duration}} h',\n      'custom-time': 'Custom time'\n    },\n    'filters-for-workspaces': {\n      'all-workspaces': 'All workspaces',\n      'configure-current-workspace': 'Configure current workspace',\n      'create-workspace': 'Create workspace',\n      'leave-workspace': 'Leave workspace',\n      'confirmation-message': 'Switching workspaces will stop ongoing time session',\n      'workspace-changed': 'Workspace has been changed'\n    },\n    'filters-for-projects': {\n      'all-projects': 'All projects',\n      'configure-project': 'Configure project',\n      'create-project': 'Create project',\n      'leave-project': 'Leave project',\n      'star-project': 'Star project',\n      'unstar-project': 'Unstar project',\n      'notifications': {\n        'project-starred': 'Project has been starred',\n        'project-unstarred': 'Project has been unstarred'\n      }\n    },\n    'link-to-team-stats': {\n      'text': 'Team Stats'\n    },\n    'link-to-team-tasks': {\n      'text': 'Team Tasks'\n    },\n    'link-to-crx': {\n      'text': 'Click here to get Chrome extension '\n    },\n    'link-to-crx-menu-version': {\n      'text': 'Get Chrome ext.'\n    },\n    'infinity-loader': {\n      'loading-more-entries': 'Loading more entries',\n      'no-more-entries': 'No more entries'\n    },\n    'time-session-actions-dropdown': {\n      'duplicate': 'Duplicate',\n      'edit': 'Edit time session',\n      'remove': 'Remove',\n      'delete': {\n        'confirm-header': 'Are you sure?',\n        'confirm-text': 'Are you sure you want to remove {{session}}?',\n        'confirm': 'Delete',\n        'cancel': 'Cancel'\n      }\n    },\n    'sign-up': {\n      'sign-up': 'Sign up',\n      'workspace-name': 'Workspace Name',\n      'have-account': 'Do you have an account?',\n      'sign-in': 'Sign in now!',\n      'save': 'Save Changes',\n      'cancel': 'Cancel',\n      'already-have-account': 'Already have an account?',\n      'login': 'Log in',\n      'terms': 'I agree to the <a href=\"https://www.pmsentry.com/legal/tos.html\" target=\"_blank\">Terms of Service</a> and <a href=\"https://www.pmsentry.com/legal/privacy-policy.html\" target=\"_blank\">Privacy Policy</a>'\n    },\n    'user': {\n      'date-format': 'Date format',\n      'email': 'Email',\n      'first-name': 'First name',\n      'last-name': 'Last name',\n      'password': 'Password',\n      'timezone': 'Time zone'\n    },\n    'sign-in': {\n      'you-are-logged-in-as': 'You are logged in as {{firstName}} {{lastName}}',\n      'login': 'Sign in',\n      'email': 'E-mail',\n      'email-placeholder': 'your.name@example.com',\n      'remember-me': 'Remember me',\n      'sign-in': 'Sign in',\n      'invalid-grant': 'Incorrect username or password',\n      'api-response-error': \"Couldn't connect to the server. Please try again.\",\n      'api-error': 'API error occured',\n      'connection-error': 'There is no internet connection',\n      'no-account': 'Do not have an account?',\n      'sign-up': 'Create account',\n      'forget-password': 'Forget password?',\n      'reset-password': 'Reset password',\n      'not-registered': 'Not registered yet?',\n      'already-signed-in': 'You\\'re already signed in'\n    },\n    'sign-out': {\n      'you-have-been-logged-out': 'You have been logged out'\n    },\n    'profile-page': {\n      'edit-profile': 'Edit Profile',\n      'change-password': 'Change password'\n    },\n    'security-page': {\n      'security': 'Security',\n      'password-changed': 'Password has been changed',\n      'provide-current-password': 'Provide your current password',\n      'provide-new-password': 'Provide your new password'\n    },\n    'edit-profile-form': {\n      'save': 'Save Changes',\n      'cancel': 'Cancel',\n      'current-password': 'Current password',\n      'confirm-password': 'Confirm new password',\n      'new-password': 'New password',\n      'password-notice': \"Leave blank to keep current password\",\n      'current-password-notice': 'Required to change password',\n      'email-notice': 'Changing email is temporarily turned off'\n    },\n    'edit-profile-avatar': {\n      'crop-modal-title': 'Upload picture',\n      'use-gravatar': 'Use Gravatar',\n      'upload-picture': \"Upload picture\",\n      'use-initials': \"No photo, use initials\",\n      'notifications': {\n        'avatar-changed': 'Avatar has been changed'\n      }\n    },\n    'format-duration': {\n      'ongoing': 'Ongoing'\n    },\n    'user-preferences-form': {\n      'title': 'Edit Preferences',\n      'save': 'Save Changes',\n      'cancel': 'Cancel',\n      'tasks-duration-format-minutes': 'Show duration in minutes (h:mm) on Tasks view',\n      'stats-duration-format-minutes': 'Show duration in minutes (h:mm) on Stats view'\n    },\n    'user-menu': {\n      'time-sessions': 'Time Sessions',\n      'activity': 'Activity',\n      'reports': 'Reports',\n      'profile': 'Profile',\n      'preferences': 'Preferences',\n      'security': 'Security',\n      'sign-out': 'Sign out'\n    },\n    'workspace-submenu': {\n      'team': 'Team',\n      'edit': 'Edit',\n      'delete': 'Delete',\n      'remove': 'Remove',\n      'cancel': 'Cancel',\n      'delete-workspace': 'Delete workspace',\n      'are-you-sure-you-want-to-remove-workspace': 'Are you sure you want to remove {{currentWorkspaceName}}?',\n      'workspace-has-been-deleted': 'Workspace has been deleted',\n      'projects': 'Projects'\n    },\n    'project-list': {\n      'add-project': 'Add project',\n      'projects': 'Projects:',\n      'no-projects': 'No projects'\n    },\n    'single-project': {\n      'edit-project': 'Edit project',\n      'delete': 'Delete',\n      'delete-project': 'Delete project',\n      'are-you-sure-you-want-to-remove-project': 'Are you sure you want to remove {{projectName}}?',\n      'cancel': 'Cancel',\n      'remove': 'Remove',\n      'project-has-been-deleted': 'Project has been deleted',\n      'project-will-be-deleted': 'Project will be deleted'\n    },\n    'workspace-form': {\n      'create-workspace': 'Create workspace',\n      'edit-workspace': 'Edit workspace',\n      'save': 'Save',\n      'cancel': 'Cancel',\n      'resume': 'Resume',\n      'suspend': 'Suspend',\n      'remove': 'Remove',\n      'workspace-name': 'Workspace name',\n      'update-role': 'Update Role',\n      'select-project': 'Select project',\n      'assign-to-project': 'Assign to project',\n      'pending-changes': 'You have pending changes.'\n    },\n    'workspace-configure-form-modal': {\n      'configure-workspace': 'Configure workspace',\n      'update': 'Update',\n      'delete': 'Delete workspace',\n      'cancel': 'Cancel',\n      'delete-workspace-question': 'This action is irreversible and will remove all workspace data. Are you sure?',\n      'yes': 'Yes',\n      'no': 'No',\n      'disabled-delete-button': 'You cannot remove your only workspace'\n    },\n    'project-form': {\n      'create-project': 'Create project',\n      'edit-project': 'Configure project',\n      'save': 'Save',\n      'cancel': 'Cancel',\n      'project-has-been-created': 'Project has been created',\n      'project-has-been-updated': 'Project has been updated',\n      'project-not-valid': 'Project is not valid',\n      'external-systems': 'External systems',\n      'name': 'Name',\n      'url': 'URL',\n      'add+': 'Add +',\n      'can-not-fetch-project-systems': \"Can't fetch project systems\",\n      'description': 'Description',\n      'details': 'Details',\n      'members': 'Members',\n      'invitations': 'Invitations',\n      'team': 'Team',\n      'invite-new-member': 'Invite new member',\n      'invite': 'Invite',\n      'do-you-want-to-remove-member': 'Are you sure you want to remove {{memberFirstName}} {{memberLastName}}?',\n      'remove': 'Remove',\n      'pending-invitations': 'Pending invitations',\n      'email': 'Email',\n      'created-at': 'Created at',\n      'type': 'Type',\n      'do-you-want-to-remove-project-invitation': 'Are you sure you want to remove project invitation for {{projectInvitationEmail}}?',\n      'resend': 'Resend',\n      'project-invitation-has-been-deleted': 'Project invitation has been deleted',\n      'invitation-has-been-resend': 'Invitation has been sent again',\n      'access': 'Access',\n      'suspend-project': 'Suspend project',\n      'time-rounding': 'Billable time window',\n      'rounding-label': '{{value}} min. ({{threshold}} min. threshold)',\n      'no-rounding': 'None',\n      'client': 'Client',\n      'actions': 'Actions',\n      'pending-changes': 'You have pending changes.',\n      'record-to-save': 'Remember to save changes!',\n      'date-format': 'Date format',\n      'settings': 'Settings',\n      'allow-custom-tags': 'Allow users to add custom tags with time session',\n      'only-project-session-types': 'Show only project-specific session types',\n      'only-project-tags': 'Show only project-specific tags',\n      'desc-required': 'Make time sessions\\' description required',\n      'tags': 'Tags',\n      'session-type-has-sessions': 'Session type cannot be removed. Time sessions are assigned to session type.',\n      'tag': {\n        'color': 'Color',\n        'label': 'Label',\n        'show-on-top': 'Show on top',\n        'actions': 'Actions',\n        'add': 'Add tag'\n      }\n    },\n    'nav-bar': {\n      'time-sessions': 'Time Sessions',\n      'activity': 'Activity',\n      'tasks': 'Tasks',\n      'team': 'Team',\n      'reports': 'Stats',\n      'projects': 'Projects',\n      'no-time-session-to-resume': 'No time session to resume',\n      'membership-suspended': 'Membership suspended',\n      'new-time-session': 'Add Time Session',\n      'new-summary': 'Add Project Summary',\n      'new-task': 'Add New Task',\n      'new-workplan': 'Add New Work Plan'\n    },\n    'task-status-badge': {\n      'state': 'State: ',\n      'status': 'Status: '\n    },\n    'time-session-tooltip-content': {\n      'is-manual': 'This session was created or edited by user manually',\n      'is-locked': 'This session was locked'\n    },\n    'workplan-form': {\n      'cancel': 'Cancel',\n      'submit': 'Submit',\n      'save-draft': 'Save as Draft',\n      'select-project-first': 'Please select a project first',\n      'time-period': 'Time period'\n    },\n    'time-session-form': {\n      'workspace': 'Workspace',\n      'project': 'Project',\n      'detect-project': 'Detect project',\n      'task': 'Task',\n      'task-will-be-created': 'Task will be created.',\n      'session-type': 'Session type',\n      'tags': 'Tags',\n      'description': 'Time session description',\n      'set-time-manually': 'Set time manually',\n      'select': 'Start typing to search',\n      'select-with-create': 'Start typing to search or create',\n      'first-select-the-project': 'First select the project!',\n      'cancel': 'Cancel',\n      'submit': 'Submit',\n      'duration': 'Duration',\n      'started-at': 'Started at',\n      'ended-at': 'Ended at',\n      'first-select-task': 'First select the task!',\n      'add-external-resource': 'Add new external URL',\n      'external-resources': {\n        'external-url': 'External URL',\n        'external-system': 'External System',\n        'external-id': 'External ID'\n      },\n      'time-session-has-been-created': 'Time session has been created',\n      'time-session-has-been-duplicated': 'Time session has been duplicated',\n      'time-session-has-been-updated': 'Time session has been updated',\n      'time-session-has-been-deleted': 'Time session has been deleted',\n      'task-successfully-detected-from-current-page': 'Task successfully detected from current page.',\n      'wrong-duration': 'Invalid duration',\n      'duration-information': 'Changing duration will change the started at time',\n      'overlapping-session': 'Overlapping time sessions:',\n      'missing-tags-configuration': 'Tags configuration required',\n      'missing-tags-tooltip': 'Ask your administrator to set up this feature'\n    },\n    'tasks-list': {\n      'task-title': 'Title',\n      'actions': 'Actions',\n      'add-task': 'Add New Task'\n    },\n    'time-sessions-new': {\n      'new-header': 'New time session'\n    },\n    'time-sessions-edit': {\n      'edit-header': 'Edit time session'\n    },\n    'time-sessions-duplicate': {\n      'duplicate-header': 'Duplicate time session'\n    },\n    'today-work-time-counter': {\n      'today': 'Today: {{checkTodayWorkTime}}',\n      'todays-work-time': \"Total time worked today\"\n    },\n    'time-session': {\n      'time-session-tag': 'Tags:'\n    },\n    'summaries-new': {\n      'new-header': 'New summary'\n    },\n    'workplans-new': {\n      'new-header': 'New plan'\n    },\n    'summary-form': {\n      'workspace': 'Workspace',\n      'project': 'Project',\n      'select': 'Start typing to search',\n      'description': 'Summary description',\n      'cancel': 'Cancel',\n      'submit': 'Submit',\n      'summary-has-been-created': 'Project summary has been created',\n      'more-info': 'Markdown is supported. Use \\'#\\' to insert tasks'\n    },\n    'workspace-team': {\n      'workspace-team': 'Workspace Team',\n      'project-team': 'Project Team',\n      'delete-member': 'Delete member',\n      'invite-new-member': 'Invite new member',\n      'cancel': 'Cancel',\n      'invite': 'Invite',\n      'inviter': 'Inviter',\n      'add-comma-separated-list-of-email': 'Add comma separated list of emails',\n      'select-role': 'Select role',\n      'show-invitations': 'Show invitations',\n      'pending-invitations': 'Pending Invitations',\n      'delete-invitation': 'Delete invitation',\n      'edit-membership': 'Edit Membership',\n      'delete-team-member': 'Delete Team Member',\n      'add-member': 'Invite new member',\n      'suspend-team-member': 'Suspend Team Member',\n      'your-membership-suspended': 'Your membership has been suspended',\n      'membership-suspended': 'Membership suspended by {{suspendedBy}} on {{suspendedAt}}',\n      'membership-suspended-resume': 'Membership suspended by {{suspendedBy}}. Click to resume',\n      'membership-edit': 'Edit member',\n      'external-team-members': 'External Team Members',\n      'suspended-members': 'Suspended Members'\n    },\n    'project-team': {\n      'edit-membership': 'Edit Membership',\n      'delete-team-member': 'Delete Team Member',\n      'suspend-team-member': \"Suspend team member\"\n    },\n    'workspace-team-invitations': {\n      'create': {\n        'success': 'Invitation has been sent'\n      },\n      'edit': {\n        'success': 'Invitation has been updated'\n      },\n      'delete': {\n        'success': 'Invitation has been deleted'\n      },\n      'resend': {\n        'success': 'Invitation will be resend'\n      }\n    },\n    'member': {\n      'member-has-been-deleted': 'Member has been deleted',\n      'member-has-been-updated': 'Member has been updated',\n      'member-has-been-assigned-to-project': 'Member has been assigned to {{projectName}} project',\n      'member-has-been-invited-to-project': 'Member has been invited to {{projectName}} project',\n      'member-has-left-project': 'You successfully left the project',\n      'member-has-left-workspace': 'You successfully left the workspace'\n    },\n    'authenticated-invitations-confirmation': {\n      'confirm-invitation': 'Confirm {{targetType}} invitation',\n      'confirm-projects-invitation': 'Confirm projects invitation',\n      'projects': 'Projects'\n    },\n    'confirm-project-invitation-modal': {\n      'confirm-project-invitation': 'Confirm project invitation',\n      'please-select-workspace': 'Please choose the workspace to which you want to save the project',\n      'cancel': 'Cancel',\n      'confirm': 'Confirm'\n    },\n    'clocked-in-tooltip-content': {\n      'online': 'online',\n      'current-session': 'Current session',\n      'last-session': 'Last session',\n      'never-created-a-time-session': 'Never created a time session'\n    },\n    'clocked-out-tooltip-content': {\n      'clocked-out': 'clocked out',\n      'last-seen': 'Last seen',\n      'ago': 'ago',\n      'last-session': 'Last session',\n      'never-created-a-time-session': 'Never created a time session'\n    },\n    'away-tooltip-content': {\n      'away-for': 'Away for',\n      'be-back-in': 'Last seen',\n      'last-session': 'Last session',\n      'never-created-a-time-session': 'Never created a time session',\n      'user-didnt-set-when-he-will-back': \"User didn't set when he will back\"\n    },\n    'member-tooltip-content': {\n      'not-activity-yet': 'not active yet'\n    },\n    'activity-tooltip-content': {\n      'clocked-out-by-system-tooltip': 'Clocked out by the system'\n    },\n    'team-member-status': {\n      'not-activity-yet': 'Not active yet',\n      'clocked-in': 'Clocked in {{date}} ago',\n      'clocked-out': 'Clocked out {{date}} ago',\n      'ago': 'ago',\n      'be-back': 'Be back @ {{date}}'\n    },\n    'invitation': {\n      'invitation-details': 'Invitation details',\n      'delete': 'Delete invitation',\n      'resend': 'Resend',\n      'created-at': 'Created at',\n      'type': 'Type',\n      'resend-invitation': 'Resend invitation',\n      'resend-invitation-question': 'Are you sure you want to resent invitation to {{email}}?'\n    },\n    'invitation-navbar': {\n      'go-back': 'Go back'\n    },\n    'internal-invitation-content': {\n      'title': 'Invitation to \"{{targetName}}\" workspace',\n      'description': 'You have been invited to \"{{targetName}}\" workspace by {{inviterFirstName}} {{inviterLastName}} on {{invitationDate}}.',\n      'confirm-invitation': 'Confirm invitation and join this workspace'\n    },\n    'external-invitation-content': {\n      'title': 'Invitation to \"{{targetName}}\" project',\n      'description': 'You have been invited to \"{{targetName}}\" project by {{inviterFirstName}} {{inviterLastName}} on {{invitationDate}}.',\n      'workspace-select-description': 'Pick the workspace to which you want to add this project',\n      'confirm-invitation': 'Confirm invitation and join this project'\n    },\n    'reset-password-form': {\n      'no-account': 'Do not have an account?',\n      'email': 'E-mail',\n      'email-placeholder': 'your.name@example.com',\n      'reset-password': 'Reset password',\n      'reset-instructions': 'Reset password instructions has been sent',\n      'have-an-account': 'Have an account?',\n      'sign-in': 'Sign in',\n      'not-registered': 'Not registered yet?',\n      'sign-up': 'Create account',\n      'remember-password': 'Remember the password?',\n      'login': 'Log in'\n    },\n    'change-password-form': {\n      'have-an-account': 'Have an account?',\n      'sign-in': 'Sign in',\n      'password': 'Password',\n      'password-confirmation': 'Password confirmation',\n      'change-password': 'Change password',\n      'password-has-been-changed': 'Password has been changed'\n    },\n    'manage-team': {\n      'workspace-team': 'Workspace team',\n      'invitations': 'Invitations',\n      'invite-new-member': 'Invite new member',\n      'invite-to-project': 'Invite to Project',\n      'project-team-managment': 'Project Team Managment',\n      'team': 'Team',\n      'project-team': 'Project Team'\n    },\n    'projects': {\n      'add-project': 'Add project',\n      'no-projects': \"You don't have any projects, click here to create one\",\n      'edit': 'Edit',\n      'delete': 'Delete',\n      'projects': 'Projects',\n      'yes': 'Yes',\n      'no': 'No',\n      'delete-project-question': 'This action is irreversible and will remove all project data. Are you sure?',\n      'delete-project': 'Delete project',\n      'description': '<b>Description: </b>',\n      'systems': '<b>Systems: </b>',\n      'invite-member': 'Invite member',\n      'add-member': 'Invite new member',\n      'today': 'Today',\n      'yesterday': 'Yesterday',\n      'show-team-tasks': 'Show team tasks'\n    },\n    'invite-new-member-form-modal': {\n      'cancel': 'Cancel',\n      'invite': ' Invite',\n      'invite-member': 'Invite Members',\n      'role': 'Role',\n      'comma-separated-list-of-emails': 'Comma separated list of emails',\n      'assigned-projects': 'Assigned projects',\n      'projects': 'Projects',\n      'note1': 'You can invite organization members to current <u>Workspace</u> with roles: <u>Manager</u> – can manage projects, members and reports), <u>Staff</u> – can track time and access all workspace projects, <u>Limited Staff</u> – can track time and access assigned projects only.',\n      'note2': 'To invite external members (eg. non-company employees, temporary resources) to selected Project(only one can be selected in single external members invite) use the following roles: <u>External Manager</u> – will be able to manage members from own organization; <u>External Staff</u> – access to assigned project, similar to Limited Staff.',\n      'note3': 'Assigning projects is required for <u>Limited Staff</u>, <u>External Manager</u> and <u>External Staff</u>; it is optional for <u>Manager</u> and <u>Staff</u> (it is to indicate what projects a staff member is assigned to but <u>Staff</u> will have access to all projects)',\n      'note4': 'When inviting existing team members here, they will be assigned to the selected projects.',\n      'role-description': 'Roles description:',\n      'manager': 'Manger - Can manage workspace, its projects and users',\n      'staff': 'Staff - Access to all workspace projects',\n      'limited_staff': 'Limited Staff - Access to selected projects',\n      'assigned-projects-tooltip': 'Indicate for which project the users should be listed as team members; or in case of Limited Staff to grant acces to.',\n      'consent-confirmation': 'I confirm that I have the consent of the owners of the email addresses entered above, for the purpose of inviting them to the application.',\n      'emails-must-be-valid': 'All emails must be valid'\n    },\n    'time-limit-form-modal': {\n      'header': 'Time Limit',\n      'workspace': 'Workspace',\n      'project': 'Project',\n      'select-project': 'Select project',\n      'start-date': 'Start date',\n      'end-date': 'End date',\n      'limit': 'Limit',\n      'hours': 'hours',\n      'visibility': 'Visibility & notification',\n      'save': 'Save',\n      'cancel': 'Cancel',\n      'minutes': 'minutes',\n      'success': 'Time limit has been created',\n      'PMs': ' Internal Managers (IM)',\n      'Ext. PMs': ' External Managers (EM)',\n      'Staff': ' Internal Staff (IS)',\n      'Ext. Staff': ' External Staff (ES)',\n      'Owner': ' Current User (CU)',\n      'title': 'Title',\n      'delete-success': 'Time limit has been deleted',\n      'update-success': 'Time limit has been updated',\n      'type': 'Recurrence',\n      'aggregation': 'Aggregation',\n      'tasks': 'Tasks',\n      'team-members': 'Team Members'\n    },\n    'manage-project': {\n      'confirm-text': 'Are you sure you want to remove {{project}}?'\n    },\n    'team': {\n      'external-users': 'External users'\n    },\n    'membership-modal': {\n      'role': 'Role',\n      'assigned-projects': 'Assigned projects',\n      'account': 'Account',\n      'suspended': 'Suspended',\n      'note': 'Currently it is not possible to change between internal and external roles, workaround is to remove and invite the user again.'\n    },\n    'delete-team-member-modal': {\n      'notification': \"Removed user will not have access to this workspace and its projects, he won't be visible in the UI but he will retain access to his past data. His sessions will be counted in reports and statistics.\",\n      'yes': 'Confirm',\n      'no': 'Cancel'\n    },\n    'leave-workspace-modal': {\n      'title': 'Leave workspace',\n      'are-you-sure-you-want-to-remove-member': 'Are you sure you want to leave {{workspaceName}}?',\n      'yes': 'Confirm',\n      'no': 'Cancel'\n    },\n    'leave-project-modal': {\n      'title': 'Leave project',\n      'are-you-sure-you-want-to-leave': 'Are you sure you want to leave {{projectName}}?',\n      'yes': 'Confirm',\n      'no': 'Cancel'\n    },\n    'suspend-team-member-modal': {\n      'notification': 'Suspended member will not be able to add new or modify existing time sessions, or access new project data. Member will keep access to past activities.',\n      'yes': 'Yes',\n      'no': 'No'\n    },\n    'edit-invitation-modal': {\n      'edit-invitation': 'Edit invitation',\n      'email': 'Email',\n      'role': 'Role',\n      'assigned-projects': 'Assigned projects',\n      'cancel': 'Cancel',\n      'update': 'Update'\n    },\n    'suspend-project-modal': {\n      'notification': 'Stop ongoing time sessions?',\n      'yes': 'Yes',\n      'no': 'No'\n    },\n    'member-role': {\n      'staff': 'Staff',\n      'external_manager': 'External manager',\n      'external_staff': 'External staff',\n      'owner': 'Owner',\n      'manager': 'Manager',\n      'limited_staff': 'Limited staff',\n      'workspace_staff': 'Workspace staff',\n      'project_staff': 'Project team'\n    },\n    // TODO\n    // routes-controllers-templates\n    'authenticated': {\n      'today-time-sessions-time-did-not-fetched': 'Today time sessions time did not fetched',\n      'started': 'Resumed {{name}} time session',\n      'stopped': 'Stopped {{name}} time session',\n      'workspace-has-been-created': 'Workspace has been created',\n      'workspace-has-been-updated': 'Workspace has been updated',\n      'workspace-has-been-deleted': 'Workspace has been deleted',\n      'workspace-will-be-deleted': 'Workspace will be deleted',\n      'activity': {\n        'download-report': 'Download activity report',\n        'my-activity': 'My activity',\n        'spacer-title': 'Activity',\n        'today': 'Today'\n      },\n      'reports': {\n        'new': {\n          'download': \"Download\",\n          'options': \"Options\",\n          'include-presence-activity': 'Include presence activity',\n          'include-activity-time': 'Include activity time',\n          'file-format': 'Format',\n          'file-formats': 'Formats',\n          'date-format': 'Date format',\n          'include-external-system-with-task': 'Include external system links with tasks',\n          'include-time-session-description': 'Include time session description',\n          'lock-time-sessions': 'Create billing report and lock time sessions',\n          'overlapping-record': 'Cannot create billing report for selected period as it overlaps with another record.',\n          'overlapping-record-link-to-records': 'See Reports for more',\n          'overlapping-records-list-title': 'Overlapping records:',\n          'lock-time-sessions-tooltip': 'This operation will prevent of creation and modification of time sessions in the reporting period',\n          'correct-errors': 'Please correct errors in provided data before continuing',\n          'include-duration-in-minutes': 'Include duration in minutes',\n          'export-time-session-individually': 'Export time sessions individually'\n        },\n        'tasks': {\n          'header': \"Download tasks report\",\n          'period': \"Period\",\n          'grouping': \"Tasks grouping\",\n          'rounding': \"Billable time window\",\n          'client': \"Client\",\n          'client_error': \"Client is needed\",\n          'generated_successful': \"Report generated, starting download\",\n          'billing-report-error': \"There are overlapping billing reports\"\n        },\n        'download-tooltip': 'Download report',\n        'download-daily': 'Download daily report',\n        'my-reports': \"My stats\",\n        'time-limits': {\n          'header': 'Time limits',\n          'start_date': 'Start Date',\n          'end_date': 'End Date',\n          'limit': 'Limit',\n          'used': 'Used',\n          'left': 'Left',\n          'aggregation': 'Aggregation',\n          'visibility': 'Visibility',\n          'description': 'Description',\n          'hours': {\n            'one': '{{hours}} hour',\n            'other': '{{hours}} hours'\n          },\n          'add-limit': 'Add limit',\n          'PMs': 'IM',\n          'Ext. PMs': 'EM',\n          'Staff': 'IS',\n          'Ext. Staff': 'ES',\n          'Owner': 'CU',\n          'title': 'Title',\n          'non_recurring': 'Non-recurring',\n          'recurring_monthly': 'Monthly recurring',\n          'recurring_weekly': 'Weekly recurring',\n          'actions': 'Actions',\n          'usage-in-hours': 'Usage in hours'\n        },\n        'time-limits-delete-modal': {\n          'text': 'Are you sure you want to remove time limit?',\n          'delete': 'Delete',\n          'cancel': 'Cancel'\n        },\n        'time-limit-bar': {\n          'left': '{{left}} left',\n          'exceeding': '{{exceeding}} exceeding',\n          'used': '{{used}} used',\n          'threshold': {\n            'one': 'Threshold: {{threshold}} hour',\n            'other': 'Threshold: {{threshold}} hours'\n          }\n        }\n      },\n      'workspaces': {\n        'show': {\n          'projects': {\n            'show': {\n              'manage-team': {\n                'invitations': {\n                  'update-success': 'Invitation has been updated',\n                  'delete-success': 'Invitation has been deleted',\n                  'resend-success': 'Invitation will be resend'\n                },\n                'team': {\n                  'update-success': 'Member has been updated'\n                }\n              },\n              'activity': {\n                'stopped': 'Stopped {{name}} time session'\n              }\n            }\n          }\n        }\n      },\n      'tasks': {\n        'yes': 'Yes',\n        'no': 'No',\n        'add-new-task': 'Add new task',\n        'show-tasks-with-activity': 'Show tasks with activity',\n        'my-tasks': 'My tasks',\n        'team-members': 'Project Team Members',\n        'no-tasks': 'No tasks to show',\n        'show-empty-week': 'Show collapsed empty entries',\n        'total-time': 'Total time for task to date',\n        'move-task': 'Move task to another project',\n        'move-task-success': 'Task has been moved to another project',\n        'delete-task-question': 'This action is irreversible and will remove requested task. Are you sure?',\n        'delete-task': 'Remove task',\n        'merge-task': 'Merge tasks',\n        'edit-task': 'Edit task',\n        'delete-task-success': 'Task has been deleted',\n        'merge-task-success': 'Task has been merged',\n        'save-task-success': 'Task has been saved',\n        'on-this-day': 'On this day',\n        'on-this-week': 'On this week',\n        'selected-period': 'Selected Period',\n        'tasks-without-activity': 'Tasks without activity',\n        'total-time-to-date': 'Total time to date',\n        'add-time-session': 'Add time session',\n        'modal': {\n          'move-task-title': 'Move task to another project',\n          'move-task-description': 'This task and all associated time sessions will be moved to selected project. Project-specific session types will be copied to the new project if not found by name.',\n          'task': 'Task',\n          'current-project': 'Current project',\n          'move-to-project': 'Move to project',\n          'with-external-system': 'Keep external systems',\n          'select-project': 'Select project',\n          'merge-task-title': 'Merge into another task',\n          'merge-task-description': 'You can merge this task into another task - task data and all time sessions connected with this tasks are going to be joined into selected task.',\n          'merge-into': 'Merge into task',\n          'merge-task-select': 'Select task',\n          'edit-task-title': 'Edit task',\n          'edit-task-description': 'This change will update the task title and associated time sessions for all project team members!',\n          'new-task-title': 'New task',\n          'new-task-description': '',\n          'edit-task-task-title': 'Title',\n          'edit-task-external-id': 'External ID',\n          'edit-task-external-url': 'External URL',\n          'edit-task-external-system': 'External System',\n          'external-id-value': 'ID: {{externalId}}',\n          'save': 'Save',\n          'select': 'Start typing to search',\n          'update': 'Save changes',\n          'project-required': 'can\\'t be blank',\n          'revert-changes': 'Withdraw changes',\n          'entry-modified': 'Entry modified, remember to save changes.',\n          'add-external-url': 'Add external URL',\n          'pending-changes': 'You have pending changes.',\n          'new-external-resource': 'New entry, remember to fill at least URL and save changes.',\n          'entry-uncompleted': 'This entry will not be saved until you fill all fields.',\n          'entry-to-save': 'Remember to save changes!',\n          'fill-field': 'Uncompleted fields will not be saved',\n          'task-already-exists': 'This task already exists in {{project}} project. After saving changes, it will be moved and merged.'\n        },\n        'total-time-task-period': 'Total task time in selected period: {{time}}',\n        'total-time-period': 'Total time in selected period: {{time}}',\n        'total-daily-time': 'Total time for the day: {{time}}',\n        'total-daily-time-rounded': 'Total time for the day with decimal round',\n        'total-daily-task-time': 'Total task time for the day: {{time}}',\n        'total-weekly-time': 'Total time in the week: {{time}}',\n        'ongoing': 'Total task time for the day (ongoing): {{time}}',\n        'daily-summary': 'Daily',\n        'weekly-summary': 'Weekly',\n        'period-summary': 'Period'\n      },\n      'billing-reports': {\n        'title': 'Billing reports'\n      }\n    },\n    // components\n    'activity-component': {\n      'summary-title': 'Summary: {{projectName}}'\n    },\n    'invitations-list': {\n      'invitations': 'Invitations',\n      'role': 'Role',\n      'name': 'Name',\n      'invited': 'Invited',\n      'action': 'Action',\n      'ago': ' ago',\n      'projects': 'Projects',\n      'accepted': 'Accepted',\n      'delete': {\n        'confirm-header': 'Delete inviation',\n        'confirm-text': 'Are you sure you want to remove {{email}} invitation from {{target}}?',\n        'cancel': 'Cancel',\n        'confirm': 'Remove'\n      },\n      'resend': {\n        'confirm-header': 'Resend invitation',\n        'confirm-text': 'Do you want to resend invitation for {{email}}?',\n        'cancel': 'No',\n        'confirm': 'Yes'\n      },\n      'actions': {\n        'resend': 'Resend invitation',\n        'edit': 'Edit invitation',\n        'delete': 'Delete invitation'\n      }\n    },\n    'billing-reports-table': {\n      'period-start': 'Period start',\n      'period-end': 'Period end',\n      'project-name': 'Project name',\n      'creator-name': 'Creator name',\n      'action': 'Action',\n      'download-report': 'Download report',\n      'remove-report-tooltip': 'Removing a billing report will unlock time sessions for that period',\n      'billing-report-delete-modal': {\n        'text': 'Are you sure you want to remove billing report?',\n        'delete': 'Delete',\n        'cancel': 'Cancel',\n        'delete-success': 'Billing report has been destroyed'\n      }\n    },\n    'timezone-select': {\n      'placeholder': 'Time zone'\n    },\n    'task-badge-with-status': {\n      'status': 'Status: {{value}}',\n      'state': 'State: {{value}}',\n      'labels': 'Labels: '\n    },\n    'date-format-select': {\n      'date-format': 'Date format'\n    },\n    'session-types-editable-table': {\n      'title': 'Session types',\n      'name': 'Name',\n      'actions': 'Actions',\n      'add-session-type': 'Add session type'\n    },\n    'add-new-member-widget': {\n      'input-placeholder': 'Comma separated list of names or emails.',\n      'add-member-button': 'Add member'\n    },\n    // modals\n    'modal': {\n      'button': {\n        'cancel': \"Cancel\",\n        'accept': \"Accept\"\n      }\n    }\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/autofocus\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    didInsertElement() {\n      this._super(...arguments);\n\n      this.$('[autofocus]').first().focus();\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/buffer-mixin\", [\"exports\", \"web-app-ember-v2/mixins/buffer\"], function (_exports, _buffer) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    buffer: null,\n    originalRelations: {},\n\n    ready() {\n      this._super();\n\n      this._initializeBuffer();\n    },\n\n    rollbackAttributes() {\n      this._super();\n\n      this._rollbackRelationships();\n\n      this.propagate();\n    },\n\n    copy() {\n      this.get('buffer').copy();\n\n      this._cacheRelationships();\n    },\n\n    eachLoadedRelationship(callback) {\n      this.eachRelationship((name, descriptor) => {\n        const async = descriptor.options && descriptor.options.async;\n        const loaded = {\n          hasMany(name) {\n            const relationships = this._internalModel._relationships.initializedRelationships;\n            return relationships[name] && relationships[name].hasLoaded;\n          },\n\n          belongsTo(name) {\n            const relationships = this._internalModel._relationships.initializedRelationships;\n            return relationships[name] && relationships[name].hasLoaded;\n          }\n\n        };\n\n        if (async && !loaded[descriptor.kind].call(this, name)) {\n          return;\n        }\n\n        callback.call(this, name, descriptor);\n      });\n    },\n\n    propagate: function () {\n      // Save reference to the old buffer if exists\n      let oldBuffer;\n\n      if (this.get('buffer')) {\n        oldBuffer = this.get('buffer');\n      } // Replace buffer with new object\n\n\n      this._initializeBuffer(); // Destroy old buffer after replacing with new one\n\n\n      if (oldBuffer) {\n        oldBuffer.destroy();\n      }\n    },\n\n    _propagateWithRelationship() {\n      this.propagate();\n\n      this._propagateRelationships();\n    },\n\n    _propagateRelationships() {\n      this._initializeCachedRelationships();\n\n      const propagate = function propagate(obj) {\n        if (obj && typeof obj.propagate === 'function') {\n          obj.propagate();\n        }\n      };\n\n      this.eachLoadedRelationship((name, {\n        kind\n      }) => {\n        if (kind === 'hasMany') {\n          this.get(name).map(propagate);\n        } else if (kind === 'belongsTo') {\n          propagate(this.get(name));\n        }\n      });\n    },\n\n    saveAndPropagate() {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.save().then(() => {\n          this._propagateWithRelationship();\n\n          resolve(this);\n        }, response => {\n          reject(response);\n        });\n      });\n    },\n\n    _initializeBuffer() {\n      let buffer = _buffer.default.create({\n        content: this\n      });\n\n      buffer.id = this.id;\n      this.set('buffer', buffer);\n    },\n\n    _initializeCachedRelationships() {\n      this.set('originalRelations', {});\n    },\n\n    _cacheRelationships() {\n      this.eachLoadedRelationship((name, descriptor) => {\n        if (descriptor.kind === 'hasMany') {\n          this.set(`originalRelations.${name}`, this.get(name).toArray());\n        } else if (descriptor.kind === 'belongsTo') {\n          this.set(`originalRelations.${name}`, this.get(name));\n        }\n      });\n    },\n\n    _rollbackRelationships() {\n      let originalRelations = this.get('originalRelations');\n\n      if (Ember.isEmpty(originalRelations)) {\n        return;\n      }\n\n      Object.keys(originalRelations).forEach(key => {\n        // For each relation, set the key to the original value (another record or array of records)\n        if (Ember.isArray(this.get(key))) {\n          originalRelations[key].invoke('rollbackAttributes');\n          this.get(key).setObjects(originalRelations[key]);\n        }\n\n        if (Ember.typeOf(this.get(key)) === 'instance') {\n          if (originalRelations[key].rollbackAttributes) {\n            originalRelations[key].rollbackAttributes();\n          }\n\n          this.set(key, originalRelations[key]);\n        } else if (Ember.typeOf(this.get(key)) === 'null') {\n          this.set(key, originalRelations[key]);\n        }\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/buffer\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  /**\n   * Buffer is actually a model decorator for the view.\n   * It decorates the model with necessary properties\n   * needed for the view.\n   */\n  var _default = Ember.ObjectProxy.extend({\n    _inCopy: false,\n    _copied: false,\n    setUnknownProperty: function (key, value) {\n      Ember.defineProperty(this, key, null, value);\n      return value;\n    },\n    idHasChanged: Ember.observer('id', function () {\n      this.id = this.get('id');\n    }),\n    copy: function () {\n      if (this._inCopy) {\n        return;\n      } else if (this._copied) {\n        this.clearCopyFlag();\n      }\n\n      let content = this.get('content');\n      let keys = Ember.get(content.constructor, 'attributes');\n      keys.forEach(function (key) {\n        const attribute = key.name;\n        this.set(attribute, content.get(attribute));\n        this.notifyPropertyChange(attribute);\n      }, this);\n      this._inCopy = true;\n      content.eachLoadedRelationship((name, descriptor) => {\n        if (descriptor.kind === 'hasMany') {\n          content.get(name).filterBy('buffer').forEach(relationObject => {\n            relationObject.get('buffer').copy();\n          });\n          const objects = content.get(name).map(relationObject => {\n            return relationObject.get('buffer') || relationObject;\n          });\n          this.set(name, Ember.A(objects));\n          this.notifyPropertyChange(name);\n        }\n\n        if (descriptor.kind === 'belongsTo') {\n          let object = content.get(name);\n\n          if (object.get('buffer')) {\n            object.get('buffer').copy();\n          }\n\n          this.set(name, object.get('buffer') || object);\n          this.notifyPropertyChange(name);\n        }\n      });\n      this._copied = true;\n      this._inCopy = false;\n    },\n\n    clearCopyFlag() {\n      if (!this._copied) {\n        return;\n      }\n\n      this._copied = this._inCopy = false;\n      let content = this.get('content');\n      content.eachLoadedRelationship((name, descriptor) => {\n        if (descriptor.kind === 'hasMany') {\n          content.get(name).filterBy('buffer').forEach(relationObject => {\n            relationObject.get('buffer').clearCopyFlag();\n          });\n        }\n\n        if (descriptor.kind === 'belongsTo') {\n          let object = content.get(name);\n\n          if (object.get('buffer')) {\n            object.get('buffer').clearCopyFlag();\n          }\n        }\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/change-serializer\", [\"exports\", \"ember-data-change-tracker/mixins/keep-only-changed\"], function (_exports, _keepOnlyChanged) {\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 _keepOnlyChanged.default;\n    }\n  });\n});","define(\"web-app-ember-v2/mixins/current-selectors\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    currentWorkspaceFilterId: Ember.computed('userPreferences.workspaceId', function () {\n      return this.get('userPreferences.currentWorkspaceFilter.id');\n    }),\n    currentProjectFilterId: Ember.computed('userPreferences.currentProject', function () {\n      if (this.get('userPreferences.currentProject')) {\n        return this.get('userPreferences.currentProject.id');\n      } else {\n        return 'all';\n      }\n    }),\n    currentUserFilterId: Ember.computed('userPreferences.currentUserFilter', function () {\n      const currentUserFilterId = this.get('userPreferences.currentUserFilter.id');\n\n      if (this.get('currentProjectFilterId') === 'all' && currentUserFilterId === 'all') {\n        return this.get('userPreferences.currentUser.id');\n      }\n\n      return currentUserFilterId || this.get('userPreferences.currentUser.id');\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/deactivate-route\", [\"exports\", \"ember-local-storage\"], function (_exports, _emberLocalStorage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    modalState: (0, _emberLocalStorage.storageFor)('modalState'),\n\n    deactivate() {\n      this.get('modalState').set('currentRoute', null);\n      this.get('modalState').set('currentModel', null);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/download-billing-report-mixin\", [\"exports\", \"jquery\", \"web-app-ember-v2/config/environment\"], function (_exports, _jquery, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    host: _environment.default.APP.backendUrl,\n    showBillingReportDeleteModal: false,\n    session: Ember.inject.service(),\n    actions: {\n      downloadReport(reportUrl) {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          const token = headerValue.split(' ').get('lastObject');\n          const url = this.get('host') + reportUrl.replace('&lock_time_sessions=true', '');\n          let form = (0, _jquery.default)(`<form action=\"${url}\" method=\"POST\"><input type=\"hidden\" name=\"access_token\" value=\"${token}\" /></form>`);\n          (0, _jquery.default)('body').append(form);\n          form.submit();\n          form.remove();\n          this.showNotification.call('success', this.i18n.t('authenticated.reports.tasks.generated_successful'));\n        });\n      },\n\n      openDeleteBillingReportModal(billingReport) {\n        this.set('billingReportToDelete', billingReport);\n        this.set('showBillingReportDeleteModal', true);\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/filters-for-workspaces\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    filtersForWorkspaces: Ember.computed('workspaces', function () {\n      let filtersForWorkspaces = this.get('workspaces').map(workspace => {\n        return Ember.Object.create({\n          id: workspace.id,\n          name: workspace.get('name')\n        });\n      });\n      return filtersForWorkspaces.reverse('name');\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/load-model\", [\"exports\", \"ember-local-storage\"], function (_exports, _emberLocalStorage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    modalState: (0, _emberLocalStorage.storageFor)('modalState'),\n\n    restoreModelOr(fallback) {\n      const modalStateModel = this.get('modalState.currentModel');\n      return modalStateModel ? modalStateModel : fallback();\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/model-validator\", [\"exports\", \"ember-model-validator/mixins/model-validator\"], function (_exports, _modelValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _modelValidator.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/object-validator\", [\"exports\", \"ember-model-validator/mixins/object-validator\"], function (_exports, _objectValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _objectValidator.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/remember-nav-filters-mixin\", [\"exports\", \"ember-local-storage\"], function (_exports, _emberLocalStorage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    routeState: (0, _emberLocalStorage.storageFor)('route-state'),\n    userPreferences: Ember.inject.service(),\n    updateParams: Ember.observer('userPreferences.currentWorkspaceFilter.id', 'userPreferences.currentProject.id', function () {\n      this.set('routeState.workspaceId', this.userPreferences.get('currentWorkspaceFilter.id'));\n      this.set('routeState.projectId', this.userPreferences.get('currentProject.id'));\n    }),\n\n    beforeModel() {\n      const routeState = this.get('routeState');\n      const workspaceId = this.getWithDefault('userPreferences.currentWorkspaceFilter.id', routeState.get('workspaceId'));\n      const projectId = this.getWithDefault('userPreferences.currentProject.id', routeState.get('projectId'));\n      routeState.set('projectId', projectId);\n      routeState.set('workspaceId', workspaceId);\n    },\n\n    afterModel() {\n      const routeState = this.get('routeState');\n      const workspaceId = routeState.get('workspaceId');\n      const projectId = routeState.get('projectId');\n      const workspace = this.get('store').peekRecord('workspace', workspaceId);\n      let project;\n\n      if (projectId !== 'all' && projectId) {\n        project = this.get('store').findRecord('project', projectId);\n      }\n\n      const userPreferences = this.userPreferences;\n      const currentWorkspace = userPreferences.get('currentWorkspaceFilter');\n      const currentProject = userPreferences.get('currentProject');\n\n      if (!currentWorkspace) {\n        userPreferences.set('currentWorkspaceFilter', workspace);\n      }\n\n      if (!currentProject) {\n        userPreferences.set('currentProject', project);\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/restore-route\", [\"exports\", \"ember-local-storage\"], function (_exports, _emberLocalStorage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    modalState: (0, _emberLocalStorage.storageFor)('modalState'),\n    userPreferences: Ember.inject.service(),\n\n    restoreRoute(transition, baseUrl, queryParams = {}) {\n      const fallback = baseUrl.replace(/\\.index$/, '');\n      const route = (this.get('modalState.currentRoute') || '').replace(/\\.index$/, '');\n      const target = transition.targetName.replace(/\\.index$/, '');\n\n      if (target !== 'authenticated' && target !== 'authenticated.index' || target === route) {\n        return Ember.RSVP.resolve();\n      }\n\n      transition.abort();\n\n      if (!route) {\n        return this.transitionTo(fallback, {\n          queryParams: queryParams\n        });\n      }\n\n      const restoredQueryParams = this.get('modalState.queryParams') || {};\n\n      if (restoredQueryParams && restoredQueryParams.id) {\n        return this.transitionTo(route, restoredQueryParams.id);\n      } else if (route === fallback && Object.keys(restoredQueryParams).length === 0) {\n        return this.transitionTo(route, {\n          queryParams: queryParams\n        });\n      } else {\n        return this.transitionTo(route, {\n          queryParams: restoredQueryParams\n        });\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/role-helper\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = _exports.EXTERNAL_ROLES = _exports.EXTERNAL_STAFF_ROLE = _exports.EXTERNAL_MANAGER_ROLE = void 0;\n  const EXTERNAL_MANAGER_ROLE = 'external_manager';\n  _exports.EXTERNAL_MANAGER_ROLE = EXTERNAL_MANAGER_ROLE;\n  const EXTERNAL_STAFF_ROLE = 'external_staff';\n  _exports.EXTERNAL_STAFF_ROLE = EXTERNAL_STAFF_ROLE;\n  const EXTERNAL_ROLES = [EXTERNAL_MANAGER_ROLE, EXTERNAL_STAFF_ROLE];\n  _exports.EXTERNAL_ROLES = EXTERNAL_ROLES;\n\n  var _default = Ember.Mixin.create({\n    workspaceRole(member, workspace) {\n      if (member.get('workspaceRoles')) {\n        return member.get('workspaceRoles').findBy('workspace.id', workspace.get('id'));\n      }\n    },\n\n    projectRoles(member, workspace) {\n      return member.get('projectRoles').filterBy('project.workspace.id', workspace.get('id'));\n    },\n\n    findProjectRoleByProject(projectRoles, project) {\n      return projectRoles.findBy('project.id', project.get('id'));\n    },\n\n    highestExternalRole(projectRoles) {\n      const externalRoles = this.externalRoles(projectRoles);\n      return externalRoles.findBy('role', EXTERNAL_MANAGER_ROLE) || externalRoles.findBy('role', EXTERNAL_STAFF_ROLE);\n    },\n\n    externalRoles(projectRoleOrRoles) {\n      const projectRoles = Array.isArray(projectRoleOrRoles) ? projectRoleOrRoles : [projectRoleOrRoles];\n      return projectRoles.filter(projectRole => {\n        return projectRole && EXTERNAL_ROLES.includes(projectRole.get('role'));\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/server-error-handler-mixin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    /**\n     * Extract errors from response or errors array and call\n     * `showError` for each of them.\n     *\n     * @param {object|array} responseOrErrors\n     */\n    handleServerErrors(responseOrErrors) {\n      if (!responseOrErrors) {\n        return;\n      }\n\n      const errors = responseOrErrors.errors || responseOrErrors;\n\n      if (Ember.isPresent(errors)) {\n        errors.forEach && errors.forEach(error => {\n          this.showError(error.detail);\n        });\n      }\n    },\n\n    showError(message) {\n      this.showNotification.call('error', message);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/spinner\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    init() {\n      this._super(...arguments);\n\n      this.spinner = document.createElement(\"span\");\n      this.spinner.className = \"loader\";\n    },\n\n    showSpinner() {\n      const target = this._getTargetElement();\n\n      target.appendChild(this.spinner.cloneNode());\n    },\n\n    hideSpinner() {\n      const target = this._getTargetElement();\n\n      target.querySelector(\".loader\").remove();\n    },\n\n    _getTargetElement() {\n      let target = null; // NOTE: If the mixin is used with a controller this.element will not be available\n\n      if (this.element) {\n        target = this.element.querySelector(\".spinner-target\");\n      } // NOTE: Because some modals are opened outside of the component we don't have\n      //       access to their template from within. In these cases we check if any\n      //       modal is currently opened and assume that it contains our target\n\n\n      if (!target) {\n        target = document.querySelector(\".modal-dialog .spinner-target\");\n      }\n\n      return target;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/task-management-route-mixin\", [\"exports\", \"web-app-ember-v2/mixins/server-error-handler-mixin\"], function (_exports, _serverErrorHandlerMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create(_serverErrorHandlerMixin.default, {\n    actions: {\n      updateTask(task) {\n        return task.save().then(() => {\n          this.showNotification.call('success', this.i18n.t('authenticated.tasks.edit-task-success').string);\n          this.refresh();\n        }, response => {\n          this.handleServerErrors(response);\n        });\n      },\n\n      moveTask(taskToMove, filteredProject, withExternalSystem) {\n        let params = {\n          project_id: filteredProject.id,\n          task_id: taskToMove.id,\n          with_external_system: withExternalSystem\n        };\n        return this.get('store').findRecord('task', taskToMove.id).then(task => {\n          return task.moveToProject(params).then(() => {\n            this.showNotification.call('success', this.i18n.t('authenticated.tasks.move-task-success').string);\n            this.refresh();\n          }).catch(response => {\n            this.handleServerErrors(response);\n          });\n        });\n      },\n\n      mergeTask(taskToMerge, sourceTask) {\n        let params = {\n          source_task_id: taskToMerge.id,\n          id: sourceTask.id\n        };\n        return this.get('store').findRecord('task', taskToMerge.id).then(task => {\n          return task.merge(params).then(() => {\n            this.showNotification.call('success', this.i18n.t('authenticated.tasks.merge-task-success').string);\n            this.refresh();\n          }).catch(response => {\n            this.handleServerErrors(response);\n          });\n        });\n      },\n\n      deleteTask(task) {\n        this.get('store').findRecord('task', task.id, {\n          reload: true\n        }).then(task => {\n          task.destroyRecord().then(() => {\n            this.showNotification.call('success', this.i18n.t('authenticated.tasks.delete-task-success').string);\n            this.refresh();\n          }).catch(response => {\n            task.rollbackAttributes();\n            this.handleServerErrors(response);\n          });\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/time-session-adapter\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    stop(id, data) {\n      return this.ajax(this.urlForStopAction(id), 'PATCH', {\n        data: data\n      }).then(response => {\n        return this.store.push(this.store.normalize('time-session', response.data));\n      });\n    },\n\n    urlForStopAction(id) {\n      return this.buildURL('time-session', id) + '/stop';\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/unauthenticated-route-mixin\", [\"exports\", \"ember-simple-auth/mixins/unauthenticated-route-mixin\", \"ember-get-config\"], function (_exports, _unauthenticatedRouteMixin, _emberGetConfig) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create(_unauthenticatedRouteMixin.default, {\n    routeIfAlreadyAuthenticated: _emberGetConfig.default.rootURL,\n\n    beforeModel(transition) {\n      if (this.get(\"session.isAuthenticated\")) {\n        transition.followRedirects().then(() => {\n          this.showNotification.call('success', this.get('i18n').t('sign-in.already-signed-in'), {\n            clearDuration: 12000\n          });\n        });\n      }\n\n      this._super(transition);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/user-adapter\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    userPreferences: Ember.inject.service(),\n\n    stats(params = {}) {\n      const workspaceId = this.get('userPreferences.currentWorkspaceFilter.id');\n      return this.ajax(this.urlForStats(workspaceId), 'GET', {\n        data: params\n      });\n    },\n\n    urlForStats(id) {\n      return this.buildURL('workspace', id) + \"/stats\";\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/user-changable-route\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    userPreferences: Ember.inject.service(),\n    members: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.users'),\n\n    model(params) {\n      let user_id = params.user_id || this.get('userPreferences.currentUser.id');\n\n      if (user_id !== this.get('userPreferences.currentUserFilter.id')) {\n        let user;\n\n        if (user_id === 'all') {\n          user = Ember.Object.create({\n            id: 'all',\n            fullName: this.get('i18n').t('authenticated.tasks.team-members')\n          });\n        } else {\n          user = this.store.peekRecord('user', params.user_id);\n\n          if (Ember.isEmpty(user)) {\n            user = this.get('members').then(users => {\n              return users.findBy('id', params.user_id);\n            });\n          }\n\n          this.set('userPreferences.activityCurrentUserFilter', user);\n        }\n\n        this.set('userPreferences.currentUserFilter', user);\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/user-permissions\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    canReadMembersActivity: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.permissions.read-members-activity'),\n    canReadMemberStatuses: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.permissions.read-members-statuses'),\n    canDownloadUserReports: Ember.computed.readOnly('userPreferences.currentUserFilter.permissions.download-reports'),\n    canReadBillingReports: Ember.computed.readOnly('userPreferences.currentUser.permissions.read-billing-reports'),\n    canReadBillableDuration: Ember.computed.readOnly('userPreferences.currentUser.permissions.read-billable-duration'),\n    canDownloadTeamMembersReports: Ember.computed.readOnly('userPreferences.currentProject.permissions.download-team-reports'),\n    canMoveTasks: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter.permissions.move-tasks'),\n    canDownloadMemberActivity: Ember.computed('userPreferences.currentUserFilter', 'canReadMemberStatuses', 'canDownloadUserReports', 'canDownloadTeamMembersReports', function () {\n      if (this.get('userPreferences.currentUserFilter.id') === this.get('userPreferences').getCurrentUser().get('id')) {\n        return true;\n      } else if (this.get('userPreferences.currentUserFilter.id') === 'all') {\n        return this.get('canDownloadTeamMembersReports');\n      } else {\n        return this.get('canReadMemberStatuses') && this.get('canDownloadUserReports');\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/mixins/validate-access-route-mixin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    beforeModel() {\n      let errorMessage = this.get('i18n').t('notifications.user.membership.disabled');\n      let currentUser = this.userPreferences.getCurrentUser();\n      let workspace = this.modelFor('authenticated.workspaces.show') || this.store.peekAll('workspace').get('firstObject');\n      let suspendedInWorkspace = currentUser.get('suspendedWorkspaces').includes(workspace.id);\n      let deletedInWorkspace = currentUser.get('deletedWorkspaces').includes(workspace.id);\n\n      if (suspendedInWorkspace || deletedInWorkspace) {\n        this.controllerFor('authenticated.workspaces.show.projects.show.activity').showNotification.call('error', errorMessage);\n        this.transitionTo('authenticated.workspaces.show.projects.show.activity', workspace.get('id'), \"all\", currentUser.get('id'));\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/activitable\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    occurredAt: _emberData.default.attr('date'),\n    user: _emberData.default.belongsTo('user'),\n    timeSessions: _emberData.default.belongsTo('time-session'),\n    activity: _emberData.default.belongsTo('activity', {\n      inverse: 'activitable'\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/activity\", [\"exports\", \"ember-data\", \"moment\"], function (_exports, _emberData, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    occurredAt: _emberData.default.attr('date'),\n    createdAt: _emberData.default.attr('date'),\n    clockOutBySystem: _emberData.default.attr('boolean'),\n    activitableType: _emberData.default.attr('string'),\n    activitableId: _emberData.default.attr('string'),\n    workspaceId: _emberData.default.attr('string'),\n    userId: _emberData.default.attr('string'),\n    user: _emberData.default.belongsTo('user', {\n      inverse: 'activities'\n    }),\n    activitable: _emberData.default.belongsTo('activitable', {\n      polymorphic: true\n    }),\n    workspace: _emberData.default.belongsTo('workspace'),\n    activitableSortPrio: Ember.computed.readOnly('activitable.sortPriority'),\n    occurredAtTimestamp: Ember.computed('occurredAt', function () {\n      return (0, _moment.default)(this.get('occurredAt')).format(\"X\");\n    }),\n    createdAtTimestamp: Ember.computed('createdAt', function () {\n      return (0, _moment.default)(this.get('createdAt')).format(\"X\");\n    }),\n    activitableOccurredAtTS: Ember.computed('activitable.occurredAt', function () {\n      return Math.round((0, _moment.default)(this.get('activitable.occurredAt')).toDate().getTime() / 1000);\n    }),\n    dayKey: Ember.computed('occurredAt', function () {\n      return (0, _moment.default)(this.get('occurredAt')).format('YYYY-MM-DD');\n    }),\n    duration: Ember.computed('occurredAt', function () {\n      return (0, _moment.default)().diff((0, _moment.default)(this.get('occurredAt')), 's');\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/billing-report\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    periodStart: _emberData.default.attr('date'),\n    periodEnd: _emberData.default.attr('date'),\n    reportUrl: _emberData.default.attr('string'),\n    reportParams: _emberData.default.attr(),\n    creator: _emberData.default.belongsTo('user'),\n    project: _emberData.default.belongsTo('project')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/client\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    name: _emberData.default.attr('string'),\n    workspace: _emberData.default.belongsTo('workspace'),\n    projects: _emberData.default.hasMany('project')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/commit\", [\"exports\", \"ember-data\", \"web-app-ember-v2/models/activitable\"], function (_exports, _emberData, _activitable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _activitable.default.extend({\n    sortPriority: 3,\n    repo: _emberData.default.attr('string'),\n    link: _emberData.default.attr('string'),\n    sha: _emberData.default.attr('string'),\n    message: _emberData.default.attr('string'),\n    stats: _emberData.default.attr(),\n    project: _emberData.default.belongsTo('project')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/external-resource\", [\"exports\", \"web-app-ember-v2/mixins/buffer-mixin\", \"ember-data\", \"ember-model-validator/mixins/model-validator\"], function (_exports, _bufferMixin, _emberData, _modelValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_modelValidator.default, _bufferMixin.default, {\n    changeTracker: Object.freeze({\n      only: ['externalId', 'externalUrl', 'projectSystem']\n    }),\n    externalId: _emberData.default.attr('string'),\n    externalUrl: _emberData.default.attr('string'),\n    status: _emberData.default.attr('string'),\n    state: _emberData.default.attr('string'),\n    labels: _emberData.default.attr(),\n    task: _emberData.default.belongsTo('task'),\n    projectSystem: _emberData.default.belongsTo('projectSystem'),\n    validations: Object.freeze({\n      externalUrl: {\n        presence: true\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/external-system\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    label: _emberData.default.attr('string'),\n    value: _emberData.default.attr('string')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/invitation\", [\"exports\", \"ember-data\", \"web-app-ember-v2/mixins/buffer-mixin\"], function (_exports, _emberData, _bufferMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_bufferMixin.default, {\n    targetId: _emberData.default.attr('string'),\n    targetType: _emberData.default.attr('string'),\n    email: _emberData.default.attr('string'),\n    confirmedAt: _emberData.default.attr('date'),\n    confirmed: _emberData.default.attr('boolean'),\n    createdAt: _emberData.default.attr('date'),\n    inviter: _emberData.default.belongsTo('user'),\n    role: _emberData.default.attr('string'),\n    permissions: _emberData.default.attr(),\n    projectIds: _emberData.default.attr(),\n\n    resend() {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.resend(this);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/presence\", [\"exports\", \"ember-data\", \"web-app-ember-v2/models/activitable\"], function (_exports, _emberData, _activitable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _activitable.default.extend({\n    sortPriority: 1,\n    presenceType: _emberData.default.attr('string'),\n    beBackAt: _emberData.default.attr('date'),\n    startedAt: _emberData.default.attr('date'),\n    workspace: _emberData.default.belongsTo('workspace')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/project-invitation\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    targetId: _emberData.default.attr('string'),\n    targetType: _emberData.default.attr('string'),\n    email: _emberData.default.attr('string'),\n    confirmedAt: _emberData.default.attr('date'),\n    confirmed: _emberData.default.attr('boolean'),\n    createdAt: _emberData.default.attr('date'),\n    inviterId: _emberData.default.attr('string'),\n    role: _emberData.default.attr('string')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/project-role\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    role: _emberData.default.attr('string'),\n    userId: _emberData.default.attr('string'),\n    projectId: _emberData.default.attr('string'),\n    permissions: _emberData.default.attr(),\n    suspendedBy: _emberData.default.attr(),\n    suspendedAt: _emberData.default.attr('date'),\n    user: _emberData.default.belongsTo('user'),\n    project: _emberData.default.belongsTo('project'),\n    suspended: Ember.computed('suspendedAt', function () {\n      return Ember.isPresent(this.get('suspendedAt'));\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/project-setting\", [\"exports\", \"web-app-ember-v2/mixins/buffer-mixin\", \"ember-data\", \"ember-model-validator/mixins/model-validator\"], function (_exports, _bufferMixin, _emberData, _modelValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_modelValidator.default, _bufferMixin.default, {\n    project: _emberData.default.belongsTo('project'),\n    extraTags: _emberData.default.attr('boolean'),\n    onlyProjectSessionTypes: _emberData.default.attr('boolean'),\n    onlyProjectTags: _emberData.default.attr('boolean'),\n    timeSessionsDescriptionRequired: _emberData.default.attr('boolean'),\n    validations: Object.freeze({\n      extraTags: {\n        presence: true\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/project-system\", [\"exports\", \"web-app-ember-v2/mixins/buffer-mixin\", \"ember-data\", \"ember-model-validator/mixins/model-validator\"], function (_exports, _bufferMixin, _emberData, _modelValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_modelValidator.default, _bufferMixin.default, {\n    url: _emberData.default.attr('string'),\n    externalSystem: _emberData.default.attr('string'),\n    label: _emberData.default.attr('string'),\n    project: _emberData.default.belongsTo('project'),\n    tasks: _emberData.default.hasMany('task'),\n    validations: Object.freeze({\n      externalSystem: {\n        presence: true\n      },\n      url: {\n        URL: {\n          message: 'Must be a valid url, including http(s)'\n        }\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/project\", [\"exports\", \"ember-data\", \"web-app-ember-v2/models/time-limitable\", \"web-app-ember-v2/mixins/buffer-mixin\", \"ember-model-validator/mixins/model-validator\"], function (_exports, _emberData, _timeLimitable, _bufferMixin, _modelValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _timeLimitable.default.extend(_modelValidator.default, _bufferMixin.default, {\n    name: _emberData.default.attr('string'),\n    permissions: _emberData.default.attr(),\n    description: _emberData.default.attr('string'),\n    accessRole: _emberData.default.attr('string'),\n    originWorkspaceName: _emberData.default.attr('string'),\n    originWorkspaceId: _emberData.default.attr('string'),\n    suspended: _emberData.default.attr(),\n    discardedAt: _emberData.default.attr(),\n    projectOnlySessionTypes: _emberData.default.attr('boolean'),\n    dateFormat: _emberData.default.attr('string'),\n    stopOngoingTimeSessions: _emberData.default.attr(),\n    tasks: _emberData.default.hasMany('task'),\n    users: _emberData.default.hasMany('user', {\n      inverse: null\n    }),\n    sessionTypes: _emberData.default.hasMany('session-type'),\n    timeLimits: _emberData.default.hasMany('time-limit'),\n    projectRoles: _emberData.default.hasMany('project-role'),\n    assignedWorkspace: _emberData.default.belongsTo('workspace', {\n      async: false\n    }),\n    workspace: _emberData.default.belongsTo('workspace', {\n      async: false\n    }),\n    client: _emberData.default.belongsTo('client'),\n    projectSystems: _emberData.default.hasMany('project-system'),\n    projectSetting: _emberData.default.belongsTo('project-setting'),\n    timeRounding: _emberData.default.belongsTo('time-rounding'),\n    tags: _emberData.default.hasMany('tag'),\n    billingReports: _emberData.default.hasMany('billing-report'),\n    internal: Ember.computed.empty('originWorkspaceId'),\n    validations: Object.freeze({\n      name: {\n        presence: true\n      }\n    }),\n\n    validate() {\n      const projectValid = this._super();\n\n      const projectSystemsValid = this.get('projectSystems').reduce((valid, system) => {\n        return valid && system.validate();\n      }, true);\n      return projectValid && projectSystemsValid;\n    },\n\n    save() {\n      return this._super().then(() => {\n        // Clean up project systems with null ids\n        this.get('projectSystems').filterBy('id', null).forEach(projectSystem => {\n          projectSystem.destroyRecord();\n        });\n        this.get('sessionTypes').filterBy('id', null).forEach(sessionType => {\n          sessionType.destroyRecord();\n        }); // Clean up tags with null ids\n\n        this.get('tags').filterBy('id', null).forEach(tag => {\n          tag.destroyRecord();\n        });\n        return this;\n      });\n    },\n\n    deleteMember(member) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.deleteMember(member, this);\n    },\n\n    updateMember(data) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.updateMember(data);\n    },\n\n    inviteMembers(data) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.inviteMembers(data);\n    },\n\n    discard() {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.discard(this);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/report\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({});\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/session-type\", [\"exports\", \"ember-data\", \"ember-model-validator/mixins/model-validator\"], function (_exports, _emberData, _modelValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_modelValidator.default, {\n    name: _emberData.default.attr('string'),\n    hasSessions: _emberData.default.attr('boolean'),\n    sessionType: _emberData.default.belongsTo('session-typeable', {\n      polymorphic: true\n    }),\n    validations: Object.freeze({\n      name: {\n        presence: true\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/session-typeable\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    activity: _emberData.default.belongsTo('session-type', {\n      inverse: 'session-typeable'\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/summary\", [\"exports\", \"web-app-ember-v2/models/activitable\", \"ember-data\", \"ember-model-validator/mixins/model-validator\", \"moment\"], function (_exports, _activitable, _emberData, _modelValidator, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _activitable.default.extend(_modelValidator.default, {\n    description: _emberData.default.attr('string'),\n    dateStart: _emberData.default.attr('string', {\n      defaultValue() {\n        return (0, _moment.default)().format('YYYY-MM-DD');\n      }\n\n    }),\n    dateEnd: _emberData.default.attr('string', {\n      defaultValue() {\n        return (0, _moment.default)().format('YYYY-MM-DD');\n      }\n\n    }),\n    project: _emberData.default.belongsTo('project'),\n    workspace: _emberData.default.belongsTo('workspace'),\n    occurredAt: Ember.computed.readOnly('activity.occurredAt'),\n    validations: Object.freeze({\n      dateStart: {\n        presence: true\n      },\n      dateEnd: {\n        presence: true\n      },\n      project: {\n        custom: {\n          validation: function (key, value) {\n            return Ember.isPresent(value.get(\"id\"));\n          },\n          message: function (key, value, _this) {\n            return _this.messages.presenceMessage;\n          }\n        }\n      },\n      description: {\n        presence: true\n      }\n    }),\n\n    submit() {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n\n      const snapshot = this._createSnapshot();\n\n      return adapter.submit(this.get('id'), snapshot);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/tag\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    label: _emberData.default.attr('string'),\n    color: _emberData.default.attr('string'),\n    shortlisted: _emberData.default.attr('boolean'),\n    tagable: _emberData.default.belongsTo('tagable', {\n      polymorphic: true\n    }),\n    validations: Object.freeze({\n      label: {\n        presence: true\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/tagable\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    tags: _emberData.default.hasMany('tag', {\n      inverse: 'tagable'\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/task-summary\", [\"exports\", \"ember-data\", \"web-app-ember-v2/mixins/buffer-mixin\"], function (_exports, _emberData, _bufferMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_bufferMixin.default, {\n    title: _emberData.default.attr('string'),\n    summaryDuration: _emberData.default.attr('number'),\n    dailySummaries: _emberData.default.attr(),\n    weeklySummaries: _emberData.default.attr(),\n    periodSummary: _emberData.default.attr(),\n    sessionTypeSummaries: _emberData.default.attr(),\n    totalSummary: _emberData.default.attr('number'),\n    totalSummarySinceStart: _emberData.default.attr('number'),\n    projectName: _emberData.default.attr('string'),\n    tags: _emberData.default.hasMany('tag'),\n    externalResources: _emberData.default.hasMany('external-resource'),\n    project: _emberData.default.belongsTo('project'),\n\n    detailData() {\n      return Object.assign({}, this.get('periodSummary')[0], {\n        id: this.get('id'),\n        title: this.get('title'),\n        totalSummary: this.get('totalSummary'),\n        totalSummarySinceStart: this.get('totalSummarySinceStart'),\n        externalResources: this.get('externalResources'),\n        tags: this.get('tags'),\n        projectName: this.get('project.name'),\n        projectId: this.get('project.id'),\n        sessionTypeSummaries: this.get('sessionTypeSummaries')\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/task-without-activity\", [\"exports\", \"ember-data\", \"web-app-ember-v2/mixins/buffer-mixin\"], function (_exports, _emberData, _bufferMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_bufferMixin.default, {\n    title: _emberData.default.attr('string'),\n    externalResources: _emberData.default.hasMany('external-resource'),\n    project: _emberData.default.belongsTo('project')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/task\", [\"exports\", \"ember-data\", \"web-app-ember-v2/models/time-limitable\", \"ember-model-validator/mixins/model-validator\"], function (_exports, _emberData, _timeLimitable, _modelValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _timeLimitable.default.extend(_modelValidator.default, {\n    title: _emberData.default.attr('string'),\n    description: _emberData.default.attr('string'),\n    project: _emberData.default.belongsTo('project'),\n    projectSystems: _emberData.default.hasMany('project-system'),\n    externalResources: _emberData.default.hasMany('external-resource'),\n    tags: _emberData.default.hasMany('tag'),\n    projectId: Ember.computed.alias('project.id'),\n    projectName: Ember.computed.alias('project.name'),\n    validations: Object.freeze({\n      title: {\n        presence: true\n      },\n      project: {\n        presence: true\n      }\n    }),\n\n    moveToProject(data) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.moveToProject(data);\n    },\n\n    merge(data) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.merge(data);\n    },\n\n    save() {\n      return this._super().then(() => {\n        this.get('externalResources').filterBy('id', null).forEach(externalResource => {\n          externalResource.destroyRecord();\n        });\n        return this;\n      });\n    },\n\n    validate() {\n      const taskValid = this._super();\n\n      const externalResourcesValid = this.get('externalResources').reduce((valid, externalResource) => {\n        return valid && externalResource.validate();\n      }, true);\n      return taskValid && externalResourcesValid;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/time-limit\", [\"exports\", \"ember-data\", \"web-app-ember-v2/mixins/buffer-mixin\"], function (_exports, _emberData, _bufferMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_bufferMixin.default, {\n    startDate: _emberData.default.attr('date'),\n    endDate: _emberData.default.attr('date'),\n    hoursLimit: _emberData.default.attr('string'),\n    hoursSpent: _emberData.default.attr('string'),\n    visibility: _emberData.default.attr('string'),\n    notifyManagers: _emberData.default.attr('boolean'),\n    notifyExtManagers: _emberData.default.attr('boolean'),\n    notifyStaff: _emberData.default.attr('boolean'),\n    notifyTeam: _emberData.default.attr('boolean'),\n    timeLimit: _emberData.default.attr('number'),\n    name: _emberData.default.attr('string'),\n    owner: _emberData.default.attr('string'),\n    manage: _emberData.default.attr('boolean'),\n    type: _emberData.default.attr('string', {\n      defaultValue: 'non_recurring'\n    }),\n    timeLimitablesType: _emberData.default.attr('string', {\n      defaultValue: 'Project'\n    }),\n    timeLimitableIds: _emberData.default.attr('string'),\n    timeLimitables: _emberData.default.hasMany('time-limitable', {\n      polymorphic: true\n    }),\n    project: _emberData.default.belongsTo('project')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/time-limitable\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({});\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/time-rounding\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    value: _emberData.default.attr('number'),\n    threshold: _emberData.default.attr('number')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/time-session\", [\"exports\", \"ember-data\", \"web-app-ember-v2/models/activitable\"], function (_exports, _emberData, _activitable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _activitable.default.extend({\n    session: Ember.inject.service(),\n    sortPriority: 2,\n    description: _emberData.default.attr('string'),\n    startedAt: _emberData.default.attr('date'),\n    endedAt: _emberData.default.attr('date'),\n    isManual: _emberData.default.attr('boolean'),\n    permissions: _emberData.default.attr(),\n    createdAt: _emberData.default.attr('date'),\n    updatedAt: _emberData.default.attr('date'),\n    lockedAt: _emberData.default.attr('date'),\n    roundedAt: _emberData.default.attr('date'),\n    roundedEndedAt: _emberData.default.attr('date'),\n    project: _emberData.default.belongsTo('project'),\n    sessionType: _emberData.default.belongsTo('session-type'),\n    task: _emberData.default.belongsTo('task'),\n    activity: _emberData.default.belongsTo('activity', {\n      polymorphic: true\n    }),\n    workspace: _emberData.default.belongsTo('workspace'),\n    tags: _emberData.default.hasMany('tag'),\n    isOngoing: Ember.computed.empty('endedAt'),\n    occurredAt: Ember.computed('startedAt', 'endedAt', 'isOngoing', function () {\n      if (this.get('isOngoing')) {\n        return new Date();\n      } else {\n        return this.get('endedAt');\n      }\n    }),\n\n    clonePropertiesFrom(timeSession) {\n      let promises = ['project', 'sessionType', 'task', 'tags'].map(property => {\n        return timeSession.get(property).then(value => {\n          this.set(property, value);\n        });\n      });\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        new Ember.RSVP.all(promises).then(() => {\n          resolve(this);\n        }, function () {\n          reject();\n        });\n      });\n    },\n\n    start() {\n      this.set('endedAt', null);\n      this.set('startedAt', null);\n      return this.save();\n    },\n\n    stop() {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.stop(this.get('id'), this.serialize());\n    },\n\n    save() {\n      return this._super().then(() => {\n        // Clean up external resources will null ids\n        if (this.get('task.externalResources')) {\n          this.get('task.externalResources').filterBy('id', null).forEach(externalResource => {\n            externalResource.destroyRecord();\n          });\n        }\n\n        return this;\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/user-status\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    workspaceId: _emberData.default.attr('string'),\n    displayOnSidebar: _emberData.default.attr('boolean'),\n    user: _emberData.default.belongsTo('user', {\n      async: false\n    }),\n    timeSession: _emberData.default.belongsTo('time-session', {\n      inverse: null\n    }),\n    presence: _emberData.default.belongsTo('presence', {\n      inverse: null\n    }),\n    presenceType: Ember.computed.alias('presence.presenceType')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/user\", [\"exports\", \"ember-data\", \"web-app-ember-v2/mixins/buffer-mixin\", \"web-app-ember-v2/models/time-limitable\"], function (_exports, _emberData, _bufferMixin, _timeLimitable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _timeLimitable.default.extend(_bufferMixin.default, {\n    permissions: _emberData.default.attr(),\n    firstName: _emberData.default.attr('string'),\n    lastName: _emberData.default.attr('string'),\n    workspaceName: _emberData.default.attr('string'),\n    email: _emberData.default.attr('string'),\n    password: _emberData.default.attr('string'),\n    captcha: _emberData.default.attr('string'),\n    terms: _emberData.default.attr('boolean'),\n    suspendedWorkspaces: _emberData.default.attr(),\n    deletedWorkspaces: _emberData.default.attr(),\n    suspendedProjects: _emberData.default.attr(),\n    avatarUrl: _emberData.default.attr('string'),\n    latestActiveWorkspaceId: _emberData.default.attr(),\n    preferences: _emberData.default.attr(),\n    tasksDurationFormatMinutes: Ember.computed.alias('preferences.tasks_duration_format_minutes'),\n    statsDurationFormatMinutes: Ember.computed.alias('preferences.stats_duration_format_minutes'),\n    timezone: Ember.computed.alias('preferences.timezone'),\n    dateFormat: Ember.computed.alias('preferences.date_format'),\n    starredProjects: Ember.computed.alias('preferences.starred_projects'),\n    workspaceRoles: _emberData.default.hasMany('workspace-role'),\n    projectRoles: _emberData.default.hasMany('project-role'),\n    status: _emberData.default.belongsTo('user-status'),\n    workspaces: _emberData.default.hasMany('workspace'),\n    projects: _emberData.default.hasMany('project'),\n    activities: _emberData.default.hasMany('activity', {\n      inverse: 'user'\n    }),\n    timeSessions: _emberData.default.hasMany('time-session', {\n      inverse: 'user'\n    }),\n    fullName: Ember.computed('firstName', 'lastName', function () {\n      return this.get('firstName') + ' ' + this.get('lastName');\n    }),\n    fullDateFormat: Ember.computed('dateFormat', function () {\n      if (this.get('dateFormat') === \"DMY\") {\n        return 'DD-MM-YYYY';\n      } else {\n        return 'MM/DD/YYYY';\n      }\n    }),\n\n    updateMember(data) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.updateMember(data);\n    },\n\n    stats(params) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.stats(params);\n    },\n\n    hideCrxInfo() {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.hideCrxInfo();\n    },\n\n    starProject(project) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.starProject(project.id).then(({\n        data\n      }) => {\n        this.set('starredProjects', data.attributes.preferences.starred_projects);\n      });\n    },\n\n    unstarProject(project) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.unstarProject(project.id).then(({\n        data\n      }) => {\n        this.set('starredProjects', data.attributes.preferences.starred_projects);\n      });\n    },\n\n    setAvatarPreference(avatarPreference, avatarSignedId) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.setAvatarPreference(avatarPreference, avatarSignedId).then(({\n        data\n      }) => {\n        this.set('avatarPreference', data.attributes.preferences.avatar_preference);\n        this.set('avatar', data.attributes.avatar);\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/workplan-task\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    taskId: _emberData.default.attr('string'),\n    workplan: _emberData.default.belongsTo('workplan')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/workplan\", [\"exports\", \"ember-data\", \"ember-model-validator/mixins/model-validator\", \"moment\"], function (_exports, _emberData, _modelValidator, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_modelValidator.default, {\n    startDate: _emberData.default.attr('string', {\n      defaultValue() {\n        return (0, _moment.default)().format('YYYY-MM-DD');\n      }\n\n    }),\n    endDate: _emberData.default.attr('string', {\n      defaultValue() {\n        return (0, _moment.default)().format('YYYY-MM-DD');\n      }\n\n    }),\n    description: _emberData.default.attr('string'),\n    tasks: _emberData.default.hasMany('task', {\n      defaultValue() {\n        return [];\n      }\n\n    }),\n    project: _emberData.default.belongsTo('project'),\n\n    submit() {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.submit(this);\n    },\n\n    validations: Object.freeze({\n      startDate: {\n        presence: true\n      },\n      endDate: {\n        presence: true\n      },\n      project: {\n        presence: true\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/workspace-invitation\", [\"exports\", \"ember-data\", \"web-app-ember-v2/mixins/buffer-mixin\"], function (_exports, _emberData, _bufferMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_bufferMixin.default, {\n    targetId: _emberData.default.attr('string'),\n    targetType: _emberData.default.attr('string'),\n    email: _emberData.default.attr('string'),\n    confirmedAt: _emberData.default.attr('date'),\n    createdAt: _emberData.default.attr('date'),\n    confirmed: _emberData.default.attr('boolean'),\n    inviterId: _emberData.default.attr('string'),\n    role: _emberData.default.attr('string'),\n    permissions: _emberData.default.attr(),\n\n    resend() {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.resend(this);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/workspace-role\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend({\n    role: _emberData.default.attr('string'),\n    permissions: _emberData.default.attr(),\n    suspendedBy: _emberData.default.attr(),\n    suspendedAt: _emberData.default.attr('date'),\n    workspaceId: _emberData.default.attr('string'),\n    user: _emberData.default.belongsTo('user'),\n    workspace: _emberData.default.belongsTo('workspace'),\n    suspended: Ember.computed('suspendedAt', function () {\n      return Ember.isPresent(this.get('suspendedAt'));\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/models/workspace\", [\"exports\", \"ember-data\", \"web-app-ember-v2/mixins/buffer-mixin\", \"ember-model-validator/mixins/model-validator\"], function (_exports, _emberData, _bufferMixin, _modelValidator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.Model.extend(_modelValidator.default, _bufferMixin.default, {\n    name: _emberData.default.attr('string'),\n    permissions: _emberData.default.attr(),\n    discardedAt: _emberData.default.attr('date'),\n    users: _emberData.default.hasMany('user', {\n      inverse: null\n    }),\n    projects: _emberData.default.hasMany('project', {\n      inverse: 'workspace'\n    }),\n    timeSessions: _emberData.default.hasMany('time-session'),\n    presences: _emberData.default.hasMany('presences'),\n    clients: _emberData.default.hasMany('client'),\n    tags: _emberData.default.hasMany('tag'),\n    sessionTypes: _emberData.default.hasMany('session-type'),\n    validations: Object.freeze({\n      name: {\n        presence: true\n      }\n    }),\n\n    save() {\n      return this._super().then(() => {\n        // Clean up tags with null ids\n        this.get('tags').filterBy('id', null).forEach(tag => {\n          tag.destroyRecord();\n        });\n        this.get('sessionTypes').filterBy('id', null).forEach(sessionType => {\n          sessionType.destroyRecord();\n        });\n        return this;\n      });\n    },\n\n    removeProject(projectOrProjectId) {\n      const projectId = projectOrProjectId.id || projectOrProjectId;\n      const project = this.get('projects').findBy('id', projectId);\n      return project.destroyRecord().then(() => {\n        return this.get('projects').removeObject(project);\n      });\n    },\n\n    discardProject(projectOrProjectId) {\n      const projectId = projectOrProjectId.id || projectOrProjectId;\n      const project = this.get('projects').findBy('id', projectId);\n      return project.discard().then(() => {\n        return this.store.findRecord('project', projectId, {\n          reload: true\n        });\n      });\n    },\n\n    deleteMember(member, workspace) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.deleteMember(member, workspace);\n    },\n\n    updateMember(data) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.updateMember(data);\n    },\n\n    inviteMembers(data) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.inviteMembers(data);\n    },\n\n    assignMemberToProject(data) {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.assignMemberToProject(data);\n    },\n\n    discard() {\n      const modelName = this.constructor.modelName;\n      const adapter = this.store.adapterFor(modelName);\n      return adapter.discard(this);\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/modifiers/did-insert\", [\"exports\", \"@ember/render-modifiers/modifiers/did-insert\"], function (_exports, _didInsert) {\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 _didInsert.default;\n    }\n  });\n});","define(\"web-app-ember-v2/modifiers/did-update\", [\"exports\", \"@ember/render-modifiers/modifiers/did-update\"], function (_exports, _didUpdate) {\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 _didUpdate.default;\n    }\n  });\n});","define(\"web-app-ember-v2/modifiers/focus-trap\", [\"exports\", \"ember-focus-trap/modifiers/focus-trap\"], function (_exports, _focusTrap) {\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 _focusTrap.default;\n    }\n  });\n});","define(\"web-app-ember-v2/modifiers/in-viewport\", [\"exports\", \"ember-in-viewport/modifiers/in-viewport\"], function (_exports, _inViewport) {\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 _inViewport.default;\n    }\n  });\n});","define(\"web-app-ember-v2/modifiers/ref\", [\"exports\", \"ember-ref-modifier/modifiers/ref\"], function (_exports, _ref) {\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 _ref.default;\n    }\n  });\n});","define(\"web-app-ember-v2/modifiers/will-destroy\", [\"exports\", \"@ember/render-modifiers/modifiers/will-destroy\"], function (_exports, _willDestroy) {\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 _willDestroy.default;\n    }\n  });\n});","define(\"web-app-ember-v2/password/new/route\", [\"exports\", \"jquery\", \"web-app-ember-v2/config/environment\"], function (_exports, _jquery, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend({\n    session: Ember.inject.service(),\n\n    model(params) {\n      return Ember.Object.create({\n        modelName: 'new-password',\n        resetCode: params.reset_code\n      });\n    },\n\n    actions: {\n      changePassword(model) {\n        const resetCode = model.get('resetCode') || '';\n        const password = model.get('password') || '';\n        const passwordConfirmation = model.get('passwordConfirmation') || '';\n\n        _jquery.default.ajax({\n          type: 'PUT',\n          dataType: 'json',\n          url: _environment.default.APP.backendUrl + '/users/password',\n          data: {\n            user: {\n              reset_password_token: resetCode,\n              password: password,\n              password_confirmation: passwordConfirmation\n            }\n          }\n        }).done(() => {\n          Ember.run(() => {\n            this.showNotification.call('success', this.get('i18n').t('change-password-form.password-has-been-changed'));\n            this.transitionTo('sign-in');\n          });\n        }).fail(response => {\n          if (typeof response.responseJSON.errors.reset_password_token !== 'undefined') {\n            response.responseJSON.errors.reset_password_token.forEach(error => {\n              this.showNotification.call('error', 'Reset password token' + ' ' + error);\n            });\n          }\n\n          if (typeof response.responseJSON.errors.password !== 'undefined') {\n            response.responseJSON.errors.password.forEach(error => {\n              this.showNotification.call('error', 'Password' + ' ' + error);\n            });\n          }\n\n          if (typeof response.responseJSON.errors.password_confirmation !== 'undefined') {\n            response.responseJSON.errors.password_confirmation.forEach(error => {\n              this.showNotification.call('error', 'Password confirmation' + ' ' + error);\n            });\n          }\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/password/new/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"pygT1r91\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"changePassword\\\",\\\"model\\\"],[[30,[36,1],[\\\"changePassword\\\"],null],[35,0]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"route-action\\\",\\\"change-password-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/password/new/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/password/reset/route\", [\"exports\", \"jquery\", \"web-app-ember-v2/config/environment\", \"web-app-ember-v2/mixins/unauthenticated-route-mixin\"], function (_exports, _jquery, _environment, _unauthenticatedRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_unauthenticatedRouteMixin.default, {\n    session: Ember.inject.service(),\n\n    model() {\n      return Ember.Object.create({\n        modelName: 'reset-password'\n      });\n    },\n\n    actions: {\n      resetPassword(model) {\n        const email = model.get('email');\n\n        _jquery.default.ajax({\n          type: 'POST',\n          dataType: 'json',\n          url: _environment.default.APP.backendUrl + '/users/password',\n          data: {\n            user: {\n              email: email\n            }\n          }\n        }).done(() => {\n          Ember.run(() => {\n            this.transitionTo('sign-in');\n            this.showNotification.call('success', this.get('i18n').t('reset-password-form.reset-instructions'));\n          });\n        }).fail(response => {\n          response.responseJSON.errors.email.forEach(error => {\n            this.showNotification.call('error', 'Email' + ' ' + error);\n          });\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/password/reset/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"h29IU+rS\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"resetPassword\\\",\\\"model\\\"],[[30,[36,1],[\\\"resetPassword\\\"],null],[35,0]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"route-action\\\",\\\"reset-password-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/password/reset/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/password/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"YwVxoddN\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/password/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/route-state/storage\", [\"exports\", \"ember-local-storage/local/object\"], function (_exports, _object) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  const Storage = _object.default.extend();\n\n  var _default = Storage;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/router\", [\"exports\", \"web-app-ember-v2/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  let Router = (_dec = Ember.inject.service, (_class = (_temp = class Router extends Ember.Router {\n    constructor(...args) {\n      super(...args);\n\n      _initializerDefineProperty(this, \"router\", _descriptor, this);\n\n      _defineProperty(this, \"location\", _environment.default.locationType);\n\n      _defineProperty(this, \"rootURL\", _environment.default.rootURL);\n    }\n\n    willTransition(oldInfos, newInfos, transition) {\n      let routerService = this.get('router');\n      const previousRouteParams = Object.assign({}, ...oldInfos.mapBy('params').reject(params => Ember.isEmpty(params)));\n      routerService.set('previousRouteParams', previousRouteParams);\n      routerService.set('previousRoute', this.location.location.pathname);\n\n      this._super(oldInfos, newInfos, transition);\n    }\n\n  }, _temp), (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"router\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class));\n  Router.map(function () {\n    this.route('sign-in');\n    this.route('sign-up');\n    this.route('reset-password');\n    this.route('password', {}, function () {\n      this.route('reset');\n      this.route('new', {\n        path: 'new/:reset_code'\n      });\n    });\n    this.route('authenticated', {\n      path: '/'\n    }, function () {\n      this.route('workspaces', function () {\n        this.route('new');\n        this.route('edit', {\n          path: '/:workspace_id/edit'\n        });\n        this.route('configure', {\n          path: '/:workspace_id/configure'\n        });\n        this.route('show', {\n          path: '/:workspace_id'\n        }, function () {\n          this.route('invitations');\n          this.route('billing-reports');\n          this.route('member', {\n            path: '/member/:workspace_member_id'\n          });\n          this.route('projects', function () {\n            this.route('new');\n            this.route('edit', {\n              path: '/:project_id/edit'\n            });\n            this.route('show', {\n              path: '/:project_id'\n            }, function () {\n              this.route('activity', {\n                path: '/user/:user_id/activity'\n              });\n              this.route('tasks', {\n                path: ''\n              }, function () {\n                this.route('index', {\n                  path: '/user/:user_id/tasks'\n                });\n                this.route('inactive', {\n                  path: '/tasks/inactive'\n                });\n                this.route('show', {\n                  path: '/user/:user_id/tasks/:task_id'\n                });\n              });\n              this.route('reports', {\n                path: '/user/:user_id/reports'\n              });\n              this.route('team');\n            });\n          });\n        });\n      });\n      this.route('dashboard');\n      this.route('activity');\n      this.route('profile');\n      this.route('preferences');\n      this.route('security');\n      this.route('sign-out');\n    });\n    this.route('invitations', function () {\n      this.route('confirmation', {\n        path: '/:token/confirmation'\n      });\n    });\n  });\n  var _default = Router;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/routes/application\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const {\n    Route\n  } = Ember; // Ensure the application route exists for ember-simple-auth's `setup-session-restoration` initializer\n\n  var _default = Route.extend();\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/sanitizers/strict\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    elements: ['b', 'br', 'em', 'i', 'strong', 'u']\n  };\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/serializers/-default\", [\"exports\", \"@ember-data/serializer/json\"], function (_exports, _json) {\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 _json.default;\n    }\n  });\n});","define(\"web-app-ember-v2/serializers/-json-api\", [\"exports\", \"@ember-data/serializer/json-api\"], function (_exports, _jsonApi) {\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 _jsonApi.default;\n    }\n  });\n});","define(\"web-app-ember-v2/serializers/-rest\", [\"exports\", \"@ember-data/serializer/rest\"], function (_exports, _rest) {\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 _rest.default;\n    }\n  });\n});","define(\"web-app-ember-v2/serializers/project\", [\"exports\", \"ember-data\", \"ember-data/serializers/json-api\"], function (_exports, _emberData, _jsonApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _jsonApi.default.extend(_emberData.default.EmbeddedRecordsMixin, {\n    isEmbeddedRecordsMixinCompatible: true,\n    attrs: {\n      projectSystems: {\n        serialize: 'records'\n      },\n      sessionTypes: {\n        serialize: 'records'\n      },\n      projectSetting: {\n        serialize: 'records'\n      },\n      tags: {\n        serialize: 'records'\n      }\n    },\n\n    normalizeFindAllResponse(store, type, payload) {\n      payload.data = payload.data.map(this.removeTasksData);\n      return this.normalizeArrayResponse(...arguments);\n    },\n\n    normalizeFindRecordResponse(store, type, payload) {\n      payload.data = this.removeTasksData(payload.data);\n      payload.data = this.removeTimeLimitsData(payload.data);\n      return this.normalizeSingleResponse(...arguments);\n    },\n\n    removeTasksData(project) {\n      if (project.relationships && project.relationships.tasks) {\n        delete project.relationships.tasks.data;\n      }\n\n      return project;\n    },\n\n    removeTimeLimitsData(project) {\n      if (project.relationships && project.relationships['time-limits']) {\n        delete project.relationships['time-limits'].data;\n      }\n\n      return project;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/serializers/task\", [\"exports\", \"ember-data\", \"ember-data/serializers/json-api\"], function (_exports, _emberData, _jsonApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _jsonApi.default.extend(_emberData.default.EmbeddedRecordsMixin, {\n    isEmbeddedRecordsMixinCompatible: true,\n    attrs: {\n      externalResources: {\n        serialize: 'records'\n      },\n      tags: {\n        serialize: 'records'\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/serializers/time-session\", [\"exports\", \"ember-data\", \"ember-data/serializers/json-api\"], function (_exports, _emberData, _jsonApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _jsonApi.default.extend(_emberData.default.EmbeddedRecordsMixin, {\n    isEmbeddedRecordsMixinCompatible: true,\n    attrs: {\n      task: {\n        serialize: 'records'\n      },\n      tags: {\n        serialize: 'records'\n      }\n    },\n\n    normalizeQueryResponse(store, type, payload) {\n      if (payload.included) {\n        payload.included = payload.included.map(this.removeProjectTasksData);\n      }\n\n      return this.normalizeArrayResponse(...arguments);\n    },\n\n    normalizeFindAllResponse(store, type, payload) {\n      if (payload.included) {\n        payload.included = payload.included.map(this.removeProjectTasksData);\n      }\n\n      return this.normalizeArrayResponse(...arguments);\n    },\n\n    normalizeFindRecordResponse(store, type, payload) {\n      if (payload.included) {\n        payload.included = this.removeProjectTasksData(payload.included);\n      }\n\n      return this.normalizeSingleResponse(...arguments);\n    },\n\n    normalizeQueryRecordResponse(store, type, payload) {\n      if (payload.included) {\n        payload.included = this.removeProjectTasksData(payload.included);\n      }\n\n      return this.normalizeSingleResponse(...arguments);\n    },\n\n    removeProjectTasksData(includedObject) {\n      if (includedObject.type === 'projects' && includedObject.relationships && includedObject.relationships.tasks) {\n        delete includedObject.relationships.tasks.data;\n      }\n\n      return includedObject;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/serializers/workspace\", [\"exports\", \"ember-data\", \"ember-data/serializers/json-api\"], function (_exports, _emberData, _jsonApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _jsonApi.default.extend(_emberData.default.EmbeddedRecordsMixin, {\n    isEmbeddedRecordsMixinCompatible: true,\n    attrs: {\n      tags: {\n        serialize: 'records'\n      },\n      sessionTypes: {\n        serialize: 'records'\n      }\n    },\n\n    normalizeFindAllResponse(store, type, payload) {\n      payload.data = payload.data.map(this.removeProjectsData);\n      return this.normalizeArrayResponse(...arguments);\n    },\n\n    normalizeFindRecordResponse(store, type, payload) {\n      payload.data = this.removeProjectsData(payload.data);\n      return this.normalizeSingleResponse(...arguments);\n    },\n\n    removeProjectsData(workspace) {\n      if (workspace.relationships && workspace.relationships.projects) {\n        delete workspace.relationships.projects.data;\n      }\n\n      return workspace;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/active-storage\", [\"exports\", \"ember-active-storage/services/active-storage\"], function (_exports, _activeStorage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _activeStorage.default.extend({\n    session: Ember.inject.service(),\n    headers: null,\n\n    upload() {\n      return new Ember.RSVP.Promise(resolve => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          this.set(\"headers\", {\n            Authorization: headerValue\n          });\n          resolve(this._super(...arguments));\n        });\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/ajax\", [\"exports\", \"ember-ajax/services/ajax\", \"web-app-ember-v2/config/environment\"], function (_exports, _ajax, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _ajax.default.extend({\n    session: Ember.inject.service(),\n    host: _environment.default.APP.backendUrl,\n    headers: Ember.computed('session.authToken', {\n      get() {\n        let headers = {};\n        const {\n          access_token\n        } = this.get('session.data.authenticated');\n\n        if (access_token) {\n          headers['Authorization'] = `Bearer ${access_token}`;\n        }\n\n        return headers;\n      }\n\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/clock\", [\"exports\", \"ember-cli-clock/services/legacy\"], function (_exports, _legacy) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _legacy.default.extend({\n    init() {\n      this._super(...arguments);\n\n      Ember.deprecate('Usage of the `clock` service is deprecated. ' + 'Please generate your own clock service with `ember generate clock <name>`.', false, {\n        id: 'ember-cli-clock.deprecate-legacy-clock-service',\n        until: '3.0.0'\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/cookies\", [\"exports\", \"ember-cookies/services/cookies\"], function (_exports, _cookies) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _cookies.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/features\", [\"exports\", \"ember-feature-flags/services/features\", \"web-app-ember-v2/config/environment\"], function (_exports, _features, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _features.default.extend({\n    config: _environment.default,\n\n    init() {\n      this._super(...arguments);\n\n      if (_environment.default.featureFlags) {\n        this.setup(_environment.default.featureFlags);\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/gravatar\", [\"exports\", \"ember-cli-gravatar/services/gravatar\"], function (_exports, _gravatar) {\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 _gravatar.default;\n    }\n  });\n});","define(\"web-app-ember-v2/services/i18n\", [\"exports\", \"ember-i18n/services/i18n\"], function (_exports, _i18n) {\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 _i18n.default;\n    }\n  });\n});","define(\"web-app-ember-v2/services/in-viewport\", [\"exports\", \"ember-in-viewport/services/in-viewport\"], function (_exports, _inViewport) {\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 _inViewport.default;\n    }\n  });\n});","define(\"web-app-ember-v2/services/infinity\", [\"exports\", \"ember-infinity/services/infinity\"], function (_exports, _infinity) {\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 _infinity.default;\n    }\n  });\n});","define(\"web-app-ember-v2/services/moment\", [\"exports\", \"ember-moment/services/moment\", \"web-app-ember-v2/config/environment\"], function (_exports, _moment, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const {\n    get\n  } = Ember;\n\n  var _default = _moment.default.extend({\n    defaultFormat: get(_environment.default, 'moment.outputFormat')\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/notifications\", [\"exports\", \"ember-cli-notifications/services/notifications\"], function (_exports, _notifications) {\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 _notifications.default;\n    }\n  });\n});","define(\"web-app-ember-v2/services/ongoing-clock\", [\"exports\", \"ember-cli-clock/services/clock\"], function (_exports, _clock) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _clock.default.extend({\n    interval: 1000\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/ongoing-timer\", [\"exports\", \"ember-cli-clock/services/clock\"], function (_exports, _clock) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _clock.default.extend({\n    interval: 60000\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/preloaderadjioadho\", [\"exports\", \"ember-cli-preloader/services/preloader\"], function (_exports, _preloader) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _preloader.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/pubnub\", [\"exports\", \"web-app-ember-v2/config/environment\", \"pubnub\"], function (_exports, _environment, _pubnub) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  // Try to connect up to 5 times before abort\n  const CONNECTION_RETRIES_COUNTER = 5; // Interval between connection tries\n\n  const CONNECTION_RETRIES_INTERVAL = 5000;\n\n  var _default = Ember.Service.extend(Ember.Evented, {\n    session: Ember.inject.service(),\n    connection: null,\n    listeners: null,\n    publishKey: null,\n    subscribeKey: null,\n    connectionRetriesCounter: CONNECTION_RETRIES_COUNTER,\n\n    init() {\n      this._super(...arguments);\n\n      const {\n        publish_key,\n        subscribe_key\n      } = _environment.default.pubnub;\n\n      if (!publish_key || !subscribe_key) {\n        const error = 'PubNub publish key or subscribe key are not provided in the config file';\n        throw new Error(error);\n      }\n\n      this.set('listeners', []);\n      this.set('publishKey', publish_key);\n      this.set('subscribeKey', subscribe_key);\n      this._receivedMessage = this._receivedMessage.bind(this);\n      this._retryConnect = this._retryConnect.bind(this);\n    },\n\n    connect() {\n      if (this.get('connection')) {\n        this.disconnect();\n      }\n\n      const {\n        user_id,\n        refresh_token\n      } = this.get('session.data').authenticated || {};\n\n      if (!user_id || !refresh_token) {\n        Ember.debug('Could not subscribe to PubNub - user authenticated but user_id / refresh_token empty');\n      }\n\n      let connection = new _pubnub.default({\n        publishKey: this.get('publishKey'),\n        subscribeKey: this.get('subscribeKey'),\n        authKey: refresh_token,\n        ssl: true\n      });\n      connection.addListener({\n        message: this._receivedMessage,\n        status: this._retryConnect\n      });\n      connection.subscribe({\n        channels: [user_id]\n      });\n      this.set('connection', connection);\n    },\n\n    disconnect() {\n      if (this.get('connection')) {\n        this.get('connection').removeListener({\n          message: this._receivedMessage,\n          status: this._retryConnect\n        });\n        this.get('connection').unsubscribeAll();\n        this.set('connection', null);\n        this.set('connectionRetriesCounter', CONNECTION_RETRIES_COUNTER);\n      }\n    },\n\n    _receivedMessage(response) {\n      let payload = response.message;\n      payload.type = payload.type || Ember.String.dasherize(payload.model);\n      this.trigger('receive', payload);\n    },\n\n    _retryConnect(e) {\n      const connectionRetriesCounter = this.get('connectionRetriesCounter');\n\n      if (e.operation === \"PNSubscribeOperation\" && e.statusCode === 403) {\n        if (connectionRetriesCounter > 0) {\n          Ember.run.later(this, function () {\n            this.connect(); // Ensure we update connectionRetriesCounter with correct value\n            // as it can be reset in the `disconnect`.\n\n            this.set('connectionRetriesCounter', connectionRetriesCounter - 1);\n          }, this._connectionRetryInterval());\n        } else {\n          Ember.debug(`Could not connect to PubNub (retried: ${CONNECTION_RETRIES_COUNTER} times)`);\n        }\n      }\n    },\n\n    _connectionRetryInterval() {\n      if (this.get('connectionRetriesCounter') === 0) {\n        return CONNECTION_RETRIES_INTERVAL;\n      } // Increase the inveral between retries\n\n\n      return CONNECTION_RETRIES_COUNTER / this.get('connectionRetriesCounter') * CONNECTION_RETRIES_INTERVAL;\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/raven\", [\"exports\", \"ember-cli-sentry/services/raven\"], function (_exports, _raven) {\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 _raven.default;\n    }\n  });\n});","define(\"web-app-ember-v2/services/session\", [\"exports\", \"ember-simple-auth/services/session\"], function (_exports, _session) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _session.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/show-notification\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Service.extend({\n    call: function (type, message, options = {}) {\n      this.notifications.setDefaultAutoClear(true);\n      this.notifications[type](message, options);\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/store\", [\"exports\", \"ember-data/store\"], function (_exports, _store) {\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 _store.default;\n    }\n  });\n});","define(\"web-app-ember-v2/services/text-measurer\", [\"exports\", \"ember-text-measurer/services/text-measurer\"], function (_exports, _textMeasurer) {\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 _textMeasurer.default;\n    }\n  });\n});","define(\"web-app-ember-v2/services/update-app\", [\"exports\", \"web-app-ember-v2/config/environment\", \"jquery\"], function (_exports, _environment, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Service.extend({\n    currentVersion: null,\n    delay: 3 * 60 * 1000,\n    // 3 minutes\n    outdated: false,\n    scheduller: null,\n    url: _environment.default.APP.urls.version,\n\n    cancel() {\n      this.get('scheduler').return();\n    },\n\n    async watch() {\n      if (!this.get('url')) {\n        return false;\n      }\n\n      if (!this.get('currentVersion')) {\n        this.set('currentVersion', await this.getVersion());\n      }\n\n      this.set('scheduller', this.createScheduler()); // eslint-disable-line\n\n      for await (const version of this.get('scheduller')) {\n        if (!!version && this.get('currentVersion') !== version) {\n          this.set('outdated', true);\n          return this.get('scheduller').return();\n        }\n      }\n    },\n\n    createScheduler: function* () {\n      while (true) {\n        yield new Ember.RSVP.Promise(resolve => {\n          Ember.run.later(this, function () {\n            this.getVersion().then(version => resolve(version));\n          }, this.get('delay'));\n        });\n      }\n    },\n\n    async getVersion() {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        _jquery.default.ajax({\n          dataType: 'text',\n          cache: false,\n          url: this.get('url')\n        }).done(resolve).fail(reject);\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/user-preferences\", [\"exports\", \"moment\", \"web-app-ember-v2/config/environment\"], function (_exports, _moment, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Service.extend({\n    session: Ember.inject.service(),\n    store: Ember.inject.service(),\n    i18n: Ember.inject.service(),\n    userStatus: Ember.inject.service(),\n    sentry: Ember.inject.service('raven'),\n    currentUserProjectsWithAdminRole: null,\n    currentUserProjectsWithManagerRole: null,\n    currentUserWorkspacesWithAdminRole: null,\n    currentUserWorkspacesWithManagerRole: null,\n    activityCurrentUserFilter: null,\n    workspaceId: null,\n    todayDuration: null,\n    showBillableDuration: false,\n    avatarPreferenceOptions: Object.freeze({\n      no_avatar: 'no_avatar',\n      gravatar: 'gravatar',\n      custom_avatar: 'custom_avatar'\n    }),\n    currentWorkspaceFilter: Ember.computed('workspaceId', {\n      get() {\n        const workspaceId = this.get('workspaceId');\n\n        if (workspaceId) {\n          return this.get('store').peekRecord('workspace', workspaceId);\n        }\n      },\n\n      set(key, value) {\n        this.set('workspaceId', value ? value.get('id') : value);\n        return value;\n      }\n\n    }),\n    isHiddenCrxInfo: Ember.computed.bool('currentUser.preferences.hide_crx_info'),\n    tasksDurationFormatMinutes: Ember.computed.bool('currentUser.preferences.tasks_duration_format_minutes'),\n    statsDurationFormatMinutes: Ember.computed.bool('currentUser.preferences.stats_duration_format_minutes'),\n    dateFormatOptions: Object.freeze([{\n      value: 'DMY',\n      label: 'DD-MM-YYYY'\n    }, {\n      value: 'MDY',\n      label: 'MM/DD/YYYY'\n    }]),\n\n    loadCurrentUser() {\n      var userId = (this.get('session.data').authenticated || {}).user_id;\n\n      if (Ember.isEmpty(userId)) {\n        return null;\n      }\n\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('store').findRecord('user', userId).then(user => {\n          this.set('currentUser', user);\n          this.set('preferences', user.preference);\n          this.set('sentry.currentUser', {\n            email: user.email,\n            id: userId\n          });\n          resolve(user);\n        }, errorResponse => {\n          reject(errorResponse);\n        });\n      });\n    },\n\n    currentUserLatestTimeSession() {\n      const workspaceId = this.get('workspaceId');\n      return this.get('currentUser.timeSessions').filterBy('workspace.id', workspaceId).sortBy('startedAt').reverse().get('firstObject');\n    },\n\n    reloadCurrentUserLatestTimeSession() {\n      const timeSession = this.currentUserLatestTimeSession();\n\n      if (Ember.isPresent(timeSession)) {\n        this.get('userStatus').set('currentTimeSession', timeSession);\n      } else {\n        this.get('userStatus').reloadCurrentUserStatus();\n      }\n    },\n\n    getCurrentUser() {\n      if (this.get('currentUser')) {\n        return this.get('currentUser');\n      }\n\n      return this.loadCurrentUser();\n    },\n\n    reloadTodayDuration() {\n      const data = {\n        'started-at': (0, _moment.default)().startOf('day').toDate(),\n        'ended-at': (0, _moment.default)().toDate()\n      };\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        this.get('session').authorize('authorizer:application', (headerName, headerValue) => {\n          $.ajax({\n            type: 'GET',\n            dataType: 'json',\n            url: _environment.default.APP.backendUrl + '/api/today-time-sessions-time',\n            headers: {\n              Authorization: headerValue\n            },\n            data: data\n          }).done(response => {\n            Ember.run(() => {\n              this.set('todayDuration', response['today-duration-time-in-seconds']);\n              resolve(response);\n            });\n          }).fail(error => {\n            reject(error);\n          });\n        });\n      });\n    },\n\n    hideCrxInfo() {\n      const currentUser = this.get('currentUser');\n\n      if (currentUser) {\n        return currentUser.hideCrxInfo();\n      }\n\n      return Ember.RSVP.reject(false);\n    },\n\n    canChangeRoundingForCurrentProject: Ember.computed('currentProject.permissions', 'isManagerOrAdminInCurrentWorkspace', function () {\n      const hasAtLeastManagerRole = this.get(\"isManagerOrAdminInCurrentWorkspace\");\n      const allProjectsSelected = Ember.isEmpty(this.get('currentProject'));\n      return hasAtLeastManagerRole && allProjectsSelected || this.get('currentProject.permissions.change-rounding-for-reports');\n    }),\n    isManagerOrAdminInCurrentWorkspace: Ember.computed('currentWorkspaceFilter', function () {\n      const currentWorkspace = this.get('currentWorkspaceFilter');\n      return this.hasAdminRoleForWorkspace(currentWorkspace) || this.hasManagerRoleForWorkspace(currentWorkspace);\n    }),\n    hasAdminRoleForCurrentWorkspace: Ember.computed('currentWorkspaceFilter', function () {\n      const currentWorkspace = this.get('currentWorkspaceFilter');\n      return this.hasAdminRoleForWorkspace(currentWorkspace);\n    }),\n\n    hasAdminRoleForWorkspace(workspaceOrWorkspaceId) {\n      const workspaceId = workspaceOrWorkspaceId.id || workspaceOrWorkspaceId;\n      const workspacesWithAdminRole = this.get('currentUserWorkspacesWithAdminRole');\n      return (workspacesWithAdminRole || []).includes(workspaceId);\n    },\n\n    hasManagerRoleForCurrentWorkspace: Ember.computed('currentWorkspaceFilter', function () {\n      const currentWorkspace = this.get('currentWorkspaceFilter');\n      return this.hasManagerRoleForWorkspace(currentWorkspace);\n    }),\n\n    hasManagerRoleForWorkspace(workspaceOrWorkspaceId) {\n      const workspaceId = workspaceOrWorkspaceId.id || workspaceOrWorkspaceId;\n      const workspacesWithManagerRole = this.get('currentUserWorkspacesWithManagerRole');\n      return (workspacesWithManagerRole || []).includes(workspaceId);\n    },\n\n    toggleBillableDuration() {\n      this.toggleProperty('showBillableDuration');\n    },\n\n    currentDateFormat: Ember.computed('currentProject.dateFormat', function () {\n      const userFormat = this.get('currentProject.dateFormat') || this.get('currentUser.dateFormat');\n      const options = this.get('dateFormatOptions');\n\n      if (userFormat) {\n        return options.find(option => option.value === userFormat);\n      } else {\n        return options.get('firstObject');\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/user-presence\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Service.extend({\n    store: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    userStatus: Ember.inject.service(),\n    user: Ember.computed.readOnly('userPreferences.currentUser'),\n    workspace: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n\n    createNewPresence(type, value) {\n      let presence = this.get('store').createRecord('presence', {\n        user: this.get('user'),\n        occurredAt: (0, _moment.default)().toDate(),\n        presenceType: type,\n        beBackAt: value.be_back_at,\n        workspace: this.get('workspace')\n      });\n      this.get('user').set('latestActiveWorkspace', this.get('workspace'));\n      return presence.save().then(presence => {\n        this.get('userStatus').set('currentPresence', presence);\n        const currentTimeSession = this.get('userPreferences').currentUserLatestTimeSession();\n        const endedAt = currentTimeSession.get('endedAt');\n\n        if (endedAt == null) {\n          const startedAt = (0, _moment.default)(currentTimeSession.get('startedAt'));\n\n          const durationInMinutes = _moment.default.duration(startedAt.diff((0, _moment.default)())).minutes();\n\n          if (durationInMinutes < 1) {// let activity = this.get('store').peekRecord('activity', currentTimeSession.get('activity.id'));\n            // if (isPresent(activity)) {\n            //   activity.unloadRecord();\n            // }\n          } else {\n            currentTimeSession.set('endedAt', (0, _moment.default)().startOf('minute'));\n          }\n        }\n\n        return presence;\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/user-status\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Service.extend({\n    store: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    currentUserStatus: Ember.computed.alias('userPreferences.currentUser.status'),\n    workspace: Ember.computed.readOnly('userPreferences.currentWorkspaceFilter'),\n    currentPresence: Ember.computed.alias('currentUserStatus.presence'),\n    currentTimeSession: Ember.computed.alias('currentUserStatus.timeSession'),\n\n    reloadCurrentUserStatus() {\n      this.get('store').queryRecord('user-status', {\n        userStatusId: this.get('currentUserStatus.id'),\n        workspaceId: this.get('workspace.id')\n      }).then(userStatus => {\n        this.set('currentUserStatus', userStatus);\n      });\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/services/user-time-session\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Service.extend(Ember.Evented, {\n    i18n: Ember.inject.service(),\n    store: Ember.inject.service(),\n    pubnub: Ember.inject.service(),\n    session: Ember.inject.service(),\n    userPreferences: Ember.inject.service(),\n    userStatus: Ember.inject.service(),\n\n    init() {\n      this._super(...arguments);\n\n      this._syncTimeSession = this._syncTimeSession.bind(this);\n      this.get('pubnub').on('receive', this._syncTimeSession);\n    },\n\n    currentUserStatus: Ember.computed.oneWay('userStatus.currentUserStatus'),\n    currentTimeSession: Ember.computed.oneWay('currentUserStatus.timeSession'),\n\n    createTimeSession(timeSession) {\n      const currentPresenceType = this.get('currentUserStatus.presenceType');\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        Ember.RSVP.resolve(this.get('currentTimeSession')).then(currentTimeSession => {\n          timeSession.save().then(model => {\n            this.get('userStatus').set('currentTimeSession', model);\n\n            if (currentPresenceType !== 'clocked_in' && currentPresenceType !== 'returned') {\n              this.get('userStatus').reloadCurrentUserStatus();\n            }\n\n            if (!currentTimeSession) {\n              return resolve(model);\n            }\n\n            const endedAt = currentTimeSession.get('endedAt');\n\n            if (endedAt == null) {\n              const startedAt = (0, _moment.default)(currentTimeSession.get('startedAt'));\n\n              const durationInMinutes = _moment.default.duration((0, _moment.default)().diff(startedAt)).minutes();\n\n              if (durationInMinutes < 1 && currentTimeSession.has('activity.id')) {\n                let activity = this.get('store').peekRecord('activity', currentTimeSession.get('activity.id'));\n\n                if (Ember.isPresent(activity)) {\n                  activity.unloadRecord();\n                }\n              } else if (durationInMinutes >= 1) {\n                const addedTimeSessionIsInThePast = Ember.isPresent(model.endedAt);\n\n                if (!addedTimeSessionIsInThePast) {\n                  currentTimeSession.stop();\n                }\n              }\n            }\n\n            resolve(model);\n          }, response => reject(response));\n        });\n      });\n    },\n\n    stopTimeSession(timeSession) {\n      return new Ember.RSVP.Promise((resolve, reject) => {\n        timeSession.stop().then(model => {\n          this.get('userStatus').set('currentTimeSession', timeSession);\n          resolve(model);\n        }, response => {\n          if (Ember.isPresent(response.errors)) {\n            this.set('currentTimeSession', null);\n          }\n\n          reject(response);\n        });\n      });\n    },\n\n    _syncTimeSession(payload) {\n      if (payload.type !== 'time-session') {\n        return;\n      }\n\n      const {\n        id\n      } = payload;\n      const timeSession = this.get('store').peekRecord('time-session', id);\n\n      if (payload.action === 'destroy') {\n        if (!timeSession) {\n          return;\n        }\n\n        if (this.get('currentTimeSession.id') === id) {\n          this.get('userStatus').reloadCurrentUserStatus();\n        }\n\n        this.get('store').unloadRecord(timeSession);\n        const activityId = timeSession.get('activity.id');\n\n        if (!activityId) {\n          return;\n        }\n\n        const activity = this.get('store').peekRecord('activity', activityId);\n\n        if (Ember.isPresent(activity)) {\n          this.get('store').unloadRecord(activity);\n        }\n      } else if (timeSession) {\n        const outdatedRecord = timeSession.get('updatedAt').toISOString() !== payload.attributes['updated-at'];\n\n        if (outdatedRecord) {\n          this.get('store').pushPayload({\n            data: payload\n          });\n        }\n      }\n    }\n\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/session-stores/application\", [\"exports\", \"ember-simple-auth/session-stores/cookie\"], function (_exports, _cookie) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _cookie.default;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/sign-in/route\", [\"exports\", \"web-app-ember-v2/mixins/unauthenticated-route-mixin\"], function (_exports, _unauthenticatedRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_unauthenticatedRouteMixin.default, {\n    session: Ember.inject.service(),\n\n    model() {\n      return Ember.Object.create({\n        modelName: 'sign-in'\n      });\n    },\n\n    setupController(controller, model) {\n      controller.set('model', model);\n      controller.set('isLoading', false);\n    },\n\n    actions: {\n      authenticate(model) {\n        this.controller.set('isLoading', true);\n        const email = model.get('email');\n        const password = model.get('password');\n        this.set('session.store.cookieExpirationTime', 9999999999); // Infinity\n\n        return this.get('session').authenticate('authenticator:oauth2', email, password).then(() => {\n          this.userPreferences.loadCurrentUser().then(() => {\n            if (Ember.isEmpty(this.get('session.attemptedTransition')) || this.get('session.attemptedTransition.targetName') === 'authenticated.index') {\n              this.get('store').findAll('workspace').then(workspaces => {\n                const currentUser = this.get('userPreferences').getCurrentUser();\n                let workspace = null;\n\n                if (currentUser.get('latestActiveWorkspaceId')) {\n                  workspace = workspaces.findBy('id', currentUser.get('latestActiveWorkspaceId'));\n                } else {\n                  workspace = workspaces.get('firstObject');\n                }\n\n                this.set('userPreferences.currentWorkspaceFilter', workspace);\n                this.set('session.attemptedTransition', null);\n              });\n            } else {\n              this.get('session.attemptedTransition').retry();\n              this.set('session.attemptedTransition', null);\n            }\n          });\n        }).catch(response => {\n          if (navigator.onLine === false) {\n            this.showNotification.call('error', this.get('i18n').t('sign-in.connection-error'));\n          } else if (!response) {\n            this.showNotification.call('error', this.get('i18n').t('sign-in.api-response-error'));\n          } else if (response.error === 'invalid_grant') {\n            this.showNotification.call('error', this.get('i18n').t('sign-in.invalid-grant'));\n          } else if (response.error_description) {\n            // doorkeeper error\n            this.showNotification.call('error', response.error_description);\n          } else {\n            this.showNotification.call('error', this.get('i18n').t('sign-in.api-error'));\n          }\n\n          this.controller.set('isLoading', false);\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/sign-in/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"mxz2HKpR\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,3],null,[[\\\"authenticate\\\",\\\"model\\\",\\\"disabled\\\"],[[30,[36,2],[\\\"authenticate\\\"],null],[35,1],[35,0]]]]],[6,[37,4],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"stats-loader\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"preloader-fade\\\"],[12],[10,\\\"div\\\"],[14,0,\\\"preloader\\\"],[12],[13],[13],[13]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isLoading\\\",\\\"model\\\",\\\"route-action\\\",\\\"sign-in-form\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/sign-in/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/sign-up/route\", [\"exports\", \"moment\", \"web-app-ember-v2/config/environment\", \"web-app-ember-v2/mixins/unauthenticated-route-mixin\"], function (_exports, _moment, _environment, _unauthenticatedRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Route.extend(_unauthenticatedRouteMixin.default, {\n    session: Ember.inject.service(),\n\n    model() {\n      return this.store.createRecord('user', {\n        preferences: {\n          timezone: _moment.default.tz.guess()\n        }\n      });\n    },\n\n    actions: {\n      setTimezone(timezone) {\n        this.set('currentModel.timezone', timezone);\n      },\n\n      setDateFormat(dateFormatValue) {\n        this.set('currentModel.dateFormat', dateFormatValue);\n      },\n\n      register(user) {\n        const {\n          email,\n          password\n        } = user.getProperties('email', 'password');\n        this.set('user', user);\n        user.save().then(() => {\n          this.get('session').authenticate('authenticator:oauth2', email, password).then(() => {\n            this.userPreferences.loadCurrentUser().then(() => {\n              if (Ember.isEmpty(this.get('session.attemptedTransition')) || this.get('session.attemptedTransition.targetName') === 'authenticated.index') {\n                this.get('store').findAll('workspace').then(workspaces => {\n                  const currentUser = this.get('userPreferences').getCurrentUser();\n                  const firstWorkspace = workspaces.get('firstObject');\n                  this.set('userPreferences.currentWorkspaceFilter', firstWorkspace);\n                  this.transitionTo(_environment.default.routeAfterAuthentication, firstWorkspace, \"all\", currentUser.id);\n                  this.set('session.attemptedTransition', null);\n                });\n              } else {\n                this.get('session.attemptedTransition').retry();\n                this.set('session.attemptedTransition', null);\n              }\n            });\n          });\n        }).catch(response => {\n          this.set('user.captcha', null);\n          window.grecaptcha.reset();\n\n          for (let error of response.errors) {\n            this.showNotification.call('error', error.detail);\n          }\n        });\n      }\n\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/sign-up/template\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"coqjTUlA\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,2],null,[[\\\"model\\\",\\\"register\\\",\\\"setTimezone\\\",\\\"setDateFormat\\\"],[[35,1],[30,[36,0],[\\\"register\\\"],null],[30,[36,0],[\\\"setTimezone\\\"],null],[30,[36,0],[\\\"setDateFormat\\\"],null]]]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"route-action\\\",\\\"model\\\",\\\"sign-up-form\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/sign-up/template.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/summary-state/storage\", [\"exports\", \"ember-local-storage/local/object\"], function (_exports, _object) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  const Storage = _object.default.extend();\n\n  Storage.reopenClass({\n    initialState() {\n      return {\n        selectedPeriod: 'daily'\n      };\n    }\n\n  });\n  var _default = Storage;\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/templates/application\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"VnGauTBX\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/templates/application.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/templates/components/bs-datetimepicker\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"460E9b6n\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[6,[37,2],[[27,[32,1]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[18,1,null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"  \\\"],[1,[30,[36,6],null,[[\\\"type\\\",\\\"class\\\",\\\"disabled\\\",\\\"name\\\",\\\"placeholder\\\"],[\\\"text\\\",\\\"form-control\\\",[35,5],[35,4],[35,3]]]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,8],[[35,7]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"input-group-addon\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[15,0,[31,[[30,[36,2],[[35,1,[\\\"date\\\"]],[35,1,[\\\"date\\\"]],[35,0]],null]]]],[12],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"dateIcon\\\",\\\"icons\\\",\\\"if\\\",\\\"placeholder\\\",\\\"textFieldName\\\",\\\"disabled\\\",\\\"input\\\",\\\"noIcon\\\",\\\"unless\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"web-app-ember-v2/templates/components/bs-datetimepicker.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"web-app-ember-v2/templates/components/ember-popper-targeting-parent\", [\"exports\", \"ember-popper/templates/components/ember-popper-targeting-parent\"], function (_exports, _emberPopperTargetingParent) {\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 _emberPopperTargetingParent.default;\n    }\n  });\n});","define(\"web-app-ember-v2/templates/components/ember-popper\", [\"exports\", \"ember-popper/templates/components/ember-popper\"], function (_exports, _emberPopper) {\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 _emberPopper.default;\n    }\n  });\n});","define(\"web-app-ember-v2/transforms/boolean\", [\"exports\", \"@ember-data/serializer/-private\"], function (_exports, _private) {\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 _private.BooleanTransform;\n    }\n  });\n});","define(\"web-app-ember-v2/transforms/date\", [\"exports\", \"@ember-data/serializer/-private\"], function (_exports, _private) {\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 _private.DateTransform;\n    }\n  });\n});","define(\"web-app-ember-v2/transforms/json\", [\"exports\", \"ember-data-change-tracker/transforms/json\"], function (_exports, _json) {\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 _json.default;\n    }\n  });\n});","define(\"web-app-ember-v2/transforms/number\", [\"exports\", \"@ember-data/serializer/-private\"], function (_exports, _private) {\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 _private.NumberTransform;\n    }\n  });\n});","define(\"web-app-ember-v2/transforms/object\", [\"exports\", \"ember-data-change-tracker/transforms/object\"], function (_exports, _object) {\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 _object.default;\n    }\n  });\n});","define(\"web-app-ember-v2/transforms/string\", [\"exports\", \"@ember-data/serializer/-private\"], function (_exports, _private) {\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 _private.StringTransform;\n    }\n  });\n});","define(\"web-app-ember-v2/utils/changeset-builder\", [\"exports\", \"ember-changeset-validations\", \"ember-changeset\", \"ember-deep-set\"], function (_exports, _emberChangesetValidations, _emberChangeset, _emberDeepSet) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = changesetBuilder;\n\n  // We are using it due to lack of handling particular collection's element in nested resources\n  // This util adds functionality to use objectAt which can set property of nested relationship's collection\n  function changesetBuilder(model, validations) {\n    let Changeset = (0, _emberChangeset.changeset)(model, (0, _emberChangesetValidations.default)(validations), validations);\n    Changeset.reopen({\n      execute() {\n        if (Ember.get(this, 'isValid') && Ember.get(this, 'isDirty')) {\n          let content = Ember.get(this, '_content');\n          let changes = Ember.get(this, '_changes');\n          Object.keys(changes).forEach(key => {\n            if (key.indexOf('objectAt') > -1) {\n              const keys = key.split(/\\.objectAt\\(\\d\\)\\./);\n              const indexes = key.match(/objectAt\\(\\d\\)/g).map(objPosition => parseInt(objPosition.match(/\\d/)[0]));\n              let contentToSet = indexes.reduce((content, index, j) => {\n                return content.get(keys[j]).objectAt(index);\n              }, content);\n              (0, _emberDeepSet.default)(contentToSet, keys[keys.length - 1], changes[key].value);\n            } else {\n              (0, _emberDeepSet.default)(content, key, changes[key].value);\n            }\n          });\n        }\n\n        return this;\n      }\n\n    });\n    return Changeset.create();\n  }\n});","define(\"web-app-ember-v2/utils/file\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.dataURLtoFile = dataURLtoFile;\n  _exports.readDataUrl = readDataUrl;\n  const {\n    Promise\n  } = Ember.RSVP;\n\n  function dataURLtoFile(dataurl, filename) {\n    const arr = dataurl.split(',');\n    const mime = arr[0].match(/:(.*?);/)[1];\n    const bstr = atob(arr[1]);\n    let n = bstr.length;\n    let u8arr = new Uint8Array(n);\n\n    while (n--) {\n      u8arr[n] = bstr.charCodeAt(n);\n    }\n\n    return new File([u8arr], filename, {\n      type: mime\n    });\n  }\n\n  function readDataUrl(file) {\n    return new Promise(resolve => {\n      const reader = new FileReader();\n\n      reader.onloadend = () => {\n        resolve(reader.result);\n      };\n\n      reader.readAsDataURL(file);\n    });\n  }\n});","define(\"web-app-ember-v2/utils/general\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.isEmail = isEmail;\n\n  function isEmail(email) {\n    const regex = /^([a-zA-Z0-9_.+-])+@(([a-zA-Z0-9-])+\\.)+([a-zA-Z0-9]{2,4})+$/;\n    return regex.test(email);\n  }\n});","define(\"web-app-ember-v2/utils/i18n/compile-template\", [\"exports\", \"ember-i18n/utils/i18n/compile-template\"], function (_exports, _compileTemplate) {\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 _compileTemplate.default;\n    }\n  });\n});","define(\"web-app-ember-v2/utils/i18n/missing-message\", [\"exports\", \"ember-i18n/utils/i18n/missing-message\"], function (_exports, _missingMessage) {\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 _missingMessage.default;\n    }\n  });\n});","define(\"web-app-ember-v2/validations/time-session\", [\"exports\", \"ember-changeset-validations/validators\"], function (_exports, _validators) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    task: (0, _validators.validatePresence)(true),\n    project: (0, _validators.validatePresence)(true),\n    sessionType: (0, _validators.validatePresence)(true),\n\n    description(key, newValue, oldValue, changes, content) {\n      if (newValue && newValue.length > 0) return true;\n      const source = changes.project ? changes : content;\n      const descRequired = Ember.get(source, 'project.projectSetting.timeSessionsDescriptionRequired');\n      return descRequired ? 'Description can\\'t be blank' : true;\n    }\n\n  };\n  _exports.default = _default;\n});","\n","define('web-app-ember-v2/config/environment', [], function() {\n  \n          var exports = {\n            'default': {\"modulePrefix\":\"web-app-ember-v2\",\"environment\":\"staging\",\"rootURL\":\"/\",\"routeAfterAuthentication\":\"authenticated.workspaces.show.projects.show.activity\",\"locationType\":\"history\",\"changeTracker\":{\"auto\":true,\"enableIsDirty\":true},\"gravatarDefaultURL\":\"http://www.gravatar.com/avatar/?d=identicon\",\"featureFlags\":{\"workplans\":true},\"moment\":{\"includeTimezone\":\"all\"},\"sentry\":{\"environment\":\"staging\",\"dsn\":\"\"},\"EmberENV\":{\"FEATURES\":{},\"EXTEND_PROTOTYPES\":{\"Date\":false},\"_APPLICATION_TEMPLATE_WRAPPER\":false,\"_DEFAULT_ASYNC_OBSERVERS\":true,\"_JQUERY_INTEGRATION\":true,\"_TEMPLATE_ONLY_GLIMMER_COMPONENTS\":true},\"APP\":{\"title\":\"PM Sentry\",\"backendUrl\":\"https://staging-api.pmsentry.com\",\"defaultLocale\":\"en\",\"preloader\":{\"loadedClass\":false,\"removeDelay\":false},\"urls\":{\"dashboard\":\"https://staging.pmsentry.com\",\"activity\":\"https://staging.pmsentry.com/activity\",\"reports\":\"https://staging.pmsentry.com/reports\",\"profile\":\"https://staging.pmsentry.com/profile\",\"preferences\":\"https://staging.pmsentry.com/preferences\",\"security\":\"https://staging.pmsentry.com/security\",\"workspaces\":\"https://staging.pmsentry.com/workspaces\",\"crx\":\"https://chrome.google.com/webstore/detail/timetracker-staging/okdlmocodgihbceabdkjdlijmmaadaei\",\"version\":\"https://staging.pmsentry.com/version.txt\"},\"name\":\"web-app-ember-v2\",\"version\":\"0.0.1+af5068be\",\"validatorDefaultLocale\":\"en\"},\"pubnub\":{\"subscribe_key\":\"sub-c-eb59ab74-45cb-11e7-ac6c-0619f8945a4f\",\"publish_key\":\"pub-c-b27bc447-043f-4459-a15b-0ede536e947e\",\"uuid\":\"whatevs\",\"ssl\":true},\"contentSecurityPolicy\":{\"script-src\":\"'self' 'unsafe-inline' 'unsafe-eval' cdn.pubnub.com https://www.google.com\",\"connect-src\":\"'self' staging.pmsentry.com *.pubnub.com slacktrack-uploads-staging.s3.eu-central-1.amazonaws.com sentry.io\",\"style-src\":\"'self' 'unsafe-inline' *.bootstrapcdn.com https://www.google.com\",\"font-src\":\"'self' *.bootstrapcdn.com\",\"img-src\":\"'self' *.gravatar.com slacktrack-uploads-staging.s3.eu-central-1.amazonaws.com\"},\"gReCaptcha\":{\"siteKey\":\"6LffHaAUAAAAAIOjdsUlNbiAsUHpgX_MSF4ppBye\"},\"i18n\":{\"defaultLocale\":\"en\"},\"ember-simple-auth\":{\"authorizer\":\"simple-auth-authorizer:oauth2-bearer\",\"authenticationRoute\":\"sign-in\",\"crossOriginWhitelist\":[\"https://staging-api.pmsentry.com\"],\"routeAfterAuthentication\":\"\"},\"simple-auth-oauth2\":{\"serverTokenEndpoint\":\"https://staging-api.pmsentry.com/token\"},\"exportApplicationGlobal\":true}\n          };\n          Object.defineProperty(exports, '__esModule', {value: true});\n          return exports;\n        \n});\n","\n          if (!runningTests) {\n            require(\"web-app-ember-v2/app\")[\"default\"].create({\"title\":\"PM Sentry\",\"backendUrl\":\"https://staging-api.pmsentry.com\",\"defaultLocale\":\"en\",\"preloader\":{\"loadedClass\":false,\"removeDelay\":false},\"urls\":{\"dashboard\":\"https://staging.pmsentry.com\",\"activity\":\"https://staging.pmsentry.com/activity\",\"reports\":\"https://staging.pmsentry.com/reports\",\"profile\":\"https://staging.pmsentry.com/profile\",\"preferences\":\"https://staging.pmsentry.com/preferences\",\"security\":\"https://staging.pmsentry.com/security\",\"workspaces\":\"https://staging.pmsentry.com/workspaces\",\"crx\":\"https://chrome.google.com/webstore/detail/timetracker-staging/okdlmocodgihbceabdkjdlijmmaadaei\",\"version\":\"https://staging.pmsentry.com/version.txt\"},\"name\":\"web-app-ember-v2\",\"version\":\"0.0.1+af5068be\",\"validatorDefaultLocale\":\"en\"});\n          }\n        \n"],"names":[],"mappings":"AAAA;AACA;AACA;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7NA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/KA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChsBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/KA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACl6BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;","file":"web-app-ember-v2.js"}