@burdenoff/microfe-devportal 2026.915.11 → 2026.916.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/devportal/DevportalRoutes.d.ts.map +1 -1
- package/dist/devportal/DevportalRoutes.js +131 -126
- package/dist/devportal/DevportalRoutes.js.map +1 -1
- package/dist/devportal/pages/OrganizationDetailPage.d.ts.map +1 -1
- package/dist/devportal/pages/OrganizationDetailPage.js +532 -524
- package/dist/devportal/pages/OrganizationDetailPage.js.map +1 -1
- package/dist/devportal/pages/OrganizationsPage.d.ts.map +1 -1
- package/dist/devportal/pages/OrganizationsPage.js +79 -93
- package/dist/devportal/pages/OrganizationsPage.js.map +1 -1
- package/dist/devportal/pages/RevenueDashboardPage.d.ts.map +1 -1
- package/dist/devportal/pages/RevenueDashboardPage.js +191 -190
- package/dist/devportal/pages/RevenueDashboardPage.js.map +1 -1
- package/dist/devportal/pages/SellerOrdersPage.d.ts.map +1 -1
- package/dist/devportal/pages/SellerOrdersPage.js +100 -106
- package/dist/devportal/pages/SellerOrdersPage.js.map +1 -1
- package/dist/devportal/utils/currency.d.ts +2 -0
- package/dist/devportal/utils/currency.d.ts.map +1 -0
- package/dist/devportal/utils/currency.js +12 -0
- package/dist/devportal/utils/currency.js.map +1 -0
- package/dist/generated/global-operations.d.ts +4 -0
- package/dist/generated/global-operations.d.ts.map +1 -1
- package/dist/generated/global-operations.js +55 -44
- package/dist/generated/global-operations.js.map +1 -1
- package/dist/generated/global-types.d.ts +163 -2
- package/dist/generated/global-types.d.ts.map +1 -1
- package/dist/generated/global-types.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,29 +2,30 @@ import { useDevportal as e } from "../providers/DevportalProvider.js";
|
|
|
2
2
|
import { cn as t } from "../utils/cn.js";
|
|
3
3
|
import { EmptyState as n } from "../components/EmptyState.js";
|
|
4
4
|
import { orgSectionPath as r, useIsSellerSection as i } from "../hooks/useIsSellerSection.js";
|
|
5
|
-
import { useGetApplicationsQuery as a, useGetOrganizationQuery as o,
|
|
6
|
-
import { PageLayout as
|
|
7
|
-
import { ORG_ROLE_LABELS as
|
|
8
|
-
import { AppListItem as
|
|
9
|
-
import { StatCard as
|
|
10
|
-
import { DataTable as
|
|
11
|
-
import { InputField as
|
|
12
|
-
import { Alert as
|
|
13
|
-
import { RegisterPickupLocationModal as
|
|
14
|
-
import { useDevportalPermission as
|
|
15
|
-
import { capitalizeCarrierName as
|
|
16
|
-
import { DEVPORTAL_PERMISSIONS as
|
|
17
|
-
import { useOrganizationPickupAddresses as
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
5
|
+
import { useGetApplicationsQuery as a, useGetOrganizationQuery as o, useGetRevenueSummaryQuery as s, useUpdateOrgLegalInfoMutation as c, useUpdateOrgTaxInfoMutation as l, useUpdateOrganizationMutation as u } from "../../generated/global-operations.js";
|
|
6
|
+
import { PageLayout as d, PageSection as f } from "../components/PageLayout.js";
|
|
7
|
+
import { ORG_ROLE_LABELS as p } from "../utils/constants.js";
|
|
8
|
+
import { AppListItem as m } from "../components/AppCard.js";
|
|
9
|
+
import { StatCard as h, StatCardGrid as g } from "../components/StatCard.js";
|
|
10
|
+
import { DataTable as _, DetailList as v } from "../components/DataTable.js";
|
|
11
|
+
import { InputField as y, TextareaField as ee } from "../components/FormField.js";
|
|
12
|
+
import { Alert as b, ConfirmDialog as x } from "../components/ConfirmDialog.js";
|
|
13
|
+
import { RegisterPickupLocationModal as S } from "../components/RegisterPickupLocationModal.js";
|
|
14
|
+
import { useDevportalPermission as C } from "../hooks/usePermission.js";
|
|
15
|
+
import { capitalizeCarrierName as te, useCarrierPickupLocations as ne } from "../hooks/useCarrierPickupLocations.js";
|
|
16
|
+
import { DEVPORTAL_PERMISSIONS as re } from "../constants/permissions.js";
|
|
17
|
+
import { useOrganizationPickupAddresses as ie } from "../hooks/useOrganizationPickupAddresses.js";
|
|
18
|
+
import { formatCurrency as w } from "../utils/currency.js";
|
|
19
|
+
import { useEffect as T, useState as E } from "react";
|
|
20
|
+
import { AlertCircle as ae, AppWindow as D, ArrowRight as oe, BarChart3 as se, Building2 as ce, CheckCircle as O, CreditCard as k, DollarSign as A, ExternalLink as j, Loader2 as M, Plus as N, Settings as le, Shield as ue, Trash2 as de, TrendingUp as P, Users as F } from "lucide-react";
|
|
21
|
+
import { useParams as I } from "react-router";
|
|
22
|
+
import { Fragment as L, jsx as R, jsxs as z } from "react/jsx-runtime";
|
|
23
|
+
import { useI18n as B } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
24
|
+
import { EmphasisPanel as V, NextSteps as H } from "@burdenoff/fe-libs/ui";
|
|
25
|
+
import { clearGraphqlFetchResponseCache as fe, graphqlFetch as U } from "@burdenoff/fe-libs/shared/graphql";
|
|
25
26
|
//#region src/devportal/pages/OrganizationDetailPage.tsx
|
|
26
|
-
var
|
|
27
|
-
function
|
|
27
|
+
var pe = "\n query OrganizationVerificationDetails($id: ID!) {\n developerOrganization(id: $id) {\n id\n verificationMethod\n verificationRequestedAt\n verificationStatus\n verificationRequestNotes\n verificationEvidenceUrl\n verificationDomain\n verificationRequestedBy\n verificationReviewedAt\n verificationReviewedBy\n verificationReviewNotes\n verificationRejectedReason\n }\n }\n", W = "\n mutation RequestOrgVerificationExtended(\n $id: ID!\n $method: String!\n $notes: String\n $evidenceUrl: String\n $domain: String\n ) {\n requestOrgVerification(\n id: $id\n method: $method\n notes: $notes\n evidenceUrl: $evidenceUrl\n domain: $domain\n ) {\n id\n verificationMethod\n verificationRequestedAt\n verificationStatus\n verificationRequestNotes\n verificationEvidenceUrl\n verificationDomain\n verificationRejectedReason\n }\n }\n";
|
|
28
|
+
function me(e) {
|
|
28
29
|
let t = e;
|
|
29
30
|
return {
|
|
30
31
|
id: e.id,
|
|
@@ -82,7 +83,7 @@ function de(e) {
|
|
|
82
83
|
updatedAt: e.updatedAt
|
|
83
84
|
};
|
|
84
85
|
}
|
|
85
|
-
function
|
|
86
|
+
function G(e) {
|
|
86
87
|
return {
|
|
87
88
|
id: e.id,
|
|
88
89
|
organizationId: e.organizationId,
|
|
@@ -101,7 +102,7 @@ function K(e) {
|
|
|
101
102
|
updatedAt: e.updatedAt
|
|
102
103
|
};
|
|
103
104
|
}
|
|
104
|
-
function
|
|
105
|
+
function K(e) {
|
|
105
106
|
let t = e.trim().toLowerCase();
|
|
106
107
|
return /^[a-z0-9.-]+\.[a-z]{2,}$/i.test(t) && !t.includes("@");
|
|
107
108
|
}
|
|
@@ -113,7 +114,7 @@ function q(e) {
|
|
|
113
114
|
return !1;
|
|
114
115
|
}
|
|
115
116
|
}
|
|
116
|
-
function
|
|
117
|
+
function he(e) {
|
|
117
118
|
let t = e.trim();
|
|
118
119
|
return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t);
|
|
119
120
|
}
|
|
@@ -123,215 +124,222 @@ var J = {
|
|
|
123
124
|
ADMIN: 2,
|
|
124
125
|
OWNER: 3
|
|
125
126
|
}, Y = () => {
|
|
126
|
-
let { navigate: n, basePath:
|
|
127
|
-
|
|
127
|
+
let { navigate: n, basePath: c, setActiveOrgId: l, setActivePhysicalOrgId: u, currentUser: f } = e(), p = i(), { orgId: m } = I(), { addresses: h, loading: g, refetch: _ } = ie(m), { data: v } = s({
|
|
128
|
+
variables: {
|
|
129
|
+
organizationId: m ?? "",
|
|
130
|
+
period: "monthly"
|
|
131
|
+
},
|
|
132
|
+
skip: !m
|
|
133
|
+
}), y = v?.developerOrgRevenueSummary?.currency ?? "USD", { t: ee } = B(), x = (e, t) => {
|
|
134
|
+
let n = ee(e);
|
|
128
135
|
return n === e ? t : n;
|
|
129
|
-
}, [
|
|
136
|
+
}, [S, C] = E("overview"), [te, ne] = E(!1), re = [
|
|
130
137
|
{
|
|
131
138
|
id: "overview",
|
|
132
|
-
label:
|
|
133
|
-
icon:
|
|
139
|
+
label: x("devportal.overview", "Overview"),
|
|
140
|
+
icon: ce
|
|
134
141
|
},
|
|
135
142
|
{
|
|
136
143
|
id: "apps",
|
|
137
|
-
label:
|
|
138
|
-
icon:
|
|
144
|
+
label: x("devportal.applications", "Applications"),
|
|
145
|
+
icon: D
|
|
139
146
|
},
|
|
140
147
|
{
|
|
141
148
|
id: "members",
|
|
142
|
-
label:
|
|
143
|
-
icon:
|
|
149
|
+
label: x("devportal.members", "Members"),
|
|
150
|
+
icon: F
|
|
144
151
|
},
|
|
145
152
|
{
|
|
146
153
|
id: "settings",
|
|
147
|
-
label:
|
|
154
|
+
label: x("devportal.settings", "Settings"),
|
|
148
155
|
icon: le
|
|
149
156
|
}
|
|
150
|
-
], { data:
|
|
151
|
-
variables: { id:
|
|
152
|
-
skip: !
|
|
153
|
-
}),
|
|
157
|
+
], { data: w, previousData: oe, loading: se, error: O } = o({
|
|
158
|
+
variables: { id: m },
|
|
159
|
+
skip: !m
|
|
160
|
+
}), j = w ?? oe, { data: ue } = a({
|
|
154
161
|
variables: {
|
|
155
162
|
limit: 50,
|
|
156
|
-
organizationId:
|
|
163
|
+
organizationId: m
|
|
157
164
|
},
|
|
158
|
-
skip: !
|
|
165
|
+
skip: !m,
|
|
159
166
|
fetchPolicy: "cache-and-network"
|
|
160
|
-
}),
|
|
161
|
-
n?.(`${
|
|
167
|
+
}), de = (j?.developerOrganization?.members ?? []).map(G), P = (f ? de.find((e) => e.userId === f.id) : void 0)?.role, L = P !== void 0 && J[P] >= J.DEVELOPER, V = P !== void 0 && J[P] >= J.ADMIN, fe = V, U = V, pe = re.filter((e) => e.id !== "settings" || V), W = (e) => {
|
|
168
|
+
n?.(`${c}${e}`);
|
|
162
169
|
};
|
|
163
|
-
if (
|
|
164
|
-
|
|
170
|
+
if (T(() => {
|
|
171
|
+
m && (p ? u(m) : l(m));
|
|
165
172
|
}, [
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
]),
|
|
171
|
-
|
|
172
|
-
}, [
|
|
173
|
-
let e =
|
|
174
|
-
if (!
|
|
173
|
+
m,
|
|
174
|
+
p,
|
|
175
|
+
l,
|
|
176
|
+
u
|
|
177
|
+
]), T(() => {
|
|
178
|
+
S === "settings" && !V && C("overview");
|
|
179
|
+
}, [S, V]), T(() => {
|
|
180
|
+
let e = j?.developerOrganization?.name;
|
|
181
|
+
if (!m || !e) return;
|
|
175
182
|
let t = window.__breadcrumbRegistry;
|
|
176
|
-
return t?.register(
|
|
177
|
-
}, [
|
|
178
|
-
title:
|
|
179
|
-
backLink: `${
|
|
180
|
-
backLabel:
|
|
181
|
-
children: /* @__PURE__ */
|
|
183
|
+
return t?.register(m, e), () => t?.unregister(m);
|
|
184
|
+
}, [m, w?.developerOrganization?.name]), se && !j) return /* @__PURE__ */ R(d, {
|
|
185
|
+
title: x("devportal.loadingDots", "Loading..."),
|
|
186
|
+
backLink: `${c}${r(p)}`,
|
|
187
|
+
backLabel: x("devportal.backToOrganizations", "Back to Organizations"),
|
|
188
|
+
children: /* @__PURE__ */ R("div", {
|
|
182
189
|
className: "flex items-center justify-center py-12",
|
|
183
|
-
children: /* @__PURE__ */
|
|
190
|
+
children: /* @__PURE__ */ R(M, { className: "h-8 w-8 animate-spin text-text-secondary" })
|
|
184
191
|
})
|
|
185
192
|
});
|
|
186
|
-
if (
|
|
187
|
-
title:
|
|
188
|
-
backLink: `${
|
|
189
|
-
backLabel:
|
|
190
|
-
children: /* @__PURE__ */
|
|
193
|
+
if (O || !j?.developerOrganization) return /* @__PURE__ */ R(d, {
|
|
194
|
+
title: x("devportal.organizationNotFound", "Organization Not Found"),
|
|
195
|
+
backLink: `${c}${r(p)}`,
|
|
196
|
+
backLabel: x("devportal.backToOrganizations", "Back to Organizations"),
|
|
197
|
+
children: /* @__PURE__ */ z("div", {
|
|
191
198
|
className: "flex flex-col items-center justify-center py-12 gap-4",
|
|
192
199
|
children: [
|
|
193
|
-
/* @__PURE__ */
|
|
194
|
-
/* @__PURE__ */
|
|
200
|
+
/* @__PURE__ */ R(ae, { className: "h-12 w-12 text-status-error-text" }),
|
|
201
|
+
/* @__PURE__ */ R("h2", {
|
|
195
202
|
className: "text-lg font-semibold",
|
|
196
|
-
children:
|
|
203
|
+
children: x("devportal.organizationNotFoundLower", "Organization not found")
|
|
197
204
|
}),
|
|
198
|
-
/* @__PURE__ */
|
|
205
|
+
/* @__PURE__ */ R("p", {
|
|
199
206
|
className: "text-text-secondary",
|
|
200
|
-
children:
|
|
207
|
+
children: O?.message || x("devportal.organizationNotFoundDescription", "The organization you're looking for doesn't exist or you don't have access to it.")
|
|
201
208
|
}),
|
|
202
|
-
/* @__PURE__ */
|
|
203
|
-
onClick: () => W(r(
|
|
209
|
+
/* @__PURE__ */ R("button", {
|
|
210
|
+
onClick: () => W(r(p)),
|
|
204
211
|
className: "mt-4 inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90",
|
|
205
|
-
children:
|
|
212
|
+
children: x("devportal.backToOrganizations", "Back to Organizations")
|
|
206
213
|
})
|
|
207
214
|
]
|
|
208
215
|
})
|
|
209
216
|
});
|
|
210
|
-
let
|
|
211
|
-
return /* @__PURE__ */
|
|
212
|
-
title:
|
|
213
|
-
description:
|
|
214
|
-
purpose:
|
|
215
|
-
backLink: `${
|
|
216
|
-
backLabel:
|
|
217
|
-
actions: /* @__PURE__ */
|
|
217
|
+
let K = me(j.developerOrganization), q = de, he = ue?.applications?.edges?.map((e) => e.node) ?? [], Y = `/billing/earnings?developerOrgId=${encodeURIComponent(K.id)}&developerOrgName=${encodeURIComponent(K.name)}&returnTo=${encodeURIComponent(`${c}${r(p, K.id)}`)}`;
|
|
218
|
+
return /* @__PURE__ */ z(d, {
|
|
219
|
+
title: K.name,
|
|
220
|
+
description: K.description,
|
|
221
|
+
purpose: x("devportal.orgDetailPurpose", "This is the home for one organization — the apps it owns, the people who can work on them, and its store and billing settings. Invite teammates, add apps, and verify the org so your published listings look trustworthy."),
|
|
222
|
+
backLink: `${c}${r(p)}`,
|
|
223
|
+
backLabel: x("devportal.backToOrganizations", "Back to Organizations"),
|
|
224
|
+
actions: /* @__PURE__ */ R("div", {
|
|
218
225
|
className: "flex items-center gap-2",
|
|
219
|
-
children:
|
|
220
|
-
onClick: () => n?.(
|
|
226
|
+
children: fe ? /* @__PURE__ */ z("button", {
|
|
227
|
+
onClick: () => n?.(Y),
|
|
221
228
|
className: "inline-flex items-center gap-2 rounded-md border px-4 py-2 text-sm font-medium hover:bg-bg-sunken transition-colors",
|
|
222
|
-
children: [/* @__PURE__ */
|
|
229
|
+
children: [/* @__PURE__ */ R(A, { size: 16 }), x("devportal.revenue", "Revenue")]
|
|
223
230
|
}) : null
|
|
224
231
|
}),
|
|
225
232
|
children: [
|
|
226
|
-
/* @__PURE__ */
|
|
233
|
+
/* @__PURE__ */ R("div", {
|
|
227
234
|
className: "border-b",
|
|
228
|
-
children: /* @__PURE__ */
|
|
235
|
+
children: /* @__PURE__ */ R("nav", {
|
|
229
236
|
className: "-mb-px flex gap-4 overflow-x-auto",
|
|
230
237
|
role: "tablist",
|
|
231
|
-
"aria-label":
|
|
232
|
-
children:
|
|
238
|
+
"aria-label": x("devportal.organizationSections", "Organization sections"),
|
|
239
|
+
children: pe.map((e) => {
|
|
233
240
|
let n = e.icon;
|
|
234
|
-
return /* @__PURE__ */
|
|
241
|
+
return /* @__PURE__ */ z("button", {
|
|
235
242
|
id: `organization-tab-${e.id}`,
|
|
236
243
|
role: "tab",
|
|
237
|
-
"aria-selected":
|
|
244
|
+
"aria-selected": S === e.id,
|
|
238
245
|
"aria-controls": `organization-panel-${e.id}`,
|
|
239
|
-
onClick: () =>
|
|
240
|
-
className: t("flex items-center gap-2 border-b-2 px-1 py-3 text-sm font-medium transition-colors",
|
|
241
|
-
children: [/* @__PURE__ */
|
|
246
|
+
onClick: () => C(e.id),
|
|
247
|
+
className: t("flex items-center gap-2 border-b-2 px-1 py-3 text-sm font-medium transition-colors", S === e.id ? "border-primary text-primary" : "border-transparent text-text-secondary hover:text-text-primary hover:border-muted-foreground"),
|
|
248
|
+
children: [/* @__PURE__ */ R(n, { size: 16 }), e.label]
|
|
242
249
|
}, e.id);
|
|
243
250
|
})
|
|
244
251
|
})
|
|
245
252
|
}),
|
|
246
|
-
|
|
253
|
+
V && p && !g && h.length === 0 && /* @__PURE__ */ z(b, {
|
|
247
254
|
variant: "warning",
|
|
248
|
-
title:
|
|
255
|
+
title: x("devportal.pickupAddressRequiredTitle", "Pickup address required"),
|
|
249
256
|
className: "mt-6",
|
|
250
|
-
children: [/* @__PURE__ */
|
|
257
|
+
children: [/* @__PURE__ */ R("p", { children: x("devportal.pickupAddressRequiredDesc", "This organization sells physical items, so it needs a real pickup address before it's fully set up — buyers need to know where orders actually ship from.") }), /* @__PURE__ */ R("button", {
|
|
251
258
|
type: "button",
|
|
252
259
|
onClick: () => {
|
|
253
|
-
|
|
260
|
+
C("settings"), ne(!0);
|
|
254
261
|
},
|
|
255
262
|
className: "mt-2 text-sm font-semibold underline",
|
|
256
|
-
children:
|
|
263
|
+
children: x("devportal.pickupAddressRequiredCta", "Configure it now")
|
|
257
264
|
})]
|
|
258
265
|
}),
|
|
259
|
-
/* @__PURE__ */
|
|
266
|
+
/* @__PURE__ */ R(H, {
|
|
260
267
|
className: "mt-6",
|
|
261
|
-
storageKey: `devportal-org-${
|
|
268
|
+
storageKey: `devportal-org-${K.id}`,
|
|
262
269
|
steps: [
|
|
263
|
-
...
|
|
270
|
+
...U ? [{
|
|
264
271
|
id: "invite-members",
|
|
265
|
-
label:
|
|
266
|
-
description:
|
|
267
|
-
icon: /* @__PURE__ */
|
|
268
|
-
onClick: () =>
|
|
272
|
+
label: x("devportal.inviteMembers", "Invite members"),
|
|
273
|
+
description: x("devportal.orgStepInvite", "Add teammates so they can build alongside you"),
|
|
274
|
+
icon: /* @__PURE__ */ R(F, { size: 16 }),
|
|
275
|
+
onClick: () => C("members")
|
|
269
276
|
}] : [],
|
|
270
|
-
...
|
|
277
|
+
...V ? [{
|
|
271
278
|
id: "settings",
|
|
272
|
-
label:
|
|
273
|
-
description:
|
|
274
|
-
icon: /* @__PURE__ */
|
|
275
|
-
onClick: () =>
|
|
276
|
-
done: !!
|
|
279
|
+
label: x("devportal.orgStepVerify", "Complete organization profile"),
|
|
280
|
+
description: x("devportal.orgStepVerifyDesc", "Add a logo and details, then request verification"),
|
|
281
|
+
icon: /* @__PURE__ */ R(le, { size: 16 }),
|
|
282
|
+
onClick: () => C("settings"),
|
|
283
|
+
done: !!K.isVerified
|
|
277
284
|
}] : [],
|
|
278
|
-
...
|
|
285
|
+
...V ? [{
|
|
279
286
|
id: "link-billing",
|
|
280
|
-
label:
|
|
281
|
-
description:
|
|
282
|
-
icon: /* @__PURE__ */
|
|
283
|
-
onClick: () => n?.(
|
|
284
|
-
done: !!
|
|
287
|
+
label: x("devportal.orgStepLinkBilling", "Link billing account"),
|
|
288
|
+
description: x("devportal.orgStepLinkBillingDesc", "Connect a billing account so sale and payout revenue has somewhere to go"),
|
|
289
|
+
icon: /* @__PURE__ */ R(k, { size: 16 }),
|
|
290
|
+
onClick: () => n?.(Y),
|
|
291
|
+
done: !!K.billingAccountId
|
|
285
292
|
}] : [],
|
|
286
|
-
...
|
|
293
|
+
...L && !p ? [{
|
|
287
294
|
id: "create-app",
|
|
288
|
-
label:
|
|
289
|
-
description:
|
|
290
|
-
icon: /* @__PURE__ */
|
|
295
|
+
label: x("devportal.createApp", "Create App"),
|
|
296
|
+
description: x("devportal.orgStepCreateApp", "Build a new application under this organization"),
|
|
297
|
+
icon: /* @__PURE__ */ R(D, { size: 16 }),
|
|
291
298
|
onClick: () => W("/apps/new")
|
|
292
299
|
}] : [],
|
|
293
|
-
...
|
|
300
|
+
...L && p ? [{
|
|
294
301
|
id: "list-item",
|
|
295
|
-
label:
|
|
296
|
-
description:
|
|
297
|
-
icon: /* @__PURE__ */
|
|
302
|
+
label: x("devportal.listAnItem", "List an Item"),
|
|
303
|
+
description: x("devportal.orgStepListItem", "List a physical product for sale under this organization"),
|
|
304
|
+
icon: /* @__PURE__ */ R(N, { size: 16 }),
|
|
298
305
|
onClick: () => W("/seller/items/new")
|
|
299
306
|
}] : []
|
|
300
307
|
]
|
|
301
308
|
}),
|
|
302
|
-
/* @__PURE__ */
|
|
309
|
+
/* @__PURE__ */ z("div", {
|
|
303
310
|
className: "mt-6",
|
|
304
|
-
id: `organization-panel-${
|
|
311
|
+
id: `organization-panel-${S}`,
|
|
305
312
|
role: "tabpanel",
|
|
306
|
-
"aria-labelledby": `organization-tab-${
|
|
313
|
+
"aria-labelledby": `organization-tab-${S}`,
|
|
307
314
|
tabIndex: 0,
|
|
308
315
|
children: [
|
|
309
|
-
|
|
310
|
-
org:
|
|
311
|
-
apps:
|
|
312
|
-
members:
|
|
313
|
-
canCreateApps:
|
|
314
|
-
canViewRevenue:
|
|
316
|
+
S === "overview" && /* @__PURE__ */ R(X, {
|
|
317
|
+
org: K,
|
|
318
|
+
apps: he,
|
|
319
|
+
members: q,
|
|
320
|
+
canCreateApps: L,
|
|
321
|
+
canViewRevenue: fe,
|
|
322
|
+
currency: y,
|
|
315
323
|
onNavigate: W,
|
|
316
|
-
onShowApps: () =>
|
|
324
|
+
onShowApps: () => C("apps")
|
|
317
325
|
}),
|
|
318
|
-
|
|
319
|
-
org:
|
|
320
|
-
apps:
|
|
326
|
+
S === "apps" && /* @__PURE__ */ R(ge, {
|
|
327
|
+
org: K,
|
|
328
|
+
apps: he,
|
|
321
329
|
onNavigate: W,
|
|
322
|
-
canCreateApps:
|
|
330
|
+
canCreateApps: L
|
|
323
331
|
}),
|
|
324
|
-
|
|
325
|
-
members:
|
|
332
|
+
S === "members" && /* @__PURE__ */ R(_e, {
|
|
333
|
+
members: q,
|
|
326
334
|
onNavigate: W,
|
|
327
|
-
orgId:
|
|
328
|
-
canInviteMembers:
|
|
335
|
+
orgId: K.id,
|
|
336
|
+
canInviteMembers: U
|
|
329
337
|
}),
|
|
330
|
-
|
|
331
|
-
org:
|
|
332
|
-
pickupAddresses:
|
|
333
|
-
pickupAddressesLoading:
|
|
334
|
-
refetchPickupAddresses:
|
|
338
|
+
S === "settings" && V && /* @__PURE__ */ R(ve, {
|
|
339
|
+
org: K,
|
|
340
|
+
pickupAddresses: h,
|
|
341
|
+
pickupAddressesLoading: g,
|
|
342
|
+
refetchPickupAddresses: _,
|
|
335
343
|
focusFulfillment: te,
|
|
336
344
|
onFocusFulfillmentHandled: () => ne(!1)
|
|
337
345
|
})
|
|
@@ -339,224 +347,224 @@ var J = {
|
|
|
339
347
|
})
|
|
340
348
|
]
|
|
341
349
|
});
|
|
342
|
-
},
|
|
343
|
-
let { t:
|
|
344
|
-
let n =
|
|
350
|
+
}, X = ({ org: e, apps: t, members: r, canCreateApps: i, canViewRevenue: a, currency: o, onNavigate: s, onShowApps: c }) => {
|
|
351
|
+
let { t: l } = B(), u = (e, t) => {
|
|
352
|
+
let n = l(e);
|
|
345
353
|
return n === e ? t : n;
|
|
346
354
|
};
|
|
347
|
-
return /* @__PURE__ */
|
|
355
|
+
return /* @__PURE__ */ z("div", {
|
|
348
356
|
className: "grid gap-6 lg:grid-cols-3",
|
|
349
|
-
children: [/* @__PURE__ */
|
|
357
|
+
children: [/* @__PURE__ */ z("div", {
|
|
350
358
|
className: "lg:col-span-2 space-y-6",
|
|
351
|
-
children: [/* @__PURE__ */
|
|
352
|
-
columns: a ? 4 : 3,
|
|
359
|
+
children: [/* @__PURE__ */ R(V, { children: /* @__PURE__ */ z(g, {
|
|
360
|
+
columns: e.kind === "PHYSICAL" ? a ? 3 : 2 : a ? 4 : 3,
|
|
353
361
|
children: [
|
|
354
|
-
/* @__PURE__ */
|
|
355
|
-
title:
|
|
362
|
+
/* @__PURE__ */ R(h, {
|
|
363
|
+
title: u("devportal.publishedApps", "Published Apps"),
|
|
356
364
|
value: `${e.publishedApps}/${e.totalApps}`,
|
|
357
|
-
icon: /* @__PURE__ */
|
|
365
|
+
icon: /* @__PURE__ */ R(D, { size: 20 })
|
|
358
366
|
}),
|
|
359
|
-
/* @__PURE__ */
|
|
360
|
-
title:
|
|
367
|
+
e.kind !== "PHYSICAL" && /* @__PURE__ */ R(h, {
|
|
368
|
+
title: u("devportal.totalInstalls", "Total Installs"),
|
|
361
369
|
value: e.totalInstalls.toLocaleString(),
|
|
362
|
-
icon: /* @__PURE__ */
|
|
370
|
+
icon: /* @__PURE__ */ R(P, { size: 20 })
|
|
363
371
|
}),
|
|
364
|
-
a ? /* @__PURE__ */
|
|
365
|
-
title:
|
|
366
|
-
value:
|
|
367
|
-
icon: /* @__PURE__ */
|
|
372
|
+
a ? /* @__PURE__ */ R(h, {
|
|
373
|
+
title: u("devportal.totalRevenue", "Total Revenue"),
|
|
374
|
+
value: w(e.totalRevenue, o),
|
|
375
|
+
icon: /* @__PURE__ */ R(A, { size: 20 })
|
|
368
376
|
}) : null,
|
|
369
|
-
/* @__PURE__ */
|
|
370
|
-
title:
|
|
371
|
-
value: e.averageRating ? `${e.averageRating.toFixed(1)} ★` :
|
|
372
|
-
icon: /* @__PURE__ */
|
|
377
|
+
/* @__PURE__ */ R(h, {
|
|
378
|
+
title: u("devportal.avgRating", "Avg Rating"),
|
|
379
|
+
value: e.averageRating ? `${e.averageRating.toFixed(1)} ★` : u("devportal.notAvailable", "N/A"),
|
|
380
|
+
icon: /* @__PURE__ */ R(se, { size: 20 })
|
|
373
381
|
})
|
|
374
382
|
]
|
|
375
|
-
}) }), /* @__PURE__ */
|
|
376
|
-
title:
|
|
377
|
-
actions: /* @__PURE__ */
|
|
378
|
-
onClick:
|
|
383
|
+
}) }), /* @__PURE__ */ R(f, {
|
|
384
|
+
title: u("devportal.recentApplications", "Recent Applications"),
|
|
385
|
+
actions: /* @__PURE__ */ z("button", {
|
|
386
|
+
onClick: c,
|
|
379
387
|
className: "text-sm text-primary hover:underline flex items-center gap-1",
|
|
380
388
|
children: [
|
|
381
|
-
|
|
389
|
+
u("devportal.viewAll", "View all"),
|
|
382
390
|
" ",
|
|
383
|
-
/* @__PURE__ */
|
|
391
|
+
/* @__PURE__ */ R(oe, { size: 14 })
|
|
384
392
|
]
|
|
385
393
|
}),
|
|
386
|
-
children: t.length > 0 ? /* @__PURE__ */
|
|
394
|
+
children: t.length > 0 ? /* @__PURE__ */ R("div", {
|
|
387
395
|
className: "space-y-2",
|
|
388
|
-
children: t.slice(0, 3).map((e) => /* @__PURE__ */
|
|
396
|
+
children: t.slice(0, 3).map((e) => /* @__PURE__ */ R(m, {
|
|
389
397
|
app: e,
|
|
390
|
-
onClick: () =>
|
|
398
|
+
onClick: () => s(`/apps/${e.id}`)
|
|
391
399
|
}, e.id))
|
|
392
|
-
}) : /* @__PURE__ */
|
|
400
|
+
}) : /* @__PURE__ */ R(n, {
|
|
393
401
|
illustration: "empty-data",
|
|
394
|
-
icon: /* @__PURE__ */
|
|
395
|
-
title:
|
|
396
|
-
description: e.kind === "PHYSICAL" ?
|
|
397
|
-
action: i ? /* @__PURE__ */
|
|
398
|
-
onClick: () =>
|
|
402
|
+
icon: /* @__PURE__ */ R(D, { size: 24 }),
|
|
403
|
+
title: u("devportal.noApplications", "No applications"),
|
|
404
|
+
description: e.kind === "PHYSICAL" ? u("devportal.createYourFirstItem", "List your first physical item") : u("devportal.createYourFirstApplication", "Create your first application"),
|
|
405
|
+
action: i ? /* @__PURE__ */ z("button", {
|
|
406
|
+
onClick: () => s(e.kind === "PHYSICAL" ? "/seller/items/new" : "/apps/new"),
|
|
399
407
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90",
|
|
400
|
-
children: [/* @__PURE__ */
|
|
408
|
+
children: [/* @__PURE__ */ R(N, { size: 16 }), e.kind === "PHYSICAL" ? u("devportal.createItem", "Create Item") : u("devportal.createApp", "Create App")]
|
|
401
409
|
}) : void 0
|
|
402
410
|
})
|
|
403
411
|
})]
|
|
404
|
-
}), /* @__PURE__ */
|
|
412
|
+
}), /* @__PURE__ */ z("div", {
|
|
405
413
|
className: "space-y-6",
|
|
406
414
|
children: [
|
|
407
|
-
a ? /* @__PURE__ */
|
|
408
|
-
title:
|
|
409
|
-
children: /* @__PURE__ */
|
|
415
|
+
a ? /* @__PURE__ */ R(f, {
|
|
416
|
+
title: u("devportal.revenueSummary", "Revenue Summary"),
|
|
417
|
+
children: /* @__PURE__ */ R(v, { items: [
|
|
410
418
|
{
|
|
411
|
-
label:
|
|
412
|
-
value:
|
|
419
|
+
label: u("devportal.totalRevenue", "Total Revenue"),
|
|
420
|
+
value: w(e.totalRevenue, o)
|
|
413
421
|
},
|
|
414
422
|
{
|
|
415
|
-
label:
|
|
416
|
-
value:
|
|
423
|
+
label: u("devportal.platformFees", "Platform Fees"),
|
|
424
|
+
value: w(e.totalPlatformFees, o)
|
|
417
425
|
},
|
|
418
426
|
{
|
|
419
|
-
label:
|
|
420
|
-
value:
|
|
427
|
+
label: u("devportal.netPayouts", "Net Payouts"),
|
|
428
|
+
value: w(e.totalPayouts, o)
|
|
421
429
|
},
|
|
422
430
|
{
|
|
423
|
-
label:
|
|
424
|
-
value:
|
|
431
|
+
label: u("devportal.pendingBalance", "Pending Balance"),
|
|
432
|
+
value: w(e.pendingBalance, o)
|
|
425
433
|
},
|
|
426
434
|
{
|
|
427
|
-
label:
|
|
428
|
-
value:
|
|
435
|
+
label: u("devportal.lifetimeRevenue", "Lifetime Revenue"),
|
|
436
|
+
value: w(e.lifetimeRevenue, o)
|
|
429
437
|
}
|
|
430
438
|
] })
|
|
431
439
|
}) : null,
|
|
432
|
-
/* @__PURE__ */
|
|
433
|
-
title:
|
|
434
|
-
actions: /* @__PURE__ */
|
|
435
|
-
onClick: () =>
|
|
440
|
+
/* @__PURE__ */ R(f, {
|
|
441
|
+
title: u("devportal.teamMembers", "Team Members"),
|
|
442
|
+
actions: /* @__PURE__ */ R("button", {
|
|
443
|
+
onClick: () => s(`/organizations/${e.id}/members`),
|
|
436
444
|
className: "text-sm text-primary hover:underline",
|
|
437
|
-
children:
|
|
445
|
+
children: u("devportal.manage", "Manage")
|
|
438
446
|
}),
|
|
439
|
-
children: /* @__PURE__ */
|
|
447
|
+
children: /* @__PURE__ */ z("div", {
|
|
440
448
|
className: "space-y-2",
|
|
441
|
-
children: [r.slice(0, 3).map((e) => /* @__PURE__ */
|
|
449
|
+
children: [r.slice(0, 3).map((e) => /* @__PURE__ */ R("div", {
|
|
442
450
|
className: "flex items-center justify-between py-2",
|
|
443
|
-
children: /* @__PURE__ */
|
|
451
|
+
children: /* @__PURE__ */ z("div", {
|
|
444
452
|
className: "flex items-center gap-3",
|
|
445
|
-
children: [/* @__PURE__ */
|
|
453
|
+
children: [/* @__PURE__ */ R("div", {
|
|
446
454
|
className: "h-8 w-8 rounded-full bg-action-primary-bg/10 flex items-center justify-center text-sm font-medium text-primary",
|
|
447
455
|
children: e.email?.charAt(0).toUpperCase() || "U"
|
|
448
|
-
}), /* @__PURE__ */
|
|
456
|
+
}), /* @__PURE__ */ z("div", { children: [/* @__PURE__ */ R("p", {
|
|
449
457
|
className: "text-sm font-medium",
|
|
450
458
|
children: e.email
|
|
451
|
-
}), /* @__PURE__ */
|
|
459
|
+
}), /* @__PURE__ */ R("p", {
|
|
452
460
|
className: "text-xs text-text-secondary",
|
|
453
|
-
children:
|
|
461
|
+
children: p[e.role]
|
|
454
462
|
})] })]
|
|
455
463
|
})
|
|
456
|
-
}, e.id)), r.length > 3 && /* @__PURE__ */
|
|
464
|
+
}, e.id)), r.length > 3 && /* @__PURE__ */ z("p", {
|
|
457
465
|
className: "text-xs text-text-secondary",
|
|
458
466
|
children: [
|
|
459
467
|
"+",
|
|
460
468
|
r.length - 3,
|
|
461
469
|
" ",
|
|
462
|
-
|
|
470
|
+
u("devportal.moreMembers", "more members")
|
|
463
471
|
]
|
|
464
472
|
})]
|
|
465
473
|
})
|
|
466
474
|
}),
|
|
467
|
-
/* @__PURE__ */
|
|
468
|
-
title:
|
|
469
|
-
children: /* @__PURE__ */
|
|
475
|
+
/* @__PURE__ */ R(f, {
|
|
476
|
+
title: u("devportal.links", "Links"),
|
|
477
|
+
children: /* @__PURE__ */ z("div", {
|
|
470
478
|
className: "space-y-2",
|
|
471
|
-
children: [e.websiteUrl && /* @__PURE__ */
|
|
479
|
+
children: [e.websiteUrl && /* @__PURE__ */ z("a", {
|
|
472
480
|
href: e.websiteUrl,
|
|
473
481
|
target: "_blank",
|
|
474
482
|
rel: "noopener noreferrer",
|
|
475
483
|
className: "flex items-center gap-2 text-sm text-primary hover:underline",
|
|
476
|
-
children: [/* @__PURE__ */
|
|
477
|
-
}), e.contactEmail && /* @__PURE__ */
|
|
484
|
+
children: [/* @__PURE__ */ R(j, { size: 14 }), u("devportal.website", "Website")]
|
|
485
|
+
}), e.contactEmail && /* @__PURE__ */ z("a", {
|
|
478
486
|
href: `mailto:${e.contactEmail}`,
|
|
479
487
|
className: "flex items-center gap-2 text-sm text-primary hover:underline",
|
|
480
|
-
children: [/* @__PURE__ */
|
|
488
|
+
children: [/* @__PURE__ */ R(j, { size: 14 }), e.contactEmail]
|
|
481
489
|
})]
|
|
482
490
|
})
|
|
483
491
|
})
|
|
484
492
|
]
|
|
485
493
|
})]
|
|
486
494
|
});
|
|
487
|
-
},
|
|
488
|
-
let { t: a } =
|
|
495
|
+
}, ge = ({ org: e, apps: t, onNavigate: r, canCreateApps: i }) => {
|
|
496
|
+
let { t: a } = B(), o = (e, t) => {
|
|
489
497
|
let n = a(e);
|
|
490
498
|
return n === e ? t : n;
|
|
491
499
|
}, s = e.kind === "PHYSICAL", c = s ? "/seller/items/new" : "/apps/new", l = s ? o("devportal.createItem", "Create Item") : o("devportal.createApp", "Create App");
|
|
492
|
-
return /* @__PURE__ */
|
|
500
|
+
return /* @__PURE__ */ z("div", {
|
|
493
501
|
className: "space-y-6",
|
|
494
|
-
children: [/* @__PURE__ */
|
|
502
|
+
children: [/* @__PURE__ */ z("div", {
|
|
495
503
|
className: "flex items-center justify-between",
|
|
496
|
-
children: [/* @__PURE__ */
|
|
504
|
+
children: [/* @__PURE__ */ z("p", {
|
|
497
505
|
className: "text-sm text-text-secondary",
|
|
498
506
|
children: [
|
|
499
507
|
t.length,
|
|
500
508
|
" ",
|
|
501
509
|
t.length === 1 ? o("devportal.application", "application") : o("devportal.applications", "applications")
|
|
502
510
|
]
|
|
503
|
-
}), i ? /* @__PURE__ */
|
|
511
|
+
}), i ? /* @__PURE__ */ z("button", {
|
|
504
512
|
onClick: () => r(c),
|
|
505
513
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90 transition-colors",
|
|
506
|
-
children: [/* @__PURE__ */
|
|
514
|
+
children: [/* @__PURE__ */ R(N, { size: 16 }), l]
|
|
507
515
|
}) : null]
|
|
508
|
-
}), t.length > 0 ? /* @__PURE__ */
|
|
516
|
+
}), t.length > 0 ? /* @__PURE__ */ R("div", {
|
|
509
517
|
className: "space-y-2",
|
|
510
|
-
children: t.map((e) => /* @__PURE__ */
|
|
518
|
+
children: t.map((e) => /* @__PURE__ */ R(m, {
|
|
511
519
|
app: e,
|
|
512
520
|
onClick: () => r(`/apps/${e.id}`)
|
|
513
521
|
}, e.id))
|
|
514
|
-
}) : /* @__PURE__ */
|
|
522
|
+
}) : /* @__PURE__ */ R(n, {
|
|
515
523
|
illustration: "empty-data",
|
|
516
|
-
icon: /* @__PURE__ */
|
|
524
|
+
icon: /* @__PURE__ */ R(D, { size: 32 }),
|
|
517
525
|
title: o("devportal.noApplications", "No applications"),
|
|
518
526
|
description: s ? o("devportal.createFirstItemForOrg", "List your first physical item for this organization") : o("devportal.createFirstAppForOrg", "Create your first application for this organization"),
|
|
519
|
-
action: i ? /* @__PURE__ */
|
|
527
|
+
action: i ? /* @__PURE__ */ z("button", {
|
|
520
528
|
onClick: () => r(c),
|
|
521
529
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90",
|
|
522
|
-
children: [/* @__PURE__ */
|
|
530
|
+
children: [/* @__PURE__ */ R(N, { size: 16 }), l]
|
|
523
531
|
}) : void 0
|
|
524
532
|
})]
|
|
525
533
|
});
|
|
526
|
-
},
|
|
527
|
-
let { t: a } =
|
|
534
|
+
}, _e = ({ members: e, onNavigate: n, orgId: r, canInviteMembers: i }) => {
|
|
535
|
+
let { t: a } = B(), o = (e, t) => {
|
|
528
536
|
let n = a(e);
|
|
529
537
|
return n === e ? t : n;
|
|
530
538
|
};
|
|
531
|
-
return /* @__PURE__ */
|
|
539
|
+
return /* @__PURE__ */ z("div", {
|
|
532
540
|
className: "space-y-6",
|
|
533
|
-
children: [/* @__PURE__ */
|
|
541
|
+
children: [/* @__PURE__ */ z("div", {
|
|
534
542
|
className: "flex items-center justify-between",
|
|
535
|
-
children: [/* @__PURE__ */
|
|
543
|
+
children: [/* @__PURE__ */ z("p", {
|
|
536
544
|
className: "text-sm text-text-secondary",
|
|
537
545
|
children: [
|
|
538
546
|
e.length,
|
|
539
547
|
" ",
|
|
540
548
|
e.length === 1 ? o("devportal.memberLower", "member") : o("devportal.membersLower", "members")
|
|
541
549
|
]
|
|
542
|
-
}), i ? /* @__PURE__ */
|
|
550
|
+
}), i ? /* @__PURE__ */ z("button", {
|
|
543
551
|
onClick: () => n(`/organizations/${r}/members`),
|
|
544
552
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90 transition-colors",
|
|
545
|
-
children: [/* @__PURE__ */
|
|
553
|
+
children: [/* @__PURE__ */ R(N, { size: 16 }), o("devportal.inviteMember", "Invite Member")]
|
|
546
554
|
}) : null]
|
|
547
|
-
}), /* @__PURE__ */
|
|
555
|
+
}), /* @__PURE__ */ R(_, {
|
|
548
556
|
data: e,
|
|
549
557
|
keyField: "id",
|
|
550
558
|
columns: [
|
|
551
559
|
{
|
|
552
560
|
key: "email",
|
|
553
561
|
header: o("devportal.memberColumn", "Member"),
|
|
554
|
-
render: (e) => /* @__PURE__ */
|
|
562
|
+
render: (e) => /* @__PURE__ */ z("div", {
|
|
555
563
|
className: "flex items-center gap-3",
|
|
556
|
-
children: [/* @__PURE__ */
|
|
564
|
+
children: [/* @__PURE__ */ R("div", {
|
|
557
565
|
className: "h-8 w-8 rounded-full bg-action-primary-bg/10 flex items-center justify-center text-sm font-medium text-primary",
|
|
558
566
|
children: e.email?.charAt(0).toUpperCase() || "U"
|
|
559
|
-
}), /* @__PURE__ */
|
|
567
|
+
}), /* @__PURE__ */ R("span", {
|
|
560
568
|
className: "font-medium",
|
|
561
569
|
children: e.email
|
|
562
570
|
})]
|
|
@@ -565,9 +573,9 @@ var J = {
|
|
|
565
573
|
{
|
|
566
574
|
key: "role",
|
|
567
575
|
header: o("devportal.roleColumn", "Role"),
|
|
568
|
-
render: (e) => /* @__PURE__ */
|
|
576
|
+
render: (e) => /* @__PURE__ */ R("span", {
|
|
569
577
|
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium", e.role === "OWNER" ? "bg-accent-purple-subtle text-accent-purple" : e.role === "ADMIN" ? "bg-status-info-bg-subtle text-status-info-text" : e.role === "DEVELOPER" ? "bg-status-success-bg-subtle text-status-success-text" : "bg-bg-sunken text-text-primary"),
|
|
570
|
-
children:
|
|
578
|
+
children: p[e.role]
|
|
571
579
|
})
|
|
572
580
|
},
|
|
573
581
|
{
|
|
@@ -578,9 +586,9 @@ var J = {
|
|
|
578
586
|
]
|
|
579
587
|
})]
|
|
580
588
|
});
|
|
581
|
-
},
|
|
582
|
-
let [
|
|
583
|
-
|
|
589
|
+
}, ve = ({ org: e, pickupAddresses: n, pickupAddressesLoading: r, refetchPickupAddresses: i, focusFulfillment: a, onFocusFulfillmentHandled: o }) => {
|
|
590
|
+
let [s, d] = E(!1);
|
|
591
|
+
T(() => {
|
|
584
592
|
if (!a) return;
|
|
585
593
|
document.getElementById("fulfillment-section")?.scrollIntoView({
|
|
586
594
|
behavior: "smooth",
|
|
@@ -589,10 +597,10 @@ var J = {
|
|
|
589
597
|
let e = setTimeout(() => d(!1), 2500);
|
|
590
598
|
return o?.(), () => clearTimeout(e);
|
|
591
599
|
}, [a]);
|
|
592
|
-
let { t:
|
|
593
|
-
let n =
|
|
600
|
+
let { t: p } = B(), { allowed: m } = C(re.ORG_UPDATE), h = (e, t) => {
|
|
601
|
+
let n = p(e);
|
|
594
602
|
return n === e ? t : n;
|
|
595
|
-
}, [
|
|
603
|
+
}, [g, _] = E({
|
|
596
604
|
name: e.name,
|
|
597
605
|
description: e.description ?? "",
|
|
598
606
|
websiteUrl: e.websiteUrl ?? "",
|
|
@@ -600,25 +608,25 @@ var J = {
|
|
|
600
608
|
supportEmail: e.supportEmail ?? "",
|
|
601
609
|
logoUrl: e.logoUrl ?? "",
|
|
602
610
|
bannerUrl: e.bannerUrl ?? ""
|
|
603
|
-
}), [
|
|
611
|
+
}), [b, ie] = E({
|
|
604
612
|
legalEntityName: e.legalEntityName ?? "",
|
|
605
613
|
legalEntityType: e.legalEntityType ?? ""
|
|
606
|
-
}), [
|
|
614
|
+
}), [w, ae] = E({
|
|
607
615
|
taxId: e.taxId ?? "",
|
|
608
616
|
taxCountry: e.taxCountry ?? ""
|
|
609
|
-
}), { locations:
|
|
617
|
+
}), { locations: D, refetch: oe } = ne(), [se, ce] = E(!1), [k, A] = E(null), [j, P] = E(null), [F, I] = E(null), [V, H] = E(null), [me, G] = E(null), [J, Y] = E(null), [X, ge] = E("manual"), [_e, ve] = E(!1), [ye, be] = E(""), [xe, Se] = E(""), [Ce, we] = E(""), [Te, Ee] = E(null), [De, Oe] = E(!1), Z = Te ?? {
|
|
610
618
|
verificationMethod: e.verificationMethod,
|
|
611
619
|
verificationRequestedAt: e.verificationRequestedAt,
|
|
612
620
|
verificationStatus: e.verificationStatus,
|
|
613
621
|
verificationRequestNotes: e.verificationRequestNotes,
|
|
614
622
|
verificationRejectedReason: e.verificationRejectedReason
|
|
615
|
-
},
|
|
616
|
-
|
|
617
|
-
let
|
|
618
|
-
|
|
619
|
-
let ke =
|
|
620
|
-
|
|
621
|
-
|
|
623
|
+
}, Q = [];
|
|
624
|
+
g.contactEmail.trim() ? he(g.contactEmail) || Q.push(h("devportal.contactEmailInvalid", "Contact email must be valid")) : Q.push(h("devportal.contactEmailRequired", "Contact email is required")), g.supportEmail.trim() && !he(g.supportEmail) && Q.push(h("devportal.supportEmailInvalid", "Support email must be valid")), g.websiteUrl.trim() ? q(g.websiteUrl) || Q.push(h("devportal.websiteInvalid", "Website URL must be valid")) : Q.push(h("devportal.websiteRequired", "Website URL is required")), b.legalEntityName.trim() || Q.push(h("devportal.legalEntityNameRequired", "Legal entity name is required")), b.legalEntityType.trim() || Q.push(h("devportal.legalEntityTypeRequired", "Entity type is required")), w.taxId.trim() || Q.push(h("devportal.taxIdRequired", "Tax ID is required")), w.taxCountry.trim() ? /^[A-Za-z]{2}$/.test(w.taxCountry.trim()) || Q.push(h("devportal.taxCountryInvalid", "Tax country must be a 2-letter code")) : Q.push(h("devportal.taxCountryRequired", "Tax country is required"));
|
|
625
|
+
let $ = [];
|
|
626
|
+
X === "domain" && !K(Ce.trim()) && $.push(h("devportal.verification.errors.domainRequired", "Enter a valid domain like burdenoff.com")), X === "document" && !q(xe.trim()) && $.push(h("devportal.verification.errors.evidenceUrlRequired", "Enter a valid evidence URL starting with http:// or https://")), X === "manual" && !ye.trim() && $.push(h("devportal.verification.errors.notesRequired", "Add notes so the reviewer knows what to verify"));
|
|
627
|
+
let ke = Q.length === 0 && $.length === 0 && !De && m, [Ae, { loading: je }] = u({ refetchQueries: ["GetOrganization"] }), [Me, { loading: Ne }] = c({ refetchQueries: ["GetOrganization"] }), [Pe, { loading: Fe }] = l({ refetchQueries: ["GetOrganization"] });
|
|
628
|
+
T(() => {
|
|
629
|
+
_({
|
|
622
630
|
name: e.name,
|
|
623
631
|
description: e.description ?? "",
|
|
624
632
|
websiteUrl: e.websiteUrl ?? "",
|
|
@@ -626,66 +634,66 @@ var J = {
|
|
|
626
634
|
supportEmail: e.supportEmail ?? "",
|
|
627
635
|
logoUrl: e.logoUrl ?? "",
|
|
628
636
|
bannerUrl: e.bannerUrl ?? ""
|
|
629
|
-
}),
|
|
637
|
+
}), ie({
|
|
630
638
|
legalEntityName: e.legalEntityName ?? "",
|
|
631
639
|
legalEntityType: e.legalEntityType ?? ""
|
|
632
|
-
}),
|
|
640
|
+
}), ae({
|
|
633
641
|
taxId: e.taxId ?? "",
|
|
634
642
|
taxCountry: e.taxCountry ?? ""
|
|
635
643
|
});
|
|
636
|
-
}, [e.id]),
|
|
644
|
+
}, [e.id]), T(() => {
|
|
637
645
|
e.id && U({
|
|
638
646
|
gateway: "global",
|
|
639
|
-
query:
|
|
647
|
+
query: pe,
|
|
640
648
|
variables: { id: e.id }
|
|
641
|
-
}).then((e) =>
|
|
642
|
-
}, [e.id,
|
|
649
|
+
}).then((e) => Ee(e.data?.developerOrganization ?? null)).catch(() => Ee(null));
|
|
650
|
+
}, [e.id, _e]);
|
|
643
651
|
let Ie = async () => {
|
|
644
|
-
|
|
652
|
+
Y(null), G(null);
|
|
645
653
|
try {
|
|
646
654
|
await Ae({ variables: {
|
|
647
655
|
id: e.id,
|
|
648
656
|
input: {
|
|
649
|
-
name:
|
|
650
|
-
description:
|
|
651
|
-
websiteUrl:
|
|
652
|
-
contactEmail:
|
|
653
|
-
supportEmail:
|
|
654
|
-
logoUrl:
|
|
655
|
-
bannerUrl:
|
|
657
|
+
name: g.name.trim() || void 0,
|
|
658
|
+
description: g.description.trim() || null,
|
|
659
|
+
websiteUrl: g.websiteUrl.trim() || null,
|
|
660
|
+
contactEmail: g.contactEmail.trim() || null,
|
|
661
|
+
supportEmail: g.supportEmail.trim() || null,
|
|
662
|
+
logoUrl: g.logoUrl.trim() || null,
|
|
663
|
+
bannerUrl: g.bannerUrl.trim() || null
|
|
656
664
|
}
|
|
657
|
-
} }),
|
|
665
|
+
} }), G(h("devportal.organizationUpdated", "Organization details updated"));
|
|
658
666
|
} catch (e) {
|
|
659
|
-
|
|
667
|
+
Y(e instanceof Error ? e.message : h("devportal.failedToUpdateOrganization", "Failed to update organization"));
|
|
660
668
|
}
|
|
661
669
|
}, Le = async () => {
|
|
662
|
-
|
|
670
|
+
Y(null), G(null);
|
|
663
671
|
try {
|
|
664
672
|
await Me({ variables: {
|
|
665
673
|
id: e.id,
|
|
666
674
|
input: {
|
|
667
|
-
legalEntityName:
|
|
668
|
-
legalEntityType:
|
|
675
|
+
legalEntityName: b.legalEntityName.trim() || null,
|
|
676
|
+
legalEntityType: b.legalEntityType.trim() || null
|
|
669
677
|
}
|
|
670
|
-
} }),
|
|
678
|
+
} }), G(h("devportal.legalInfoUpdated", "Legal information updated"));
|
|
671
679
|
} catch (e) {
|
|
672
|
-
|
|
680
|
+
Y(e instanceof Error ? e.message : h("devportal.failedToUpdateLegalInfo", "Failed to update legal information"));
|
|
673
681
|
}
|
|
674
682
|
}, Re = async () => {
|
|
675
|
-
|
|
683
|
+
Y(null), G(null);
|
|
676
684
|
try {
|
|
677
685
|
await Pe({ variables: {
|
|
678
686
|
id: e.id,
|
|
679
687
|
input: {
|
|
680
|
-
taxId:
|
|
681
|
-
taxCountry:
|
|
688
|
+
taxId: w.taxId.trim() || null,
|
|
689
|
+
taxCountry: w.taxCountry.trim() || null
|
|
682
690
|
}
|
|
683
|
-
} }),
|
|
691
|
+
} }), G(h("devportal.taxInfoUpdated", "Tax information updated"));
|
|
684
692
|
} catch (e) {
|
|
685
|
-
|
|
693
|
+
Y(e instanceof Error ? e.message : h("devportal.failedToUpdateTaxInfo", "Failed to update tax information"));
|
|
686
694
|
}
|
|
687
695
|
}, ze = async (e) => {
|
|
688
|
-
|
|
696
|
+
H(null), I(null), P(e);
|
|
689
697
|
try {
|
|
690
698
|
let t = await U({
|
|
691
699
|
gateway: "global",
|
|
@@ -693,14 +701,14 @@ var J = {
|
|
|
693
701
|
variables: { id: e }
|
|
694
702
|
});
|
|
695
703
|
if (t.errors?.length) throw Error(t.errors[0]?.message ?? "Failed to switch pickup address");
|
|
696
|
-
|
|
704
|
+
fe(), i(), I(h("devportal.pickupAddressSetActive", "Pickup address updated"));
|
|
697
705
|
} catch (e) {
|
|
698
|
-
|
|
706
|
+
H(e instanceof Error ? e.message : h("devportal.failedToSwitchPickupAddress", "Failed to switch pickup address"));
|
|
699
707
|
} finally {
|
|
700
|
-
|
|
708
|
+
P(null);
|
|
701
709
|
}
|
|
702
710
|
}, Be = async (e) => {
|
|
703
|
-
|
|
711
|
+
H(null), I(null), P(e);
|
|
704
712
|
try {
|
|
705
713
|
let t = await U({
|
|
706
714
|
gateway: "global",
|
|
@@ -708,281 +716,281 @@ var J = {
|
|
|
708
716
|
variables: { id: e }
|
|
709
717
|
});
|
|
710
718
|
if (t.errors?.length) throw Error(t.errors[0]?.message ?? "Failed to remove pickup address");
|
|
711
|
-
|
|
719
|
+
fe(), i(), I(h("devportal.pickupAddressRemoved", "Pickup address removed"));
|
|
712
720
|
} catch (e) {
|
|
713
|
-
|
|
721
|
+
H(e instanceof Error ? e.message : h("devportal.failedToRemovePickupAddress", "Failed to remove pickup address"));
|
|
714
722
|
} finally {
|
|
715
|
-
|
|
723
|
+
P(null), A(null);
|
|
716
724
|
}
|
|
717
725
|
};
|
|
718
|
-
return /* @__PURE__ */
|
|
726
|
+
return /* @__PURE__ */ z("div", {
|
|
719
727
|
className: "space-y-6 max-w-2xl",
|
|
720
728
|
children: [
|
|
721
|
-
|
|
729
|
+
J && /* @__PURE__ */ R("div", {
|
|
722
730
|
className: "rounded-md border border-status-error-bg bg-status-error-bg-subtle px-4 py-3 text-sm text-status-error-text",
|
|
723
|
-
children:
|
|
731
|
+
children: J
|
|
724
732
|
}),
|
|
725
|
-
|
|
733
|
+
me && /* @__PURE__ */ R("div", {
|
|
726
734
|
className: "rounded-md border border-status-success-bg bg-status-success-bg-subtle px-4 py-3 text-sm text-status-success-text",
|
|
727
|
-
children:
|
|
735
|
+
children: me
|
|
728
736
|
}),
|
|
729
|
-
/* @__PURE__ */
|
|
730
|
-
title:
|
|
731
|
-
children: /* @__PURE__ */
|
|
737
|
+
/* @__PURE__ */ R(f, {
|
|
738
|
+
title: h("devportal.organizationDetails", "Organization Details"),
|
|
739
|
+
children: /* @__PURE__ */ z("div", {
|
|
732
740
|
className: "space-y-4",
|
|
733
741
|
children: [
|
|
734
|
-
/* @__PURE__ */
|
|
742
|
+
/* @__PURE__ */ z("div", {
|
|
735
743
|
className: "grid gap-4 sm:grid-cols-2",
|
|
736
|
-
children: [/* @__PURE__ */
|
|
737
|
-
label:
|
|
738
|
-
value:
|
|
739
|
-
onChange: (e) =>
|
|
744
|
+
children: [/* @__PURE__ */ R(y, {
|
|
745
|
+
label: h("devportal.organizationName", "Organization Name"),
|
|
746
|
+
value: g.name,
|
|
747
|
+
onChange: (e) => _((t) => ({
|
|
740
748
|
...t,
|
|
741
749
|
name: e.target.value
|
|
742
750
|
})),
|
|
743
|
-
disabled: !
|
|
751
|
+
disabled: !m,
|
|
744
752
|
required: !0
|
|
745
|
-
}), /* @__PURE__ */
|
|
746
|
-
label:
|
|
753
|
+
}), /* @__PURE__ */ R(y, {
|
|
754
|
+
label: h("devportal.slug", "Slug"),
|
|
747
755
|
value: e.slug,
|
|
748
756
|
disabled: !0,
|
|
749
|
-
hint:
|
|
757
|
+
hint: h("devportal.slugReadOnly", "Slug cannot be changed here")
|
|
750
758
|
})]
|
|
751
759
|
}),
|
|
752
|
-
/* @__PURE__ */
|
|
753
|
-
label:
|
|
754
|
-
value:
|
|
755
|
-
onChange: (e) =>
|
|
760
|
+
/* @__PURE__ */ R(ee, {
|
|
761
|
+
label: h("devportal.description", "Description"),
|
|
762
|
+
value: g.description,
|
|
763
|
+
onChange: (e) => _((t) => ({
|
|
756
764
|
...t,
|
|
757
765
|
description: e.target.value
|
|
758
766
|
})),
|
|
759
|
-
disabled: !
|
|
767
|
+
disabled: !m,
|
|
760
768
|
rows: 4
|
|
761
769
|
}),
|
|
762
|
-
/* @__PURE__ */
|
|
770
|
+
/* @__PURE__ */ z("div", {
|
|
763
771
|
className: "grid gap-4 sm:grid-cols-2",
|
|
764
772
|
children: [
|
|
765
|
-
/* @__PURE__ */
|
|
766
|
-
label:
|
|
773
|
+
/* @__PURE__ */ R(y, {
|
|
774
|
+
label: h("devportal.website", "Website"),
|
|
767
775
|
type: "url",
|
|
768
|
-
value:
|
|
769
|
-
onChange: (e) =>
|
|
776
|
+
value: g.websiteUrl,
|
|
777
|
+
onChange: (e) => _((t) => ({
|
|
770
778
|
...t,
|
|
771
779
|
websiteUrl: e.target.value
|
|
772
780
|
})),
|
|
773
|
-
disabled: !
|
|
781
|
+
disabled: !m
|
|
774
782
|
}),
|
|
775
|
-
/* @__PURE__ */
|
|
776
|
-
label:
|
|
783
|
+
/* @__PURE__ */ R(y, {
|
|
784
|
+
label: h("devportal.contactEmail", "Contact Email"),
|
|
777
785
|
type: "email",
|
|
778
|
-
value:
|
|
779
|
-
onChange: (e) =>
|
|
786
|
+
value: g.contactEmail,
|
|
787
|
+
onChange: (e) => _((t) => ({
|
|
780
788
|
...t,
|
|
781
789
|
contactEmail: e.target.value
|
|
782
790
|
})),
|
|
783
|
-
disabled: !
|
|
791
|
+
disabled: !m
|
|
784
792
|
}),
|
|
785
|
-
/* @__PURE__ */
|
|
786
|
-
label:
|
|
793
|
+
/* @__PURE__ */ R(y, {
|
|
794
|
+
label: h("devportal.supportEmail", "Support Email"),
|
|
787
795
|
type: "email",
|
|
788
|
-
value:
|
|
789
|
-
onChange: (e) =>
|
|
796
|
+
value: g.supportEmail,
|
|
797
|
+
onChange: (e) => _((t) => ({
|
|
790
798
|
...t,
|
|
791
799
|
supportEmail: e.target.value
|
|
792
800
|
})),
|
|
793
|
-
disabled: !
|
|
801
|
+
disabled: !m
|
|
794
802
|
}),
|
|
795
|
-
/* @__PURE__ */
|
|
796
|
-
label:
|
|
803
|
+
/* @__PURE__ */ R(y, {
|
|
804
|
+
label: h("devportal.logoUrl", "Logo URL"),
|
|
797
805
|
type: "url",
|
|
798
|
-
value:
|
|
799
|
-
onChange: (e) =>
|
|
806
|
+
value: g.logoUrl,
|
|
807
|
+
onChange: (e) => _((t) => ({
|
|
800
808
|
...t,
|
|
801
809
|
logoUrl: e.target.value
|
|
802
810
|
})),
|
|
803
|
-
disabled: !
|
|
811
|
+
disabled: !m
|
|
804
812
|
})
|
|
805
813
|
]
|
|
806
814
|
}),
|
|
807
|
-
/* @__PURE__ */
|
|
808
|
-
label:
|
|
815
|
+
/* @__PURE__ */ R(y, {
|
|
816
|
+
label: h("devportal.bannerUrl", "Banner URL"),
|
|
809
817
|
type: "url",
|
|
810
|
-
value:
|
|
811
|
-
onChange: (e) =>
|
|
818
|
+
value: g.bannerUrl,
|
|
819
|
+
onChange: (e) => _((t) => ({
|
|
812
820
|
...t,
|
|
813
821
|
bannerUrl: e.target.value
|
|
814
822
|
})),
|
|
815
|
-
disabled: !
|
|
823
|
+
disabled: !m
|
|
816
824
|
}),
|
|
817
|
-
/* @__PURE__ */
|
|
825
|
+
/* @__PURE__ */ R(v, { items: [
|
|
818
826
|
{
|
|
819
|
-
label:
|
|
820
|
-
value: /* @__PURE__ */
|
|
827
|
+
label: h("devportal.organizationId", "Organization ID"),
|
|
828
|
+
value: /* @__PURE__ */ R("code", {
|
|
821
829
|
className: "text-xs",
|
|
822
830
|
children: e.id
|
|
823
831
|
})
|
|
824
832
|
},
|
|
825
833
|
{
|
|
826
|
-
label:
|
|
834
|
+
label: h("devportal.tier", "Tier"),
|
|
827
835
|
value: e.tier
|
|
828
836
|
},
|
|
829
837
|
{
|
|
830
|
-
label:
|
|
831
|
-
value: e.partnerTier ||
|
|
838
|
+
label: h("devportal.partnerTier", "Partner Tier"),
|
|
839
|
+
value: e.partnerTier || h("devportal.none", "None")
|
|
832
840
|
},
|
|
833
841
|
{
|
|
834
|
-
label:
|
|
842
|
+
label: h("devportal.created", "Created"),
|
|
835
843
|
value: new Date(e.createdAt).toLocaleDateString()
|
|
836
844
|
},
|
|
837
845
|
{
|
|
838
|
-
label:
|
|
846
|
+
label: h("devportal.platformFeeRate", "Platform Fee Rate"),
|
|
839
847
|
value: `${(e.platformFeeRate * 100).toFixed(0)}%`
|
|
840
848
|
}
|
|
841
849
|
] }),
|
|
842
|
-
/* @__PURE__ */
|
|
850
|
+
/* @__PURE__ */ R("div", {
|
|
843
851
|
className: "flex justify-end",
|
|
844
|
-
children: /* @__PURE__ */
|
|
852
|
+
children: /* @__PURE__ */ z("button", {
|
|
845
853
|
type: "button",
|
|
846
|
-
disabled: !
|
|
854
|
+
disabled: !m || je,
|
|
847
855
|
onClick: () => void Ie(),
|
|
848
856
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90 disabled:opacity-50",
|
|
849
|
-
children: [je ? /* @__PURE__ */
|
|
857
|
+
children: [je ? /* @__PURE__ */ R(M, {
|
|
850
858
|
size: 14,
|
|
851
859
|
className: "animate-spin"
|
|
852
|
-
}) : /* @__PURE__ */
|
|
860
|
+
}) : /* @__PURE__ */ R(le, { size: 14 }), h("devportal.saveChanges", "Save Changes")]
|
|
853
861
|
})
|
|
854
862
|
})
|
|
855
863
|
]
|
|
856
864
|
})
|
|
857
865
|
}),
|
|
858
|
-
/* @__PURE__ */
|
|
859
|
-
title:
|
|
860
|
-
children: /* @__PURE__ */
|
|
866
|
+
/* @__PURE__ */ R(f, {
|
|
867
|
+
title: h("devportal.legalInformation", "Legal Information"),
|
|
868
|
+
children: /* @__PURE__ */ z("div", {
|
|
861
869
|
className: "space-y-4",
|
|
862
870
|
children: [
|
|
863
|
-
/* @__PURE__ */
|
|
871
|
+
/* @__PURE__ */ z("div", {
|
|
864
872
|
className: "grid gap-4 sm:grid-cols-2",
|
|
865
873
|
children: [
|
|
866
|
-
/* @__PURE__ */
|
|
867
|
-
label:
|
|
868
|
-
value:
|
|
869
|
-
onChange: (e) =>
|
|
874
|
+
/* @__PURE__ */ R(y, {
|
|
875
|
+
label: h("devportal.legalEntityName", "Legal Entity Name"),
|
|
876
|
+
value: b.legalEntityName,
|
|
877
|
+
onChange: (e) => ie((t) => ({
|
|
870
878
|
...t,
|
|
871
879
|
legalEntityName: e.target.value
|
|
872
880
|
})),
|
|
873
|
-
disabled: !
|
|
881
|
+
disabled: !m
|
|
874
882
|
}),
|
|
875
|
-
/* @__PURE__ */
|
|
876
|
-
label:
|
|
877
|
-
value:
|
|
878
|
-
onChange: (e) =>
|
|
883
|
+
/* @__PURE__ */ R(y, {
|
|
884
|
+
label: h("devportal.entityType", "Entity Type"),
|
|
885
|
+
value: b.legalEntityType,
|
|
886
|
+
onChange: (e) => ie((t) => ({
|
|
879
887
|
...t,
|
|
880
888
|
legalEntityType: e.target.value
|
|
881
889
|
})),
|
|
882
|
-
disabled: !
|
|
890
|
+
disabled: !m
|
|
883
891
|
}),
|
|
884
|
-
/* @__PURE__ */
|
|
885
|
-
label:
|
|
886
|
-
value:
|
|
887
|
-
onChange: (e) =>
|
|
892
|
+
/* @__PURE__ */ R(y, {
|
|
893
|
+
label: h("devportal.taxId", "Tax ID"),
|
|
894
|
+
value: w.taxId,
|
|
895
|
+
onChange: (e) => ae((t) => ({
|
|
888
896
|
...t,
|
|
889
897
|
taxId: e.target.value
|
|
890
898
|
})),
|
|
891
|
-
disabled: !
|
|
899
|
+
disabled: !m
|
|
892
900
|
}),
|
|
893
|
-
/* @__PURE__ */
|
|
894
|
-
label:
|
|
895
|
-
value:
|
|
896
|
-
onChange: (e) =>
|
|
901
|
+
/* @__PURE__ */ R(y, {
|
|
902
|
+
label: h("devportal.taxCountry", "Tax Country"),
|
|
903
|
+
value: w.taxCountry,
|
|
904
|
+
onChange: (e) => ae((t) => ({
|
|
897
905
|
...t,
|
|
898
906
|
taxCountry: e.target.value.toUpperCase()
|
|
899
907
|
})),
|
|
900
|
-
disabled: !
|
|
908
|
+
disabled: !m
|
|
901
909
|
})
|
|
902
910
|
]
|
|
903
911
|
}),
|
|
904
|
-
/* @__PURE__ */
|
|
905
|
-
label:
|
|
906
|
-
value: e.taxFormType ||
|
|
912
|
+
/* @__PURE__ */ R(v, { items: [{
|
|
913
|
+
label: h("devportal.taxForm", "Tax Form"),
|
|
914
|
+
value: e.taxFormType || h("devportal.notSubmitted", "Not submitted")
|
|
907
915
|
}, {
|
|
908
|
-
label:
|
|
909
|
-
value: e.taxFormType ? e.taxFormVerified ? /* @__PURE__ */
|
|
916
|
+
label: h("devportal.taxFormStatus", "Tax Form Status"),
|
|
917
|
+
value: e.taxFormType ? e.taxFormVerified ? /* @__PURE__ */ z("span", {
|
|
910
918
|
className: "text-status-success-text flex items-center gap-1",
|
|
911
919
|
children: [
|
|
912
|
-
/* @__PURE__ */
|
|
920
|
+
/* @__PURE__ */ R(O, { size: 14 }),
|
|
913
921
|
" ",
|
|
914
|
-
|
|
922
|
+
h("devportal.verified", "Verified")
|
|
915
923
|
]
|
|
916
|
-
}) :
|
|
924
|
+
}) : h("devportal.pendingVerification", "Pending verification") : h("devportal.notSubmitted", "Not submitted")
|
|
917
925
|
}] }),
|
|
918
|
-
/* @__PURE__ */
|
|
926
|
+
/* @__PURE__ */ z("div", {
|
|
919
927
|
className: "flex justify-end gap-2",
|
|
920
|
-
children: [/* @__PURE__ */
|
|
928
|
+
children: [/* @__PURE__ */ z("button", {
|
|
921
929
|
type: "button",
|
|
922
|
-
disabled: !
|
|
930
|
+
disabled: !m || Ne,
|
|
923
931
|
onClick: () => void Le(),
|
|
924
932
|
className: "inline-flex items-center gap-2 rounded-md border border-border-seam px-4 py-2 text-sm font-medium hover:bg-bg-sunken disabled:opacity-50",
|
|
925
|
-
children: [Ne ? /* @__PURE__ */
|
|
933
|
+
children: [Ne ? /* @__PURE__ */ R(M, {
|
|
926
934
|
size: 14,
|
|
927
935
|
className: "animate-spin"
|
|
928
|
-
}) : null,
|
|
929
|
-
}), /* @__PURE__ */
|
|
936
|
+
}) : null, h("devportal.saveLegalInfo", "Save Legal Info")]
|
|
937
|
+
}), /* @__PURE__ */ z("button", {
|
|
930
938
|
type: "button",
|
|
931
|
-
disabled: !
|
|
939
|
+
disabled: !m || Fe,
|
|
932
940
|
onClick: () => void Re(),
|
|
933
941
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90 disabled:opacity-50",
|
|
934
|
-
children: [Fe ? /* @__PURE__ */
|
|
942
|
+
children: [Fe ? /* @__PURE__ */ R(M, {
|
|
935
943
|
size: 14,
|
|
936
944
|
className: "animate-spin"
|
|
937
|
-
}) : null,
|
|
945
|
+
}) : null, h("devportal.saveTaxInfo", "Save Tax Info")]
|
|
938
946
|
})]
|
|
939
947
|
})
|
|
940
948
|
]
|
|
941
949
|
})
|
|
942
950
|
}),
|
|
943
|
-
e.kind === "PHYSICAL" && /* @__PURE__ */
|
|
951
|
+
e.kind === "PHYSICAL" && /* @__PURE__ */ R(f, {
|
|
944
952
|
id: "fulfillment-section",
|
|
945
|
-
title:
|
|
946
|
-
className: t("scroll-mt-6 rounded-lg transition-shadow duration-500",
|
|
947
|
-
children: /* @__PURE__ */
|
|
953
|
+
title: h("devportal.fulfillment", "Fulfillment"),
|
|
954
|
+
className: t("scroll-mt-6 rounded-lg transition-shadow duration-500", s && "ring-2 ring-action-primary-bg ring-offset-4"),
|
|
955
|
+
children: /* @__PURE__ */ z("div", {
|
|
948
956
|
className: "space-y-3",
|
|
949
957
|
children: [
|
|
950
|
-
|
|
958
|
+
V && /* @__PURE__ */ R("div", {
|
|
951
959
|
className: "rounded-md border border-status-error-bg bg-status-error-bg-subtle px-4 py-3 text-sm text-status-error-text",
|
|
952
|
-
children:
|
|
960
|
+
children: V
|
|
953
961
|
}),
|
|
954
|
-
|
|
962
|
+
F && /* @__PURE__ */ R("div", {
|
|
955
963
|
className: "rounded-md border border-status-success-bg bg-status-success-bg-subtle px-4 py-3 text-sm text-status-success-text",
|
|
956
|
-
children:
|
|
964
|
+
children: F
|
|
957
965
|
}),
|
|
958
|
-
!r && n.length === 0 && /* @__PURE__ */
|
|
966
|
+
!r && n.length === 0 && /* @__PURE__ */ z("div", {
|
|
959
967
|
className: "rounded-md border border-border-seam bg-bg-sunken p-4",
|
|
960
|
-
children: [/* @__PURE__ */
|
|
968
|
+
children: [/* @__PURE__ */ R("p", {
|
|
961
969
|
className: "text-sm font-medium",
|
|
962
|
-
children:
|
|
963
|
-
}), /* @__PURE__ */
|
|
970
|
+
children: h("devportal.noPickupAddress", "No pickup address set up yet")
|
|
971
|
+
}), /* @__PURE__ */ R("p", {
|
|
964
972
|
className: "mt-1 text-sm text-text-secondary",
|
|
965
|
-
children:
|
|
973
|
+
children: h("devportal.noPickupAddressHint", "Buyers need to know where your physical orders actually ship from — a bare pincode isn't enough, two sellers can share one. Add your real pickup address and we'll register it with our shipping carrier for you, free of charge.")
|
|
966
974
|
})]
|
|
967
975
|
}),
|
|
968
|
-
n.length > 0 && /* @__PURE__ */
|
|
976
|
+
n.length > 0 && /* @__PURE__ */ R("div", {
|
|
969
977
|
className: "grid grid-cols-1 gap-3 sm:grid-cols-2",
|
|
970
978
|
children: n.map((e) => {
|
|
971
|
-
let n =
|
|
972
|
-
return /* @__PURE__ */
|
|
979
|
+
let n = D.some((t) => t.carrier === e.carrier && t.postalCode === e.postalCode), r = j === e.id;
|
|
980
|
+
return /* @__PURE__ */ z("div", {
|
|
973
981
|
className: t("rounded-md border p-4", e.isDefault ? "border-status-success-border bg-status-success-bg-subtle" : "border-border-seam bg-bg-sunken"),
|
|
974
982
|
children: [
|
|
975
|
-
/* @__PURE__ */
|
|
983
|
+
/* @__PURE__ */ z("div", {
|
|
976
984
|
className: "flex items-start justify-between gap-2",
|
|
977
|
-
children: [/* @__PURE__ */
|
|
985
|
+
children: [/* @__PURE__ */ R("p", {
|
|
978
986
|
className: "text-sm font-medium",
|
|
979
987
|
children: e.carrierLocationLabel
|
|
980
|
-
}), e.isDefault && /* @__PURE__ */
|
|
988
|
+
}), e.isDefault && /* @__PURE__ */ R("span", {
|
|
981
989
|
className: "rounded-full bg-status-success-bg px-2 py-0.5 text-xs font-medium text-white",
|
|
982
|
-
children:
|
|
990
|
+
children: h("devportal.active", "Active")
|
|
983
991
|
})]
|
|
984
992
|
}),
|
|
985
|
-
/* @__PURE__ */
|
|
993
|
+
/* @__PURE__ */ z("p", {
|
|
986
994
|
className: "mt-1 text-sm text-text-secondary",
|
|
987
995
|
children: [
|
|
988
996
|
e.address,
|
|
@@ -997,63 +1005,63 @@ var J = {
|
|
|
997
1005
|
e.country
|
|
998
1006
|
]
|
|
999
1007
|
}),
|
|
1000
|
-
/* @__PURE__ */
|
|
1008
|
+
/* @__PURE__ */ R("p", {
|
|
1001
1009
|
className: "mt-1 text-xs text-text-secondary",
|
|
1002
|
-
children:
|
|
1010
|
+
children: te(e.carrier)
|
|
1003
1011
|
}),
|
|
1004
|
-
!n && /* @__PURE__ */
|
|
1012
|
+
!n && /* @__PURE__ */ R("p", {
|
|
1005
1013
|
className: "mt-2 text-xs text-status-error-text",
|
|
1006
|
-
children:
|
|
1014
|
+
children: h("devportal.pickupAddressNotRegisteredHint", "Not currently registered with the carrier — physical orders can't auto-ship from this address right now.")
|
|
1007
1015
|
}),
|
|
1008
|
-
|
|
1016
|
+
m && /* @__PURE__ */ z("div", {
|
|
1009
1017
|
className: "mt-3 flex items-center gap-4",
|
|
1010
|
-
children: [!e.isDefault && /* @__PURE__ */
|
|
1018
|
+
children: [!e.isDefault && /* @__PURE__ */ R("button", {
|
|
1011
1019
|
type: "button",
|
|
1012
1020
|
disabled: r,
|
|
1013
1021
|
onClick: () => void ze(e.id),
|
|
1014
1022
|
className: "text-sm font-medium text-action-primary-text hover:underline disabled:opacity-50",
|
|
1015
|
-
children:
|
|
1016
|
-
}), /* @__PURE__ */
|
|
1023
|
+
children: h("devportal.setPickupAddressActiveCta", "Set as active")
|
|
1024
|
+
}), /* @__PURE__ */ z("button", {
|
|
1017
1025
|
type: "button",
|
|
1018
1026
|
disabled: r,
|
|
1019
|
-
onClick: () =>
|
|
1027
|
+
onClick: () => A(e.id),
|
|
1020
1028
|
className: "flex items-center gap-1.5 text-sm text-status-error-text hover:underline disabled:opacity-50",
|
|
1021
|
-
children: [/* @__PURE__ */
|
|
1029
|
+
children: [/* @__PURE__ */ R(de, { className: "h-3.5 w-3.5" }), h("devportal.removePickupAddressCta", "Remove")]
|
|
1022
1030
|
})]
|
|
1023
1031
|
})
|
|
1024
1032
|
]
|
|
1025
1033
|
}, e.id);
|
|
1026
1034
|
})
|
|
1027
1035
|
}),
|
|
1028
|
-
|
|
1036
|
+
m && /* @__PURE__ */ R("div", {
|
|
1029
1037
|
className: "flex justify-end",
|
|
1030
|
-
children: /* @__PURE__ */
|
|
1038
|
+
children: /* @__PURE__ */ z("button", {
|
|
1031
1039
|
type: "button",
|
|
1032
|
-
onClick: () =>
|
|
1040
|
+
onClick: () => ce(!0),
|
|
1033
1041
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90",
|
|
1034
|
-
children: [/* @__PURE__ */
|
|
1042
|
+
children: [/* @__PURE__ */ R(N, { size: 14 }), h("devportal.addPickupAddressCta", "Add pickup address")]
|
|
1035
1043
|
})
|
|
1036
1044
|
}),
|
|
1037
|
-
|
|
1038
|
-
open:
|
|
1039
|
-
onOpenChange:
|
|
1045
|
+
se && /* @__PURE__ */ R(S, {
|
|
1046
|
+
open: se,
|
|
1047
|
+
onOpenChange: ce,
|
|
1040
1048
|
organizationId: e.id,
|
|
1041
1049
|
carrier: "shiprocket",
|
|
1042
1050
|
onRegistered: () => {
|
|
1043
|
-
i(),
|
|
1051
|
+
i(), oe(), I(h("devportal.pickupAddressAdded", "Pickup address added"));
|
|
1044
1052
|
}
|
|
1045
1053
|
}),
|
|
1046
|
-
/* @__PURE__ */
|
|
1054
|
+
/* @__PURE__ */ R(x, {
|
|
1047
1055
|
open: k !== null,
|
|
1048
1056
|
onOpenChange: (e) => {
|
|
1049
|
-
e ||
|
|
1057
|
+
e || A(null);
|
|
1050
1058
|
},
|
|
1051
1059
|
variant: "danger",
|
|
1052
|
-
loading:
|
|
1053
|
-
title:
|
|
1054
|
-
description:
|
|
1055
|
-
confirmLabel:
|
|
1056
|
-
cancelLabel:
|
|
1060
|
+
loading: j === k,
|
|
1061
|
+
title: h("devportal.removePickupAddressConfirmTitle", "Remove this pickup address?"),
|
|
1062
|
+
description: h("devportal.removePickupAddressConfirmDesc", "We'll stop using it to quote and book shipments for this organization. Carriers like Shiprocket don't offer a way to delete an address from their own account once added, so it may still show up there, but it won't be used for your orders anymore."),
|
|
1063
|
+
confirmLabel: h("devportal.remove", "Remove"),
|
|
1064
|
+
cancelLabel: h("devportal.cancel", "Cancel"),
|
|
1057
1065
|
onConfirm: async () => {
|
|
1058
1066
|
k && await Be(k);
|
|
1059
1067
|
}
|
|
@@ -1061,166 +1069,166 @@ var J = {
|
|
|
1061
1069
|
]
|
|
1062
1070
|
})
|
|
1063
1071
|
}),
|
|
1064
|
-
/* @__PURE__ */
|
|
1065
|
-
title:
|
|
1066
|
-
children: [/* @__PURE__ */
|
|
1067
|
-
label:
|
|
1068
|
-
value:
|
|
1072
|
+
/* @__PURE__ */ z(f, {
|
|
1073
|
+
title: h("devportal.verificationStatus", "Verification Status"),
|
|
1074
|
+
children: [/* @__PURE__ */ R(v, { items: [{
|
|
1075
|
+
label: h("devportal.verifiedLabel", "Verified"),
|
|
1076
|
+
value: Z.verificationStatus === "VERIFIED" ? /* @__PURE__ */ z("span", {
|
|
1069
1077
|
className: "text-status-success-text flex items-center gap-1",
|
|
1070
1078
|
children: [
|
|
1071
|
-
/* @__PURE__ */
|
|
1079
|
+
/* @__PURE__ */ R(O, { size: 14 }),
|
|
1072
1080
|
" ",
|
|
1073
|
-
|
|
1081
|
+
h("devportal.verifiedVia", "Verified via"),
|
|
1074
1082
|
" ",
|
|
1075
|
-
|
|
1083
|
+
Z.verificationMethod
|
|
1076
1084
|
]
|
|
1077
|
-
}) :
|
|
1085
|
+
}) : Z.verificationStatus === "PENDING" ? h("devportal.pendingVerification", "Pending verification") : Z.verificationStatus === "REJECTED" ? h("devportal.verificationRejected", "Rejected") : h("devportal.notVerified", "Not verified")
|
|
1078
1086
|
}, {
|
|
1079
|
-
label:
|
|
1080
|
-
value: e.isCertified ? /* @__PURE__ */
|
|
1087
|
+
label: h("devportal.certifiedLabel", "Certified"),
|
|
1088
|
+
value: e.isCertified ? /* @__PURE__ */ z("span", {
|
|
1081
1089
|
className: "text-accent-blue flex items-center gap-1",
|
|
1082
1090
|
children: [
|
|
1083
|
-
/* @__PURE__ */
|
|
1091
|
+
/* @__PURE__ */ R(ue, { size: 14 }),
|
|
1084
1092
|
" ",
|
|
1085
|
-
|
|
1093
|
+
h("devportal.certifiedUntil", "Certified until"),
|
|
1086
1094
|
" ",
|
|
1087
1095
|
e.certificationExpiry ? new Date(e.certificationExpiry).toLocaleDateString() : "N/A"
|
|
1088
1096
|
]
|
|
1089
|
-
}) :
|
|
1090
|
-
}] }),
|
|
1097
|
+
}) : h("devportal.notCertified", "Not certified")
|
|
1098
|
+
}] }), Z.verificationStatus !== "VERIFIED" && /* @__PURE__ */ R("div", {
|
|
1091
1099
|
className: "mt-4 rounded-md border border-border-subtle p-4 space-y-3",
|
|
1092
|
-
children:
|
|
1100
|
+
children: _e ? /* @__PURE__ */ z("p", {
|
|
1093
1101
|
className: "text-sm text-status-success-text flex items-center gap-2",
|
|
1094
|
-
children: [/* @__PURE__ */
|
|
1095
|
-
}) : /* @__PURE__ */
|
|
1096
|
-
/* @__PURE__ */
|
|
1102
|
+
children: [/* @__PURE__ */ R(O, { size: 14 }), h("devportal.verificationRequested", "Verification request submitted. Our team will review and contact you.")]
|
|
1103
|
+
}) : /* @__PURE__ */ z(L, { children: [
|
|
1104
|
+
/* @__PURE__ */ R("p", {
|
|
1097
1105
|
className: "text-sm text-text-secondary",
|
|
1098
|
-
children:
|
|
1106
|
+
children: h("devportal.requestVerificationHint", "Get your organization verified to build trust with users. Choose a verification method:")
|
|
1099
1107
|
}),
|
|
1100
|
-
|
|
1108
|
+
Z.verificationStatus === "PENDING" && /* @__PURE__ */ z("div", {
|
|
1101
1109
|
className: "rounded-md border border-border-subtle bg-bg-sunken/40 p-3 text-sm text-text-secondary",
|
|
1102
1110
|
children: [
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1111
|
+
h("devportal.pendingVerification", "Pending verification"),
|
|
1112
|
+
Z.verificationMethod ? ` · ${Z.verificationMethod}` : "",
|
|
1113
|
+
Z.verificationRequestNotes ? ` · ${Z.verificationRequestNotes}` : ""
|
|
1106
1114
|
]
|
|
1107
1115
|
}),
|
|
1108
|
-
|
|
1116
|
+
Z.verificationStatus === "REJECTED" && Z.verificationRejectedReason && /* @__PURE__ */ R("div", {
|
|
1109
1117
|
className: "rounded-md border border-status-error-border bg-status-error-bg-subtle p-3 text-sm text-status-error-text",
|
|
1110
|
-
children:
|
|
1118
|
+
children: Z.verificationRejectedReason
|
|
1111
1119
|
}),
|
|
1112
|
-
|
|
1120
|
+
Q.length > 0 && /* @__PURE__ */ z("div", {
|
|
1113
1121
|
className: "rounded-md border border-border-subtle bg-bg-sunken/40 p-3 text-sm text-text-secondary",
|
|
1114
|
-
children: [/* @__PURE__ */
|
|
1122
|
+
children: [/* @__PURE__ */ R("div", {
|
|
1115
1123
|
className: "font-medium text-text-primary",
|
|
1116
|
-
children:
|
|
1117
|
-
}), /* @__PURE__ */
|
|
1124
|
+
children: h("devportal.completeBeforeVerification", "Complete these details before submitting for review")
|
|
1125
|
+
}), /* @__PURE__ */ R("ul", {
|
|
1118
1126
|
className: "mt-2 list-disc pl-5 space-y-1",
|
|
1119
|
-
children:
|
|
1127
|
+
children: Q.map((e) => /* @__PURE__ */ R("li", { children: e }, e))
|
|
1120
1128
|
})]
|
|
1121
1129
|
}),
|
|
1122
|
-
|
|
1123
|
-
/* @__PURE__ */
|
|
1130
|
+
Z.verificationStatus !== "PENDING" && /* @__PURE__ */ z(L, { children: [
|
|
1131
|
+
/* @__PURE__ */ R("div", {
|
|
1124
1132
|
className: "flex gap-2 flex-wrap",
|
|
1125
1133
|
children: [
|
|
1126
1134
|
"domain",
|
|
1127
1135
|
"document",
|
|
1128
1136
|
"manual"
|
|
1129
|
-
].map((e) => /* @__PURE__ */
|
|
1137
|
+
].map((e) => /* @__PURE__ */ R("button", {
|
|
1130
1138
|
type: "button",
|
|
1131
|
-
onClick: () =>
|
|
1132
|
-
className: `rounded-md border px-3 py-1 text-xs font-medium transition-colors ${
|
|
1133
|
-
children: e === "domain" ?
|
|
1139
|
+
onClick: () => ge(e),
|
|
1140
|
+
className: `rounded-md border px-3 py-1 text-xs font-medium transition-colors ${X === e ? "bg-action-primary-bg text-action-primary-text border-primary" : "border-border-subtle hover:bg-bg-sunken"}`,
|
|
1141
|
+
children: e === "domain" ? h("devportal.domainVerification", "Domain") : e === "document" ? h("devportal.documentVerification", "Document") : h("devportal.manualVerification", "Manual review")
|
|
1134
1142
|
}, e))
|
|
1135
1143
|
}),
|
|
1136
|
-
|
|
1137
|
-
label:
|
|
1138
|
-
value:
|
|
1139
|
-
onChange: (e) =>
|
|
1144
|
+
X === "domain" ? /* @__PURE__ */ R(y, {
|
|
1145
|
+
label: h("devportal.domainVerification", "Domain"),
|
|
1146
|
+
value: Ce,
|
|
1147
|
+
onChange: (e) => we(e.target.value),
|
|
1140
1148
|
placeholder: "example.com"
|
|
1141
|
-
}) :
|
|
1142
|
-
label:
|
|
1143
|
-
value:
|
|
1144
|
-
onChange: (e) =>
|
|
1149
|
+
}) : X === "document" ? /* @__PURE__ */ R(y, {
|
|
1150
|
+
label: h("devportal.evidenceUrl", "Evidence URL"),
|
|
1151
|
+
value: xe,
|
|
1152
|
+
onChange: (e) => Se(e.target.value),
|
|
1145
1153
|
placeholder: "https://..."
|
|
1146
1154
|
}) : null,
|
|
1147
|
-
/* @__PURE__ */
|
|
1148
|
-
label:
|
|
1149
|
-
value:
|
|
1150
|
-
onChange: (e) =>
|
|
1155
|
+
/* @__PURE__ */ R(ee, {
|
|
1156
|
+
label: h("devportal.notes", "Notes"),
|
|
1157
|
+
value: ye,
|
|
1158
|
+
onChange: (e) => be(e.target.value),
|
|
1151
1159
|
placeholder: "What should reviewers validate?"
|
|
1152
1160
|
}),
|
|
1153
|
-
/* @__PURE__ */
|
|
1161
|
+
/* @__PURE__ */ z("button", {
|
|
1154
1162
|
type: "button",
|
|
1155
1163
|
disabled: !ke,
|
|
1156
1164
|
onClick: () => void (async () => {
|
|
1157
|
-
let t =
|
|
1158
|
-
if (
|
|
1159
|
-
|
|
1165
|
+
let t = Ce.trim(), n = xe.trim(), r = ye.trim();
|
|
1166
|
+
if (X === "domain" && !K(t)) {
|
|
1167
|
+
Y(h("devportal.verification.errors.domainRequired", "Enter a valid domain like burdenoff.com"));
|
|
1160
1168
|
return;
|
|
1161
1169
|
}
|
|
1162
|
-
if (
|
|
1163
|
-
|
|
1170
|
+
if (X === "document" && !q(n)) {
|
|
1171
|
+
Y(h("devportal.verification.errors.evidenceUrlRequired", "Enter a valid evidence URL starting with http:// or https://"));
|
|
1164
1172
|
return;
|
|
1165
1173
|
}
|
|
1166
|
-
if (
|
|
1167
|
-
|
|
1174
|
+
if (X === "manual" && !r) {
|
|
1175
|
+
Y(h("devportal.verification.errors.notesRequired", "Add notes so the reviewer knows what to verify"));
|
|
1168
1176
|
return;
|
|
1169
1177
|
}
|
|
1170
|
-
|
|
1178
|
+
Y(null), G(null), Oe(!0);
|
|
1171
1179
|
try {
|
|
1172
1180
|
await Ae({ variables: {
|
|
1173
1181
|
id: e.id,
|
|
1174
1182
|
input: {
|
|
1175
|
-
name:
|
|
1176
|
-
description:
|
|
1177
|
-
websiteUrl:
|
|
1178
|
-
contactEmail:
|
|
1179
|
-
supportEmail:
|
|
1180
|
-
logoUrl:
|
|
1181
|
-
bannerUrl:
|
|
1183
|
+
name: g.name.trim() || void 0,
|
|
1184
|
+
description: g.description.trim() || null,
|
|
1185
|
+
websiteUrl: g.websiteUrl.trim() || null,
|
|
1186
|
+
contactEmail: g.contactEmail.trim() || null,
|
|
1187
|
+
supportEmail: g.supportEmail.trim() || null,
|
|
1188
|
+
logoUrl: g.logoUrl.trim() || null,
|
|
1189
|
+
bannerUrl: g.bannerUrl.trim() || null
|
|
1182
1190
|
}
|
|
1183
1191
|
} }), await Me({ variables: {
|
|
1184
1192
|
id: e.id,
|
|
1185
1193
|
input: {
|
|
1186
|
-
legalEntityName:
|
|
1187
|
-
legalEntityType:
|
|
1194
|
+
legalEntityName: b.legalEntityName.trim() || null,
|
|
1195
|
+
legalEntityType: b.legalEntityType.trim() || null
|
|
1188
1196
|
}
|
|
1189
1197
|
} }), await Pe({ variables: {
|
|
1190
1198
|
id: e.id,
|
|
1191
1199
|
input: {
|
|
1192
|
-
taxId:
|
|
1193
|
-
taxCountry:
|
|
1200
|
+
taxId: w.taxId.trim() || null,
|
|
1201
|
+
taxCountry: w.taxCountry.trim() || null
|
|
1194
1202
|
}
|
|
1195
1203
|
} });
|
|
1196
1204
|
let i = await U({
|
|
1197
1205
|
gateway: "global",
|
|
1198
|
-
query:
|
|
1206
|
+
query: W,
|
|
1199
1207
|
variables: {
|
|
1200
1208
|
id: e.id,
|
|
1201
|
-
method:
|
|
1209
|
+
method: X,
|
|
1202
1210
|
notes: r || null,
|
|
1203
|
-
evidenceUrl:
|
|
1204
|
-
domain:
|
|
1211
|
+
evidenceUrl: X === "domain" ? null : n || null,
|
|
1212
|
+
domain: X === "domain" && t || null
|
|
1205
1213
|
}
|
|
1206
1214
|
});
|
|
1207
1215
|
if (i.errors?.length) throw Error(i.errors[0]?.message || "Verification request failed");
|
|
1208
|
-
|
|
1216
|
+
ve(!0), G(h("devportal.verificationRequested", "Verification request submitted. Our team will review and contact you.")), Ee((await U({
|
|
1209
1217
|
gateway: "global",
|
|
1210
|
-
query:
|
|
1218
|
+
query: pe,
|
|
1211
1219
|
variables: { id: e.id }
|
|
1212
1220
|
})).data?.developerOrganization ?? null);
|
|
1213
1221
|
} catch (e) {
|
|
1214
|
-
|
|
1222
|
+
Y(e instanceof Error ? e.message : h("devportal.verificationRequestFailed", "Verification request failed"));
|
|
1215
1223
|
} finally {
|
|
1216
|
-
|
|
1224
|
+
Oe(!1);
|
|
1217
1225
|
}
|
|
1218
1226
|
})(),
|
|
1219
1227
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90 disabled:opacity-50",
|
|
1220
|
-
children: [
|
|
1228
|
+
children: [De ? /* @__PURE__ */ R(M, {
|
|
1221
1229
|
size: 14,
|
|
1222
1230
|
className: "animate-spin"
|
|
1223
|
-
}) : /* @__PURE__ */
|
|
1231
|
+
}) : /* @__PURE__ */ R(ue, { size: 14 }), h("devportal.requestVerification", "Request Verification")]
|
|
1224
1232
|
})
|
|
1225
1233
|
] })
|
|
1226
1234
|
] })
|