import { Component, Event, Prop, h, } from "@stencil/core";
import state from "../../../store";
export class AppPay {
  constructor() {
    this.user = {};
  }
  async fetchJob() {
    if (!this.jobId)
      return;
    this.fireenjinFetch.emit({
      endpoint: "findJob",
      params: {
        id: this.jobId,
        withPayments: true,
        withUsers: true,
        withSites: true,
        withPayModel: true,
        withPhotos: true,
        withEfiles: true,
        withPayables: false,
        withReadings: true,
      },
    });
  }
  componentDidLoad() {
    if (!(state === null || state === void 0 ? void 0 : state.job) && this.jobId)
      this.fetchJob();
  }
  render() {
    var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
    return [
      h("ion-content", { class: "ion-padding" },
        h("floodteam-title-bar", { back: `/jobs/${this.jobId}`, icon: "logo-usd" },
          h("ion-router-link", { href: "/payments" }, "Payments")),
        h("floodteam-epay", { jobId: this.jobId, stripeKey: ((_a = state === null || state === void 0 ? void 0 : state.job) === null || _a === void 0 ? void 0 : _a.isFranchise) && ((_d = (_c = (_b = state.config) === null || _b === void 0 ? void 0 : _b.franchise) === null || _c === void 0 ? void 0 : _c.stripe) === null || _d === void 0 ? void 0 : _d.key)
            ? state.config.franchise.stripe.key
            : (_f = (_e = state.config) === null || _e === void 0 ? void 0 : _e.stripe) === null || _f === void 0 ? void 0 : _f.key, dadeKey: ((_g = state === null || state === void 0 ? void 0 : state.job) === null || _g === void 0 ? void 0 : _g.isFranchise) && ((_k = (_j = (_h = state.config) === null || _h === void 0 ? void 0 : _h.franchise) === null || _j === void 0 ? void 0 : _j.dade) === null || _k === void 0 ? void 0 : _k.apiKey)
            ? state.config.franchise.dade.apiKey
            : (_m = (_l = state.config) === null || _l === void 0 ? void 0 : _l.dade) === null || _m === void 0 ? void 0 : _m.apiKey, dadeUrl: ((_o = state === null || state === void 0 ? void 0 : state.job) === null || _o === void 0 ? void 0 : _o.isFranchise) && ((_r = (_q = (_p = state.config) === null || _p === void 0 ? void 0 : _p.franchise) === null || _q === void 0 ? void 0 : _q.dade) === null || _r === void 0 ? void 0 : _r.url)
            ? state.config.franchise.dade.url
            : (_t = (_s = state.config) === null || _s === void 0 ? void 0 : _s.dade) === null || _t === void 0 ? void 0 : _t.url, userId: (_u = state === null || state === void 0 ? void 0 : state.session) === null || _u === void 0 ? void 0 : _u.uid })),
      h("floodteam-navigation-footer", null),
    ];
  }
  static get is() { return "app-pay"; }
  static get originalStyleUrls() { return {
    "$": ["app-pay.css"]
  }; }
  static get styleUrls() { return {
    "$": ["app-pay.css"]
  }; }
  static get properties() { return {
    "user": {
      "type": "unknown",
      "mutable": false,
      "complexType": {
        "original": "Partial<User>",
        "resolved": "{ __typename?: \"User\"; active?: boolean; address?: Address; billingAddress?: Address; birthday?: string; certifications?: Certification[]; company?: Company; createdAt?: string; createdBy?: User; email?: string; feed?: Feed[]; firstName?: string; floodbotId?: string; friends?: User[]; id?: string; isFranchise?: boolean; isFranchiseOwner?: boolean; isOnboarded?: boolean; isSearchable?: boolean; isSetup?: boolean; isStripeOAuth?: boolean; jobs?: Job[]; lastName?: string; lastNotifiedAt?: string; lastOnline?: string; location?: Location; online?: boolean; phone?: string; photo?: string; plaidAccessToken?: string; rating?: number; referredBy?: User; role?: string; slackHandle?: string; stripeId?: string; tags?: string[]; trade?: string; type?: string; updatedAt?: string; updatedBy?: User; vehicles?: Vehicle[]; }",
        "references": {
          "Partial": {
            "location": "global"
          },
          "User": {
            "location": "import",
            "path": "../../../sdk"
          }
        }
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": ""
      },
      "defaultValue": "{}"
    },
    "jobId": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "string",
        "resolved": "string",
        "references": {}
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": ""
      },
      "attribute": "job-id",
      "reflect": false
    }
  }; }
  static get events() { return [{
      "method": "fireenjinFetch",
      "name": "fireenjinFetch",
      "bubbles": true,
      "cancelable": true,
      "composed": true,
      "docs": {
        "tags": [],
        "text": ""
      },
      "complexType": {
        "original": "FireEnjinFetchEvent",
        "resolved": "FireEnjinFetchEvent",
        "references": {
          "FireEnjinFetchEvent": {
            "location": "import",
            "path": "@fireenjin/sdk"
          }
        }
      }
    }]; }
}
