mirror of
https://github.com/discourse/discourse.git
synced 2025-06-06 01:34:39 +08:00
@ -1,7 +1,7 @@
|
|||||||
import Component from "@glimmer/component";
|
import Component from "@glimmer/component";
|
||||||
import DButton from "discourse/components/d-button";
|
import DButton from "discourse/components/d-button";
|
||||||
|
|
||||||
export default class Action extends Component {
|
export default class ListAction extends Component {
|
||||||
<template>
|
<template>
|
||||||
<DButton
|
<DButton
|
||||||
class="btn btn-flat"
|
class="btn btn-flat"
|
@ -4,15 +4,15 @@ import { on } from "@ember/modifier";
|
|||||||
import { action } from "@ember/object";
|
import { action } from "@ember/object";
|
||||||
import concatClass from "discourse/helpers/concat-class";
|
import concatClass from "discourse/helpers/concat-class";
|
||||||
import eq from "truth-helpers/helpers/eq";
|
import eq from "truth-helpers/helpers/eq";
|
||||||
import Action from "./action";
|
|
||||||
import Channel from "./channel";
|
import Channel from "./channel";
|
||||||
|
import ListAction from "./list-action";
|
||||||
import User from "./user";
|
import User from "./user";
|
||||||
|
|
||||||
export default class List extends Component {
|
export default class List extends Component {
|
||||||
componentForItem(type) {
|
componentForItem(type) {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case "action":
|
case "list-action":
|
||||||
return Action;
|
return ListAction;
|
||||||
case "user":
|
case "user":
|
||||||
return User;
|
return User;
|
||||||
case "channel":
|
case "channel":
|
||||||
|
@ -4,11 +4,16 @@ import { on } from "@ember/modifier";
|
|||||||
import { action } from "@ember/object";
|
import { action } from "@ember/object";
|
||||||
import didInsert from "@ember/render-modifiers/modifiers/did-insert";
|
import didInsert from "@ember/render-modifiers/modifiers/did-insert";
|
||||||
import icon from "discourse-common/helpers/d-icon";
|
import icon from "discourse-common/helpers/d-icon";
|
||||||
|
import I18n from "discourse-i18n";
|
||||||
import eq from "truth-helpers/helpers/eq";
|
import eq from "truth-helpers/helpers/eq";
|
||||||
import { getNext, getPrevious } from "./lib/iterate-list";
|
import { getNext, getPrevious } from "./lib/iterate-list";
|
||||||
import Member from "./member";
|
import Member from "./member";
|
||||||
|
|
||||||
export default class members extends Component {
|
export default class Members extends Component {
|
||||||
|
addMoreMembersLabel = I18n.t(
|
||||||
|
"chat.new_message_modal.user_search_placeholder"
|
||||||
|
);
|
||||||
|
|
||||||
@action
|
@action
|
||||||
onFilter() {
|
onFilter() {
|
||||||
this.args.onFilter(...arguments);
|
this.args.onFilter(...arguments);
|
||||||
@ -81,7 +86,7 @@ export default class members extends Component {
|
|||||||
{{/each}}
|
{{/each}}
|
||||||
|
|
||||||
<Input
|
<Input
|
||||||
placeholder="...add more users"
|
placeholder={{this.addMoreMembersLabel}}
|
||||||
class="chat-message-creator__members-input"
|
class="chat-message-creator__members-input"
|
||||||
@value={{@filter}}
|
@value={{@filter}}
|
||||||
autofocus={{true}}
|
autofocus={{true}}
|
||||||
|
@ -2,8 +2,11 @@ import Component from "@glimmer/component";
|
|||||||
import { Input } from "@ember/component";
|
import { Input } from "@ember/component";
|
||||||
import { on } from "@ember/modifier";
|
import { on } from "@ember/modifier";
|
||||||
import icon from "discourse-common/helpers/d-icon";
|
import icon from "discourse-common/helpers/d-icon";
|
||||||
|
import I18n from "discourse-i18n";
|
||||||
|
|
||||||
export default class ChatMessageCreatorSearchInput extends Component {
|
export default class ChatMessageCreatorSearchInput extends Component {
|
||||||
|
filterPlaceholder = I18n.t("chat.new_message_modal.filter");
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="chat-message-creator__search-input-container">
|
<div class="chat-message-creator__search-input-container">
|
||||||
<div class="chat-message-creator__search-input">
|
<div class="chat-message-creator__search-input">
|
||||||
|
@ -8,6 +8,7 @@ import DButton from "discourse/components/d-button";
|
|||||||
import { popupAjaxError } from "discourse/lib/ajax-error";
|
import { popupAjaxError } from "discourse/lib/ajax-error";
|
||||||
import { INPUT_DELAY } from "discourse-common/config/environment";
|
import { INPUT_DELAY } from "discourse-common/config/environment";
|
||||||
import discourseDebounce from "discourse-common/lib/debounce";
|
import discourseDebounce from "discourse-common/lib/debounce";
|
||||||
|
import I18n from "discourse-i18n";
|
||||||
import { MODES } from "./constants";
|
import { MODES } from "./constants";
|
||||||
import ChatablesLoader from "./lib/chatables-loader";
|
import ChatablesLoader from "./lib/chatables-loader";
|
||||||
import List from "./list";
|
import List from "./list";
|
||||||
@ -25,8 +26,8 @@ export default class ChatMessageCreatorSearch extends Component {
|
|||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
identifier: "new-group",
|
identifier: "new-group",
|
||||||
type: "action",
|
type: "list-action",
|
||||||
label: "New group chat",
|
label: I18n.t("chat.new_message_modal.new_group_chat"),
|
||||||
enabled: true,
|
enabled: true,
|
||||||
icon: "users",
|
icon: "users",
|
||||||
id: "new-group-chat",
|
id: "new-group-chat",
|
||||||
@ -48,7 +49,7 @@ export default class ChatMessageCreatorSearch extends Component {
|
|||||||
@action
|
@action
|
||||||
async selectChatable(item) {
|
async selectChatable(item) {
|
||||||
switch (item.type) {
|
switch (item.type) {
|
||||||
case "action":
|
case "list-action":
|
||||||
this.args.onChangeMode(MODES.new_group);
|
this.args.onChangeMode(MODES.new_group);
|
||||||
break;
|
break;
|
||||||
case "user":
|
case "user":
|
||||||
|
@ -339,6 +339,8 @@ en:
|
|||||||
no_items: "No items"
|
no_items: "No items"
|
||||||
create_group_placeholder: "Group chat name (optional)"
|
create_group_placeholder: "Group chat name (optional)"
|
||||||
participants_counter: "%{selection_count}/%{max} participants"
|
participants_counter: "%{selection_count}/%{max} participants"
|
||||||
|
new_group_chat: "New group chat"
|
||||||
|
filter: "Filter"
|
||||||
|
|
||||||
channel_edit_name_slug_modal:
|
channel_edit_name_slug_modal:
|
||||||
title: Edit channel
|
title: Edit channel
|
||||||
|
Reference in New Issue
Block a user