From eab560fe2aa9053f6d227d29ec6c1ad0939ea940 Mon Sep 17 00:00:00 2001 From: Robin Ward Date: Wed, 13 May 2020 16:23:41 -0400 Subject: [PATCH] DEV: import I18n instead of global usage (#9768) Co-authored-by: Mark VanLandingham Co-authored-by: Robin Ward Co-authored-by: Mark VanLandingham --- .../admin/components/admin-backups-logs.js | 1 + .../components/admin-report-storage-stats.js | 1 + .../javascripts/admin/components/admin-report.js | 1 + .../admin/components/admin-user-field-item.js | 1 + .../admin/components/admin-watched-word.js | 1 + .../components/admin-web-hook-event-chooser.js | 1 + .../admin/components/admin-web-hook-event.js | 1 + .../admin/components/admin-web-hook-status.js | 1 + .../admin/components/email-styles-editor.js | 1 + .../admin/components/embeddable-host.js | 1 + .../admin/components/inline-edit-checkbox.js | 1 + .../javascripts/admin/components/ip-lookup.js | 1 + .../admin/components/penalty-post-action.js | 1 + .../admin/components/permalink-form.js | 1 + .../admin/components/resumable-upload.js | 1 + .../admin/components/screened-ip-address-form.js | 1 + .../admin/components/secret-value-list.js | 1 + .../admin/components/tags-uploader.js | 1 + .../admin/components/watched-word-form.js | 1 + .../admin/components/watched-word-uploader.js | 1 + .../admin/controllers/admin-api-keys-new.js | 1 + .../admin/controllers/admin-backups-index.js | 1 + .../admin/controllers/admin-badges-award.js | 1 + .../admin/controllers/admin-badges-show.js | 1 + .../controllers/admin-customize-colors-show.js | 1 + .../admin/controllers/admin-customize-colors.js | 1 + .../admin-customize-email-style-edit.js | 1 + .../admin-customize-email-templates-edit.js | 1 + .../controllers/admin-customize-themes-edit.js | 1 + .../controllers/admin-customize-themes-show.js | 1 + .../admin/controllers/admin-dashboard-general.js | 1 + .../admin/controllers/admin-email-index.js | 1 + .../admin/controllers/admin-emojis.js | 1 + .../admin-logs-screened-ip-addresses.js | 1 + .../controllers/admin-logs-staff-action-logs.js | 1 + .../admin/controllers/admin-permalinks.js | 1 + .../admin/controllers/admin-search-logs-index.js | 1 + .../admin/controllers/admin-search-logs-term.js | 1 + .../admin/controllers/admin-site-settings.js | 1 + .../admin/controllers/admin-site-text-edit.js | 1 + .../admin/controllers/admin-user-badges.js | 1 + .../admin/controllers/admin-user-fields.js | 1 + .../admin/controllers/admin-user-index.js | 1 + .../admin/controllers/admin-users-list-show.js | 1 + .../controllers/admin-watched-words-action.js | 1 + .../admin/controllers/admin-web-hooks-show.js | 1 + .../admin/controllers/admin-web-hooks.js | 1 + .../admin/controllers/modals/admin-add-upload.js | 1 + .../controllers/modals/admin-badge-preview.js | 1 + .../modals/admin-edit-badge-groupings.js | 1 + .../controllers/modals/admin-install-theme.js | 1 + .../modals/admin-merge-users-confirmation.js | 1 + .../admin/controllers/modals/admin-reseed.js | 1 + .../javascripts/admin/helpers/human-size.js | 1 + .../admin/helpers/post-action-title.js | 1 + .../admin/mixins/penalty-controller.js | 1 + .../admin/mixins/setting-component.js | 1 + .../javascripts/admin/mixins/setting-object.js | 1 + .../javascripts/admin/models/admin-user.js | 1 + app/assets/javascripts/admin/models/backup.js | 1 + .../admin/models/color-scheme-color.js | 1 + .../javascripts/admin/models/color-scheme.js | 1 + app/assets/javascripts/admin/models/flag-type.js | 1 + app/assets/javascripts/admin/models/report.js | 1 + .../javascripts/admin/models/screened-email.js | 1 + .../admin/models/screened-ip-address.js | 1 + .../javascripts/admin/models/screened-url.js | 1 + .../javascripts/admin/models/site-setting.js | 1 + .../javascripts/admin/models/staff-action-log.js | 1 + app/assets/javascripts/admin/models/theme.js | 1 + .../javascripts/admin/models/watched-word.js | 1 + .../javascripts/admin/routes/admin-backups.js | 1 + .../admin/routes/admin-badges-show.js | 1 + .../javascripts/admin/routes/admin-badges.js | 1 + .../routes/admin-customize-email-style-edit.js | 1 + .../admin/routes/admin-customize-themes-edit.js | 1 + .../admin/routes/admin-customize-themes-show.js | 1 + .../admin/routes/admin-site-settings-category.js | 1 + .../admin/routes/admin-watched-words-action.js | 1 + app/assets/javascripts/admin/routes/admin.js | 1 + .../javascripts/admin/services/admin-tools.js | 1 + .../discourse-common/addon/helpers/bound-i18n.js | 1 + .../discourse-common/addon/helpers/i18n.js | 1 + .../discourse-common/addon/lib/icon-library.js | 1 + app/assets/javascripts/discourse-loader.js | 6 +++++- .../app/components/auth-token-dropdown.js | 1 + .../discourse/app/components/backup-uploader.js | 1 + .../discourse/app/components/badge-selector.js | 1 + .../discourse/app/components/badge-title.js | 1 + .../app/components/bookmark-actions-dropdown.js | 1 + .../app/components/color-picker-choice.js | 1 + .../app/components/composer-action-title.js | 1 + .../discourse/app/components/composer-editor.js | 1 + .../app/components/composer-messages.js | 1 + .../discourse/app/components/composer-title.js | 1 + .../app/components/composer-user-selector.js | 1 + .../components/conditional-loading-section.js | 1 + .../discourse/app/components/count-i18n.js | 1 + .../app/components/create-topics-notice.js | 1 + .../discourse/app/components/csv-uploader.js | 1 + .../discourse/app/components/d-button.js | 1 + .../discourse/app/components/d-editor.js | 1 + .../discourse/app/components/d-modal.js | 1 + .../discourse/app/components/date-input.js | 1 + .../discourse/app/components/date-picker.js | 1 + .../discourse/app/components/directory-toggle.js | 1 + .../app/components/discourse-linked-text.js | 1 + .../app/components/edit-category-settings.js | 1 + .../app/components/edit-category-tab.js | 1 + .../discourse/app/components/flag-action-type.js | 1 + .../discourse/app/components/flat-button.js | 1 + .../app/components/future-date-input.js | 1 + .../discourse/app/components/global-notice.js | 1 + .../app/components/group-flair-inputs.js | 1 + .../app/components/group-manage-logs-filter.js | 1 + .../app/components/group-manage-save-button.js | 1 + .../app/components/group-member-dropdown.js | 1 + .../app/components/group-membership-button.js | 1 + .../discourse/app/components/group-selector.js | 1 + .../components/groups-form-interaction-fields.js | 1 + .../components/groups-form-membership-fields.js | 1 + .../app/components/groups-form-profile-fields.js | 1 + .../discourse/app/components/images-uploader.js | 1 + .../discourse/app/components/invite-panel.js | 1 + .../discourse/app/components/nav-item.js | 1 + .../discourse/app/components/number-field.js | 1 + .../app/components/preference-checkbox.js | 1 + .../discourse/app/components/reviewable-item.js | 1 + .../app/components/search-advanced-options.js | 1 + .../app/components/search-text-field.js | 1 + .../app/components/second-factor-form.js | 1 + .../discourse/app/components/share-panel.js | 1 + .../discourse/app/components/share-popup.js | 1 + .../app/components/shared-draft-controls.js | 1 + .../discourse/app/components/suggested-topics.js | 1 + .../discourse/app/components/tag-groups-form.js | 1 + .../discourse/app/components/tag-info.js | 1 + .../discourse/app/components/tag-list.js | 1 + .../app/components/tags-admin-dropdown.js | 1 + .../discourse/app/components/text-field.js | 1 + .../discourse/app/components/topic-entrance.js | 1 + .../app/components/topic-join-group-notice.js | 1 + .../discourse/app/components/topic-list-item.js | 1 + .../app/components/topic-post-badges.js | 1 + .../discourse/app/components/topic-progress.js | 1 + .../discourse/app/components/topic-status.js | 1 + .../discourse/app/components/topic-timer-info.js | 1 + .../app/components/user-card-contents.js | 1 + .../app/components/user-flag-percentage.js | 1 + .../discourse/app/controllers/about.js | 1 + .../discourse/app/controllers/badges/show.js | 1 + .../discourse/app/controllers/bookmark.js | 1 + .../app/controllers/bulk-notification-level.js | 1 + .../discourse/app/controllers/change-owner.js | 1 + .../app/controllers/change-timestamp.js | 1 + .../discourse/app/controllers/composer.js | 1 + .../discourse/app/controllers/create-account.js | 1 + .../app/controllers/discovery/topics.js | 1 + .../discourse/app/controllers/edit-category.js | 1 + .../app/controllers/edit-topic-timer.js | 1 + .../discourse/app/controllers/exception.js | 1 + .../discourse/app/controllers/feature-topic.js | 1 + .../discourse/app/controllers/forgot-password.js | 1 + .../app/controllers/full-page-search.js | 1 + .../discourse/app/controllers/grant-badge.js | 1 + .../discourse/app/controllers/group.js | 1 + .../discourse/app/controllers/groups-index.js | 1 + .../discourse/app/controllers/groups-new.js | 1 + .../discourse/app/controllers/history.js | 1 + .../controllers/ignore-duration-with-username.js | 1 + .../discourse/app/controllers/ignore-duration.js | 1 + .../discourse/app/controllers/invites-show.js | 1 + .../app/controllers/keyboard-shortcuts-help.js | 1 + .../discourse/app/controllers/login.js | 1 + .../discourse/app/controllers/move-to-topic.js | 1 + .../discourse/app/controllers/password-reset.js | 1 + .../app/controllers/preferences/account.js | 1 + .../app/controllers/preferences/email.js | 1 + .../app/controllers/preferences/emails.js | 1 + .../app/controllers/preferences/interface.js | 1 + .../app/controllers/preferences/notifications.js | 1 + .../app/controllers/preferences/profile.js | 1 + .../app/controllers/preferences/second-factor.js | 1 + .../app/controllers/preferences/username.js | 1 + .../controllers/request-group-membership-form.js | 1 + .../discourse/app/controllers/review-index.js | 1 + .../second-factor-add-security-key.js | 1 + .../app/controllers/second-factor-add-totp.js | 1 + .../app/controllers/second-factor-backup-edit.js | 1 + .../discourse/app/controllers/tags-index.js | 1 + .../discourse/app/controllers/tags-show.js | 1 + .../app/controllers/topic-bulk-actions.js | 1 + .../discourse/app/controllers/topic.js | 1 + .../discourse/app/controllers/upload-selector.js | 1 + .../app/controllers/user-activity-bookmarks.js | 1 + .../discourse/app/controllers/user-activity.js | 1 + .../app/controllers/user-invited-show.js | 1 + .../app/controllers/user-private-messages.js | 1 + .../discourse/app/helpers/application.js | 1 + .../discourse/app/helpers/category-link.js | 1 + .../discourse/app/helpers/period-title.js | 1 + .../helpers/reviewable-history-description.js | 1 + .../discourse/app/helpers/reviewable-status.js | 1 + .../discourse/app/helpers/theme-helpers.js | 1 + .../discourse/app/helpers/user-status.js | 1 + .../discourse/app/initializers/asset-version.js | 1 + .../discourse/app/initializers/localization.js | 1 + .../discourse/app/initializers/logout.js | 1 + .../app/initializers/sharing-sources.js | 1 + .../app/initializers/topic-footer-buttons.js | 1 + .../javascripts/discourse/app/lib/ajax-error.js | 1 + app/assets/javascripts/discourse/app/lib/ajax.js | 1 + .../javascripts/discourse/app/lib/bookmark.js | 1 + .../javascripts/discourse/app/lib/click-track.js | 1 + .../javascripts/discourse/app/lib/computed.js | 1 + .../discourse/app/lib/desktop-notifications.js | 1 + .../javascripts/discourse/app/lib/export-csv.js | 1 + .../discourse/app/lib/export-result.js | 1 + .../javascripts/discourse/app/lib/formatter.js | 1 + .../javascripts/discourse/app/lib/lightbox.js | 1 + .../app/lib/register-topic-footer-button.js | 1 + .../javascripts/discourse/app/lib/search.js | 1 + .../javascripts/discourse/app/lib/show-modal.js | 1 + .../discourse/app/lib/static-route-builder.js | 1 + .../discourse/app/lib/theme-selector.js | 1 + .../discourse/app/lib/transform-post.js | 1 + .../javascripts/discourse/app/lib/uploads.js | 1 + .../javascripts/discourse/app/lib/utilities.js | 1 + .../javascripts/discourse/app/lib/webauthn.js | 1 + .../discourse/app/mixins/name-validation.js | 1 + .../discourse/app/mixins/password-validation.js | 1 + .../javascripts/discourse/app/mixins/upload.js | 1 + .../discourse/app/mixins/username-validation.js | 1 + .../discourse/app/models/badge-grouping.js | 1 + .../javascripts/discourse/app/models/bookmark.js | 1 + .../discourse/app/models/category-list.js | 1 + .../javascripts/discourse/app/models/composer.js | 1 + .../discourse/app/models/group-history.js | 1 + .../discourse/app/models/login-method.js | 1 + .../javascripts/discourse/app/models/nav-item.js | 1 + .../discourse/app/models/permission-type.js | 1 + .../discourse/app/models/post-stream.js | 1 + .../javascripts/discourse/app/models/post.js | 1 + .../discourse/app/models/reviewable.js | 1 + .../discourse/app/models/topic-details.js | 1 + .../javascripts/discourse/app/models/topic.js | 1 + .../discourse/app/models/user-draft.js | 1 + .../javascripts/discourse/app/models/user.js | 1 + .../app/raw-views/list/post-count-or-badges.js | 1 + .../app/raw-views/list/posts-count-column.js | 1 + .../app/raw-views/topic-list-header-column.js | 1 + .../discourse/app/raw-views/topic-status.js | 1 + .../javascripts/discourse/app/routes/about.js | 1 + .../discourse/app/routes/application.js | 1 + .../discourse/app/routes/badges-index.js | 1 + .../discourse/app/routes/build-category-route.js | 1 + .../app/routes/build-group-messages-route.js | 1 + .../app/routes/build-private-messages-route.js | 1 + .../discourse/app/routes/build-topic-route.js | 1 + .../discourse/app/routes/discovery-categories.js | 1 + .../discourse/app/routes/email-login.js | 1 + .../discourse/app/routes/full-page-search.js | 1 + .../discourse/app/routes/group-activity-posts.js | 1 + .../app/routes/group-activity-topics.js | 1 + .../discourse/app/routes/group-index.js | 1 + .../app/routes/group-manage-interaction.js | 1 + .../discourse/app/routes/group-manage-logs.js | 1 + .../app/routes/group-manage-membership.js | 1 + .../discourse/app/routes/group-manage-profile.js | 1 + .../discourse/app/routes/group-manage.js | 1 + .../discourse/app/routes/group-messages.js | 1 + .../discourse/app/routes/group-requests.js | 1 + .../discourse/app/routes/groups-index.js | 1 + .../discourse/app/routes/groups-new.js | 1 + .../discourse/app/routes/invites-show.js | 1 + .../discourse/app/routes/new-message.js | 1 + .../discourse/app/routes/password-reset.js | 1 + .../javascripts/discourse/app/routes/review.js | 1 + .../discourse/app/routes/tag-groups-new.js | 1 + .../discourse/app/routes/tag-groups.js | 1 + .../discourse/app/routes/tags-index.js | 1 + .../discourse/app/routes/tags-show.js | 1 + .../user-private-messages-group-archive.js | 1 + .../app/routes/user-private-messages-group.js | 1 + .../app/routes/user-private-messages-tags.js | 1 + .../javascripts/discourse/app/routes/user.js | 1 + .../javascripts/discourse/app/routes/users.js | 1 + .../discourse/app/services/logs-notice.js | 1 + .../discourse/app/widgets/actions-summary.js | 1 + .../bookmark-reminder-notification-item.js | 1 + .../javascripts/discourse/app/widgets/button.js | 1 + .../app/widgets/custom-notification-item.js | 1 + .../app/widgets/default-notification-item.js | 1 + .../group-message-summary-notification-item.js | 1 + .../app/widgets/hamburger-categories.js | 1 + .../discourse/app/widgets/hamburger-menu.js | 1 + .../discourse/app/widgets/header-topic-info.js | 1 + .../javascripts/discourse/app/widgets/header.js | 1 + .../liked-consolidated-notification-item.js | 1 + .../app/widgets/liked-notification-item.js | 1 + .../javascripts/discourse/app/widgets/link.js | 1 + ...bership-request-accepted-notification-item.js | 1 + ...hip-request-consolidated-notification-item.js | 1 + .../discourse/app/widgets/post-admin-menu.js | 1 + .../discourse/app/widgets/post-cooked.js | 1 + .../app/widgets/post-edits-indicator.js | 1 + .../discourse/app/widgets/post-gap.js | 1 + .../discourse/app/widgets/post-small-action.js | 1 + .../javascripts/discourse/app/widgets/post.js | 1 + .../discourse/app/widgets/poster-name.js | 1 + .../discourse/app/widgets/private-message-map.js | 1 + .../discourse/app/widgets/quick-access-panel.js | 1 + .../app/widgets/quick-access-profile.js | 1 + .../app/widgets/search-menu-controls.js | 1 + .../discourse/app/widgets/search-menu-results.js | 1 + .../discourse/app/widgets/time-gap.js | 1 + .../app/widgets/toggle-topic-summary.js | 1 + .../discourse/app/widgets/topic-admin-menu.js | 1 + .../discourse/app/widgets/topic-map.js | 1 + .../discourse/app/widgets/topic-status.js | 1 + .../discourse/app/widgets/topic-timeline.js | 1 + .../discourse/app/widgets/widget-dropdown.js | 1 + .../javascripts/discourse/app/widgets/widget.js | 1 + .../components/categories-admin-dropdown.js | 1 + .../select-kit/components/category-chooser.js | 1 + .../select-kit/components/category-drop.js | 1 + .../select-kit/components/composer-actions.js | 1 + .../components/future-date-input-selector.js | 1 + .../select-kit/components/group-dropdown.js | 1 + .../components/group-members-dropdown.js | 1 + .../select-kit/components/mini-tag-chooser.js | 1 + .../multi-select/multi-select-filter.js | 1 + .../components/notifications-button.js | 1 + .../notifications-button-row.js | 1 + .../components/notifications-filter.js | 1 + .../period-chooser/period-chooser-row.js | 1 + .../select-kit/components/pinned-button.js | 1 + .../select-kit/components/pinned-options.js | 1 + .../select-kit/components/select-kit.js | 1 + .../components/select-kit/select-kit-filter.js | 1 + .../components/select-kit/select-kit-row.js | 1 + .../components/toolbar-popup-menu-options.js | 1 + .../components/user-notifications-dropdown.js | 1 + app/assets/javascripts/select-kit/mixins/tags.js | 1 + .../javascripts/wizard/components/invite-list.js | 1 + .../wizard/components/theme-preview.js | 1 + .../wizard/components/wizard-field-image.js | 1 + .../javascripts/wizard/components/wizard-step.js | 1 + .../javascripts/wizard/test/test_helper.js | 3 ++- lib/pretty_text.rb | 7 ++++--- lib/pretty_text/shims.js | 16 ++++++++++------ test/javascripts/test_helper.js | 3 +-- 352 files changed, 369 insertions(+), 13 deletions(-) diff --git a/app/assets/javascripts/admin/components/admin-backups-logs.js b/app/assets/javascripts/admin/components/admin-backups-logs.js index 1837409c58e..76c8cff1ac5 100644 --- a/app/assets/javascripts/admin/components/admin-backups-logs.js +++ b/app/assets/javascripts/admin/components/admin-backups-logs.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { scheduleOnce } from "@ember/runloop"; import Component from "@ember/component"; import discourseDebounce from "discourse/lib/debounce"; diff --git a/app/assets/javascripts/admin/components/admin-report-storage-stats.js b/app/assets/javascripts/admin/components/admin-report-storage-stats.js index 61629c626e1..0be72566909 100644 --- a/app/assets/javascripts/admin/components/admin-report-storage-stats.js +++ b/app/assets/javascripts/admin/components/admin-report-storage-stats.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/admin/components/admin-report.js b/app/assets/javascripts/admin/components/admin-report.js index 352b92fb939..b9ce9a6fdff 100644 --- a/app/assets/javascripts/admin/components/admin-report.js +++ b/app/assets/javascripts/admin/components/admin-report.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { makeArray } from "discourse-common/lib/helpers"; import { alias, or, and, equal, notEmpty, not } from "@ember/object/computed"; diff --git a/app/assets/javascripts/admin/components/admin-user-field-item.js b/app/assets/javascripts/admin/components/admin-user-field-item.js index a02404de985..d59abe44372 100644 --- a/app/assets/javascripts/admin/components/admin-user-field-item.js +++ b/app/assets/javascripts/admin/components/admin-user-field-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { empty } from "@ember/object/computed"; import { scheduleOnce } from "@ember/runloop"; diff --git a/app/assets/javascripts/admin/components/admin-watched-word.js b/app/assets/javascripts/admin/components/admin-watched-word.js index d4f5108c0fd..28a17712466 100644 --- a/app/assets/javascripts/admin/components/admin-watched-word.js +++ b/app/assets/javascripts/admin/components/admin-watched-word.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import { iconHTML } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/admin/components/admin-web-hook-event-chooser.js b/app/assets/javascripts/admin/components/admin-web-hook-event-chooser.js index a38695c7351..7e76d8f6bd5 100644 --- a/app/assets/javascripts/admin/components/admin-web-hook-event-chooser.js +++ b/app/assets/javascripts/admin/components/admin-web-hook-event-chooser.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/admin/components/admin-web-hook-event.js b/app/assets/javascripts/admin/components/admin-web-hook-event.js index 365e22aa678..11bb2b4024f 100644 --- a/app/assets/javascripts/admin/components/admin-web-hook-event.js +++ b/app/assets/javascripts/admin/components/admin-web-hook-event.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/admin/components/admin-web-hook-status.js b/app/assets/javascripts/admin/components/admin-web-hook-status.js index 0c24edc9d6f..6c1591bc4c4 100644 --- a/app/assets/javascripts/admin/components/admin-web-hook-status.js +++ b/app/assets/javascripts/admin/components/admin-web-hook-status.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { iconHTML } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/admin/components/email-styles-editor.js b/app/assets/javascripts/admin/components/email-styles-editor.js index ef5cdb077e5..93d4df6b7d6 100644 --- a/app/assets/javascripts/admin/components/email-styles-editor.js +++ b/app/assets/javascripts/admin/components/email-styles-editor.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { reads } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/admin/components/embeddable-host.js b/app/assets/javascripts/admin/components/embeddable-host.js index 1d853b89866..cc96741fed2 100644 --- a/app/assets/javascripts/admin/components/embeddable-host.js +++ b/app/assets/javascripts/admin/components/embeddable-host.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import { or } from "@ember/object/computed"; diff --git a/app/assets/javascripts/admin/components/inline-edit-checkbox.js b/app/assets/javascripts/admin/components/inline-edit-checkbox.js index 2eb2c3ee5a8..2d681202b9b 100644 --- a/app/assets/javascripts/admin/components/inline-edit-checkbox.js +++ b/app/assets/javascripts/admin/components/inline-edit-checkbox.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed, { observes } from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/admin/components/ip-lookup.js b/app/assets/javascripts/admin/components/ip-lookup.js index b27191d6172..d0045555136 100644 --- a/app/assets/javascripts/admin/components/ip-lookup.js +++ b/app/assets/javascripts/admin/components/ip-lookup.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import { later } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/admin/components/penalty-post-action.js b/app/assets/javascripts/admin/components/penalty-post-action.js index 916546452ca..aeea3406c8b 100644 --- a/app/assets/javascripts/admin/components/penalty-post-action.js +++ b/app/assets/javascripts/admin/components/penalty-post-action.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { equal } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/admin/components/permalink-form.js b/app/assets/javascripts/admin/components/permalink-form.js index e1b62a11df6..0a15f51f572 100644 --- a/app/assets/javascripts/admin/components/permalink-form.js +++ b/app/assets/javascripts/admin/components/permalink-form.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { schedule } from "@ember/runloop"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/admin/components/resumable-upload.js b/app/assets/javascripts/admin/components/resumable-upload.js index 7425f174fea..ed95ea68be4 100644 --- a/app/assets/javascripts/admin/components/resumable-upload.js +++ b/app/assets/javascripts/admin/components/resumable-upload.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { later, schedule } from "@ember/runloop"; import Component from "@ember/component"; import { iconHTML } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/admin/components/screened-ip-address-form.js b/app/assets/javascripts/admin/components/screened-ip-address-form.js index 48b92641b43..1046f4c2100 100644 --- a/app/assets/javascripts/admin/components/screened-ip-address-form.js +++ b/app/assets/javascripts/admin/components/screened-ip-address-form.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { schedule } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/admin/components/secret-value-list.js b/app/assets/javascripts/admin/components/secret-value-list.js index ea4ecf792cc..399ec5c6e78 100644 --- a/app/assets/javascripts/admin/components/secret-value-list.js +++ b/app/assets/javascripts/admin/components/secret-value-list.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import Component from "@ember/component"; import { on } from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/admin/components/tags-uploader.js b/app/assets/javascripts/admin/components/tags-uploader.js index 88f4afc8d97..7530f29e217 100644 --- a/app/assets/javascripts/admin/components/tags-uploader.js +++ b/app/assets/javascripts/admin/components/tags-uploader.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias } from "@ember/object/computed"; import Component from "@ember/component"; import UploadMixin from "discourse/mixins/upload"; diff --git a/app/assets/javascripts/admin/components/watched-word-form.js b/app/assets/javascripts/admin/components/watched-word-form.js index fff5b86e266..96ddbffd7c6 100644 --- a/app/assets/javascripts/admin/components/watched-word-form.js +++ b/app/assets/javascripts/admin/components/watched-word-form.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { schedule } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/admin/components/watched-word-uploader.js b/app/assets/javascripts/admin/components/watched-word-uploader.js index 05dc41c2074..dceecea2280 100644 --- a/app/assets/javascripts/admin/components/watched-word-uploader.js +++ b/app/assets/javascripts/admin/components/watched-word-uploader.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/admin/controllers/admin-api-keys-new.js b/app/assets/javascripts/admin/controllers/admin-api-keys-new.js index 9384e79557f..eaddcfcd825 100644 --- a/app/assets/javascripts/admin/controllers/admin-api-keys-new.js +++ b/app/assets/javascripts/admin/controllers/admin-api-keys-new.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isBlank } from "@ember/utils"; import Controller from "@ember/controller"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/admin/controllers/admin-backups-index.js b/app/assets/javascripts/admin/controllers/admin-backups-index.js index 45f25dd617d..c3b43450b19 100644 --- a/app/assets/javascripts/admin/controllers/admin-backups-index.js +++ b/app/assets/javascripts/admin/controllers/admin-backups-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias, equal } from "@ember/object/computed"; import Controller, { inject as controller } from "@ember/controller"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/admin/controllers/admin-badges-award.js b/app/assets/javascripts/admin/controllers/admin-badges-award.js index ef141ccac12..d7945b15c73 100644 --- a/app/assets/javascripts/admin/controllers/admin-badges-award.js +++ b/app/assets/javascripts/admin/controllers/admin-badges-award.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import { ajax } from "discourse/lib/ajax"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/admin/controllers/admin-badges-show.js b/app/assets/javascripts/admin/controllers/admin-badges-show.js index a860d2f992d..6a44fe4ae47 100644 --- a/app/assets/javascripts/admin/controllers/admin-badges-show.js +++ b/app/assets/javascripts/admin/controllers/admin-badges-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed, { observes } from "discourse-common/utils/decorators"; import { reads } from "@ember/object/computed"; import Controller, { inject as controller } from "@ember/controller"; diff --git a/app/assets/javascripts/admin/controllers/admin-customize-colors-show.js b/app/assets/javascripts/admin/controllers/admin-customize-colors-show.js index a27022390f1..61f6e5d6e75 100644 --- a/app/assets/javascripts/admin/controllers/admin-customize-colors-show.js +++ b/app/assets/javascripts/admin/controllers/admin-customize-colors-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { later } from "@ember/runloop"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/admin/controllers/admin-customize-colors.js b/app/assets/javascripts/admin/controllers/admin-customize-colors.js index e2ff119aa44..062121fc471 100644 --- a/app/assets/javascripts/admin/controllers/admin-customize-colors.js +++ b/app/assets/javascripts/admin/controllers/admin-customize-colors.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import Controller from "@ember/controller"; import showModal from "discourse/lib/show-modal"; diff --git a/app/assets/javascripts/admin/controllers/admin-customize-email-style-edit.js b/app/assets/javascripts/admin/controllers/admin-customize-email-style-edit.js index d534792b002..0daf5c7973e 100644 --- a/app/assets/javascripts/admin/controllers/admin-customize-email-style-edit.js +++ b/app/assets/javascripts/admin/controllers/admin-customize-email-style-edit.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/admin/controllers/admin-customize-email-templates-edit.js b/app/assets/javascripts/admin/controllers/admin-customize-email-templates-edit.js index 3617edca753..f6e19c6368e 100644 --- a/app/assets/javascripts/admin/controllers/admin-customize-email-templates-edit.js +++ b/app/assets/javascripts/admin/controllers/admin-customize-email-templates-edit.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Controller from "@ember/controller"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/admin/controllers/admin-customize-themes-edit.js b/app/assets/javascripts/admin/controllers/admin-customize-themes-edit.js index c3c0f4fc999..a6065056920 100644 --- a/app/assets/javascripts/admin/controllers/admin-customize-themes-edit.js +++ b/app/assets/javascripts/admin/controllers/admin-customize-themes-edit.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import { url } from "discourse/lib/computed"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/admin/controllers/admin-customize-themes-show.js b/app/assets/javascripts/admin/controllers/admin-customize-themes-show.js index 5440c4260ac..2c5ad32a182 100644 --- a/app/assets/javascripts/admin/controllers/admin-customize-themes-show.js +++ b/app/assets/javascripts/admin/controllers/admin-customize-themes-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { makeArray } from "discourse-common/lib/helpers"; import { empty, diff --git a/app/assets/javascripts/admin/controllers/admin-dashboard-general.js b/app/assets/javascripts/admin/controllers/admin-dashboard-general.js index 5f2ea86819f..07a195b5663 100644 --- a/app/assets/javascripts/admin/controllers/admin-dashboard-general.js +++ b/app/assets/javascripts/admin/controllers/admin-dashboard-general.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { makeArray } from "discourse-common/lib/helpers"; import { inject } from "@ember/controller"; diff --git a/app/assets/javascripts/admin/controllers/admin-email-index.js b/app/assets/javascripts/admin/controllers/admin-email-index.js index 3433f6f55fe..8fad5ff0340 100644 --- a/app/assets/javascripts/admin/controllers/admin-email-index.js +++ b/app/assets/javascripts/admin/controllers/admin-email-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { empty } from "@ember/object/computed"; import Controller from "@ember/controller"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/admin/controllers/admin-emojis.js b/app/assets/javascripts/admin/controllers/admin-emojis.js index 1a496707032..96b9e1ff8ec 100644 --- a/app/assets/javascripts/admin/controllers/admin-emojis.js +++ b/app/assets/javascripts/admin/controllers/admin-emojis.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { sort } from "@ember/object/computed"; import EmberObject, { action, computed } from "@ember/object"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/admin/controllers/admin-logs-screened-ip-addresses.js b/app/assets/javascripts/admin/controllers/admin-logs-screened-ip-addresses.js index 789f070db18..73a780e2787 100644 --- a/app/assets/javascripts/admin/controllers/admin-logs-screened-ip-addresses.js +++ b/app/assets/javascripts/admin/controllers/admin-logs-screened-ip-addresses.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import discourseDebounce from "discourse/lib/debounce"; import { outputExportResult } from "discourse/lib/export-result"; diff --git a/app/assets/javascripts/admin/controllers/admin-logs-staff-action-logs.js b/app/assets/javascripts/admin/controllers/admin-logs-staff-action-logs.js index 7ef84b45ad8..059267ca403 100644 --- a/app/assets/javascripts/admin/controllers/admin-logs-staff-action-logs.js +++ b/app/assets/javascripts/admin/controllers/admin-logs-staff-action-logs.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { gt } from "@ember/object/computed"; import EmberObject from "@ember/object"; import { scheduleOnce } from "@ember/runloop"; diff --git a/app/assets/javascripts/admin/controllers/admin-permalinks.js b/app/assets/javascripts/admin/controllers/admin-permalinks.js index 6f0842049c0..177bb4148db 100644 --- a/app/assets/javascripts/admin/controllers/admin-permalinks.js +++ b/app/assets/javascripts/admin/controllers/admin-permalinks.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import discourseDebounce from "discourse/lib/debounce"; import Permalink from "admin/models/permalink"; diff --git a/app/assets/javascripts/admin/controllers/admin-search-logs-index.js b/app/assets/javascripts/admin/controllers/admin-search-logs-index.js index 397b4c9b9e5..ab58efbfcbb 100644 --- a/app/assets/javascripts/admin/controllers/admin-search-logs-index.js +++ b/app/assets/javascripts/admin/controllers/admin-search-logs-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; export const DEFAULT_PERIOD = "yearly"; diff --git a/app/assets/javascripts/admin/controllers/admin-search-logs-term.js b/app/assets/javascripts/admin/controllers/admin-search-logs-term.js index 66def62c97c..cd493e35bc9 100644 --- a/app/assets/javascripts/admin/controllers/admin-search-logs-term.js +++ b/app/assets/javascripts/admin/controllers/admin-search-logs-term.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import { DEFAULT_PERIOD } from "admin/controllers/admin-search-logs-index"; diff --git a/app/assets/javascripts/admin/controllers/admin-site-settings.js b/app/assets/javascripts/admin/controllers/admin-site-settings.js index e3225b163dd..04826ca1331 100644 --- a/app/assets/javascripts/admin/controllers/admin-site-settings.js +++ b/app/assets/javascripts/admin/controllers/admin-site-settings.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { alias } from "@ember/object/computed"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/admin/controllers/admin-site-text-edit.js b/app/assets/javascripts/admin/controllers/admin-site-text-edit.js index d24a1729105..417c8238247 100644 --- a/app/assets/javascripts/admin/controllers/admin-site-text-edit.js +++ b/app/assets/javascripts/admin/controllers/admin-site-text-edit.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Controller from "@ember/controller"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/admin/controllers/admin-user-badges.js b/app/assets/javascripts/admin/controllers/admin-user-badges.js index a42bf58ca53..63e7edca25f 100644 --- a/app/assets/javascripts/admin/controllers/admin-user-badges.js +++ b/app/assets/javascripts/admin/controllers/admin-user-badges.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias, sort } from "@ember/object/computed"; import { next } from "@ember/runloop"; diff --git a/app/assets/javascripts/admin/controllers/admin-user-fields.js b/app/assets/javascripts/admin/controllers/admin-user-fields.js index b81b08f559c..61e916748b9 100644 --- a/app/assets/javascripts/admin/controllers/admin-user-fields.js +++ b/app/assets/javascripts/admin/controllers/admin-user-fields.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { gte, sort } from "@ember/object/computed"; import Controller from "@ember/controller"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/admin/controllers/admin-user-index.js b/app/assets/javascripts/admin/controllers/admin-user-index.js index 9076e566540..de6545056f7 100644 --- a/app/assets/javascripts/admin/controllers/admin-user-index.js +++ b/app/assets/javascripts/admin/controllers/admin-user-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { notEmpty, and } from "@ember/object/computed"; import { inject as service } from "@ember/service"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/admin/controllers/admin-users-list-show.js b/app/assets/javascripts/admin/controllers/admin-users-list-show.js index 8b7adb194ce..23deb83955d 100644 --- a/app/assets/javascripts/admin/controllers/admin-users-list-show.js +++ b/app/assets/javascripts/admin/controllers/admin-users-list-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed, { observes } from "discourse-common/utils/decorators"; import Controller from "@ember/controller"; import discourseDebounce from "discourse/lib/debounce"; diff --git a/app/assets/javascripts/admin/controllers/admin-watched-words-action.js b/app/assets/javascripts/admin/controllers/admin-watched-words-action.js index cf5815da730..1a8070569f4 100644 --- a/app/assets/javascripts/admin/controllers/admin-watched-words-action.js +++ b/app/assets/javascripts/admin/controllers/admin-watched-words-action.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { or } from "@ember/object/computed"; import { schedule } from "@ember/runloop"; diff --git a/app/assets/javascripts/admin/controllers/admin-web-hooks-show.js b/app/assets/javascripts/admin/controllers/admin-web-hooks-show.js index 4332f52d9cc..031ad8ee8b4 100644 --- a/app/assets/javascripts/admin/controllers/admin-web-hooks-show.js +++ b/app/assets/javascripts/admin/controllers/admin-web-hooks-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import { alias } from "@ember/object/computed"; diff --git a/app/assets/javascripts/admin/controllers/admin-web-hooks.js b/app/assets/javascripts/admin/controllers/admin-web-hooks.js index f9f401e3306..ec025662ef4 100644 --- a/app/assets/javascripts/admin/controllers/admin-web-hooks.js +++ b/app/assets/javascripts/admin/controllers/admin-web-hooks.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/admin/controllers/modals/admin-add-upload.js b/app/assets/javascripts/admin/controllers/modals/admin-add-upload.js index 6fb28596182..da260b409e8 100644 --- a/app/assets/javascripts/admin/controllers/modals/admin-add-upload.js +++ b/app/assets/javascripts/admin/controllers/modals/admin-add-upload.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { and, not } from "@ember/object/computed"; import Controller, { inject as controller } from "@ember/controller"; diff --git a/app/assets/javascripts/admin/controllers/modals/admin-badge-preview.js b/app/assets/javascripts/admin/controllers/modals/admin-badge-preview.js index c5baa8eb9a8..531d3ea6654 100644 --- a/app/assets/javascripts/admin/controllers/modals/admin-badge-preview.js +++ b/app/assets/javascripts/admin/controllers/modals/admin-badge-preview.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias, map } from "@ember/object/computed"; import Controller from "@ember/controller"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/admin/controllers/modals/admin-edit-badge-groupings.js b/app/assets/javascripts/admin/controllers/modals/admin-edit-badge-groupings.js index f1d1274abd5..1372f16ca93 100644 --- a/app/assets/javascripts/admin/controllers/modals/admin-edit-badge-groupings.js +++ b/app/assets/javascripts/admin/controllers/modals/admin-edit-badge-groupings.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import { A } from "@ember/array"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/admin/controllers/modals/admin-install-theme.js b/app/assets/javascripts/admin/controllers/modals/admin-install-theme.js index 16cf2034d50..7b74bc99641 100644 --- a/app/assets/javascripts/admin/controllers/modals/admin-install-theme.js +++ b/app/assets/javascripts/admin/controllers/modals/admin-install-theme.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { equal, match, alias } from "@ember/object/computed"; import Controller, { inject as controller } from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; diff --git a/app/assets/javascripts/admin/controllers/modals/admin-merge-users-confirmation.js b/app/assets/javascripts/admin/controllers/modals/admin-merge-users-confirmation.js index 91dbe7d0724..08ac66070c3 100644 --- a/app/assets/javascripts/admin/controllers/modals/admin-merge-users-confirmation.js +++ b/app/assets/javascripts/admin/controllers/modals/admin-merge-users-confirmation.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller, { inject as controller } from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/admin/controllers/modals/admin-reseed.js b/app/assets/javascripts/admin/controllers/modals/admin-reseed.js index 326a3a66a7b..44bf29a2070 100644 --- a/app/assets/javascripts/admin/controllers/modals/admin-reseed.js +++ b/app/assets/javascripts/admin/controllers/modals/admin-reseed.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/admin/helpers/human-size.js b/app/assets/javascripts/admin/helpers/human-size.js index cb022e64e12..fe543937f18 100644 --- a/app/assets/javascripts/admin/helpers/human-size.js +++ b/app/assets/javascripts/admin/helpers/human-size.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { htmlHelper } from "discourse-common/lib/helpers"; export default htmlHelper(size => I18n.toHumanSize(size)); diff --git a/app/assets/javascripts/admin/helpers/post-action-title.js b/app/assets/javascripts/admin/helpers/post-action-title.js index 657aee2e9bf..53b5922ae51 100644 --- a/app/assets/javascripts/admin/helpers/post-action-title.js +++ b/app/assets/javascripts/admin/helpers/post-action-title.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Helper from "@ember/component/helper"; function postActionTitle([id, nameKey]) { diff --git a/app/assets/javascripts/admin/mixins/penalty-controller.js b/app/assets/javascripts/admin/mixins/penalty-controller.js index 46ba124e18e..73349e10677 100644 --- a/app/assets/javascripts/admin/mixins/penalty-controller.js +++ b/app/assets/javascripts/admin/mixins/penalty-controller.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import ModalFunctionality from "discourse/mixins/modal-functionality"; import { popupAjaxError } from "discourse/lib/ajax-error"; import Mixin from "@ember/object/mixin"; diff --git a/app/assets/javascripts/admin/mixins/setting-component.js b/app/assets/javascripts/admin/mixins/setting-component.js index e7afc119f27..83dcc31e65a 100644 --- a/app/assets/javascripts/admin/mixins/setting-component.js +++ b/app/assets/javascripts/admin/mixins/setting-component.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { warn } from "@ember/debug"; import discourseComputed from "discourse-common/utils/decorators"; import { alias, oneWay } from "@ember/object/computed"; diff --git a/app/assets/javascripts/admin/mixins/setting-object.js b/app/assets/javascripts/admin/mixins/setting-object.js index 0d97e798733..bfacbedc8e0 100644 --- a/app/assets/javascripts/admin/mixins/setting-object.js +++ b/app/assets/javascripts/admin/mixins/setting-object.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { computed } from "@ember/object"; import Mixin from "@ember/object/mixin"; diff --git a/app/assets/javascripts/admin/models/admin-user.js b/app/assets/javascripts/admin/models/admin-user.js index 1ddb7a52ffe..71b8078f6ed 100644 --- a/app/assets/javascripts/admin/models/admin-user.js +++ b/app/assets/javascripts/admin/models/admin-user.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { filter, or, gt, lt, not } from "@ember/object/computed"; import { iconHTML } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/admin/models/backup.js b/app/assets/javascripts/admin/models/backup.js index 882173300a9..2c41e1ef9d5 100644 --- a/app/assets/javascripts/admin/models/backup.js +++ b/app/assets/javascripts/admin/models/backup.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { ajax } from "discourse/lib/ajax"; import { extractError } from "discourse/lib/ajax-error"; import EmberObject from "@ember/object"; diff --git a/app/assets/javascripts/admin/models/color-scheme-color.js b/app/assets/javascripts/admin/models/color-scheme-color.js index f1aa235a4b2..e55fa258f80 100644 --- a/app/assets/javascripts/admin/models/color-scheme-color.js +++ b/app/assets/javascripts/admin/models/color-scheme-color.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed, { observes, on diff --git a/app/assets/javascripts/admin/models/color-scheme.js b/app/assets/javascripts/admin/models/color-scheme.js index ee60097b747..5fe6337f0d8 100644 --- a/app/assets/javascripts/admin/models/color-scheme.js +++ b/app/assets/javascripts/admin/models/color-scheme.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { A } from "@ember/array"; import ArrayProxy from "@ember/array/proxy"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/admin/models/flag-type.js b/app/assets/javascripts/admin/models/flag-type.js index 93fb2eacc92..1079110045f 100644 --- a/app/assets/javascripts/admin/models/flag-type.js +++ b/app/assets/javascripts/admin/models/flag-type.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import RestModel from "discourse/models/rest"; diff --git a/app/assets/javascripts/admin/models/report.js b/app/assets/javascripts/admin/models/report.js index 080ca4551b0..2e0b4488875 100644 --- a/app/assets/javascripts/admin/models/report.js +++ b/app/assets/javascripts/admin/models/report.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { makeArray } from "discourse-common/lib/helpers"; import { isEmpty } from "@ember/utils"; diff --git a/app/assets/javascripts/admin/models/screened-email.js b/app/assets/javascripts/admin/models/screened-email.js index 4ef3217edf3..df2fa40ff96 100644 --- a/app/assets/javascripts/admin/models/screened-email.js +++ b/app/assets/javascripts/admin/models/screened-email.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { ajax } from "discourse/lib/ajax"; import EmberObject from "@ember/object"; diff --git a/app/assets/javascripts/admin/models/screened-ip-address.js b/app/assets/javascripts/admin/models/screened-ip-address.js index bfac17d86cf..585acb9b790 100644 --- a/app/assets/javascripts/admin/models/screened-ip-address.js +++ b/app/assets/javascripts/admin/models/screened-ip-address.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { equal } from "@ember/object/computed"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/admin/models/screened-url.js b/app/assets/javascripts/admin/models/screened-url.js index 31ea850778d..4cde3d12618 100644 --- a/app/assets/javascripts/admin/models/screened-url.js +++ b/app/assets/javascripts/admin/models/screened-url.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { ajax } from "discourse/lib/ajax"; import EmberObject from "@ember/object"; diff --git a/app/assets/javascripts/admin/models/site-setting.js b/app/assets/javascripts/admin/models/site-setting.js index 4edc89a1b96..01e34566f5f 100644 --- a/app/assets/javascripts/admin/models/site-setting.js +++ b/app/assets/javascripts/admin/models/site-setting.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { ajax } from "discourse/lib/ajax"; import Setting from "admin/mixins/setting-object"; import EmberObject from "@ember/object"; diff --git a/app/assets/javascripts/admin/models/staff-action-log.js b/app/assets/javascripts/admin/models/staff-action-log.js index 45330b13fcc..a077d054c0d 100644 --- a/app/assets/javascripts/admin/models/staff-action-log.js +++ b/app/assets/javascripts/admin/models/staff-action-log.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { ajax } from "discourse/lib/ajax"; import AdminUser from "admin/models/admin-user"; diff --git a/app/assets/javascripts/admin/models/theme.js b/app/assets/javascripts/admin/models/theme.js index e63e9e1cce8..0b96660f99b 100644 --- a/app/assets/javascripts/admin/models/theme.js +++ b/app/assets/javascripts/admin/models/theme.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { get } from "@ember/object"; import { isBlank, isEmpty } from "@ember/utils"; import { or, gt } from "@ember/object/computed"; diff --git a/app/assets/javascripts/admin/models/watched-word.js b/app/assets/javascripts/admin/models/watched-word.js index dac78affe11..6713a8a6055 100644 --- a/app/assets/javascripts/admin/models/watched-word.js +++ b/app/assets/javascripts/admin/models/watched-word.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { ajax } from "discourse/lib/ajax"; import EmberObject from "@ember/object"; diff --git a/app/assets/javascripts/admin/routes/admin-backups.js b/app/assets/javascripts/admin/routes/admin-backups.js index 85bfc197b98..3d517acbf12 100644 --- a/app/assets/javascripts/admin/routes/admin-backups.js +++ b/app/assets/javascripts/admin/routes/admin-backups.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import DiscourseRoute from "discourse/routes/discourse"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/admin/routes/admin-badges-show.js b/app/assets/javascripts/admin/routes/admin-badges-show.js index 4a29cfae0ad..7a74db7161c 100644 --- a/app/assets/javascripts/admin/routes/admin-badges-show.js +++ b/app/assets/javascripts/admin/routes/admin-badges-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { get } from "@ember/object"; import Route from "@ember/routing/route"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/admin/routes/admin-badges.js b/app/assets/javascripts/admin/routes/admin-badges.js index 0dac4bbaa21..ab6de98504b 100644 --- a/app/assets/javascripts/admin/routes/admin-badges.js +++ b/app/assets/javascripts/admin/routes/admin-badges.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import { ajax } from "discourse/lib/ajax"; import Badge from "discourse/models/badge"; diff --git a/app/assets/javascripts/admin/routes/admin-customize-email-style-edit.js b/app/assets/javascripts/admin/routes/admin-customize-email-style-edit.js index 8dcc18f0d91..d3a2b035af0 100644 --- a/app/assets/javascripts/admin/routes/admin-customize-email-style-edit.js +++ b/app/assets/javascripts/admin/routes/admin-customize-email-style-edit.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Route from "@ember/routing/route"; export default Route.extend({ model(params) { diff --git a/app/assets/javascripts/admin/routes/admin-customize-themes-edit.js b/app/assets/javascripts/admin/routes/admin-customize-themes-edit.js index 62a70f0d7c4..5cb695ddcd5 100644 --- a/app/assets/javascripts/admin/routes/admin-customize-themes-edit.js +++ b/app/assets/javascripts/admin/routes/admin-customize-themes-edit.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Route from "@ember/routing/route"; export default Route.extend({ model(params) { diff --git a/app/assets/javascripts/admin/routes/admin-customize-themes-show.js b/app/assets/javascripts/admin/routes/admin-customize-themes-show.js index 5b9ce251697..ee175a9df82 100644 --- a/app/assets/javascripts/admin/routes/admin-customize-themes-show.js +++ b/app/assets/javascripts/admin/routes/admin-customize-themes-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Route from "@ember/routing/route"; import { scrollTop } from "discourse/mixins/scroll-top"; import { THEMES, COMPONENTS } from "admin/models/theme"; diff --git a/app/assets/javascripts/admin/routes/admin-site-settings-category.js b/app/assets/javascripts/admin/routes/admin-site-settings-category.js index b5a2f810b28..e8a9b853d40 100644 --- a/app/assets/javascripts/admin/routes/admin-site-settings-category.js +++ b/app/assets/javascripts/admin/routes/admin-site-settings-category.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import DiscourseRoute from "discourse/routes/discourse"; diff --git a/app/assets/javascripts/admin/routes/admin-watched-words-action.js b/app/assets/javascripts/admin/routes/admin-watched-words-action.js index 358cfebe675..af416c48ded 100644 --- a/app/assets/javascripts/admin/routes/admin-watched-words-action.js +++ b/app/assets/javascripts/admin/routes/admin-watched-words-action.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import DiscourseRoute from "discourse/routes/discourse"; diff --git a/app/assets/javascripts/admin/routes/admin.js b/app/assets/javascripts/admin/routes/admin.js index bc4e8173ef6..0a7ae99fdd2 100644 --- a/app/assets/javascripts/admin/routes/admin.js +++ b/app/assets/javascripts/admin/routes/admin.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/admin/services/admin-tools.js b/app/assets/javascripts/admin/services/admin-tools.js index bb5e1ac06a8..6193beed666 100644 --- a/app/assets/javascripts/admin/services/admin-tools.js +++ b/app/assets/javascripts/admin/services/admin-tools.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; // A service that can act as a bridge between the front end Discourse application // and the admin application. Use this if you need front end code to access admin // modules. Inject it optionally, and if it exists go to town! diff --git a/app/assets/javascripts/discourse-common/addon/helpers/bound-i18n.js b/app/assets/javascripts/discourse-common/addon/helpers/bound-i18n.js index 0d58d0f5c3d..2eb7a75f650 100644 --- a/app/assets/javascripts/discourse-common/addon/helpers/bound-i18n.js +++ b/app/assets/javascripts/discourse-common/addon/helpers/bound-i18n.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { htmlHelper } from "discourse-common/lib/helpers"; export default htmlHelper((key, params) => I18n.t(key, params.hash)); diff --git a/app/assets/javascripts/discourse-common/addon/helpers/i18n.js b/app/assets/javascripts/discourse-common/addon/helpers/i18n.js index 902ed699bfd..f9fc65aa8da 100644 --- a/app/assets/javascripts/discourse-common/addon/helpers/i18n.js +++ b/app/assets/javascripts/discourse-common/addon/helpers/i18n.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { registerUnbound } from "discourse-common/lib/helpers"; registerUnbound("i18n", (key, params) => I18n.t(key, params)); diff --git a/app/assets/javascripts/discourse-common/addon/lib/icon-library.js b/app/assets/javascripts/discourse-common/addon/lib/icon-library.js index 047cbd854cf..decc6681803 100644 --- a/app/assets/javascripts/discourse-common/addon/lib/icon-library.js +++ b/app/assets/javascripts/discourse-common/addon/lib/icon-library.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { h } from "virtual-dom"; import attributeHook from "discourse-common/lib/attribute-hook"; import deprecated from "discourse-common/lib/deprecated"; diff --git a/app/assets/javascripts/discourse-loader.js b/app/assets/javascripts/discourse-loader.js index e14a457bd1e..8442f0cec7d 100644 --- a/app/assets/javascripts/discourse-loader.js +++ b/app/assets/javascripts/discourse-loader.js @@ -1,7 +1,6 @@ var define, requirejs; (function() { - // In future versions of ember we don't need this var EMBER_MODULES = {}; var ALIASES = { "ember-addons/ember-computed-decorators": @@ -9,6 +8,8 @@ var define, requirejs; "discourse/lib/raw-templates": "discourse-common/lib/raw-templates", "preload-store": "discourse/lib/preload-store" }; + + // In future versions of ember we don't need this if (typeof Ember !== "undefined") { EMBER_MODULES = { jquery: { default: $ }, @@ -140,6 +141,9 @@ var define, requirejs; }, "@ember/object/internals": { guidFor: Ember.guidFor + }, + I18n: { + default: I18n } }; } diff --git a/app/assets/javascripts/discourse/app/components/auth-token-dropdown.js b/app/assets/javascripts/discourse/app/components/auth-token-dropdown.js index ef4d819ead7..10bfab5e492 100644 --- a/app/assets/javascripts/discourse/app/components/auth-token-dropdown.js +++ b/app/assets/javascripts/discourse/app/components/auth-token-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { computed } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/components/backup-uploader.js b/app/assets/javascripts/discourse/app/components/backup-uploader.js index 331684ee255..93a71e0293b 100644 --- a/app/assets/javascripts/discourse/app/components/backup-uploader.js +++ b/app/assets/javascripts/discourse/app/components/backup-uploader.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/components/badge-selector.js b/app/assets/javascripts/discourse/app/components/badge-selector.js index 47cf4dbd107..f4803c99d87 100644 --- a/app/assets/javascripts/discourse/app/components/badge-selector.js +++ b/app/assets/javascripts/discourse/app/components/badge-selector.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed, { on, diff --git a/app/assets/javascripts/discourse/app/components/badge-title.js b/app/assets/javascripts/discourse/app/components/badge-title.js index ad80c39ddc5..ab4acbeca5a 100644 --- a/app/assets/javascripts/discourse/app/components/badge-title.js +++ b/app/assets/javascripts/discourse/app/components/badge-title.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/components/bookmark-actions-dropdown.js b/app/assets/javascripts/discourse/app/components/bookmark-actions-dropdown.js index 65707fa08d9..9e31068f70c 100644 --- a/app/assets/javascripts/discourse/app/components/bookmark-actions-dropdown.js +++ b/app/assets/javascripts/discourse/app/components/bookmark-actions-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { computed } from "@ember/object"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { action } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/components/color-picker-choice.js b/app/assets/javascripts/discourse/app/components/color-picker-choice.js index a384ca1920a..88d51953cfb 100644 --- a/app/assets/javascripts/discourse/app/components/color-picker-choice.js +++ b/app/assets/javascripts/discourse/app/components/color-picker-choice.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/composer-action-title.js b/app/assets/javascripts/discourse/app/components/composer-action-title.js index 86a968154a9..c48009c6ba5 100644 --- a/app/assets/javascripts/discourse/app/components/composer-action-title.js +++ b/app/assets/javascripts/discourse/app/components/composer-action-title.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias, equal } from "@ember/object/computed"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/components/composer-editor.js b/app/assets/javascripts/discourse/app/components/composer-editor.js index ade361365b6..de6fa4344ab 100644 --- a/app/assets/javascripts/discourse/app/components/composer-editor.js +++ b/app/assets/javascripts/discourse/app/components/composer-editor.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { debounce, later, next, schedule, throttle } from "@ember/runloop"; import Component from "@ember/component"; import userSearch from "discourse/lib/user-search"; diff --git a/app/assets/javascripts/discourse/app/components/composer-messages.js b/app/assets/javascripts/discourse/app/components/composer-messages.js index cafae730587..40f8ba1104e 100644 --- a/app/assets/javascripts/discourse/app/components/composer-messages.js +++ b/app/assets/javascripts/discourse/app/components/composer-messages.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { not } from "@ember/object/computed"; import EmberObject from "@ember/object"; import { scheduleOnce } from "@ember/runloop"; diff --git a/app/assets/javascripts/discourse/app/components/composer-title.js b/app/assets/javascripts/discourse/app/components/composer-title.js index b4cb3ef3828..7ee2cb513a7 100644 --- a/app/assets/javascripts/discourse/app/components/composer-title.js +++ b/app/assets/javascripts/discourse/app/components/composer-title.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias, or } from "@ember/object/computed"; import { debounce, next, schedule } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/composer-user-selector.js b/app/assets/javascripts/discourse/app/components/composer-user-selector.js index efbc3aafdbd..30c7d2fb61d 100644 --- a/app/assets/javascripts/discourse/app/components/composer-user-selector.js +++ b/app/assets/javascripts/discourse/app/components/composer-user-selector.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { schedule } from "@ember/runloop"; import Component from "@ember/component"; import discourseComputed, { observes } from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/components/conditional-loading-section.js b/app/assets/javascripts/discourse/app/components/conditional-loading-section.js index fb6f3105187..92005cd8881 100644 --- a/app/assets/javascripts/discourse/app/components/conditional-loading-section.js +++ b/app/assets/javascripts/discourse/app/components/conditional-loading-section.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; export default Component.extend({ classNames: ["conditional-loading-section"], diff --git a/app/assets/javascripts/discourse/app/components/count-i18n.js b/app/assets/javascripts/discourse/app/components/count-i18n.js index d0fd9bdccbe..225e56755a9 100644 --- a/app/assets/javascripts/discourse/app/components/count-i18n.js +++ b/app/assets/javascripts/discourse/app/components/count-i18n.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; export default Component.extend({ diff --git a/app/assets/javascripts/discourse/app/components/create-topics-notice.js b/app/assets/javascripts/discourse/app/components/create-topics-notice.js index 7db4e65df95..10bc5614346 100644 --- a/app/assets/javascripts/discourse/app/components/create-topics-notice.js +++ b/app/assets/javascripts/discourse/app/components/create-topics-notice.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/csv-uploader.js b/app/assets/javascripts/discourse/app/components/csv-uploader.js index b3bb4e8d1f9..884e7724bd4 100644 --- a/app/assets/javascripts/discourse/app/components/csv-uploader.js +++ b/app/assets/javascripts/discourse/app/components/csv-uploader.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import UploadMixin from "discourse/mixins/upload"; diff --git a/app/assets/javascripts/discourse/app/components/d-button.js b/app/assets/javascripts/discourse/app/components/d-button.js index ad4d32a5a24..de914fe9012 100644 --- a/app/assets/javascripts/discourse/app/components/d-button.js +++ b/app/assets/javascripts/discourse/app/components/d-button.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { notEmpty, empty, equal } from "@ember/object/computed"; import { computed } from "@ember/object"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/d-editor.js b/app/assets/javascripts/discourse/app/components/d-editor.js index d1a64b4c0f3..4fd5ec4bc23 100644 --- a/app/assets/javascripts/discourse/app/components/d-editor.js +++ b/app/assets/javascripts/discourse/app/components/d-editor.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { debounce, later, next, schedule, scheduleOnce } from "@ember/runloop"; import { inject as service } from "@ember/service"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/d-modal.js b/app/assets/javascripts/discourse/app/components/d-modal.js index bc81971d838..e338cc6a619 100644 --- a/app/assets/javascripts/discourse/app/components/d-modal.js +++ b/app/assets/javascripts/discourse/app/components/d-modal.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { next } from "@ember/runloop"; import { on } from "discourse-common/utils/decorators"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/date-input.js b/app/assets/javascripts/discourse/app/components/date-input.js index d4ee63ee9b0..870f16f3122 100644 --- a/app/assets/javascripts/discourse/app/components/date-input.js +++ b/app/assets/javascripts/discourse/app/components/date-input.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { schedule } from "@ember/runloop"; import { action } from "@ember/object"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/date-picker.js b/app/assets/javascripts/discourse/app/components/date-picker.js index c10d7ecdd8f..e6f0aaaefcd 100644 --- a/app/assets/javascripts/discourse/app/components/date-picker.js +++ b/app/assets/javascripts/discourse/app/components/date-picker.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { schedule } from "@ember/runloop"; import Component from "@ember/component"; /* global Pikaday:true */ diff --git a/app/assets/javascripts/discourse/app/components/directory-toggle.js b/app/assets/javascripts/discourse/app/components/directory-toggle.js index a2dcec81b55..a2e288caee0 100644 --- a/app/assets/javascripts/discourse/app/components/directory-toggle.js +++ b/app/assets/javascripts/discourse/app/components/directory-toggle.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { iconHTML } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/discourse/app/components/discourse-linked-text.js b/app/assets/javascripts/discourse/app/components/discourse-linked-text.js index 55240d4ee2b..fae43c2d2bc 100644 --- a/app/assets/javascripts/discourse/app/components/discourse-linked-text.js +++ b/app/assets/javascripts/discourse/app/components/discourse-linked-text.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/components/edit-category-settings.js b/app/assets/javascripts/discourse/app/components/edit-category-settings.js index d3b647984e9..5844e45d0c4 100644 --- a/app/assets/javascripts/discourse/app/components/edit-category-settings.js +++ b/app/assets/javascripts/discourse/app/components/edit-category-settings.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { empty, and } from "@ember/object/computed"; import { setting } from "discourse/lib/computed"; diff --git a/app/assets/javascripts/discourse/app/components/edit-category-tab.js b/app/assets/javascripts/discourse/app/components/edit-category-tab.js index 9fa79845338..ebd5e9dc5d3 100644 --- a/app/assets/javascripts/discourse/app/components/edit-category-tab.js +++ b/app/assets/javascripts/discourse/app/components/edit-category-tab.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { scheduleOnce } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/flag-action-type.js b/app/assets/javascripts/discourse/app/components/flag-action-type.js index a88356c9a90..93de11b8fb6 100644 --- a/app/assets/javascripts/discourse/app/components/flag-action-type.js +++ b/app/assets/javascripts/discourse/app/components/flag-action-type.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { and, not, equal } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/flat-button.js b/app/assets/javascripts/discourse/app/components/flat-button.js index f2f38fdc278..e58a27e9423 100644 --- a/app/assets/javascripts/discourse/app/components/flat-button.js +++ b/app/assets/javascripts/discourse/app/components/flat-button.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/components/future-date-input.js b/app/assets/javascripts/discourse/app/components/future-date-input.js index d54e68e7826..37be61c202a 100644 --- a/app/assets/javascripts/discourse/app/components/future-date-input.js +++ b/app/assets/javascripts/discourse/app/components/future-date-input.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { equal, and, empty, or } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/global-notice.js b/app/assets/javascripts/discourse/app/components/global-notice.js index abaf7306725..15eb1bf3768 100644 --- a/app/assets/javascripts/discourse/app/components/global-notice.js +++ b/app/assets/javascripts/discourse/app/components/global-notice.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { bind, cancel } from "@ember/runloop"; import Component from "@ember/component"; import LogsNotice from "discourse/services/logs-notice"; diff --git a/app/assets/javascripts/discourse/app/components/group-flair-inputs.js b/app/assets/javascripts/discourse/app/components/group-flair-inputs.js index 81b17bcb8df..7b432e12713 100644 --- a/app/assets/javascripts/discourse/app/components/group-flair-inputs.js +++ b/app/assets/javascripts/discourse/app/components/group-flair-inputs.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { debounce } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/group-manage-logs-filter.js b/app/assets/javascripts/discourse/app/components/group-manage-logs-filter.js index 98e0c16cdd4..70851af62e1 100644 --- a/app/assets/javascripts/discourse/app/components/group-manage-logs-filter.js +++ b/app/assets/javascripts/discourse/app/components/group-manage-logs-filter.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/group-manage-save-button.js b/app/assets/javascripts/discourse/app/components/group-manage-save-button.js index d1304834ee0..91a6adbed76 100644 --- a/app/assets/javascripts/discourse/app/components/group-manage-save-button.js +++ b/app/assets/javascripts/discourse/app/components/group-manage-save-button.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/discourse/app/components/group-member-dropdown.js b/app/assets/javascripts/discourse/app/components/group-member-dropdown.js index 1ee959ecb2d..20d6ab90ad9 100644 --- a/app/assets/javascripts/discourse/app/components/group-member-dropdown.js +++ b/app/assets/javascripts/discourse/app/components/group-member-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { computed } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/components/group-membership-button.js b/app/assets/javascripts/discourse/app/components/group-membership-button.js index 7c808bc3eb3..88985455dda 100644 --- a/app/assets/javascripts/discourse/app/components/group-membership-button.js +++ b/app/assets/javascripts/discourse/app/components/group-membership-button.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/discourse/app/components/group-selector.js b/app/assets/javascripts/discourse/app/components/group-selector.js index a743cde69f1..4fb6d1be088 100644 --- a/app/assets/javascripts/discourse/app/components/group-selector.js +++ b/app/assets/javascripts/discourse/app/components/group-selector.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import Component from "@ember/component"; import discourseComputed, { diff --git a/app/assets/javascripts/discourse/app/components/groups-form-interaction-fields.js b/app/assets/javascripts/discourse/app/components/groups-form-interaction-fields.js index 62a7d17ecea..9f20ed31010 100644 --- a/app/assets/javascripts/discourse/app/components/groups-form-interaction-fields.js +++ b/app/assets/javascripts/discourse/app/components/groups-form-interaction-fields.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/components/groups-form-membership-fields.js b/app/assets/javascripts/discourse/app/components/groups-form-membership-fields.js index 78903d6c5aa..b20f952864e 100644 --- a/app/assets/javascripts/discourse/app/components/groups-form-membership-fields.js +++ b/app/assets/javascripts/discourse/app/components/groups-form-membership-fields.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { computed } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/components/groups-form-profile-fields.js b/app/assets/javascripts/discourse/app/components/groups-form-profile-fields.js index 39077b9257c..e3da6d0c7bf 100644 --- a/app/assets/javascripts/discourse/app/components/groups-form-profile-fields.js +++ b/app/assets/javascripts/discourse/app/components/groups-form-profile-fields.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { not } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/images-uploader.js b/app/assets/javascripts/discourse/app/components/images-uploader.js index 4e68324b0cf..15eb2d41f6b 100644 --- a/app/assets/javascripts/discourse/app/components/images-uploader.js +++ b/app/assets/javascripts/discourse/app/components/images-uploader.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import UploadMixin from "discourse/mixins/upload"; diff --git a/app/assets/javascripts/discourse/app/components/invite-panel.js b/app/assets/javascripts/discourse/app/components/invite-panel.js index 07488091316..0c3b832ab08 100644 --- a/app/assets/javascripts/discourse/app/components/invite-panel.js +++ b/app/assets/javascripts/discourse/app/components/invite-panel.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import EmberObject, { computed } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/components/nav-item.js b/app/assets/javascripts/discourse/app/components/nav-item.js index 7358e2ded63..8c2037ef0aa 100644 --- a/app/assets/javascripts/discourse/app/components/nav-item.js +++ b/app/assets/javascripts/discourse/app/components/nav-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { inject as service } from "@ember/service"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/number-field.js b/app/assets/javascripts/discourse/app/components/number-field.js index feb61f36b10..42a8e46af78 100644 --- a/app/assets/javascripts/discourse/app/components/number-field.js +++ b/app/assets/javascripts/discourse/app/components/number-field.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import TextField from "discourse/components/text-field"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/components/preference-checkbox.js b/app/assets/javascripts/discourse/app/components/preference-checkbox.js index 83ad27853ff..f78f767ac3d 100644 --- a/app/assets/javascripts/discourse/app/components/preference-checkbox.js +++ b/app/assets/javascripts/discourse/app/components/preference-checkbox.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/reviewable-item.js b/app/assets/javascripts/discourse/app/components/reviewable-item.js index a0ef38412fd..3d028a8bf8d 100644 --- a/app/assets/javascripts/discourse/app/components/reviewable-item.js +++ b/app/assets/javascripts/discourse/app/components/reviewable-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/components/search-advanced-options.js b/app/assets/javascripts/discourse/app/components/search-advanced-options.js index 274e62e7b15..a2f6fcfd6ac 100644 --- a/app/assets/javascripts/discourse/app/components/search-advanced-options.js +++ b/app/assets/javascripts/discourse/app/components/search-advanced-options.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { debounce, scheduleOnce } from "@ember/runloop"; import Component from "@ember/component"; import { observes } from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/components/search-text-field.js b/app/assets/javascripts/discourse/app/components/search-text-field.js index fc6ca86c08d..f11456c7221 100644 --- a/app/assets/javascripts/discourse/app/components/search-text-field.js +++ b/app/assets/javascripts/discourse/app/components/search-text-field.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { on } from "discourse-common/utils/decorators"; import TextField from "discourse/components/text-field"; diff --git a/app/assets/javascripts/discourse/app/components/second-factor-form.js b/app/assets/javascripts/discourse/app/components/second-factor-form.js index 47bd68a4876..43d37862dbf 100644 --- a/app/assets/javascripts/discourse/app/components/second-factor-form.js +++ b/app/assets/javascripts/discourse/app/components/second-factor-form.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { SECOND_FACTOR_METHODS } from "discourse/models/user"; diff --git a/app/assets/javascripts/discourse/app/components/share-panel.js b/app/assets/javascripts/discourse/app/components/share-panel.js index 00bfd41082c..5094854bcf3 100644 --- a/app/assets/javascripts/discourse/app/components/share-panel.js +++ b/app/assets/javascripts/discourse/app/components/share-panel.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { alias } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/share-popup.js b/app/assets/javascripts/discourse/app/components/share-popup.js index 9a9db6a4944..a329da8d07f 100644 --- a/app/assets/javascripts/discourse/app/components/share-popup.js +++ b/app/assets/javascripts/discourse/app/components/share-popup.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { bind, scheduleOnce, later } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/shared-draft-controls.js b/app/assets/javascripts/discourse/app/components/shared-draft-controls.js index 4374380e03f..5a9e6436c8e 100644 --- a/app/assets/javascripts/discourse/app/components/shared-draft-controls.js +++ b/app/assets/javascripts/discourse/app/components/shared-draft-controls.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/suggested-topics.js b/app/assets/javascripts/discourse/app/components/suggested-topics.js index 11dc410ab00..e5c5a40f154 100644 --- a/app/assets/javascripts/discourse/app/components/suggested-topics.js +++ b/app/assets/javascripts/discourse/app/components/suggested-topics.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { computed, get } from "@ember/object"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/tag-groups-form.js b/app/assets/javascripts/discourse/app/components/tag-groups-form.js index b77220cd081..a1df90730cb 100644 --- a/app/assets/javascripts/discourse/app/components/tag-groups-form.js +++ b/app/assets/javascripts/discourse/app/components/tag-groups-form.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/tag-info.js b/app/assets/javascripts/discourse/app/components/tag-info.js index 5f2d0e7d6c5..c4fa98ccc2d 100644 --- a/app/assets/javascripts/discourse/app/components/tag-info.js +++ b/app/assets/javascripts/discourse/app/components/tag-info.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { ajax } from "discourse/lib/ajax"; import { popupAjaxError } from "discourse/lib/ajax-error"; import showModal from "discourse/lib/show-modal"; diff --git a/app/assets/javascripts/discourse/app/components/tag-list.js b/app/assets/javascripts/discourse/app/components/tag-list.js index d02bd3b8caa..b76c9291e82 100644 --- a/app/assets/javascripts/discourse/app/components/tag-list.js +++ b/app/assets/javascripts/discourse/app/components/tag-list.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { sort } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/tags-admin-dropdown.js b/app/assets/javascripts/discourse/app/components/tags-admin-dropdown.js index 58f28b3796e..9aa1725e339 100644 --- a/app/assets/javascripts/discourse/app/components/tags-admin-dropdown.js +++ b/app/assets/javascripts/discourse/app/components/tags-admin-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { computed } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/components/text-field.js b/app/assets/javascripts/discourse/app/components/text-field.js index affad24e803..f9c13ec4d37 100644 --- a/app/assets/javascripts/discourse/app/components/text-field.js +++ b/app/assets/javascripts/discourse/app/components/text-field.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import TextField from "@ember/component/text-field"; import discourseComputed from "discourse-common/utils/decorators"; import { siteDir, isRTL, isLTR } from "discourse/lib/text-direction"; diff --git a/app/assets/javascripts/discourse/app/components/topic-entrance.js b/app/assets/javascripts/discourse/app/components/topic-entrance.js index b27a7fe15d6..8ecde647f5e 100644 --- a/app/assets/javascripts/discourse/app/components/topic-entrance.js +++ b/app/assets/javascripts/discourse/app/components/topic-entrance.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { scheduleOnce } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/topic-join-group-notice.js b/app/assets/javascripts/discourse/app/components/topic-join-group-notice.js index 07db8b0fa82..216a3fb2b0c 100644 --- a/app/assets/javascripts/discourse/app/components/topic-join-group-notice.js +++ b/app/assets/javascripts/discourse/app/components/topic-join-group-notice.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/components/topic-list-item.js b/app/assets/javascripts/discourse/app/components/topic-list-item.js index 2460dc8fc96..030903a3899 100644 --- a/app/assets/javascripts/discourse/app/components/topic-list-item.js +++ b/app/assets/javascripts/discourse/app/components/topic-list-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed, { observes } from "discourse-common/utils/decorators"; import { alias } from "@ember/object/computed"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/topic-post-badges.js b/app/assets/javascripts/discourse/app/components/topic-post-badges.js index 9d3cded17fe..5c38d527127 100644 --- a/app/assets/javascripts/discourse/app/components/topic-post-badges.js +++ b/app/assets/javascripts/discourse/app/components/topic-post-badges.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; export default Component.extend({ diff --git a/app/assets/javascripts/discourse/app/components/topic-progress.js b/app/assets/javascripts/discourse/app/components/topic-progress.js index 35e40d175e4..3f927bd78c3 100644 --- a/app/assets/javascripts/discourse/app/components/topic-progress.js +++ b/app/assets/javascripts/discourse/app/components/topic-progress.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias } from "@ember/object/computed"; import { scheduleOnce } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/topic-status.js b/app/assets/javascripts/discourse/app/components/topic-status.js index 569292eb5ef..8edf0d991cb 100644 --- a/app/assets/javascripts/discourse/app/components/topic-status.js +++ b/app/assets/javascripts/discourse/app/components/topic-status.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; import { iconHTML } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/discourse/app/components/topic-timer-info.js b/app/assets/javascripts/discourse/app/components/topic-timer-info.js index 30eb177ca39..6bbde2a2171 100644 --- a/app/assets/javascripts/discourse/app/components/topic-timer-info.js +++ b/app/assets/javascripts/discourse/app/components/topic-timer-info.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { cancel, later } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/components/user-card-contents.js b/app/assets/javascripts/discourse/app/components/user-card-contents.js index 7b92e86011d..ee19f26d820 100644 --- a/app/assets/javascripts/discourse/app/components/user-card-contents.js +++ b/app/assets/javascripts/discourse/app/components/user-card-contents.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { alias, gte, and, gt, not, or } from "@ember/object/computed"; import EmberObject, { set } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/components/user-flag-percentage.js b/app/assets/javascripts/discourse/app/components/user-flag-percentage.js index 60e3c4ccef3..ee15cae9650 100644 --- a/app/assets/javascripts/discourse/app/components/user-flag-percentage.js +++ b/app/assets/javascripts/discourse/app/components/user-flag-percentage.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/discourse/app/controllers/about.js b/app/assets/javascripts/discourse/app/controllers/about.js index 9225421995f..dcae91a1545 100644 --- a/app/assets/javascripts/discourse/app/controllers/about.js +++ b/app/assets/javascripts/discourse/app/controllers/about.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { gt } from "@ember/object/computed"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/badges/show.js b/app/assets/javascripts/discourse/app/controllers/badges/show.js index ae89c737ea7..0ab92eac3fb 100644 --- a/app/assets/javascripts/discourse/app/controllers/badges/show.js +++ b/app/assets/javascripts/discourse/app/controllers/badges/show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller, { inject as controller } from "@ember/controller"; import EmberObject from "@ember/object"; import Badge from "discourse/models/badge"; diff --git a/app/assets/javascripts/discourse/app/controllers/bookmark.js b/app/assets/javascripts/discourse/app/controllers/bookmark.js index 9653fd92665..aa731cb62dc 100644 --- a/app/assets/javascripts/discourse/app/controllers/bookmark.js +++ b/app/assets/javascripts/discourse/app/controllers/bookmark.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { and } from "@ember/object/computed"; import { next } from "@ember/runloop"; import { action } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/controllers/bulk-notification-level.js b/app/assets/javascripts/discourse/app/controllers/bulk-notification-level.js index 7e0642c9fc7..7750d255706 100644 --- a/app/assets/javascripts/discourse/app/controllers/bulk-notification-level.js +++ b/app/assets/javascripts/discourse/app/controllers/bulk-notification-level.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { empty } from "@ember/object/computed"; import Controller, { inject as controller } from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/change-owner.js b/app/assets/javascripts/discourse/app/controllers/change-owner.js index 0380faf86cd..247703e11d9 100644 --- a/app/assets/javascripts/discourse/app/controllers/change-owner.js +++ b/app/assets/javascripts/discourse/app/controllers/change-owner.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import { alias } from "@ember/object/computed"; diff --git a/app/assets/javascripts/discourse/app/controllers/change-timestamp.js b/app/assets/javascripts/discourse/app/controllers/change-timestamp.js index 5cb6bdba532..b81c1928a91 100644 --- a/app/assets/javascripts/discourse/app/controllers/change-timestamp.js +++ b/app/assets/javascripts/discourse/app/controllers/change-timestamp.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import { next } from "@ember/runloop"; diff --git a/app/assets/javascripts/discourse/app/controllers/composer.js b/app/assets/javascripts/discourse/app/controllers/composer.js index 836ce63cb7f..d8aed927ff5 100644 --- a/app/assets/javascripts/discourse/app/controllers/composer.js +++ b/app/assets/javascripts/discourse/app/controllers/composer.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { and, or, alias, reads } from "@ember/object/computed"; import { debounce } from "@ember/runloop"; diff --git a/app/assets/javascripts/discourse/app/controllers/create-account.js b/app/assets/javascripts/discourse/app/controllers/create-account.js index b0567c07b4e..1593ff95ad3 100644 --- a/app/assets/javascripts/discourse/app/controllers/create-account.js +++ b/app/assets/javascripts/discourse/app/controllers/create-account.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { A } from "@ember/array"; import { isEmpty } from "@ember/utils"; import { notEmpty, or, not } from "@ember/object/computed"; diff --git a/app/assets/javascripts/discourse/app/controllers/discovery/topics.js b/app/assets/javascripts/discourse/app/controllers/discovery/topics.js index 0ea6c599183..2434da4c613 100644 --- a/app/assets/javascripts/discourse/app/controllers/discovery/topics.js +++ b/app/assets/javascripts/discourse/app/controllers/discovery/topics.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias, not, gt, empty, notEmpty, equal } from "@ember/object/computed"; import { inject as controller } from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/edit-category.js b/app/assets/javascripts/discourse/app/controllers/edit-category.js index e014cd1ea24..3cf6cea1828 100644 --- a/app/assets/javascripts/discourse/app/controllers/edit-category.js +++ b/app/assets/javascripts/discourse/app/controllers/edit-category.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; diff --git a/app/assets/javascripts/discourse/app/controllers/edit-topic-timer.js b/app/assets/javascripts/discourse/app/controllers/edit-topic-timer.js index 926c2492b91..ca2ae267388 100644 --- a/app/assets/javascripts/discourse/app/controllers/edit-topic-timer.js +++ b/app/assets/javascripts/discourse/app/controllers/edit-topic-timer.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject, { setProperties } from "@ember/object"; import Controller from "@ember/controller"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/controllers/exception.js b/app/assets/javascripts/discourse/app/controllers/exception.js index e9a5f10d160..4dd27f3c583 100644 --- a/app/assets/javascripts/discourse/app/controllers/exception.js +++ b/app/assets/javascripts/discourse/app/controllers/exception.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { equal, gte, none, alias } from "@ember/object/computed"; import { schedule } from "@ember/runloop"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/feature-topic.js b/app/assets/javascripts/discourse/app/controllers/feature-topic.js index 8fb459a1458..253bce8eb22 100644 --- a/app/assets/javascripts/discourse/app/controllers/feature-topic.js +++ b/app/assets/javascripts/discourse/app/controllers/feature-topic.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { inject } from "@ember/controller"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/forgot-password.js b/app/assets/javascripts/discourse/app/controllers/forgot-password.js index 0f667683add..9821947e3b2 100644 --- a/app/assets/javascripts/discourse/app/controllers/forgot-password.js +++ b/app/assets/javascripts/discourse/app/controllers/forgot-password.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/full-page-search.js b/app/assets/javascripts/discourse/app/controllers/full-page-search.js index 5a92e4a4537..1183a8eec28 100644 --- a/app/assets/javascripts/discourse/app/controllers/full-page-search.js +++ b/app/assets/javascripts/discourse/app/controllers/full-page-search.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { or } from "@ember/object/computed"; import Controller, { inject as controller } from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/grant-badge.js b/app/assets/javascripts/discourse/app/controllers/grant-badge.js index a3cd4e11e8d..edc034f917e 100644 --- a/app/assets/javascripts/discourse/app/controllers/grant-badge.js +++ b/app/assets/javascripts/discourse/app/controllers/grant-badge.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { inject } from "@ember/controller"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/group.js b/app/assets/javascripts/discourse/app/controllers/group.js index 3ec4f40128c..bb77f1a632e 100644 --- a/app/assets/javascripts/discourse/app/controllers/group.js +++ b/app/assets/javascripts/discourse/app/controllers/group.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject, { action } from "@ember/object"; import Controller, { inject as controller } from "@ember/controller"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/controllers/groups-index.js b/app/assets/javascripts/discourse/app/controllers/groups-index.js index 228527bc38b..5373a60a617 100644 --- a/app/assets/javascripts/discourse/app/controllers/groups-index.js +++ b/app/assets/javascripts/discourse/app/controllers/groups-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller, { inject as controller } from "@ember/controller"; import { debounce } from "@ember/runloop"; import { action } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/controllers/groups-new.js b/app/assets/javascripts/discourse/app/controllers/groups-new.js index 25cefd43007..94a598cbf19 100644 --- a/app/assets/javascripts/discourse/app/controllers/groups-new.js +++ b/app/assets/javascripts/discourse/app/controllers/groups-new.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { action } from "@ember/object"; import Controller from "@ember/controller"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/controllers/history.js b/app/assets/javascripts/discourse/app/controllers/history.js index 5a34f292cfc..b368a283fb7 100644 --- a/app/assets/javascripts/discourse/app/controllers/history.js +++ b/app/assets/javascripts/discourse/app/controllers/history.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias, gt, not, or, equal } from "@ember/object/computed"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/ignore-duration-with-username.js b/app/assets/javascripts/discourse/app/controllers/ignore-duration-with-username.js index 491c496df74..6dbb39407c7 100644 --- a/app/assets/javascripts/discourse/app/controllers/ignore-duration-with-username.js +++ b/app/assets/javascripts/discourse/app/controllers/ignore-duration-with-username.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/discourse/app/controllers/ignore-duration.js b/app/assets/javascripts/discourse/app/controllers/ignore-duration.js index c78b73cbb35..95d9b42e946 100644 --- a/app/assets/javascripts/discourse/app/controllers/ignore-duration.js +++ b/app/assets/javascripts/discourse/app/controllers/ignore-duration.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/discourse/app/controllers/invites-show.js b/app/assets/javascripts/discourse/app/controllers/invites-show.js index 58b7ca36859..b421b770583 100644 --- a/app/assets/javascripts/discourse/app/controllers/invites-show.js +++ b/app/assets/javascripts/discourse/app/controllers/invites-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { alias, notEmpty } from "@ember/object/computed"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/keyboard-shortcuts-help.js b/app/assets/javascripts/discourse/app/controllers/keyboard-shortcuts-help.js index 2b0df878828..2199e6b7118 100644 --- a/app/assets/javascripts/discourse/app/controllers/keyboard-shortcuts-help.js +++ b/app/assets/javascripts/discourse/app/controllers/keyboard-shortcuts-help.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; diff --git a/app/assets/javascripts/discourse/app/controllers/login.js b/app/assets/javascripts/discourse/app/controllers/login.js index 993b1a398f5..4bc124b0608 100644 --- a/app/assets/javascripts/discourse/app/controllers/login.js +++ b/app/assets/javascripts/discourse/app/controllers/login.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import { alias, or, readOnly } from "@ember/object/computed"; diff --git a/app/assets/javascripts/discourse/app/controllers/move-to-topic.js b/app/assets/javascripts/discourse/app/controllers/move-to-topic.js index b2b7dd7f108..424aef26282 100644 --- a/app/assets/javascripts/discourse/app/controllers/move-to-topic.js +++ b/app/assets/javascripts/discourse/app/controllers/move-to-topic.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { alias, equal } from "@ember/object/computed"; import { next } from "@ember/runloop"; diff --git a/app/assets/javascripts/discourse/app/controllers/password-reset.js b/app/assets/javascripts/discourse/app/controllers/password-reset.js index efdf9db0ae0..764396c21e9 100644 --- a/app/assets/javascripts/discourse/app/controllers/password-reset.js +++ b/app/assets/javascripts/discourse/app/controllers/password-reset.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias, or, readOnly } from "@ember/object/computed"; import Controller from "@ember/controller"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/controllers/preferences/account.js b/app/assets/javascripts/discourse/app/controllers/preferences/account.js index 463d5b9283e..584440ed0c1 100644 --- a/app/assets/javascripts/discourse/app/controllers/preferences/account.js +++ b/app/assets/javascripts/discourse/app/controllers/preferences/account.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { not, or, gt } from "@ember/object/computed"; import Controller from "@ember/controller"; import { iconHTML } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/discourse/app/controllers/preferences/email.js b/app/assets/javascripts/discourse/app/controllers/preferences/email.js index 413638e0db2..f79e4d15d10 100644 --- a/app/assets/javascripts/discourse/app/controllers/preferences/email.js +++ b/app/assets/javascripts/discourse/app/controllers/preferences/email.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { empty, or } from "@ember/object/computed"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/preferences/emails.js b/app/assets/javascripts/discourse/app/controllers/preferences/emails.js index 880b50f7bdd..02babe32bc2 100644 --- a/app/assets/javascripts/discourse/app/controllers/preferences/emails.js +++ b/app/assets/javascripts/discourse/app/controllers/preferences/emails.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { equal } from "@ember/object/computed"; import Controller from "@ember/controller"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/controllers/preferences/interface.js b/app/assets/javascripts/discourse/app/controllers/preferences/interface.js index ea68080ccd4..1ad85b7d7b1 100644 --- a/app/assets/javascripts/discourse/app/controllers/preferences/interface.js +++ b/app/assets/javascripts/discourse/app/controllers/preferences/interface.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { inject } from "@ember/controller"; import Controller from "@ember/controller"; import { setDefaultHomepage } from "discourse/lib/utilities"; diff --git a/app/assets/javascripts/discourse/app/controllers/preferences/notifications.js b/app/assets/javascripts/discourse/app/controllers/preferences/notifications.js index 5667a55fda9..f738f82bb6c 100644 --- a/app/assets/javascripts/discourse/app/controllers/preferences/notifications.js +++ b/app/assets/javascripts/discourse/app/controllers/preferences/notifications.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import { NotificationLevels } from "discourse/lib/notification-levels"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/discourse/app/controllers/preferences/profile.js b/app/assets/javascripts/discourse/app/controllers/preferences/profile.js index 7eac6c10674..88ec0ee4adb 100644 --- a/app/assets/javascripts/discourse/app/controllers/preferences/profile.js +++ b/app/assets/javascripts/discourse/app/controllers/preferences/profile.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import EmberObject from "@ember/object"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/preferences/second-factor.js b/app/assets/javascripts/discourse/app/controllers/preferences/second-factor.js index 67c7b58c837..b9aae2ab24a 100644 --- a/app/assets/javascripts/discourse/app/controllers/preferences/second-factor.js +++ b/app/assets/javascripts/discourse/app/controllers/preferences/second-factor.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias, and } from "@ember/object/computed"; import Controller from "@ember/controller"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/controllers/preferences/username.js b/app/assets/javascripts/discourse/app/controllers/preferences/username.js index 3b5cbfc477a..8e13897bd9b 100644 --- a/app/assets/javascripts/discourse/app/controllers/preferences/username.js +++ b/app/assets/javascripts/discourse/app/controllers/preferences/username.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { empty, or } from "@ember/object/computed"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/request-group-membership-form.js b/app/assets/javascripts/discourse/app/controllers/request-group-membership-form.js index bbb54d03dd9..4d9a34726e1 100644 --- a/app/assets/javascripts/discourse/app/controllers/request-group-membership-form.js +++ b/app/assets/javascripts/discourse/app/controllers/request-group-membership-form.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { isEmpty } from "@ember/utils"; import { alias } from "@ember/object/computed"; diff --git a/app/assets/javascripts/discourse/app/controllers/review-index.js b/app/assets/javascripts/discourse/app/controllers/review-index.js index 462fa697152..103edb4f079 100644 --- a/app/assets/javascripts/discourse/app/controllers/review-index.js +++ b/app/assets/javascripts/discourse/app/controllers/review-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import Controller from "@ember/controller"; import { isPresent } from "@ember/utils"; diff --git a/app/assets/javascripts/discourse/app/controllers/second-factor-add-security-key.js b/app/assets/javascripts/discourse/app/controllers/second-factor-add-security-key.js index 935f71e263f..82a2a1fc4bb 100644 --- a/app/assets/javascripts/discourse/app/controllers/second-factor-add-security-key.js +++ b/app/assets/javascripts/discourse/app/controllers/second-factor-add-security-key.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; import { diff --git a/app/assets/javascripts/discourse/app/controllers/second-factor-add-totp.js b/app/assets/javascripts/discourse/app/controllers/second-factor-add-totp.js index 10752e41c76..2e86bc1272b 100644 --- a/app/assets/javascripts/discourse/app/controllers/second-factor-add-totp.js +++ b/app/assets/javascripts/discourse/app/controllers/second-factor-add-totp.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; diff --git a/app/assets/javascripts/discourse/app/controllers/second-factor-backup-edit.js b/app/assets/javascripts/discourse/app/controllers/second-factor-backup-edit.js index 3ef9658cc4e..e3b91e3be36 100644 --- a/app/assets/javascripts/discourse/app/controllers/second-factor-backup-edit.js +++ b/app/assets/javascripts/discourse/app/controllers/second-factor-backup-edit.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias } from "@ember/object/computed"; import { later } from "@ember/runloop"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/tags-index.js b/app/assets/javascripts/discourse/app/controllers/tags-index.js index 14473df9a52..75806c5fe6b 100644 --- a/app/assets/javascripts/discourse/app/controllers/tags-index.js +++ b/app/assets/javascripts/discourse/app/controllers/tags-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias, notEmpty } from "@ember/object/computed"; import Controller from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/tags-show.js b/app/assets/javascripts/discourse/app/controllers/tags-show.js index e9bb7191162..55e5d873627 100644 --- a/app/assets/javascripts/discourse/app/controllers/tags-show.js +++ b/app/assets/javascripts/discourse/app/controllers/tags-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias } from "@ember/object/computed"; import Controller, { inject as controller } from "@ember/controller"; import discourseComputed, { observes } from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/controllers/topic-bulk-actions.js b/app/assets/javascripts/discourse/app/controllers/topic-bulk-actions.js index 723e7fee54a..c4776d5fc97 100644 --- a/app/assets/javascripts/discourse/app/controllers/topic-bulk-actions.js +++ b/app/assets/javascripts/discourse/app/controllers/topic-bulk-actions.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { empty, alias } from "@ember/object/computed"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; diff --git a/app/assets/javascripts/discourse/app/controllers/topic.js b/app/assets/javascripts/discourse/app/controllers/topic.js index 3ec58a55566..2c2ebdc7fe6 100644 --- a/app/assets/javascripts/discourse/app/controllers/topic.js +++ b/app/assets/javascripts/discourse/app/controllers/topic.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isPresent, isEmpty } from "@ember/utils"; import { or, and, not, alias } from "@ember/object/computed"; import EmberObject from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/controllers/upload-selector.js b/app/assets/javascripts/discourse/app/controllers/upload-selector.js index eae9a3a2bb6..0c9b1d139d9 100644 --- a/app/assets/javascripts/discourse/app/controllers/upload-selector.js +++ b/app/assets/javascripts/discourse/app/controllers/upload-selector.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { equal } from "@ember/object/computed"; import Controller from "@ember/controller"; import ModalFunctionality from "discourse/mixins/modal-functionality"; diff --git a/app/assets/javascripts/discourse/app/controllers/user-activity-bookmarks.js b/app/assets/javascripts/discourse/app/controllers/user-activity-bookmarks.js index 0f44eeea8c4..48cd32aa864 100644 --- a/app/assets/javascripts/discourse/app/controllers/user-activity-bookmarks.js +++ b/app/assets/javascripts/discourse/app/controllers/user-activity-bookmarks.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Controller from "@ember/controller"; import showModal from "discourse/lib/show-modal"; import { Promise } from "rsvp"; diff --git a/app/assets/javascripts/discourse/app/controllers/user-activity.js b/app/assets/javascripts/discourse/app/controllers/user-activity.js index 12333fcf074..be48af10f5b 100644 --- a/app/assets/javascripts/discourse/app/controllers/user-activity.js +++ b/app/assets/javascripts/discourse/app/controllers/user-activity.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { alias } from "@ember/object/computed"; import { inject as service } from "@ember/service"; import Controller, { inject as controller } from "@ember/controller"; diff --git a/app/assets/javascripts/discourse/app/controllers/user-invited-show.js b/app/assets/javascripts/discourse/app/controllers/user-invited-show.js index 0b8c07d0fb6..eb3a42fd145 100644 --- a/app/assets/javascripts/discourse/app/controllers/user-invited-show.js +++ b/app/assets/javascripts/discourse/app/controllers/user-invited-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { equal, reads, gte } from "@ember/object/computed"; import Controller from "@ember/controller"; import Invite from "discourse/models/invite"; diff --git a/app/assets/javascripts/discourse/app/controllers/user-private-messages.js b/app/assets/javascripts/discourse/app/controllers/user-private-messages.js index 79cdc7822a8..d079104584f 100644 --- a/app/assets/javascripts/discourse/app/controllers/user-private-messages.js +++ b/app/assets/javascripts/discourse/app/controllers/user-private-messages.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { alias, equal, and } from "@ember/object/computed"; import { inject as service } from "@ember/service"; diff --git a/app/assets/javascripts/discourse/app/helpers/application.js b/app/assets/javascripts/discourse/app/helpers/application.js index 8ebdb1c51f1..86599a5fe7e 100644 --- a/app/assets/javascripts/discourse/app/helpers/application.js +++ b/app/assets/javascripts/discourse/app/helpers/application.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { registerUnbound } from "discourse-common/lib/helpers"; import { longDate, diff --git a/app/assets/javascripts/discourse/app/helpers/category-link.js b/app/assets/javascripts/discourse/app/helpers/category-link.js index 2f4699b18cd..9530c269825 100644 --- a/app/assets/javascripts/discourse/app/helpers/category-link.js +++ b/app/assets/javascripts/discourse/app/helpers/category-link.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { get } from "@ember/object"; import { registerUnbound } from "discourse-common/lib/helpers"; import { isRTL } from "discourse/lib/text-direction"; diff --git a/app/assets/javascripts/discourse/app/helpers/period-title.js b/app/assets/javascripts/discourse/app/helpers/period-title.js index 4a16e20f350..a99d8e23966 100644 --- a/app/assets/javascripts/discourse/app/helpers/period-title.js +++ b/app/assets/javascripts/discourse/app/helpers/period-title.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { htmlHelper } from "discourse-common/lib/helpers"; const TITLE_SUBS = { diff --git a/app/assets/javascripts/discourse/app/helpers/reviewable-history-description.js b/app/assets/javascripts/discourse/app/helpers/reviewable-history-description.js index 61b8897f84c..c944046f0e3 100644 --- a/app/assets/javascripts/discourse/app/helpers/reviewable-history-description.js +++ b/app/assets/javascripts/discourse/app/helpers/reviewable-history-description.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { htmlHelper } from "discourse-common/lib/helpers"; import { htmlStatus } from "discourse/helpers/reviewable-status"; import { EDITED } from "discourse/models/reviewable-history"; diff --git a/app/assets/javascripts/discourse/app/helpers/reviewable-status.js b/app/assets/javascripts/discourse/app/helpers/reviewable-status.js index 4dcc12d3a42..646e1bab48c 100644 --- a/app/assets/javascripts/discourse/app/helpers/reviewable-status.js +++ b/app/assets/javascripts/discourse/app/helpers/reviewable-status.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { htmlHelper } from "discourse-common/lib/helpers"; import { iconHTML } from "discourse-common/lib/icon-library"; import { diff --git a/app/assets/javascripts/discourse/app/helpers/theme-helpers.js b/app/assets/javascripts/discourse/app/helpers/theme-helpers.js index eae8dfa66d6..1e878656f5c 100644 --- a/app/assets/javascripts/discourse/app/helpers/theme-helpers.js +++ b/app/assets/javascripts/discourse/app/helpers/theme-helpers.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { registerUnbound } from "discourse-common/lib/helpers"; import deprecated from "discourse-common/lib/deprecated"; diff --git a/app/assets/javascripts/discourse/app/helpers/user-status.js b/app/assets/javascripts/discourse/app/helpers/user-status.js index b3706ca4e27..999190dd2e8 100644 --- a/app/assets/javascripts/discourse/app/helpers/user-status.js +++ b/app/assets/javascripts/discourse/app/helpers/user-status.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { iconHTML } from "discourse-common/lib/icon-library"; import { htmlHelper } from "discourse-common/lib/helpers"; import { escapeExpression } from "discourse/lib/utilities"; diff --git a/app/assets/javascripts/discourse/app/initializers/asset-version.js b/app/assets/javascripts/discourse/app/initializers/asset-version.js index f685d1b091a..fad499c8bbb 100644 --- a/app/assets/javascripts/discourse/app/initializers/asset-version.js +++ b/app/assets/javascripts/discourse/app/initializers/asset-version.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { later } from "@ember/runloop"; // Subscribe to "asset-version" change events via the Message Bus export default { diff --git a/app/assets/javascripts/discourse/app/initializers/localization.js b/app/assets/javascripts/discourse/app/initializers/localization.js index cbe50e53d50..fd5a364d6cf 100644 --- a/app/assets/javascripts/discourse/app/initializers/localization.js +++ b/app/assets/javascripts/discourse/app/initializers/localization.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; export default { name: "localization", after: "inject-objects", diff --git a/app/assets/javascripts/discourse/app/initializers/logout.js b/app/assets/javascripts/discourse/app/initializers/logout.js index 067dd1e5388..76ccca27366 100644 --- a/app/assets/javascripts/discourse/app/initializers/logout.js +++ b/app/assets/javascripts/discourse/app/initializers/logout.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import logout from "discourse/lib/logout"; let _showingLogout = false; diff --git a/app/assets/javascripts/discourse/app/initializers/sharing-sources.js b/app/assets/javascripts/discourse/app/initializers/sharing-sources.js index d3ca4fde2a3..b56e174f04e 100644 --- a/app/assets/javascripts/discourse/app/initializers/sharing-sources.js +++ b/app/assets/javascripts/discourse/app/initializers/sharing-sources.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Sharing from "discourse/lib/sharing"; export default { diff --git a/app/assets/javascripts/discourse/app/initializers/topic-footer-buttons.js b/app/assets/javascripts/discourse/app/initializers/topic-footer-buttons.js index 54d08532042..a13ccd2219f 100644 --- a/app/assets/javascripts/discourse/app/initializers/topic-footer-buttons.js +++ b/app/assets/javascripts/discourse/app/initializers/topic-footer-buttons.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import showModal from "discourse/lib/show-modal"; import { registerTopicFooterButton } from "discourse/lib/register-topic-footer-button"; import { formattedReminderTime } from "discourse/lib/bookmark"; diff --git a/app/assets/javascripts/discourse/app/lib/ajax-error.js b/app/assets/javascripts/discourse/app/lib/ajax-error.js index de96aa14d8a..e0c16b5e45e 100644 --- a/app/assets/javascripts/discourse/app/lib/ajax-error.js +++ b/app/assets/javascripts/discourse/app/lib/ajax-error.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; export function extractError(error, defaultMessage) { if (error instanceof Error) { // eslint-disable-next-line no-console diff --git a/app/assets/javascripts/discourse/app/lib/ajax.js b/app/assets/javascripts/discourse/app/lib/ajax.js index e2318b0d9fe..1eadcda6260 100644 --- a/app/assets/javascripts/discourse/app/lib/ajax.js +++ b/app/assets/javascripts/discourse/app/lib/ajax.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { run } from "@ember/runloop"; import userPresent from "discourse/lib/user-presence"; import logout from "discourse/lib/logout"; diff --git a/app/assets/javascripts/discourse/app/lib/bookmark.js b/app/assets/javascripts/discourse/app/lib/bookmark.js index ebad3713138..7de4a468bdf 100644 --- a/app/assets/javascripts/discourse/app/lib/bookmark.js +++ b/app/assets/javascripts/discourse/app/lib/bookmark.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; export function formattedReminderTime(reminderAt, timezone) { let reminderAtDate = moment.tz(reminderAt, timezone); let formatted = reminderAtDate.format(I18n.t("dates.time")); diff --git a/app/assets/javascripts/discourse/app/lib/click-track.js b/app/assets/javascripts/discourse/app/lib/click-track.js index 31bf961ab48..199a90ea43d 100644 --- a/app/assets/javascripts/discourse/app/lib/click-track.js +++ b/app/assets/javascripts/discourse/app/lib/click-track.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { later } from "@ember/runloop"; import { ajax } from "discourse/lib/ajax"; import DiscourseURL from "discourse/lib/url"; diff --git a/app/assets/javascripts/discourse/app/lib/computed.js b/app/assets/javascripts/discourse/app/lib/computed.js index 321ea32464f..68eefd11da4 100644 --- a/app/assets/javascripts/discourse/app/lib/computed.js +++ b/app/assets/javascripts/discourse/app/lib/computed.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { computed } from "@ember/object"; import { htmlSafe as htmlSafeTemplateHelper } from "@ember/template"; diff --git a/app/assets/javascripts/discourse/app/lib/desktop-notifications.js b/app/assets/javascripts/discourse/app/lib/desktop-notifications.js index 394d9a6dd3d..48b5eb0956c 100644 --- a/app/assets/javascripts/discourse/app/lib/desktop-notifications.js +++ b/app/assets/javascripts/discourse/app/lib/desktop-notifications.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { later } from "@ember/runloop"; import DiscourseURL from "discourse/lib/url"; import KeyValueStore from "discourse/lib/key-value-store"; diff --git a/app/assets/javascripts/discourse/app/lib/export-csv.js b/app/assets/javascripts/discourse/app/lib/export-csv.js index 41957f9bf5f..4f4a1e4b9cc 100644 --- a/app/assets/javascripts/discourse/app/lib/export-csv.js +++ b/app/assets/javascripts/discourse/app/lib/export-csv.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { ajax } from "discourse/lib/ajax"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/discourse/app/lib/export-result.js b/app/assets/javascripts/discourse/app/lib/export-result.js index da1058d5640..9865d9b4615 100644 --- a/app/assets/javascripts/discourse/app/lib/export-result.js +++ b/app/assets/javascripts/discourse/app/lib/export-result.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; export function outputExportResult(result) { if (result.success) { bootbox.alert(I18n.t("admin.export_csv.success")); diff --git a/app/assets/javascripts/discourse/app/lib/formatter.js b/app/assets/javascripts/discourse/app/lib/formatter.js index 2a93f590d72..e953567e055 100644 --- a/app/assets/javascripts/discourse/app/lib/formatter.js +++ b/app/assets/javascripts/discourse/app/lib/formatter.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; export function shortDate(date) { return moment(date).format(I18n.t("dates.medium.date_year")); } diff --git a/app/assets/javascripts/discourse/app/lib/lightbox.js b/app/assets/javascripts/discourse/app/lib/lightbox.js index 34330c44c8e..3f16b7f423f 100644 --- a/app/assets/javascripts/discourse/app/lib/lightbox.js +++ b/app/assets/javascripts/discourse/app/lib/lightbox.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import loadScript from "discourse/lib/load-script"; import { escapeExpression } from "discourse/lib/utilities"; import { renderIcon } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/discourse/app/lib/register-topic-footer-button.js b/app/assets/javascripts/discourse/app/lib/register-topic-footer-button.js index ecac09a89a2..bfc975809dc 100644 --- a/app/assets/javascripts/discourse/app/lib/register-topic-footer-button.js +++ b/app/assets/javascripts/discourse/app/lib/register-topic-footer-button.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import error from "@ember/error"; import { computed } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/lib/search.js b/app/assets/javascripts/discourse/app/lib/search.js index fb0dd3c4939..07eb6ad7bf2 100644 --- a/app/assets/javascripts/discourse/app/lib/search.js +++ b/app/assets/javascripts/discourse/app/lib/search.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import EmberObject from "@ember/object"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/lib/show-modal.js b/app/assets/javascripts/discourse/app/lib/show-modal.js index 18e6e8698f1..514c49f3ee4 100644 --- a/app/assets/javascripts/discourse/app/lib/show-modal.js +++ b/app/assets/javascripts/discourse/app/lib/show-modal.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { dasherize } from "@ember/string"; export default function(name, opts) { diff --git a/app/assets/javascripts/discourse/app/lib/static-route-builder.js b/app/assets/javascripts/discourse/app/lib/static-route-builder.js index 91cda0f0bef..06b4eae4317 100644 --- a/app/assets/javascripts/discourse/app/lib/static-route-builder.js +++ b/app/assets/javascripts/discourse/app/lib/static-route-builder.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import StaticPage from "discourse/models/static-page"; import DiscourseURL, { jumpToElement } from "discourse/lib/url"; diff --git a/app/assets/javascripts/discourse/app/lib/theme-selector.js b/app/assets/javascripts/discourse/app/lib/theme-selector.js index e0ba455d4ff..9d293fe312c 100644 --- a/app/assets/javascripts/discourse/app/lib/theme-selector.js +++ b/app/assets/javascripts/discourse/app/lib/theme-selector.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { ajax } from "discourse/lib/ajax"; import deprecated from "discourse-common/lib/deprecated"; diff --git a/app/assets/javascripts/discourse/app/lib/transform-post.js b/app/assets/javascripts/discourse/app/lib/transform-post.js index c48f0421602..9c39e417139 100644 --- a/app/assets/javascripts/discourse/app/lib/transform-post.js +++ b/app/assets/javascripts/discourse/app/lib/transform-post.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { userPath } from "discourse/lib/url"; diff --git a/app/assets/javascripts/discourse/app/lib/uploads.js b/app/assets/javascripts/discourse/app/lib/uploads.js index 37ded98e4fd..9ceafaf0a0f 100644 --- a/app/assets/javascripts/discourse/app/lib/uploads.js +++ b/app/assets/javascripts/discourse/app/lib/uploads.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isAppleDevice } from "discourse/lib/utilities"; function isGUID(value) { diff --git a/app/assets/javascripts/discourse/app/lib/utilities.js b/app/assets/javascripts/discourse/app/lib/utilities.js index 2c108e0f77a..cb805206a37 100644 --- a/app/assets/javascripts/discourse/app/lib/utilities.js +++ b/app/assets/javascripts/discourse/app/lib/utilities.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { escape } from "pretty-text/sanitizer"; import toMarkdown from "discourse/lib/to-markdown"; import Handlebars from "handlebars"; diff --git a/app/assets/javascripts/discourse/app/lib/webauthn.js b/app/assets/javascripts/discourse/app/lib/webauthn.js index 6b3e81ad4d0..4ada688d267 100644 --- a/app/assets/javascripts/discourse/app/lib/webauthn.js +++ b/app/assets/javascripts/discourse/app/lib/webauthn.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; export function stringToBuffer(str) { let buffer = new ArrayBuffer(str.length); let byteView = new Uint8Array(buffer); diff --git a/app/assets/javascripts/discourse/app/mixins/name-validation.js b/app/assets/javascripts/discourse/app/mixins/name-validation.js index 3b377f095bf..a36ea6a7c0e 100644 --- a/app/assets/javascripts/discourse/app/mixins/name-validation.js +++ b/app/assets/javascripts/discourse/app/mixins/name-validation.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import discourseComputed from "discourse-common/utils/decorators"; import Mixin from "@ember/object/mixin"; diff --git a/app/assets/javascripts/discourse/app/mixins/password-validation.js b/app/assets/javascripts/discourse/app/mixins/password-validation.js index d660f5208b8..355e9bf4b49 100644 --- a/app/assets/javascripts/discourse/app/mixins/password-validation.js +++ b/app/assets/javascripts/discourse/app/mixins/password-validation.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import discourseComputed from "discourse-common/utils/decorators"; import Mixin from "@ember/object/mixin"; diff --git a/app/assets/javascripts/discourse/app/mixins/upload.js b/app/assets/javascripts/discourse/app/mixins/upload.js index 1066a1e95a1..85fdbc00319 100644 --- a/app/assets/javascripts/discourse/app/mixins/upload.js +++ b/app/assets/javascripts/discourse/app/mixins/upload.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { warn } from "@ember/debug"; import { displayErrorForUpload, diff --git a/app/assets/javascripts/discourse/app/mixins/username-validation.js b/app/assets/javascripts/discourse/app/mixins/username-validation.js index fcd0ea89ba4..081956f5c79 100644 --- a/app/assets/javascripts/discourse/app/mixins/username-validation.js +++ b/app/assets/javascripts/discourse/app/mixins/username-validation.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import discourseDebounce from "discourse/lib/debounce"; import { setting } from "discourse/lib/computed"; diff --git a/app/assets/javascripts/discourse/app/models/badge-grouping.js b/app/assets/javascripts/discourse/app/models/badge-grouping.js index 6dbaa5c7c65..eed25171b6c 100644 --- a/app/assets/javascripts/discourse/app/models/badge-grouping.js +++ b/app/assets/javascripts/discourse/app/models/badge-grouping.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import RestModel from "discourse/models/rest"; diff --git a/app/assets/javascripts/discourse/app/models/bookmark.js b/app/assets/javascripts/discourse/app/models/bookmark.js index 3fc34c72802..a55fb80acec 100644 --- a/app/assets/javascripts/discourse/app/models/bookmark.js +++ b/app/assets/javascripts/discourse/app/models/bookmark.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Category from "discourse/models/category"; import User from "discourse/models/user"; import { isRTL } from "discourse/lib/text-direction"; diff --git a/app/assets/javascripts/discourse/app/models/category-list.js b/app/assets/javascripts/discourse/app/models/category-list.js index e3c028e156d..754fe4d29c9 100644 --- a/app/assets/javascripts/discourse/app/models/category-list.js +++ b/app/assets/javascripts/discourse/app/models/category-list.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import ArrayProxy from "@ember/array/proxy"; import PreloadStore from "discourse/lib/preload-store"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/models/composer.js b/app/assets/javascripts/discourse/app/models/composer.js index 0f88c24218f..4f87162d3a4 100644 --- a/app/assets/javascripts/discourse/app/models/composer.js +++ b/app/assets/javascripts/discourse/app/models/composer.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { reads, equal, not, or, and } from "@ember/object/computed"; import EmberObject, { set } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/models/group-history.js b/app/assets/javascripts/discourse/app/models/group-history.js index 8c22e9af5fa..05702e6d479 100644 --- a/app/assets/javascripts/discourse/app/models/group-history.js +++ b/app/assets/javascripts/discourse/app/models/group-history.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import RestModel from "discourse/models/rest"; diff --git a/app/assets/javascripts/discourse/app/models/login-method.js b/app/assets/javascripts/discourse/app/models/login-method.js index 2a3ab489c4b..0f2f1a46c03 100644 --- a/app/assets/javascripts/discourse/app/models/login-method.js +++ b/app/assets/javascripts/discourse/app/models/login-method.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import EmberObject from "@ember/object"; import { updateCsrfToken } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/models/nav-item.js b/app/assets/javascripts/discourse/app/models/nav-item.js index 83330778e0d..412cd8ec2e4 100644 --- a/app/assets/javascripts/discourse/app/models/nav-item.js +++ b/app/assets/javascripts/discourse/app/models/nav-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { emojiUnescape } from "discourse/lib/text"; import Category from "discourse/models/category"; diff --git a/app/assets/javascripts/discourse/app/models/permission-type.js b/app/assets/javascripts/discourse/app/models/permission-type.js index f6ad56c9288..698c2db2286 100644 --- a/app/assets/javascripts/discourse/app/models/permission-type.js +++ b/app/assets/javascripts/discourse/app/models/permission-type.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import EmberObject from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/models/post-stream.js b/app/assets/javascripts/discourse/app/models/post-stream.js index 4accbbe268f..2c56f8ef8ae 100644 --- a/app/assets/javascripts/discourse/app/models/post-stream.js +++ b/app/assets/javascripts/discourse/app/models/post-stream.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { get } from "@ember/object"; import { isEmpty } from "@ember/utils"; import { or, not, and } from "@ember/object/computed"; diff --git a/app/assets/javascripts/discourse/app/models/post.js b/app/assets/javascripts/discourse/app/models/post.js index e0565b420c0..35b600aae2e 100644 --- a/app/assets/javascripts/discourse/app/models/post.js +++ b/app/assets/javascripts/discourse/app/models/post.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import EmberObject, { computed, get } from "@ember/object"; import { isEmpty } from "@ember/utils"; diff --git a/app/assets/javascripts/discourse/app/models/reviewable.js b/app/assets/javascripts/discourse/app/models/reviewable.js index fd6ad396038..05efaab6278 100644 --- a/app/assets/javascripts/discourse/app/models/reviewable.js +++ b/app/assets/javascripts/discourse/app/models/reviewable.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { ajax } from "discourse/lib/ajax"; import RestModel from "discourse/models/rest"; diff --git a/app/assets/javascripts/discourse/app/models/topic-details.js b/app/assets/javascripts/discourse/app/models/topic-details.js index 849b072bd56..50449aa0e39 100644 --- a/app/assets/javascripts/discourse/app/models/topic-details.js +++ b/app/assets/javascripts/discourse/app/models/topic-details.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import EmberObject from "@ember/object"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/models/topic.js b/app/assets/javascripts/discourse/app/models/topic.js index f7ec6ead943..af4b87fbe27 100644 --- a/app/assets/javascripts/discourse/app/models/topic.js +++ b/app/assets/javascripts/discourse/app/models/topic.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import { not, notEmpty, equal, and, or } from "@ember/object/computed"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/models/user-draft.js b/app/assets/javascripts/discourse/app/models/user-draft.js index 6e31ae3b2f3..2f457382224 100644 --- a/app/assets/javascripts/discourse/app/models/user-draft.js +++ b/app/assets/javascripts/discourse/app/models/user-draft.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import RestModel from "discourse/models/rest"; import { postUrl } from "discourse/lib/utilities"; diff --git a/app/assets/javascripts/discourse/app/models/user.js b/app/assets/javascripts/discourse/app/models/user.js index f5435ae63ea..6e287ccf72f 100644 --- a/app/assets/javascripts/discourse/app/models/user.js +++ b/app/assets/javascripts/discourse/app/models/user.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { A } from "@ember/array"; import { isEmpty } from "@ember/utils"; import { gt, equal, or } from "@ember/object/computed"; diff --git a/app/assets/javascripts/discourse/app/raw-views/list/post-count-or-badges.js b/app/assets/javascripts/discourse/app/raw-views/list/post-count-or-badges.js index dd301f8b727..8f81b19fd5a 100644 --- a/app/assets/javascripts/discourse/app/raw-views/list/post-count-or-badges.js +++ b/app/assets/javascripts/discourse/app/raw-views/list/post-count-or-badges.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { or, and } from "@ember/object/computed"; import EmberObject from "@ember/object"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/raw-views/list/posts-count-column.js b/app/assets/javascripts/discourse/app/raw-views/list/posts-count-column.js index 12a27f3a22f..7e38e6c6189 100644 --- a/app/assets/javascripts/discourse/app/raw-views/list/posts-count-column.js +++ b/app/assets/javascripts/discourse/app/raw-views/list/posts-count-column.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import EmberObject from "@ember/object"; import { fmt } from "discourse/lib/computed"; diff --git a/app/assets/javascripts/discourse/app/raw-views/topic-list-header-column.js b/app/assets/javascripts/discourse/app/raw-views/topic-list-header-column.js index dfa6e7039cb..09aa7216ab3 100644 --- a/app/assets/javascripts/discourse/app/raw-views/topic-list-header-column.js +++ b/app/assets/javascripts/discourse/app/raw-views/topic-list-header-column.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/discourse/app/raw-views/topic-status.js b/app/assets/javascripts/discourse/app/raw-views/topic-status.js index d6b2c749995..6c973bafa25 100644 --- a/app/assets/javascripts/discourse/app/raw-views/topic-status.js +++ b/app/assets/javascripts/discourse/app/raw-views/topic-status.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import EmberObject from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/routes/about.js b/app/assets/javascripts/discourse/app/routes/about.js index f7d88a8421e..95568535eff 100644 --- a/app/assets/javascripts/discourse/app/routes/about.js +++ b/app/assets/javascripts/discourse/app/routes/about.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { ajax } from "discourse/lib/ajax"; import DiscourseRoute from "discourse/routes/discourse"; diff --git a/app/assets/javascripts/discourse/app/routes/application.js b/app/assets/javascripts/discourse/app/routes/application.js index f164375bc74..b30dffebf81 100644 --- a/app/assets/javascripts/discourse/app/routes/application.js +++ b/app/assets/javascripts/discourse/app/routes/application.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { once } from "@ember/runloop"; import DiscourseRoute from "discourse/routes/discourse"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/routes/badges-index.js b/app/assets/javascripts/discourse/app/routes/badges-index.js index 142a9ef807d..35fcb42b927 100644 --- a/app/assets/javascripts/discourse/app/routes/badges-index.js +++ b/app/assets/javascripts/discourse/app/routes/badges-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import Badge from "discourse/models/badge"; import PreloadStore from "discourse/lib/preload-store"; diff --git a/app/assets/javascripts/discourse/app/routes/build-category-route.js b/app/assets/javascripts/discourse/app/routes/build-category-route.js index f46ea868f7d..18fe88124f0 100644 --- a/app/assets/javascripts/discourse/app/routes/build-category-route.js +++ b/app/assets/javascripts/discourse/app/routes/build-category-route.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import { filterQueryParams, diff --git a/app/assets/javascripts/discourse/app/routes/build-group-messages-route.js b/app/assets/javascripts/discourse/app/routes/build-group-messages-route.js index 1a2724af9cc..f23a42c2c66 100644 --- a/app/assets/javascripts/discourse/app/routes/build-group-messages-route.js +++ b/app/assets/javascripts/discourse/app/routes/build-group-messages-route.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import UserTopicListRoute from "discourse/routes/user-topic-list"; export default type => { diff --git a/app/assets/javascripts/discourse/app/routes/build-private-messages-route.js b/app/assets/javascripts/discourse/app/routes/build-private-messages-route.js index abae09a2550..bbd39fc5bab 100644 --- a/app/assets/javascripts/discourse/app/routes/build-private-messages-route.js +++ b/app/assets/javascripts/discourse/app/routes/build-private-messages-route.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import UserTopicListRoute from "discourse/routes/user-topic-list"; import { findOrResetCachedTopicList } from "discourse/lib/cached-topic-list"; import UserAction from "discourse/models/user-action"; diff --git a/app/assets/javascripts/discourse/app/routes/build-topic-route.js b/app/assets/javascripts/discourse/app/routes/build-topic-route.js index 10a67214d91..8d34c8380e5 100644 --- a/app/assets/javascripts/discourse/app/routes/build-topic-route.js +++ b/app/assets/javascripts/discourse/app/routes/build-topic-route.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import { queryParams } from "discourse/controllers/discovery-sortable"; import { defaultHomepage } from "discourse/lib/utilities"; diff --git a/app/assets/javascripts/discourse/app/routes/discovery-categories.js b/app/assets/javascripts/discourse/app/routes/discovery-categories.js index 600c0ccdc84..b162a57b132 100644 --- a/app/assets/javascripts/discourse/app/routes/discovery-categories.js +++ b/app/assets/javascripts/discourse/app/routes/discovery-categories.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import { next } from "@ember/runloop"; import DiscourseRoute from "discourse/routes/discourse"; diff --git a/app/assets/javascripts/discourse/app/routes/email-login.js b/app/assets/javascripts/discourse/app/routes/email-login.js index 34936369b16..f12757a624a 100644 --- a/app/assets/javascripts/discourse/app/routes/email-login.js +++ b/app/assets/javascripts/discourse/app/routes/email-login.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/routes/full-page-search.js b/app/assets/javascripts/discourse/app/routes/full-page-search.js index e95c6f8745b..d2abf0decf4 100644 --- a/app/assets/javascripts/discourse/app/routes/full-page-search.js +++ b/app/assets/javascripts/discourse/app/routes/full-page-search.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import { ajax } from "discourse/lib/ajax"; import { diff --git a/app/assets/javascripts/discourse/app/routes/group-activity-posts.js b/app/assets/javascripts/discourse/app/routes/group-activity-posts.js index 86b35b6534b..52a8eced197 100644 --- a/app/assets/javascripts/discourse/app/routes/group-activity-posts.js +++ b/app/assets/javascripts/discourse/app/routes/group-activity-posts.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { get } from "@ember/object"; import DiscourseRoute from "discourse/routes/discourse"; diff --git a/app/assets/javascripts/discourse/app/routes/group-activity-topics.js b/app/assets/javascripts/discourse/app/routes/group-activity-topics.js index 04da3aeb672..63945d6b618 100644 --- a/app/assets/javascripts/discourse/app/routes/group-activity-topics.js +++ b/app/assets/javascripts/discourse/app/routes/group-activity-topics.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/group-index.js b/app/assets/javascripts/discourse/app/routes/group-index.js index a543c89613c..cdd8310709b 100644 --- a/app/assets/javascripts/discourse/app/routes/group-index.js +++ b/app/assets/javascripts/discourse/app/routes/group-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import showModal from "discourse/lib/show-modal"; import { action } from "@ember/object"; diff --git a/app/assets/javascripts/discourse/app/routes/group-manage-interaction.js b/app/assets/javascripts/discourse/app/routes/group-manage-interaction.js index e273e2d22ff..8b8b79997bb 100644 --- a/app/assets/javascripts/discourse/app/routes/group-manage-interaction.js +++ b/app/assets/javascripts/discourse/app/routes/group-manage-interaction.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/group-manage-logs.js b/app/assets/javascripts/discourse/app/routes/group-manage-logs.js index ad49c84619b..39c6aa9dcfc 100644 --- a/app/assets/javascripts/discourse/app/routes/group-manage-logs.js +++ b/app/assets/javascripts/discourse/app/routes/group-manage-logs.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/group-manage-membership.js b/app/assets/javascripts/discourse/app/routes/group-manage-membership.js index 1ded3e2b077..b0ac11428b0 100644 --- a/app/assets/javascripts/discourse/app/routes/group-manage-membership.js +++ b/app/assets/javascripts/discourse/app/routes/group-manage-membership.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/group-manage-profile.js b/app/assets/javascripts/discourse/app/routes/group-manage-profile.js index b720151ff43..04769be4061 100644 --- a/app/assets/javascripts/discourse/app/routes/group-manage-profile.js +++ b/app/assets/javascripts/discourse/app/routes/group-manage-profile.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/group-manage.js b/app/assets/javascripts/discourse/app/routes/group-manage.js index 70b5f053c7f..ec052e047e8 100644 --- a/app/assets/javascripts/discourse/app/routes/group-manage.js +++ b/app/assets/javascripts/discourse/app/routes/group-manage.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/group-messages.js b/app/assets/javascripts/discourse/app/routes/group-messages.js index 1a605ec1689..65ca96fcff7 100644 --- a/app/assets/javascripts/discourse/app/routes/group-messages.js +++ b/app/assets/javascripts/discourse/app/routes/group-messages.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/group-requests.js b/app/assets/javascripts/discourse/app/routes/group-requests.js index 548529cab0c..2d317236c4b 100644 --- a/app/assets/javascripts/discourse/app/routes/group-requests.js +++ b/app/assets/javascripts/discourse/app/routes/group-requests.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/groups-index.js b/app/assets/javascripts/discourse/app/routes/groups-index.js index dff87c3cb27..0659986cd96 100644 --- a/app/assets/javascripts/discourse/app/routes/groups-index.js +++ b/app/assets/javascripts/discourse/app/routes/groups-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/groups-new.js b/app/assets/javascripts/discourse/app/routes/groups-new.js index 67f76347d9b..9da8dca7da7 100644 --- a/app/assets/javascripts/discourse/app/routes/groups-new.js +++ b/app/assets/javascripts/discourse/app/routes/groups-new.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import Group from "discourse/models/group"; diff --git a/app/assets/javascripts/discourse/app/routes/invites-show.js b/app/assets/javascripts/discourse/app/routes/invites-show.js index ded630dc8c0..c236a9a5db4 100644 --- a/app/assets/javascripts/discourse/app/routes/invites-show.js +++ b/app/assets/javascripts/discourse/app/routes/invites-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import PreloadStore from "discourse/lib/preload-store"; diff --git a/app/assets/javascripts/discourse/app/routes/new-message.js b/app/assets/javascripts/discourse/app/routes/new-message.js index c85001cbbf2..b3d37af8b8e 100644 --- a/app/assets/javascripts/discourse/app/routes/new-message.js +++ b/app/assets/javascripts/discourse/app/routes/new-message.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { next } from "@ember/runloop"; import DiscourseRoute from "discourse/routes/discourse"; import User from "discourse/models/user"; diff --git a/app/assets/javascripts/discourse/app/routes/password-reset.js b/app/assets/javascripts/discourse/app/routes/password-reset.js index 58e690fac8c..f637715f50d 100644 --- a/app/assets/javascripts/discourse/app/routes/password-reset.js +++ b/app/assets/javascripts/discourse/app/routes/password-reset.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import PreloadStore from "discourse/lib/preload-store"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/routes/review.js b/app/assets/javascripts/discourse/app/routes/review.js index 9c28f22c549..dc8b26241cb 100644 --- a/app/assets/javascripts/discourse/app/routes/review.js +++ b/app/assets/javascripts/discourse/app/routes/review.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/tag-groups-new.js b/app/assets/javascripts/discourse/app/routes/tag-groups-new.js index 64c460f5121..5194595b6a8 100644 --- a/app/assets/javascripts/discourse/app/routes/tag-groups-new.js +++ b/app/assets/javascripts/discourse/app/routes/tag-groups-new.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/tag-groups.js b/app/assets/javascripts/discourse/app/routes/tag-groups.js index 1010b04c031..c171de70182 100644 --- a/app/assets/javascripts/discourse/app/routes/tag-groups.js +++ b/app/assets/javascripts/discourse/app/routes/tag-groups.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ diff --git a/app/assets/javascripts/discourse/app/routes/tags-index.js b/app/assets/javascripts/discourse/app/routes/tags-index.js index 99cd3a211d8..f6e8ceb4123 100644 --- a/app/assets/javascripts/discourse/app/routes/tags-index.js +++ b/app/assets/javascripts/discourse/app/routes/tags-index.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import Tag from "discourse/models/tag"; diff --git a/app/assets/javascripts/discourse/app/routes/tags-show.js b/app/assets/javascripts/discourse/app/routes/tags-show.js index f598e4fe24d..74a7ad5efbe 100644 --- a/app/assets/javascripts/discourse/app/routes/tags-show.js +++ b/app/assets/javascripts/discourse/app/routes/tags-show.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import Composer from "discourse/models/composer"; import showModal from "discourse/lib/show-modal"; diff --git a/app/assets/javascripts/discourse/app/routes/user-private-messages-group-archive.js b/app/assets/javascripts/discourse/app/routes/user-private-messages-group-archive.js index 0aece428d22..74ad2f5d14f 100644 --- a/app/assets/javascripts/discourse/app/routes/user-private-messages-group-archive.js +++ b/app/assets/javascripts/discourse/app/routes/user-private-messages-group-archive.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import createPMRoute from "discourse/routes/build-private-messages-route"; import { findOrResetCachedTopicList } from "discourse/lib/cached-topic-list"; diff --git a/app/assets/javascripts/discourse/app/routes/user-private-messages-group.js b/app/assets/javascripts/discourse/app/routes/user-private-messages-group.js index 971cb506cb8..f3e606ae96e 100644 --- a/app/assets/javascripts/discourse/app/routes/user-private-messages-group.js +++ b/app/assets/javascripts/discourse/app/routes/user-private-messages-group.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import createPMRoute from "discourse/routes/build-private-messages-route"; import { findOrResetCachedTopicList } from "discourse/lib/cached-topic-list"; diff --git a/app/assets/javascripts/discourse/app/routes/user-private-messages-tags.js b/app/assets/javascripts/discourse/app/routes/user-private-messages-tags.js index cfe2d026bbe..d6bb30ad1ab 100644 --- a/app/assets/javascripts/discourse/app/routes/user-private-messages-tags.js +++ b/app/assets/javascripts/discourse/app/routes/user-private-messages-tags.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject from "@ember/object"; import DiscourseRoute from "discourse/routes/discourse"; import { ajax } from "discourse/lib/ajax"; diff --git a/app/assets/javascripts/discourse/app/routes/user.js b/app/assets/javascripts/discourse/app/routes/user.js index 85248c9038c..c5619412d1a 100644 --- a/app/assets/javascripts/discourse/app/routes/user.js +++ b/app/assets/javascripts/discourse/app/routes/user.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import User from "discourse/models/user"; diff --git a/app/assets/javascripts/discourse/app/routes/users.js b/app/assets/javascripts/discourse/app/routes/users.js index 76f310d11b0..a67e287e449 100644 --- a/app/assets/javascripts/discourse/app/routes/users.js +++ b/app/assets/javascripts/discourse/app/routes/users.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DiscourseRoute from "discourse/routes/discourse"; import { longDate } from "discourse/lib/formatter"; diff --git a/app/assets/javascripts/discourse/app/services/logs-notice.js b/app/assets/javascripts/discourse/app/services/logs-notice.js index 217e1bad7ff..c84dadb944b 100644 --- a/app/assets/javascripts/discourse/app/services/logs-notice.js +++ b/app/assets/javascripts/discourse/app/services/logs-notice.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import EmberObject from "@ember/object"; import discourseComputed, { diff --git a/app/assets/javascripts/discourse/app/widgets/actions-summary.js b/app/assets/javascripts/discourse/app/widgets/actions-summary.js index 56c32a64ead..25e00358971 100644 --- a/app/assets/javascripts/discourse/app/widgets/actions-summary.js +++ b/app/assets/javascripts/discourse/app/widgets/actions-summary.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { avatarFor } from "discourse/widgets/post"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/bookmark-reminder-notification-item.js b/app/assets/javascripts/discourse/app/widgets/bookmark-reminder-notification-item.js index 1a6691dda88..12a8062f275 100644 --- a/app/assets/javascripts/discourse/app/widgets/bookmark-reminder-notification-item.js +++ b/app/assets/javascripts/discourse/app/widgets/bookmark-reminder-notification-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidgetFrom } from "discourse/widgets/widget"; import { DefaultNotificationItem } from "discourse/widgets/default-notification-item"; import { formatUsername } from "discourse/lib/utilities"; diff --git a/app/assets/javascripts/discourse/app/widgets/button.js b/app/assets/javascripts/discourse/app/widgets/button.js index ee6f8c46d2e..fbc60369927 100644 --- a/app/assets/javascripts/discourse/app/widgets/button.js +++ b/app/assets/javascripts/discourse/app/widgets/button.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { iconNode } from "discourse-common/lib/icon-library"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/custom-notification-item.js b/app/assets/javascripts/discourse/app/widgets/custom-notification-item.js index ec567b51e5e..be52488ec7a 100644 --- a/app/assets/javascripts/discourse/app/widgets/custom-notification-item.js +++ b/app/assets/javascripts/discourse/app/widgets/custom-notification-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidgetFrom } from "discourse/widgets/widget"; import { DefaultNotificationItem } from "discourse/widgets/default-notification-item"; import { formatUsername } from "discourse/lib/utilities"; diff --git a/app/assets/javascripts/discourse/app/widgets/default-notification-item.js b/app/assets/javascripts/discourse/app/widgets/default-notification-item.js index 60e4c94ed1f..e44a35d3419 100644 --- a/app/assets/javascripts/discourse/app/widgets/default-notification-item.js +++ b/app/assets/javascripts/discourse/app/widgets/default-notification-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { wantsNewWindow } from "discourse/lib/intercept-click"; import RawHtml from "discourse/widgets/raw-html"; diff --git a/app/assets/javascripts/discourse/app/widgets/group-message-summary-notification-item.js b/app/assets/javascripts/discourse/app/widgets/group-message-summary-notification-item.js index b3162a33e31..33d6f4a1134 100644 --- a/app/assets/javascripts/discourse/app/widgets/group-message-summary-notification-item.js +++ b/app/assets/javascripts/discourse/app/widgets/group-message-summary-notification-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidgetFrom } from "discourse/widgets/widget"; import { DefaultNotificationItem } from "discourse/widgets/default-notification-item"; diff --git a/app/assets/javascripts/discourse/app/widgets/hamburger-categories.js b/app/assets/javascripts/discourse/app/widgets/hamburger-categories.js index 3a51939f33d..dd1b1693e59 100644 --- a/app/assets/javascripts/discourse/app/widgets/hamburger-categories.js +++ b/app/assets/javascripts/discourse/app/widgets/hamburger-categories.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { h } from "virtual-dom"; import { number } from "discourse/lib/formatter"; diff --git a/app/assets/javascripts/discourse/app/widgets/hamburger-menu.js b/app/assets/javascripts/discourse/app/widgets/hamburger-menu.js index 48af267c166..91aefaaa898 100644 --- a/app/assets/javascripts/discourse/app/widgets/hamburger-menu.js +++ b/app/assets/javascripts/discourse/app/widgets/hamburger-menu.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { later } from "@ember/runloop"; import { createWidget, applyDecorators } from "discourse/widgets/widget"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/header-topic-info.js b/app/assets/javascripts/discourse/app/widgets/header-topic-info.js index 0958dcd8e48..64a81513e7a 100644 --- a/app/assets/javascripts/discourse/app/widgets/header-topic-info.js +++ b/app/assets/javascripts/discourse/app/widgets/header-topic-info.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { applyDecorators, createWidget } from "discourse/widgets/widget"; import { h } from "virtual-dom"; import { iconNode } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/discourse/app/widgets/header.js b/app/assets/javascripts/discourse/app/widgets/header.js index f2e80b8dae5..ca4d73c9256 100644 --- a/app/assets/javascripts/discourse/app/widgets/header.js +++ b/app/assets/javascripts/discourse/app/widgets/header.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { get } from "@ember/object"; import { schedule } from "@ember/runloop"; import { createWidget } from "discourse/widgets/widget"; diff --git a/app/assets/javascripts/discourse/app/widgets/liked-consolidated-notification-item.js b/app/assets/javascripts/discourse/app/widgets/liked-consolidated-notification-item.js index bc4ce3f43fa..aca00298d59 100644 --- a/app/assets/javascripts/discourse/app/widgets/liked-consolidated-notification-item.js +++ b/app/assets/javascripts/discourse/app/widgets/liked-consolidated-notification-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { isEmpty } from "@ember/utils"; import { createWidgetFrom } from "discourse/widgets/widget"; import { DefaultNotificationItem } from "discourse/widgets/default-notification-item"; diff --git a/app/assets/javascripts/discourse/app/widgets/liked-notification-item.js b/app/assets/javascripts/discourse/app/widgets/liked-notification-item.js index e24762edd46..c2ff54809c9 100644 --- a/app/assets/javascripts/discourse/app/widgets/liked-notification-item.js +++ b/app/assets/javascripts/discourse/app/widgets/liked-notification-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidgetFrom } from "discourse/widgets/widget"; import { DefaultNotificationItem } from "discourse/widgets/default-notification-item"; import { formatUsername } from "discourse/lib/utilities"; diff --git a/app/assets/javascripts/discourse/app/widgets/link.js b/app/assets/javascripts/discourse/app/widgets/link.js index 1194e1c8ae1..3d10f189a69 100644 --- a/app/assets/javascripts/discourse/app/widgets/link.js +++ b/app/assets/javascripts/discourse/app/widgets/link.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { wantsNewWindow } from "discourse/lib/intercept-click"; import { createWidget } from "discourse/widgets/widget"; import { iconNode } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/discourse/app/widgets/membership-request-accepted-notification-item.js b/app/assets/javascripts/discourse/app/widgets/membership-request-accepted-notification-item.js index de5d2efcedf..9f65c7967de 100644 --- a/app/assets/javascripts/discourse/app/widgets/membership-request-accepted-notification-item.js +++ b/app/assets/javascripts/discourse/app/widgets/membership-request-accepted-notification-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidgetFrom } from "discourse/widgets/widget"; import { DefaultNotificationItem } from "discourse/widgets/default-notification-item"; import { groupPath } from "discourse/lib/url"; diff --git a/app/assets/javascripts/discourse/app/widgets/membership-request-consolidated-notification-item.js b/app/assets/javascripts/discourse/app/widgets/membership-request-consolidated-notification-item.js index fafa3656f6b..914db124a0b 100644 --- a/app/assets/javascripts/discourse/app/widgets/membership-request-consolidated-notification-item.js +++ b/app/assets/javascripts/discourse/app/widgets/membership-request-consolidated-notification-item.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidgetFrom } from "discourse/widgets/widget"; import { DefaultNotificationItem } from "discourse/widgets/default-notification-item"; import { userPath } from "discourse/lib/url"; diff --git a/app/assets/javascripts/discourse/app/widgets/post-admin-menu.js b/app/assets/javascripts/discourse/app/widgets/post-admin-menu.js index 2b94b8a85c4..fbe2994b3c6 100644 --- a/app/assets/javascripts/discourse/app/widgets/post-admin-menu.js +++ b/app/assets/javascripts/discourse/app/widgets/post-admin-menu.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { h } from "virtual-dom"; import { ButtonClass } from "discourse/widgets/button"; diff --git a/app/assets/javascripts/discourse/app/widgets/post-cooked.js b/app/assets/javascripts/discourse/app/widgets/post-cooked.js index 6cd3a6f66a2..5f5c6e87ec4 100644 --- a/app/assets/javascripts/discourse/app/widgets/post-cooked.js +++ b/app/assets/javascripts/discourse/app/widgets/post-cooked.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { iconHTML } from "discourse-common/lib/icon-library"; import { ajax } from "discourse/lib/ajax"; import { isValidLink } from "discourse/lib/click-track"; diff --git a/app/assets/javascripts/discourse/app/widgets/post-edits-indicator.js b/app/assets/javascripts/discourse/app/widgets/post-edits-indicator.js index f928df4727e..5836327bb28 100644 --- a/app/assets/javascripts/discourse/app/widgets/post-edits-indicator.js +++ b/app/assets/javascripts/discourse/app/widgets/post-edits-indicator.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { iconNode } from "discourse-common/lib/icon-library"; import { longDate } from "discourse/lib/formatter"; diff --git a/app/assets/javascripts/discourse/app/widgets/post-gap.js b/app/assets/javascripts/discourse/app/widgets/post-gap.js index 7a81707a6aa..e4ba009147b 100644 --- a/app/assets/javascripts/discourse/app/widgets/post-gap.js +++ b/app/assets/javascripts/discourse/app/widgets/post-gap.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; export default createWidget("post-gap", { diff --git a/app/assets/javascripts/discourse/app/widgets/post-small-action.js b/app/assets/javascripts/discourse/app/widgets/post-small-action.js index 709d70153a9..1b46648d56b 100644 --- a/app/assets/javascripts/discourse/app/widgets/post-small-action.js +++ b/app/assets/javascripts/discourse/app/widgets/post-small-action.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import RawHtml from "discourse/widgets/raw-html"; import { iconNode } from "discourse-common/lib/icon-library"; diff --git a/app/assets/javascripts/discourse/app/widgets/post.js b/app/assets/javascripts/discourse/app/widgets/post.js index b1a04cc0369..467b25a1172 100644 --- a/app/assets/javascripts/discourse/app/widgets/post.js +++ b/app/assets/javascripts/discourse/app/widgets/post.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import PostCooked from "discourse/widgets/post-cooked"; import DecoratorHelper from "discourse/widgets/decorator-helper"; import { createWidget, applyDecorators } from "discourse/widgets/widget"; diff --git a/app/assets/javascripts/discourse/app/widgets/poster-name.js b/app/assets/javascripts/discourse/app/widgets/poster-name.js index 7babc63ee17..d0680fb8314 100644 --- a/app/assets/javascripts/discourse/app/widgets/poster-name.js +++ b/app/assets/javascripts/discourse/app/widgets/poster-name.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { iconNode } from "discourse-common/lib/icon-library"; import { createWidget, applyDecorators } from "discourse/widgets/widget"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/private-message-map.js b/app/assets/javascripts/discourse/app/widgets/private-message-map.js index 62be57b1503..824e198b1bc 100644 --- a/app/assets/javascripts/discourse/app/widgets/private-message-map.js +++ b/app/assets/javascripts/discourse/app/widgets/private-message-map.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { makeArray } from "discourse-common/lib/helpers"; import { createWidget } from "discourse/widgets/widget"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/quick-access-panel.js b/app/assets/javascripts/discourse/app/widgets/quick-access-panel.js index 89225712338..b53868e0d49 100644 --- a/app/assets/javascripts/discourse/app/widgets/quick-access-panel.js +++ b/app/assets/javascripts/discourse/app/widgets/quick-access-panel.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Session from "discourse/models/session"; import { createWidget } from "discourse/widgets/widget"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/quick-access-profile.js b/app/assets/javascripts/discourse/app/widgets/quick-access-profile.js index c4c7b719271..bbdd5ddad52 100644 --- a/app/assets/javascripts/discourse/app/widgets/quick-access-profile.js +++ b/app/assets/javascripts/discourse/app/widgets/quick-access-profile.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import QuickAccessPanel from "discourse/widgets/quick-access-panel"; import { createWidgetFrom } from "discourse/widgets/widget"; import { Promise } from "rsvp"; diff --git a/app/assets/javascripts/discourse/app/widgets/search-menu-controls.js b/app/assets/javascripts/discourse/app/widgets/search-menu-controls.js index 7884b1ac778..df6d5755a46 100644 --- a/app/assets/javascripts/discourse/app/widgets/search-menu-controls.js +++ b/app/assets/javascripts/discourse/app/widgets/search-menu-controls.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { get } from "@ember/object"; import { searchContextDescription } from "discourse/lib/search"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/search-menu-results.js b/app/assets/javascripts/discourse/app/widgets/search-menu-results.js index cdb486954fd..e5792e97135 100644 --- a/app/assets/javascripts/discourse/app/widgets/search-menu-results.js +++ b/app/assets/javascripts/discourse/app/widgets/search-menu-results.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { avatarImg } from "discourse/widgets/post"; import { dateNode } from "discourse/helpers/node"; import RawHtml from "discourse/widgets/raw-html"; diff --git a/app/assets/javascripts/discourse/app/widgets/time-gap.js b/app/assets/javascripts/discourse/app/widgets/time-gap.js index bf004a1fa91..0dd2c8974ae 100644 --- a/app/assets/javascripts/discourse/app/widgets/time-gap.js +++ b/app/assets/javascripts/discourse/app/widgets/time-gap.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/toggle-topic-summary.js b/app/assets/javascripts/discourse/app/widgets/toggle-topic-summary.js index c712a81a318..f75bbca5dc8 100644 --- a/app/assets/javascripts/discourse/app/widgets/toggle-topic-summary.js +++ b/app/assets/javascripts/discourse/app/widgets/toggle-topic-summary.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import RawHtml from "discourse/widgets/raw-html"; import { createWidget } from "discourse/widgets/widget"; diff --git a/app/assets/javascripts/discourse/app/widgets/topic-admin-menu.js b/app/assets/javascripts/discourse/app/widgets/topic-admin-menu.js index 06ebf23666c..8e140d0c076 100644 --- a/app/assets/javascripts/discourse/app/widgets/topic-admin-menu.js +++ b/app/assets/javascripts/discourse/app/widgets/topic-admin-menu.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget, applyDecorators } from "discourse/widgets/widget"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/topic-map.js b/app/assets/javascripts/discourse/app/widgets/topic-map.js index c434e84985e..1d473de0afd 100644 --- a/app/assets/javascripts/discourse/app/widgets/topic-map.js +++ b/app/assets/javascripts/discourse/app/widgets/topic-map.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { h } from "virtual-dom"; import { avatarImg, avatarFor } from "discourse/widgets/post"; diff --git a/app/assets/javascripts/discourse/app/widgets/topic-status.js b/app/assets/javascripts/discourse/app/widgets/topic-status.js index 366fe462a2f..f7619ce4111 100644 --- a/app/assets/javascripts/discourse/app/widgets/topic-status.js +++ b/app/assets/javascripts/discourse/app/widgets/topic-status.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { iconNode } from "discourse-common/lib/icon-library"; import { h } from "virtual-dom"; diff --git a/app/assets/javascripts/discourse/app/widgets/topic-timeline.js b/app/assets/javascripts/discourse/app/widgets/topic-timeline.js index b74f691bfbb..9d2ffd64677 100644 --- a/app/assets/javascripts/discourse/app/widgets/topic-timeline.js +++ b/app/assets/javascripts/discourse/app/widgets/topic-timeline.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { later } from "@ember/runloop"; import { createWidget } from "discourse/widgets/widget"; import ComponentConnector from "discourse/widgets/component-connector"; diff --git a/app/assets/javascripts/discourse/app/widgets/widget-dropdown.js b/app/assets/javascripts/discourse/app/widgets/widget-dropdown.js index dbb34a5e645..e7de0a22559 100644 --- a/app/assets/javascripts/discourse/app/widgets/widget-dropdown.js +++ b/app/assets/javascripts/discourse/app/widgets/widget-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { createWidget } from "discourse/widgets/widget"; import { schedule } from "@ember/runloop"; import hbs from "discourse/widgets/hbs-compiler"; diff --git a/app/assets/javascripts/discourse/app/widgets/widget.js b/app/assets/javascripts/discourse/app/widgets/widget.js index dd30201007c..f945bd2c9f5 100644 --- a/app/assets/javascripts/discourse/app/widgets/widget.js +++ b/app/assets/javascripts/discourse/app/widgets/widget.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { WidgetClickHook, WidgetDoubleClickHook, diff --git a/app/assets/javascripts/select-kit/components/categories-admin-dropdown.js b/app/assets/javascripts/select-kit/components/categories-admin-dropdown.js index f56b2705239..015343bd549 100644 --- a/app/assets/javascripts/select-kit/components/categories-admin-dropdown.js +++ b/app/assets/javascripts/select-kit/components/categories-admin-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { computed } from "@ember/object"; import { setting } from "discourse/lib/computed"; diff --git a/app/assets/javascripts/select-kit/components/category-chooser.js b/app/assets/javascripts/select-kit/components/category-chooser.js index 423481706a1..f36e8be2d32 100644 --- a/app/assets/javascripts/select-kit/components/category-chooser.js +++ b/app/assets/javascripts/select-kit/components/category-chooser.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import ComboBoxComponent from "select-kit/components/combo-box"; import PermissionType from "discourse/models/permission-type"; import Category from "discourse/models/category"; diff --git a/app/assets/javascripts/select-kit/components/category-drop.js b/app/assets/javascripts/select-kit/components/category-drop.js index d01b9e40daa..ebe5eec4b2e 100644 --- a/app/assets/javascripts/select-kit/components/category-drop.js +++ b/app/assets/javascripts/select-kit/components/category-drop.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { readOnly } from "@ember/object/computed"; import { computed } from "@ember/object"; import ComboBoxComponent from "select-kit/components/combo-box"; diff --git a/app/assets/javascripts/select-kit/components/composer-actions.js b/app/assets/javascripts/select-kit/components/composer-actions.js index 7afd4d616e2..0dc266e417d 100644 --- a/app/assets/javascripts/select-kit/components/composer-actions.js +++ b/app/assets/javascripts/select-kit/components/composer-actions.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { PRIVATE_MESSAGE, diff --git a/app/assets/javascripts/select-kit/components/future-date-input-selector.js b/app/assets/javascripts/select-kit/components/future-date-input-selector.js index ae34273692e..a2770936e5f 100644 --- a/app/assets/javascripts/select-kit/components/future-date-input-selector.js +++ b/app/assets/javascripts/select-kit/components/future-date-input-selector.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { computed } from "@ember/object"; import { equal } from "@ember/object/computed"; import { isEmpty } from "@ember/utils"; diff --git a/app/assets/javascripts/select-kit/components/group-dropdown.js b/app/assets/javascripts/select-kit/components/group-dropdown.js index 57f7a8ff748..cf7cfb9a648 100644 --- a/app/assets/javascripts/select-kit/components/group-dropdown.js +++ b/app/assets/javascripts/select-kit/components/group-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { reads, gte } from "@ember/object/computed"; import ComboBoxComponent from "select-kit/components/combo-box"; import DiscourseURL from "discourse/lib/url"; diff --git a/app/assets/javascripts/select-kit/components/group-members-dropdown.js b/app/assets/javascripts/select-kit/components/group-members-dropdown.js index bd9cd7ca713..7e3c82a2e58 100644 --- a/app/assets/javascripts/select-kit/components/group-members-dropdown.js +++ b/app/assets/javascripts/select-kit/components/group-members-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { action, computed } from "@ember/object"; diff --git a/app/assets/javascripts/select-kit/components/mini-tag-chooser.js b/app/assets/javascripts/select-kit/components/mini-tag-chooser.js index bf11e816dc9..94b9fa055ad 100644 --- a/app/assets/javascripts/select-kit/components/mini-tag-chooser.js +++ b/app/assets/javascripts/select-kit/components/mini-tag-chooser.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { empty, or } from "@ember/object/computed"; import ComboBox from "select-kit/components/combo-box"; import TagsMixin from "select-kit/mixins/tags"; diff --git a/app/assets/javascripts/select-kit/components/multi-select/multi-select-filter.js b/app/assets/javascripts/select-kit/components/multi-select/multi-select-filter.js index aa514938166..3e83ecde6da 100644 --- a/app/assets/javascripts/select-kit/components/multi-select/multi-select-filter.js +++ b/app/assets/javascripts/select-kit/components/multi-select/multi-select-filter.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; const { isEmpty } = Ember; import SelectKitFilterComponent from "select-kit/components/select-kit/select-kit-filter"; diff --git a/app/assets/javascripts/select-kit/components/notifications-button.js b/app/assets/javascripts/select-kit/components/notifications-button.js index abf02da3dc3..32dc2ad7ba1 100644 --- a/app/assets/javascripts/select-kit/components/notifications-button.js +++ b/app/assets/javascripts/select-kit/components/notifications-button.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { allLevels, buttonDetails } from "discourse/lib/notification-levels"; import { computed, setProperties } from "@ember/object"; diff --git a/app/assets/javascripts/select-kit/components/notifications-button/notifications-button-row.js b/app/assets/javascripts/select-kit/components/notifications-button/notifications-button-row.js index 3638bb6169a..ccdebb2d4ae 100644 --- a/app/assets/javascripts/select-kit/components/notifications-button/notifications-button-row.js +++ b/app/assets/javascripts/select-kit/components/notifications-button/notifications-button-row.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { readOnly } from "@ember/object/computed"; import { computed } from "@ember/object"; import DropdownSelectBoxRowComponent from "select-kit/components/dropdown-select-box/dropdown-select-box-row"; diff --git a/app/assets/javascripts/select-kit/components/notifications-filter.js b/app/assets/javascripts/select-kit/components/notifications-filter.js index 2223fead72c..fba0d1e62aa 100644 --- a/app/assets/javascripts/select-kit/components/notifications-filter.js +++ b/app/assets/javascripts/select-kit/components/notifications-filter.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { computed } from "@ember/object"; diff --git a/app/assets/javascripts/select-kit/components/period-chooser/period-chooser-row.js b/app/assets/javascripts/select-kit/components/period-chooser/period-chooser-row.js index 4a2e42a0639..649f04c6f2f 100644 --- a/app/assets/javascripts/select-kit/components/period-chooser/period-chooser-row.js +++ b/app/assets/javascripts/select-kit/components/period-chooser/period-chooser-row.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxRowComponent from "select-kit/components/dropdown-select-box/dropdown-select-box-row"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/select-kit/components/pinned-button.js b/app/assets/javascripts/select-kit/components/pinned-button.js index 8332f0f41a9..15feeeb8174 100644 --- a/app/assets/javascripts/select-kit/components/pinned-button.js +++ b/app/assets/javascripts/select-kit/components/pinned-button.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/select-kit/components/pinned-options.js b/app/assets/javascripts/select-kit/components/pinned-options.js index 2b9263bc431..7498f036aeb 100644 --- a/app/assets/javascripts/select-kit/components/pinned-options.js +++ b/app/assets/javascripts/select-kit/components/pinned-options.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; import { iconHTML } from "discourse-common/lib/icon-library"; import { computed, action } from "@ember/object"; diff --git a/app/assets/javascripts/select-kit/components/select-kit.js b/app/assets/javascripts/select-kit/components/select-kit.js index 4ac3ed3d0ec..43905d52f36 100644 --- a/app/assets/javascripts/select-kit/components/select-kit.js +++ b/app/assets/javascripts/select-kit/components/select-kit.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import EmberObject, { computed, get, guidFor } from "@ember/object"; import Component from "@ember/component"; import deprecated from "discourse-common/lib/deprecated"; diff --git a/app/assets/javascripts/select-kit/components/select-kit/select-kit-filter.js b/app/assets/javascripts/select-kit/components/select-kit/select-kit-filter.js index 1b562790b1c..b5b9bccd544 100644 --- a/app/assets/javascripts/select-kit/components/select-kit/select-kit-filter.js +++ b/app/assets/javascripts/select-kit/components/select-kit/select-kit-filter.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; import { isPresent } from "@ember/utils"; diff --git a/app/assets/javascripts/select-kit/components/select-kit/select-kit-row.js b/app/assets/javascripts/select-kit/components/select-kit/select-kit-row.js index 6ec3cc6d055..c3ab6024b08 100644 --- a/app/assets/javascripts/select-kit/components/select-kit/select-kit-row.js +++ b/app/assets/javascripts/select-kit/components/select-kit/select-kit-row.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import { computed } from "@ember/object"; import { makeArray } from "discourse-common/lib/helpers"; diff --git a/app/assets/javascripts/select-kit/components/toolbar-popup-menu-options.js b/app/assets/javascripts/select-kit/components/toolbar-popup-menu-options.js index 9c3c619bf19..2fffef964cd 100644 --- a/app/assets/javascripts/select-kit/components/toolbar-popup-menu-options.js +++ b/app/assets/javascripts/select-kit/components/toolbar-popup-menu-options.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBoxComponent from "select-kit/components/dropdown-select-box"; const HEADING_COLLECTION = "HEADING_COLLECTION"; diff --git a/app/assets/javascripts/select-kit/components/user-notifications-dropdown.js b/app/assets/javascripts/select-kit/components/user-notifications-dropdown.js index 11546965c9d..936b9e25e9f 100644 --- a/app/assets/javascripts/select-kit/components/user-notifications-dropdown.js +++ b/app/assets/javascripts/select-kit/components/user-notifications-dropdown.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import DropdownSelectBox from "select-kit/components/dropdown-select-box"; import { popupAjaxError } from "discourse/lib/ajax-error"; import showModal from "discourse/lib/show-modal"; diff --git a/app/assets/javascripts/select-kit/mixins/tags.js b/app/assets/javascripts/select-kit/mixins/tags.js index 1477278f62b..8e96cf4f79a 100644 --- a/app/assets/javascripts/select-kit/mixins/tags.js +++ b/app/assets/javascripts/select-kit/mixins/tags.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { reads } from "@ember/object/computed"; import { ajax } from "discourse/lib/ajax"; import { popupAjaxError } from "discourse/lib/ajax-error"; diff --git a/app/assets/javascripts/wizard/components/invite-list.js b/app/assets/javascripts/wizard/components/invite-list.js index 39435e0f894..1fdaab1df4b 100644 --- a/app/assets/javascripts/wizard/components/invite-list.js +++ b/app/assets/javascripts/wizard/components/invite-list.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { schedule } from "@ember/runloop"; import Component from "@ember/component"; diff --git a/app/assets/javascripts/wizard/components/theme-preview.js b/app/assets/javascripts/wizard/components/theme-preview.js index 768e2e5522b..a62dd67d0f6 100644 --- a/app/assets/javascripts/wizard/components/theme-preview.js +++ b/app/assets/javascripts/wizard/components/theme-preview.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import discourseComputed from "discourse-common/utils/decorators"; import { observes } from "discourse-common/utils/decorators"; import { diff --git a/app/assets/javascripts/wizard/components/wizard-field-image.js b/app/assets/javascripts/wizard/components/wizard-field-image.js index e97137707d9..5644105fd11 100644 --- a/app/assets/javascripts/wizard/components/wizard-field-image.js +++ b/app/assets/javascripts/wizard/components/wizard-field-image.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import Component from "@ember/component"; import getUrl from "discourse-common/lib/get-url"; import discourseComputed from "discourse-common/utils/decorators"; diff --git a/app/assets/javascripts/wizard/components/wizard-step.js b/app/assets/javascripts/wizard/components/wizard-step.js index 9056e9a0520..0b00263973d 100644 --- a/app/assets/javascripts/wizard/components/wizard-step.js +++ b/app/assets/javascripts/wizard/components/wizard-step.js @@ -1,3 +1,4 @@ +import I18n from "I18n"; import { schedule } from "@ember/runloop"; import Component from "@ember/component"; import getUrl from "discourse-common/lib/get-url"; diff --git a/app/assets/javascripts/wizard/test/test_helper.js b/app/assets/javascripts/wizard/test/test_helper.js index 5835ba12ba5..c04a59f7782 100644 --- a/app/assets/javascripts/wizard/test/test_helper.js +++ b/app/assets/javascripts/wizard/test/test_helper.js @@ -4,6 +4,8 @@ //= require env //= require jquery.debug //= require ember.debug +//= require locales/i18n +//= require locales/en_US //= require discourse-loader //= require jquery.debug //= require handlebars @@ -18,7 +20,6 @@ //= require_tree ./acceptance //= require_tree ./models //= require_tree ./components -//= require locales/en_US //= require fake_xml_http_request //= require route-recognizer/dist/route-recognizer //= require pretender/pretender diff --git a/lib/pretty_text.rb b/lib/pretty_text.rb index f355b898ab9..1e4775d1214 100644 --- a/lib/pretty_text.rb +++ b/lib/pretty_text.rb @@ -75,6 +75,10 @@ module PrettyText end ctx.eval("__PRETTY_TEXT = true") + PrettyText::Helpers.instance_methods.each do |method| + ctx.attach("__helpers.#{method}", PrettyText::Helpers.method(method)) + end + ctx_load(ctx, "#{Rails.root}/app/assets/javascripts/discourse-loader.js") ctx_load(ctx, "#{Rails.root}/app/assets/javascripts/handlebars-shim.js") ctx_load(ctx, "vendor/assets/javascripts/lodash.js") @@ -85,9 +89,6 @@ module PrettyText apply_es6_file(ctx, root_path, "discourse/app/lib/to-markdown") apply_es6_file(ctx, root_path, "discourse/app/lib/utilities") - PrettyText::Helpers.instance_methods.each do |method| - ctx.attach("__helpers.#{method}", PrettyText::Helpers.method(method)) - end ctx.load("#{Rails.root}/lib/pretty_text/shims.js") ctx.eval("__setUnicode(#{Emoji.unicode_replacements_json})") diff --git a/lib/pretty_text/shims.js b/lib/pretty_text/shims.js index 4d77520eb27..cc288ceb40a 100644 --- a/lib/pretty_text/shims.js +++ b/lib/pretty_text/shims.js @@ -4,6 +4,16 @@ __performEmojiUnescape = require("pretty-text/emoji").performEmojiUnescape; __buildReplacementsList = require("pretty-text/emoji").buildReplacementsList; __performEmojiEscape = require("pretty-text/emoji").performEmojiEscape; +I18n = { + t(a, b) { + return __helpers.t(a, b); + } +}; + +define("I18n", ["exports"], function(exports) { + exports.default = I18n; +}); + __utils = require("discourse/lib/utilities"); __emojiUnicodeReplacer = null; @@ -90,9 +100,3 @@ function __lookupPrimaryUserGroup(username) { function __getCurrentUser(userId) { return __helpers.get_current_user(userId); } - -I18n = { - t: function(a, b) { - return __helpers.t(a, b); - } -}; diff --git a/test/javascripts/test_helper.js b/test/javascripts/test_helper.js index 19ab641a75d..5646f9847d5 100644 --- a/test/javascripts/test_helper.js +++ b/test/javascripts/test_helper.js @@ -11,10 +11,9 @@ //= require fake_xml_http_request //= require route-recognizer/dist/route-recognizer //= require pretender/pretender -//= require discourse-loader - //= require locales/i18n //= require locales/en_US +//= require discourse-loader // Stuff we need to load first //= require vendor