{"version":3,"sources":["../../src/actions/open-url.ts"],"names":[],"mappings":";;AAmBO,MAAM,sBAAsB,MAAiC,CAAA;AAAA,EAClE,IAAA;AAAA;AAAA;AAAA;AAAA,EAKA,GAAA;AAAA,EAEA,WAAY,CAAA,GAAA,EAAa,OAA0B,GAAA,EAAI,EAAA;AACrD,IAAM,KAAA,EAAA;AACN,IAAA,IAAA,CAAK,IAAO,GAAA,gBAAA;AACZ,IAAA,IAAA,CAAK,GAAM,GAAA,GAAA;AACX,IAAO,MAAA,CAAA,MAAA,CAAO,MAAM,OAAO,CAAA;AAAA;AAC7B,EAEA,OAAO,KAAK,OAAuC,EAAA;AACjD,IAAA,OAAO,IAAI,aAAA,CAAc,OAAQ,CAAA,GAAA,EAAK,OAAO,CAAA;AAAA;AAC/C,EAEA,QAAQ,KAAe,EAAA;AACrB,IAAA,IAAA,CAAK,GAAM,GAAA,KAAA;AACX,IAAO,OAAA,IAAA;AAAA;AAEX","file":"open-url.mjs","sourcesContent":["import { IAction, Action } from './base';\n\n/**\n * When invoked, show the given url either by launching it in an external web browser or showing within an embedded web browser.\n */\nexport interface IOpenUrlAction extends IAction {\n  type: 'Action.OpenUrl';\n\n  /**\n   * The URL to open.\n   */\n  url: string;\n}\n\nexport type OpenUrlOptions = Omit<IOpenUrlAction, 'type' | 'url'>;\n\n/**\n * When invoked, show the given url either by launching it in an external web browser or showing within an embedded web browser.\n */\nexport class OpenUrlAction extends Action implements IOpenUrlAction {\n  type: 'Action.OpenUrl';\n\n  /**\n   * The URL to open.\n   */\n  url: string;\n\n  constructor(url: string, options: OpenUrlOptions = {}) {\n    super();\n    this.type = 'Action.OpenUrl';\n    this.url = url;\n    Object.assign(this, options);\n  }\n\n  static from(options: Omit<IOpenUrlAction, 'type'>) {\n    return new OpenUrlAction(options.url, options);\n  }\n\n  withUrl(value: string) {\n    this.url = value;\n    return this;\n  }\n}\n"]}