Skip to content
Open
Show file tree
Hide file tree
Changes from 12 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,13 @@ By selecting quick replies instead of typing manually, agents/users can respond
- **`/quick ai`**: Use AI to generate replies
- **`/quick help`**: Get help with Quick Reply
- **`/qs <reply name>`**: Quickly search and send a reply by name
- **`/quick create <name> <message>`**: Create a quick reply directly from the input box with a name and message

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add screen shot how it look

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Screenshot from 2025-02-23 02-29-31

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

put create command together , explain how double quotes works to name a reply

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

double quotes ("") ? Explain double quote behavior here


Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add SS

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add SS man why you are not making requested changes before asking for review.

#### Example:
```sh
/quick create greeting Hello! How have you been?
```
This will create a quick reply named **`greeting`**, which can be used later by typing **`/qs greeting`**

Comment on lines +97 to +107

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is just to much for such simple thing

and can't we just do like

/quick create "you can use double quotes to write the name with spaces" you write everything else as a body ??

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this just looks like AI-generated markdown to me

### Using Placeholders:

Expand Down
9 changes: 9 additions & 0 deletions src/commands/CommandUtility.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,17 @@ export class CommandUtility implements ICommandUtility {
triggerId: this.triggerId,
threadId: this.threadId,
language,
args: this.params,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so basically the handler needs args to be passed to get the name and body from the cli so thats why i added params here to pass it down to handler function

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why not name it params only then ?

});

if(this.params.length && this.params.length > 1){
const subCommand = this.params[0].toLowerCase();
if(subCommand === CommandParam.CREATE){
await this.handleSingleParam(handler)
return;
}
}

switch (this.params.length) {
case 0: {
await handler.sendDefault();
Expand Down
1 change: 1 addition & 0 deletions src/definition/handlers/IHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,5 @@ export interface IHandler extends Omit<ICommandUtilityParams, 'params'> {

export type IHanderParams = Omit<ICommandUtilityParams, 'params'> & {
language: Language;
args? : string[];

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why optional ? it will always be there

};
8 changes: 7 additions & 1 deletion src/handlers/Handler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ export class Handler implements IHandler {
public triggerId?: string;
public threadId?: string;
public language: Language;
public args? : string[];

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same


constructor(params: IHanderParams) {
this.app = params.app;
Expand All @@ -47,6 +48,8 @@ export class Handler implements IHandler {
this.triggerId = params.triggerId;
this.threadId = params.threadId;
this.language = params.language;
this.args = params.args;

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

?


const persistenceRead = params.read.getPersistenceReader();
this.roomInteractionStorage = new RoomInteractionStorage(
params.persis,
Expand All @@ -56,6 +59,8 @@ export class Handler implements IHandler {
}

public async CreateReply(): Promise<void> {
const initialReplyName = this.args?.[1] || '';

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

initial values are optional why OR here ? just don't pass it if its not there

const initialReplyBody = this.args?.slice(2).join(' ') || '';
const modal = await CreateReplyModal(
this.app,
this.sender,
Expand All @@ -64,13 +69,14 @@ export class Handler implements IHandler {
this.modify,
this.room,
this.language,
initialReplyName,
initialReplyBody,
);

if (modal instanceof Error) {
this.app.getLogger().error(modal.message);
return;
}

const triggerId = this.triggerId;

if (triggerId) {
Expand Down
1 change: 1 addition & 0 deletions src/modal/common/inputElementComponent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ export function inputElementComponent(
text: label,
element: plainTextInputElement,
optional,
blockId,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

??

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

???

});

return plainTextInputBlock;
Expand Down
7 changes: 6 additions & 1 deletion src/modal/createModal.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,10 @@ export async function CreateReplyModal(
modify: IModify,
room: IRoom,
language: Language,
initialReplyName: string,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we can make it a object but fine for now

initialReplyBody: string,
): Promise<IUIKitSurfaceViewParam | Error> {

const { elementBuilder, blockBuilder } = app.getUtils();

const blocks: InputBlock[] = [];
Expand All @@ -39,6 +42,7 @@ export async function CreateReplyModal(
placeholder: placeholderReplyName,
label: labelReplyName,
optional: false,
initialValue: initialReplyName,
},
{
blockId: CreateModalEnum.REPLY_NAME_BLOCK_ID,
Expand All @@ -56,6 +60,7 @@ export async function CreateReplyModal(
label: labelReplyBody,
optional: false,
multiline: true,
initialValue: initialReplyBody,
},
{
blockId: CreateModalEnum.REPLY_BODY_BLOCK_ID,
Expand Down Expand Up @@ -91,4 +96,4 @@ export async function CreateReplyModal(
close,
submit,
};
}
}