hunk.code_window:                 window.location.href = message.url;
                 } else if (message.type === 'notification_click') {
                   if (this.listeners.notification_click) {
                     this.listeners.notification_click(message.notification);
                   }
                 }
               },
               enablePublicMethods: true, // Enable methods within iframe hosted page
  
hunk.labels: keep keep keep keep add keep keep keep
hunk.after_edit:               } else if (message.type === 'action_click') {
                   if (this.listeners.action_click) {
                     this.listeners.action_click({
                       templateIdentifier: message.templateIdentifier,
                       type: message.resultType,
                       notification: message.notification,
                     });
                   }
  
hunk.file_path: libs/embed/src/embed.ts
hunk.type: add
file: import { IsDefined, IsEmail } from 'class-validator';
  import { CommandHelper } from '../../../shared/commands/command.helper';
  import { EnvironmentWithUserCommand } from '../../../shared/commands/project.command';
  
  export class PasswordResetRequestCommand {
    static create(data: PasswordResetRequestCommand) {
      return CommandHelper.create<PasswordResetRequestCommand>(PasswordResetRequestCommand, data);
    }
  
    @IsEmail()
    @IsDefined()
    email: string;
  }
  