@burdenoff/microfe-devportal 2026.915.1 → 2026.915.3
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/hooks/index.d.ts +1 -0
- package/dist/devportal/hooks/index.d.ts.map +1 -1
- package/dist/devportal/hooks/index.js +1 -0
- package/dist/devportal/hooks/useCarrierPickupLocations.d.ts +28 -0
- package/dist/devportal/hooks/useCarrierPickupLocations.d.ts.map +1 -0
- package/dist/devportal/hooks/useCarrierPickupLocations.js +32 -0
- package/dist/devportal/hooks/useCarrierPickupLocations.js.map +1 -0
- package/dist/devportal/pages/CreateOrganizationPage.d.ts.map +1 -1
- package/dist/devportal/pages/CreateOrganizationPage.js +141 -129
- package/dist/devportal/pages/CreateOrganizationPage.js.map +1 -1
- package/dist/devportal/pages/OrganizationDetailPage.d.ts.map +1 -1
- package/dist/devportal/pages/OrganizationDetailPage.js +312 -299
- package/dist/devportal/pages/OrganizationDetailPage.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,19 +8,20 @@ import { ORG_ROLE_LABELS as f } from "../utils/constants.js";
|
|
|
8
8
|
import { AppListItem as p } from "../components/AppCard.js";
|
|
9
9
|
import { StatCard as m, StatCardGrid as h } from "../components/StatCard.js";
|
|
10
10
|
import { DataTable as g, DetailList as _ } from "../components/DataTable.js";
|
|
11
|
-
import { InputField as v, TextareaField as y } from "../components/FormField.js";
|
|
12
|
-
import { useDevportalPermission as
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
11
|
+
import { InputField as v, SelectField as ee, TextareaField as y } from "../components/FormField.js";
|
|
12
|
+
import { useDevportalPermission as te } from "../hooks/usePermission.js";
|
|
13
|
+
import { capitalizeCarrierName as b, useCarrierPickupLocations as x } from "../hooks/useCarrierPickupLocations.js";
|
|
14
|
+
import { DEVPORTAL_PERMISSIONS as ne } from "../constants/permissions.js";
|
|
15
|
+
import { useEffect as S, useState as C } from "react";
|
|
16
|
+
import { AlertCircle as w, AppWindow as T, ArrowRight as E, BarChart3 as D, Building2 as O, CheckCircle as k, DollarSign as A, ExternalLink as j, Loader2 as M, Plus as N, Settings as P, Shield as F, TrendingUp as I, Users as L } from "lucide-react";
|
|
17
|
+
import { useParams as R } from "react-router";
|
|
18
|
+
import { Fragment as z, jsx as B, jsxs as V } from "react/jsx-runtime";
|
|
19
|
+
import { useI18n as H } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
20
|
+
import { EmphasisPanel as U, NextSteps as W } from "@burdenoff/fe-libs/ui";
|
|
21
|
+
import { graphqlFetch as G } from "@burdenoff/fe-libs/shared/graphql";
|
|
21
22
|
//#region src/devportal/pages/OrganizationDetailPage.tsx
|
|
22
|
-
var
|
|
23
|
-
function
|
|
23
|
+
var K = "\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", q = "\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";
|
|
24
|
+
function re(e) {
|
|
24
25
|
let t = e;
|
|
25
26
|
return {
|
|
26
27
|
id: e.id,
|
|
@@ -77,7 +78,7 @@ function ae(e) {
|
|
|
77
78
|
updatedAt: e.updatedAt
|
|
78
79
|
};
|
|
79
80
|
}
|
|
80
|
-
function
|
|
81
|
+
function ie(e) {
|
|
81
82
|
return {
|
|
82
83
|
id: e.id,
|
|
83
84
|
organizationId: e.organizationId,
|
|
@@ -96,11 +97,11 @@ function U(e) {
|
|
|
96
97
|
updatedAt: e.updatedAt
|
|
97
98
|
};
|
|
98
99
|
}
|
|
99
|
-
function
|
|
100
|
+
function ae(e) {
|
|
100
101
|
let t = e.trim().toLowerCase();
|
|
101
102
|
return /^[a-z0-9.-]+\.[a-z]{2,}$/i.test(t) && !t.includes("@");
|
|
102
103
|
}
|
|
103
|
-
function
|
|
104
|
+
function J(e) {
|
|
104
105
|
try {
|
|
105
106
|
let t = new URL(e.trim());
|
|
106
107
|
return t.protocol === "http:" || t.protocol === "https:";
|
|
@@ -108,272 +109,272 @@ function G(e) {
|
|
|
108
109
|
return !1;
|
|
109
110
|
}
|
|
110
111
|
}
|
|
111
|
-
function
|
|
112
|
+
function oe(e) {
|
|
112
113
|
let t = e.trim();
|
|
113
114
|
return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t);
|
|
114
115
|
}
|
|
115
|
-
var
|
|
116
|
+
var Y = {
|
|
116
117
|
VIEWER: 0,
|
|
117
118
|
DEVELOPER: 1,
|
|
118
119
|
ADMIN: 2,
|
|
119
120
|
OWNER: 3
|
|
120
|
-
},
|
|
121
|
-
let { navigate: n, basePath: s, setActiveOrgId: c, setActivePhysicalOrgId: l, currentUser: d } = e(), f = i(), { orgId: p } =
|
|
121
|
+
}, se = () => {
|
|
122
|
+
let { navigate: n, basePath: s, setActiveOrgId: c, setActivePhysicalOrgId: l, currentUser: d } = e(), f = i(), { orgId: p } = R(), { t: m } = H(), h = (e, t) => {
|
|
122
123
|
let n = m(e);
|
|
123
124
|
return n === e ? t : n;
|
|
124
|
-
}, [g, _] =
|
|
125
|
+
}, [g, _] = C("overview"), v = [
|
|
125
126
|
{
|
|
126
127
|
id: "overview",
|
|
127
128
|
label: h("devportal.overview", "Overview"),
|
|
128
|
-
icon:
|
|
129
|
+
icon: O
|
|
129
130
|
},
|
|
130
131
|
{
|
|
131
132
|
id: "apps",
|
|
132
133
|
label: h("devportal.applications", "Applications"),
|
|
133
|
-
icon:
|
|
134
|
+
icon: T
|
|
134
135
|
},
|
|
135
136
|
{
|
|
136
137
|
id: "members",
|
|
137
138
|
label: h("devportal.members", "Members"),
|
|
138
|
-
icon:
|
|
139
|
+
icon: L
|
|
139
140
|
},
|
|
140
141
|
{
|
|
141
142
|
id: "settings",
|
|
142
143
|
label: h("devportal.settings", "Settings"),
|
|
143
|
-
icon:
|
|
144
|
+
icon: P
|
|
144
145
|
}
|
|
145
|
-
], { data:
|
|
146
|
+
], { data: ee, previousData: y, loading: te, error: b } = o({
|
|
146
147
|
variables: { id: p },
|
|
147
148
|
skip: !p
|
|
148
|
-
}),
|
|
149
|
+
}), x = ee ?? y, { data: ne } = a({
|
|
149
150
|
variables: {
|
|
150
151
|
limit: 50,
|
|
151
152
|
organizationId: p
|
|
152
153
|
},
|
|
153
154
|
skip: !p,
|
|
154
155
|
fetchPolicy: "cache-and-network"
|
|
155
|
-
}),
|
|
156
|
+
}), E = (x?.developerOrganization?.members ?? []).map(ie), D = (d ? E.find((e) => e.userId === d.id) : void 0)?.role, k = D !== void 0 && Y[D] >= Y.DEVELOPER, j = D !== void 0 && Y[D] >= Y.ADMIN, F = j, I = j, z = v.filter((e) => e.id !== "settings" || j), U = (e) => {
|
|
156
157
|
n?.(`${s}${e}`);
|
|
157
158
|
};
|
|
158
|
-
if (
|
|
159
|
+
if (S(() => {
|
|
159
160
|
p && (f ? l(p) : c(p));
|
|
160
161
|
}, [
|
|
161
162
|
p,
|
|
162
163
|
f,
|
|
163
164
|
c,
|
|
164
165
|
l
|
|
165
|
-
]),
|
|
166
|
-
g === "settings" && !
|
|
167
|
-
}, [g,
|
|
168
|
-
let e =
|
|
166
|
+
]), S(() => {
|
|
167
|
+
g === "settings" && !j && _("overview");
|
|
168
|
+
}, [g, j]), S(() => {
|
|
169
|
+
let e = x?.developerOrganization?.name;
|
|
169
170
|
if (!p || !e) return;
|
|
170
171
|
let t = window.__breadcrumbRegistry;
|
|
171
172
|
return t?.register(p, e), () => t?.unregister(p);
|
|
172
|
-
}, [p,
|
|
173
|
+
}, [p, ee?.developerOrganization?.name]), te && !x) return /* @__PURE__ */ B(u, {
|
|
173
174
|
title: h("devportal.loadingDots", "Loading..."),
|
|
174
175
|
backLink: `${s}${r(f)}`,
|
|
175
176
|
backLabel: h("devportal.backToOrganizations", "Back to Organizations"),
|
|
176
|
-
children: /* @__PURE__ */
|
|
177
|
+
children: /* @__PURE__ */ B("div", {
|
|
177
178
|
className: "flex items-center justify-center py-12",
|
|
178
|
-
children: /* @__PURE__ */
|
|
179
|
+
children: /* @__PURE__ */ B(M, { className: "h-8 w-8 animate-spin text-text-secondary" })
|
|
179
180
|
})
|
|
180
181
|
});
|
|
181
|
-
if (
|
|
182
|
+
if (b || !x?.developerOrganization) return /* @__PURE__ */ B(u, {
|
|
182
183
|
title: h("devportal.organizationNotFound", "Organization Not Found"),
|
|
183
184
|
backLink: `${s}${r(f)}`,
|
|
184
185
|
backLabel: h("devportal.backToOrganizations", "Back to Organizations"),
|
|
185
|
-
children: /* @__PURE__ */
|
|
186
|
+
children: /* @__PURE__ */ V("div", {
|
|
186
187
|
className: "flex flex-col items-center justify-center py-12 gap-4",
|
|
187
188
|
children: [
|
|
188
|
-
/* @__PURE__ */
|
|
189
|
-
/* @__PURE__ */
|
|
189
|
+
/* @__PURE__ */ B(w, { className: "h-12 w-12 text-status-error-text" }),
|
|
190
|
+
/* @__PURE__ */ B("h2", {
|
|
190
191
|
className: "text-lg font-semibold",
|
|
191
192
|
children: h("devportal.organizationNotFoundLower", "Organization not found")
|
|
192
193
|
}),
|
|
193
|
-
/* @__PURE__ */
|
|
194
|
+
/* @__PURE__ */ B("p", {
|
|
194
195
|
className: "text-text-secondary",
|
|
195
|
-
children:
|
|
196
|
+
children: b?.message || h("devportal.organizationNotFoundDescription", "The organization you're looking for doesn't exist or you don't have access to it.")
|
|
196
197
|
}),
|
|
197
|
-
/* @__PURE__ */
|
|
198
|
-
onClick: () =>
|
|
198
|
+
/* @__PURE__ */ B("button", {
|
|
199
|
+
onClick: () => U(r(f)),
|
|
199
200
|
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",
|
|
200
201
|
children: h("devportal.backToOrganizations", "Back to Organizations")
|
|
201
202
|
})
|
|
202
203
|
]
|
|
203
204
|
})
|
|
204
205
|
});
|
|
205
|
-
let
|
|
206
|
-
return /* @__PURE__ */
|
|
207
|
-
title:
|
|
208
|
-
description:
|
|
206
|
+
let G = re(x.developerOrganization), K = E, q = ne?.applications?.edges?.map((e) => e.node) ?? [];
|
|
207
|
+
return /* @__PURE__ */ V(u, {
|
|
208
|
+
title: G.name,
|
|
209
|
+
description: G.description,
|
|
209
210
|
purpose: h("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."),
|
|
210
211
|
backLink: `${s}${r(f)}`,
|
|
211
212
|
backLabel: h("devportal.backToOrganizations", "Back to Organizations"),
|
|
212
|
-
actions: /* @__PURE__ */
|
|
213
|
+
actions: /* @__PURE__ */ B("div", {
|
|
213
214
|
className: "flex items-center gap-2",
|
|
214
|
-
children:
|
|
215
|
-
onClick: () => n?.(`/billing/earnings?developerOrgId=${encodeURIComponent(
|
|
215
|
+
children: F ? /* @__PURE__ */ V("button", {
|
|
216
|
+
onClick: () => n?.(`/billing/earnings?developerOrgId=${encodeURIComponent(G.id)}&developerOrgName=${encodeURIComponent(G.name)}`),
|
|
216
217
|
className: "inline-flex items-center gap-2 rounded-md border px-4 py-2 text-sm font-medium hover:bg-bg-sunken transition-colors",
|
|
217
|
-
children: [/* @__PURE__ */
|
|
218
|
+
children: [/* @__PURE__ */ B(A, { size: 16 }), h("devportal.revenue", "Revenue")]
|
|
218
219
|
}) : null
|
|
219
220
|
}),
|
|
220
221
|
children: [
|
|
221
|
-
/* @__PURE__ */
|
|
222
|
+
/* @__PURE__ */ B("div", {
|
|
222
223
|
className: "border-b",
|
|
223
|
-
children: /* @__PURE__ */
|
|
224
|
+
children: /* @__PURE__ */ B("nav", {
|
|
224
225
|
className: "-mb-px flex gap-4 overflow-x-auto",
|
|
225
226
|
role: "tablist",
|
|
226
227
|
"aria-label": h("devportal.organizationSections", "Organization sections"),
|
|
227
|
-
children:
|
|
228
|
+
children: z.map((e) => {
|
|
228
229
|
let n = e.icon;
|
|
229
|
-
return /* @__PURE__ */
|
|
230
|
+
return /* @__PURE__ */ V("button", {
|
|
230
231
|
id: `organization-tab-${e.id}`,
|
|
231
232
|
role: "tab",
|
|
232
233
|
"aria-selected": g === e.id,
|
|
233
234
|
"aria-controls": `organization-panel-${e.id}`,
|
|
234
235
|
onClick: () => _(e.id),
|
|
235
236
|
className: t("flex items-center gap-2 border-b-2 px-1 py-3 text-sm font-medium transition-colors", g === e.id ? "border-primary text-primary" : "border-transparent text-text-secondary hover:text-text-primary hover:border-muted-foreground"),
|
|
236
|
-
children: [/* @__PURE__ */
|
|
237
|
+
children: [/* @__PURE__ */ B(n, { size: 16 }), e.label]
|
|
237
238
|
}, e.id);
|
|
238
239
|
})
|
|
239
240
|
})
|
|
240
241
|
}),
|
|
241
|
-
/* @__PURE__ */
|
|
242
|
+
/* @__PURE__ */ B(W, {
|
|
242
243
|
className: "mt-6",
|
|
243
|
-
storageKey: `devportal-org-${
|
|
244
|
+
storageKey: `devportal-org-${G.id}`,
|
|
244
245
|
steps: [
|
|
245
|
-
...
|
|
246
|
+
...I ? [{
|
|
246
247
|
id: "invite-members",
|
|
247
248
|
label: h("devportal.inviteMembers", "Invite members"),
|
|
248
249
|
description: h("devportal.orgStepInvite", "Add teammates so they can build alongside you"),
|
|
249
|
-
icon: /* @__PURE__ */
|
|
250
|
+
icon: /* @__PURE__ */ B(L, { size: 16 }),
|
|
250
251
|
onClick: () => _("members")
|
|
251
252
|
}] : [],
|
|
252
|
-
...
|
|
253
|
+
...k && !f ? [{
|
|
253
254
|
id: "create-app",
|
|
254
255
|
label: h("devportal.createApp", "Create App"),
|
|
255
256
|
description: h("devportal.orgStepCreateApp", "Build a new application under this organization"),
|
|
256
|
-
icon: /* @__PURE__ */
|
|
257
|
-
onClick: () =>
|
|
257
|
+
icon: /* @__PURE__ */ B(T, { size: 16 }),
|
|
258
|
+
onClick: () => U("/apps/new")
|
|
258
259
|
}] : [],
|
|
259
|
-
...
|
|
260
|
+
...k && f ? [{
|
|
260
261
|
id: "list-item",
|
|
261
262
|
label: h("devportal.listAnItem", "List an Item"),
|
|
262
263
|
description: h("devportal.orgStepListItem", "List a physical product for sale under this organization"),
|
|
263
|
-
icon: /* @__PURE__ */
|
|
264
|
-
onClick: () =>
|
|
264
|
+
icon: /* @__PURE__ */ B(N, { size: 16 }),
|
|
265
|
+
onClick: () => U("/seller/items/new")
|
|
265
266
|
}] : [],
|
|
266
|
-
...
|
|
267
|
+
...j ? [{
|
|
267
268
|
id: "settings",
|
|
268
269
|
label: h("devportal.orgStepVerify", "Complete organization profile"),
|
|
269
270
|
description: h("devportal.orgStepVerifyDesc", "Add a logo and details, then request verification"),
|
|
270
|
-
icon: /* @__PURE__ */
|
|
271
|
+
icon: /* @__PURE__ */ B(P, { size: 16 }),
|
|
271
272
|
onClick: () => _("settings"),
|
|
272
|
-
done: !!
|
|
273
|
+
done: !!G.isVerified
|
|
273
274
|
}] : []
|
|
274
275
|
]
|
|
275
276
|
}),
|
|
276
|
-
/* @__PURE__ */
|
|
277
|
+
/* @__PURE__ */ V("div", {
|
|
277
278
|
className: "mt-6",
|
|
278
279
|
id: `organization-panel-${g}`,
|
|
279
280
|
role: "tabpanel",
|
|
280
281
|
"aria-labelledby": `organization-tab-${g}`,
|
|
281
282
|
tabIndex: 0,
|
|
282
283
|
children: [
|
|
283
|
-
g === "overview" && /* @__PURE__ */
|
|
284
|
-
org:
|
|
285
|
-
apps:
|
|
286
|
-
members:
|
|
287
|
-
canCreateApps:
|
|
288
|
-
canViewRevenue:
|
|
289
|
-
onNavigate:
|
|
284
|
+
g === "overview" && /* @__PURE__ */ B(ce, {
|
|
285
|
+
org: G,
|
|
286
|
+
apps: q,
|
|
287
|
+
members: K,
|
|
288
|
+
canCreateApps: k,
|
|
289
|
+
canViewRevenue: F,
|
|
290
|
+
onNavigate: U,
|
|
290
291
|
onShowApps: () => _("apps")
|
|
291
292
|
}),
|
|
292
|
-
g === "apps" && /* @__PURE__ */
|
|
293
|
-
org:
|
|
294
|
-
apps:
|
|
295
|
-
onNavigate:
|
|
296
|
-
canCreateApps:
|
|
293
|
+
g === "apps" && /* @__PURE__ */ B(X, {
|
|
294
|
+
org: G,
|
|
295
|
+
apps: q,
|
|
296
|
+
onNavigate: U,
|
|
297
|
+
canCreateApps: k
|
|
297
298
|
}),
|
|
298
|
-
g === "members" && /* @__PURE__ */
|
|
299
|
-
members:
|
|
300
|
-
onNavigate:
|
|
301
|
-
orgId:
|
|
302
|
-
canInviteMembers:
|
|
299
|
+
g === "members" && /* @__PURE__ */ B(Z, {
|
|
300
|
+
members: K,
|
|
301
|
+
onNavigate: U,
|
|
302
|
+
orgId: G.id,
|
|
303
|
+
canInviteMembers: I
|
|
303
304
|
}),
|
|
304
|
-
g === "settings" &&
|
|
305
|
+
g === "settings" && j && /* @__PURE__ */ B(Q, { org: G })
|
|
305
306
|
]
|
|
306
307
|
})
|
|
307
308
|
]
|
|
308
309
|
});
|
|
309
|
-
},
|
|
310
|
-
let { t: c } =
|
|
310
|
+
}, ce = ({ org: e, apps: t, members: r, canCreateApps: i, canViewRevenue: a, onNavigate: o, onShowApps: s }) => {
|
|
311
|
+
let { t: c } = H(), l = (e, t) => {
|
|
311
312
|
let n = c(e);
|
|
312
313
|
return n === e ? t : n;
|
|
313
314
|
};
|
|
314
|
-
return /* @__PURE__ */
|
|
315
|
+
return /* @__PURE__ */ V("div", {
|
|
315
316
|
className: "grid gap-6 lg:grid-cols-3",
|
|
316
|
-
children: [/* @__PURE__ */
|
|
317
|
+
children: [/* @__PURE__ */ V("div", {
|
|
317
318
|
className: "lg:col-span-2 space-y-6",
|
|
318
|
-
children: [/* @__PURE__ */
|
|
319
|
+
children: [/* @__PURE__ */ B(U, { children: /* @__PURE__ */ V(h, {
|
|
319
320
|
columns: a ? 4 : 3,
|
|
320
321
|
children: [
|
|
321
|
-
/* @__PURE__ */
|
|
322
|
+
/* @__PURE__ */ B(m, {
|
|
322
323
|
title: l("devportal.publishedApps", "Published Apps"),
|
|
323
324
|
value: `${e.publishedApps}/${e.totalApps}`,
|
|
324
|
-
icon: /* @__PURE__ */
|
|
325
|
+
icon: /* @__PURE__ */ B(T, { size: 20 })
|
|
325
326
|
}),
|
|
326
|
-
/* @__PURE__ */
|
|
327
|
+
/* @__PURE__ */ B(m, {
|
|
327
328
|
title: l("devportal.totalInstalls", "Total Installs"),
|
|
328
329
|
value: e.totalInstalls.toLocaleString(),
|
|
329
|
-
icon: /* @__PURE__ */ I
|
|
330
|
+
icon: /* @__PURE__ */ B(I, { size: 20 })
|
|
330
331
|
}),
|
|
331
|
-
a ? /* @__PURE__ */
|
|
332
|
+
a ? /* @__PURE__ */ B(m, {
|
|
332
333
|
title: l("devportal.totalRevenue", "Total Revenue"),
|
|
333
334
|
value: `$${e.totalRevenue.toLocaleString()}`,
|
|
334
|
-
icon: /* @__PURE__ */
|
|
335
|
+
icon: /* @__PURE__ */ B(A, { size: 20 })
|
|
335
336
|
}) : null,
|
|
336
|
-
/* @__PURE__ */
|
|
337
|
+
/* @__PURE__ */ B(m, {
|
|
337
338
|
title: l("devportal.avgRating", "Avg Rating"),
|
|
338
339
|
value: e.averageRating ? `${e.averageRating.toFixed(1)} ★` : l("devportal.notAvailable", "N/A"),
|
|
339
|
-
icon: /* @__PURE__ */
|
|
340
|
+
icon: /* @__PURE__ */ B(D, { size: 20 })
|
|
340
341
|
})
|
|
341
342
|
]
|
|
342
|
-
}) }), /* @__PURE__ */
|
|
343
|
+
}) }), /* @__PURE__ */ B(d, {
|
|
343
344
|
title: l("devportal.recentApplications", "Recent Applications"),
|
|
344
|
-
actions: /* @__PURE__ */
|
|
345
|
+
actions: /* @__PURE__ */ V("button", {
|
|
345
346
|
onClick: s,
|
|
346
347
|
className: "text-sm text-primary hover:underline flex items-center gap-1",
|
|
347
348
|
children: [
|
|
348
349
|
l("devportal.viewAll", "View all"),
|
|
349
350
|
" ",
|
|
350
|
-
/* @__PURE__ */
|
|
351
|
+
/* @__PURE__ */ B(E, { size: 14 })
|
|
351
352
|
]
|
|
352
353
|
}),
|
|
353
|
-
children: t.length > 0 ? /* @__PURE__ */
|
|
354
|
+
children: t.length > 0 ? /* @__PURE__ */ B("div", {
|
|
354
355
|
className: "space-y-2",
|
|
355
|
-
children: t.slice(0, 3).map((e) => /* @__PURE__ */
|
|
356
|
+
children: t.slice(0, 3).map((e) => /* @__PURE__ */ B(p, {
|
|
356
357
|
app: e,
|
|
357
358
|
onClick: () => o(`/apps/${e.id}`)
|
|
358
359
|
}, e.id))
|
|
359
|
-
}) : /* @__PURE__ */
|
|
360
|
+
}) : /* @__PURE__ */ B(n, {
|
|
360
361
|
illustration: "empty-data",
|
|
361
|
-
icon: /* @__PURE__ */
|
|
362
|
+
icon: /* @__PURE__ */ B(T, { size: 24 }),
|
|
362
363
|
title: l("devportal.noApplications", "No applications"),
|
|
363
364
|
description: e.kind === "PHYSICAL" ? l("devportal.createYourFirstItem", "List your first physical item") : l("devportal.createYourFirstApplication", "Create your first application"),
|
|
364
|
-
action: i ? /* @__PURE__ */
|
|
365
|
+
action: i ? /* @__PURE__ */ V("button", {
|
|
365
366
|
onClick: () => o(e.kind === "PHYSICAL" ? "/seller/items/new" : "/apps/new"),
|
|
366
367
|
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",
|
|
367
|
-
children: [/* @__PURE__ */
|
|
368
|
+
children: [/* @__PURE__ */ B(N, { size: 16 }), e.kind === "PHYSICAL" ? l("devportal.createItem", "Create Item") : l("devportal.createApp", "Create App")]
|
|
368
369
|
}) : void 0
|
|
369
370
|
})
|
|
370
371
|
})]
|
|
371
|
-
}), /* @__PURE__ */
|
|
372
|
+
}), /* @__PURE__ */ V("div", {
|
|
372
373
|
className: "space-y-6",
|
|
373
374
|
children: [
|
|
374
|
-
a ? /* @__PURE__ */
|
|
375
|
+
a ? /* @__PURE__ */ B(d, {
|
|
375
376
|
title: l("devportal.revenueSummary", "Revenue Summary"),
|
|
376
|
-
children: /* @__PURE__ */
|
|
377
|
+
children: /* @__PURE__ */ B(_, { items: [
|
|
377
378
|
{
|
|
378
379
|
label: l("devportal.totalRevenue", "Total Revenue"),
|
|
379
380
|
value: `$${e.totalRevenue.toLocaleString()}`
|
|
@@ -396,31 +397,31 @@ var q = {
|
|
|
396
397
|
}
|
|
397
398
|
] })
|
|
398
399
|
}) : null,
|
|
399
|
-
/* @__PURE__ */
|
|
400
|
+
/* @__PURE__ */ B(d, {
|
|
400
401
|
title: l("devportal.teamMembers", "Team Members"),
|
|
401
|
-
actions: /* @__PURE__ */
|
|
402
|
+
actions: /* @__PURE__ */ B("button", {
|
|
402
403
|
onClick: () => o(`/organizations/${e.id}/members`),
|
|
403
404
|
className: "text-sm text-primary hover:underline",
|
|
404
405
|
children: l("devportal.manage", "Manage")
|
|
405
406
|
}),
|
|
406
|
-
children: /* @__PURE__ */
|
|
407
|
+
children: /* @__PURE__ */ V("div", {
|
|
407
408
|
className: "space-y-2",
|
|
408
|
-
children: [r.slice(0, 3).map((e) => /* @__PURE__ */
|
|
409
|
+
children: [r.slice(0, 3).map((e) => /* @__PURE__ */ B("div", {
|
|
409
410
|
className: "flex items-center justify-between py-2",
|
|
410
|
-
children: /* @__PURE__ */
|
|
411
|
+
children: /* @__PURE__ */ V("div", {
|
|
411
412
|
className: "flex items-center gap-3",
|
|
412
|
-
children: [/* @__PURE__ */
|
|
413
|
+
children: [/* @__PURE__ */ B("div", {
|
|
413
414
|
className: "h-8 w-8 rounded-full bg-action-primary-bg/10 flex items-center justify-center text-sm font-medium text-primary",
|
|
414
415
|
children: e.email?.charAt(0).toUpperCase() || "U"
|
|
415
|
-
}), /* @__PURE__ */
|
|
416
|
+
}), /* @__PURE__ */ V("div", { children: [/* @__PURE__ */ B("p", {
|
|
416
417
|
className: "text-sm font-medium",
|
|
417
418
|
children: e.email
|
|
418
|
-
}), /* @__PURE__ */
|
|
419
|
+
}), /* @__PURE__ */ B("p", {
|
|
419
420
|
className: "text-xs text-text-secondary",
|
|
420
421
|
children: f[e.role]
|
|
421
422
|
})] })]
|
|
422
423
|
})
|
|
423
|
-
}, e.id)), r.length > 3 && /* @__PURE__ */
|
|
424
|
+
}, e.id)), r.length > 3 && /* @__PURE__ */ V("p", {
|
|
424
425
|
className: "text-xs text-text-secondary",
|
|
425
426
|
children: [
|
|
426
427
|
"+",
|
|
@@ -431,20 +432,20 @@ var q = {
|
|
|
431
432
|
})]
|
|
432
433
|
})
|
|
433
434
|
}),
|
|
434
|
-
/* @__PURE__ */
|
|
435
|
+
/* @__PURE__ */ B(d, {
|
|
435
436
|
title: l("devportal.links", "Links"),
|
|
436
|
-
children: /* @__PURE__ */
|
|
437
|
+
children: /* @__PURE__ */ V("div", {
|
|
437
438
|
className: "space-y-2",
|
|
438
|
-
children: [e.websiteUrl && /* @__PURE__ */
|
|
439
|
+
children: [e.websiteUrl && /* @__PURE__ */ V("a", {
|
|
439
440
|
href: e.websiteUrl,
|
|
440
441
|
target: "_blank",
|
|
441
442
|
rel: "noopener noreferrer",
|
|
442
443
|
className: "flex items-center gap-2 text-sm text-primary hover:underline",
|
|
443
|
-
children: [/* @__PURE__ */
|
|
444
|
-
}), e.contactEmail && /* @__PURE__ */
|
|
444
|
+
children: [/* @__PURE__ */ B(j, { size: 14 }), l("devportal.website", "Website")]
|
|
445
|
+
}), e.contactEmail && /* @__PURE__ */ V("a", {
|
|
445
446
|
href: `mailto:${e.contactEmail}`,
|
|
446
447
|
className: "flex items-center gap-2 text-sm text-primary hover:underline",
|
|
447
|
-
children: [/* @__PURE__ */
|
|
448
|
+
children: [/* @__PURE__ */ B(j, { size: 14 }), e.contactEmail]
|
|
448
449
|
})]
|
|
449
450
|
})
|
|
450
451
|
})
|
|
@@ -452,78 +453,78 @@ var q = {
|
|
|
452
453
|
})]
|
|
453
454
|
});
|
|
454
455
|
}, X = ({ org: e, apps: t, onNavigate: r, canCreateApps: i }) => {
|
|
455
|
-
let { t: a } =
|
|
456
|
+
let { t: a } = H(), o = (e, t) => {
|
|
456
457
|
let n = a(e);
|
|
457
458
|
return n === e ? t : n;
|
|
458
459
|
}, s = e.kind === "PHYSICAL", c = s ? "/seller/items/new" : "/apps/new", l = s ? o("devportal.createItem", "Create Item") : o("devportal.createApp", "Create App");
|
|
459
|
-
return /* @__PURE__ */
|
|
460
|
+
return /* @__PURE__ */ V("div", {
|
|
460
461
|
className: "space-y-6",
|
|
461
|
-
children: [/* @__PURE__ */
|
|
462
|
+
children: [/* @__PURE__ */ V("div", {
|
|
462
463
|
className: "flex items-center justify-between",
|
|
463
|
-
children: [/* @__PURE__ */
|
|
464
|
+
children: [/* @__PURE__ */ V("p", {
|
|
464
465
|
className: "text-sm text-text-secondary",
|
|
465
466
|
children: [
|
|
466
467
|
t.length,
|
|
467
468
|
" ",
|
|
468
469
|
t.length === 1 ? o("devportal.application", "application") : o("devportal.applications", "applications")
|
|
469
470
|
]
|
|
470
|
-
}), i ? /* @__PURE__ */
|
|
471
|
+
}), i ? /* @__PURE__ */ V("button", {
|
|
471
472
|
onClick: () => r(c),
|
|
472
473
|
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",
|
|
473
|
-
children: [/* @__PURE__ */
|
|
474
|
+
children: [/* @__PURE__ */ B(N, { size: 16 }), l]
|
|
474
475
|
}) : null]
|
|
475
|
-
}), t.length > 0 ? /* @__PURE__ */
|
|
476
|
+
}), t.length > 0 ? /* @__PURE__ */ B("div", {
|
|
476
477
|
className: "space-y-2",
|
|
477
|
-
children: t.map((e) => /* @__PURE__ */
|
|
478
|
+
children: t.map((e) => /* @__PURE__ */ B(p, {
|
|
478
479
|
app: e,
|
|
479
480
|
onClick: () => r(`/apps/${e.id}`)
|
|
480
481
|
}, e.id))
|
|
481
|
-
}) : /* @__PURE__ */
|
|
482
|
+
}) : /* @__PURE__ */ B(n, {
|
|
482
483
|
illustration: "empty-data",
|
|
483
|
-
icon: /* @__PURE__ */
|
|
484
|
+
icon: /* @__PURE__ */ B(T, { size: 32 }),
|
|
484
485
|
title: o("devportal.noApplications", "No applications"),
|
|
485
486
|
description: s ? o("devportal.createFirstItemForOrg", "List your first physical item for this organization") : o("devportal.createFirstAppForOrg", "Create your first application for this organization"),
|
|
486
|
-
action: i ? /* @__PURE__ */
|
|
487
|
+
action: i ? /* @__PURE__ */ V("button", {
|
|
487
488
|
onClick: () => r(c),
|
|
488
489
|
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",
|
|
489
|
-
children: [/* @__PURE__ */
|
|
490
|
+
children: [/* @__PURE__ */ B(N, { size: 16 }), l]
|
|
490
491
|
}) : void 0
|
|
491
492
|
})]
|
|
492
493
|
});
|
|
493
494
|
}, Z = ({ members: e, onNavigate: n, orgId: r, canInviteMembers: i }) => {
|
|
494
|
-
let { t: a } =
|
|
495
|
+
let { t: a } = H(), o = (e, t) => {
|
|
495
496
|
let n = a(e);
|
|
496
497
|
return n === e ? t : n;
|
|
497
498
|
};
|
|
498
|
-
return /* @__PURE__ */
|
|
499
|
+
return /* @__PURE__ */ V("div", {
|
|
499
500
|
className: "space-y-6",
|
|
500
|
-
children: [/* @__PURE__ */
|
|
501
|
+
children: [/* @__PURE__ */ V("div", {
|
|
501
502
|
className: "flex items-center justify-between",
|
|
502
|
-
children: [/* @__PURE__ */
|
|
503
|
+
children: [/* @__PURE__ */ V("p", {
|
|
503
504
|
className: "text-sm text-text-secondary",
|
|
504
505
|
children: [
|
|
505
506
|
e.length,
|
|
506
507
|
" ",
|
|
507
508
|
e.length === 1 ? o("devportal.memberLower", "member") : o("devportal.membersLower", "members")
|
|
508
509
|
]
|
|
509
|
-
}), i ? /* @__PURE__ */
|
|
510
|
+
}), i ? /* @__PURE__ */ V("button", {
|
|
510
511
|
onClick: () => n(`/organizations/${r}/members`),
|
|
511
512
|
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",
|
|
512
|
-
children: [/* @__PURE__ */
|
|
513
|
+
children: [/* @__PURE__ */ B(N, { size: 16 }), o("devportal.inviteMember", "Invite Member")]
|
|
513
514
|
}) : null]
|
|
514
|
-
}), /* @__PURE__ */
|
|
515
|
+
}), /* @__PURE__ */ B(g, {
|
|
515
516
|
data: e,
|
|
516
517
|
keyField: "id",
|
|
517
518
|
columns: [
|
|
518
519
|
{
|
|
519
520
|
key: "email",
|
|
520
521
|
header: o("devportal.memberColumn", "Member"),
|
|
521
|
-
render: (e) => /* @__PURE__ */
|
|
522
|
+
render: (e) => /* @__PURE__ */ V("div", {
|
|
522
523
|
className: "flex items-center gap-3",
|
|
523
|
-
children: [/* @__PURE__ */
|
|
524
|
+
children: [/* @__PURE__ */ B("div", {
|
|
524
525
|
className: "h-8 w-8 rounded-full bg-action-primary-bg/10 flex items-center justify-center text-sm font-medium text-primary",
|
|
525
526
|
children: e.email?.charAt(0).toUpperCase() || "U"
|
|
526
|
-
}), /* @__PURE__ */
|
|
527
|
+
}), /* @__PURE__ */ B("span", {
|
|
527
528
|
className: "font-medium",
|
|
528
529
|
children: e.email
|
|
529
530
|
})]
|
|
@@ -532,7 +533,7 @@ var q = {
|
|
|
532
533
|
{
|
|
533
534
|
key: "role",
|
|
534
535
|
header: o("devportal.roleColumn", "Role"),
|
|
535
|
-
render: (e) => /* @__PURE__ */
|
|
536
|
+
render: (e) => /* @__PURE__ */ B("span", {
|
|
536
537
|
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"),
|
|
537
538
|
children: f[e.role]
|
|
538
539
|
})
|
|
@@ -545,11 +546,11 @@ var q = {
|
|
|
545
546
|
]
|
|
546
547
|
})]
|
|
547
548
|
});
|
|
548
|
-
},
|
|
549
|
-
let { t } =
|
|
549
|
+
}, Q = ({ org: e }) => {
|
|
550
|
+
let { t } = H(), { allowed: n } = te(ne.ORG_UPDATE), r = (e, n) => {
|
|
550
551
|
let r = t(e);
|
|
551
552
|
return r === e ? n : r;
|
|
552
|
-
}, [i, a] =
|
|
553
|
+
}, [i, a] = C({
|
|
553
554
|
name: e.name,
|
|
554
555
|
description: e.description ?? "",
|
|
555
556
|
websiteUrl: e.websiteUrl ?? "",
|
|
@@ -557,24 +558,24 @@ var q = {
|
|
|
557
558
|
supportEmail: e.supportEmail ?? "",
|
|
558
559
|
logoUrl: e.logoUrl ?? "",
|
|
559
560
|
bannerUrl: e.bannerUrl ?? ""
|
|
560
|
-
}), [o, u] =
|
|
561
|
+
}), [o, u] = C({
|
|
561
562
|
legalEntityName: e.legalEntityName ?? "",
|
|
562
563
|
legalEntityType: e.legalEntityType ?? ""
|
|
563
|
-
}), [f, p] =
|
|
564
|
+
}), [f, p] = C({
|
|
564
565
|
taxId: e.taxId ?? "",
|
|
565
566
|
taxCountry: e.taxCountry ?? ""
|
|
566
|
-
}), [m, h] =
|
|
567
|
+
}), [m, h] = C({ pickupPostalCode: e.pickupPostalCode ?? "" }), { locations: g } = x(), [w, T] = C(null), [E, D] = C(null), [O, A] = C("manual"), [j, N] = C(!1), [I, L] = C(""), [R, U] = C(""), [W, re] = C(""), [ie, Y] = C(null), [se, ce] = C(!1), X = ie ?? {
|
|
567
568
|
verificationMethod: e.verificationMethod,
|
|
568
569
|
verificationRequestedAt: e.verificationRequestedAt,
|
|
569
570
|
verificationStatus: e.verificationStatus,
|
|
570
571
|
verificationRequestNotes: e.verificationRequestNotes,
|
|
571
572
|
verificationRejectedReason: e.verificationRejectedReason
|
|
572
|
-
},
|
|
573
|
-
i.contactEmail.trim() ?
|
|
574
|
-
let
|
|
575
|
-
|
|
576
|
-
let
|
|
577
|
-
|
|
573
|
+
}, Z = [];
|
|
574
|
+
i.contactEmail.trim() ? oe(i.contactEmail) || Z.push(r("devportal.contactEmailInvalid", "Contact email must be valid")) : Z.push(r("devportal.contactEmailRequired", "Contact email is required")), i.supportEmail.trim() && !oe(i.supportEmail) && Z.push(r("devportal.supportEmailInvalid", "Support email must be valid")), i.websiteUrl.trim() ? J(i.websiteUrl) || Z.push(r("devportal.websiteInvalid", "Website URL must be valid")) : Z.push(r("devportal.websiteRequired", "Website URL is required")), o.legalEntityName.trim() || Z.push(r("devportal.legalEntityNameRequired", "Legal entity name is required")), o.legalEntityType.trim() || Z.push(r("devportal.legalEntityTypeRequired", "Entity type is required")), f.taxId.trim() || Z.push(r("devportal.taxIdRequired", "Tax ID is required")), f.taxCountry.trim() ? /^[A-Za-z]{2}$/.test(f.taxCountry.trim()) || Z.push(r("devportal.taxCountryInvalid", "Tax country must be a 2-letter code")) : Z.push(r("devportal.taxCountryRequired", "Tax country is required"));
|
|
575
|
+
let Q = [];
|
|
576
|
+
O === "domain" && !ae(W.trim()) && Q.push(r("devportal.verification.errors.domainRequired", "Enter a valid domain like burdenoff.com")), O === "document" && !J(R.trim()) && Q.push(r("devportal.verification.errors.evidenceUrlRequired", "Enter a valid evidence URL starting with http:// or https://")), O === "manual" && !I.trim() && Q.push(r("devportal.verification.errors.notesRequired", "Add notes so the reviewer knows what to verify"));
|
|
577
|
+
let le = Z.length === 0 && Q.length === 0 && !se && n, [ue, { loading: $ }] = l({ refetchQueries: ["GetOrganization"] }), [de, { loading: fe }] = s({ refetchQueries: ["GetOrganization"] }), [pe, { loading: me }] = c({ refetchQueries: ["GetOrganization"] });
|
|
578
|
+
S(() => {
|
|
578
579
|
a({
|
|
579
580
|
name: e.name,
|
|
580
581
|
description: e.description ?? "",
|
|
@@ -590,17 +591,17 @@ var q = {
|
|
|
590
591
|
taxId: e.taxId ?? "",
|
|
591
592
|
taxCountry: e.taxCountry ?? ""
|
|
592
593
|
}), h({ pickupPostalCode: e.pickupPostalCode ?? "" });
|
|
593
|
-
}, [e.id]),
|
|
594
|
-
e.id &&
|
|
594
|
+
}, [e.id]), S(() => {
|
|
595
|
+
e.id && G({
|
|
595
596
|
gateway: "global",
|
|
596
|
-
query:
|
|
597
|
+
query: K,
|
|
597
598
|
variables: { id: e.id }
|
|
598
|
-
}).then((e) =>
|
|
599
|
-
}, [e.id,
|
|
600
|
-
let
|
|
601
|
-
|
|
599
|
+
}).then((e) => Y(e.data?.developerOrganization ?? null)).catch(() => Y(null));
|
|
600
|
+
}, [e.id, j]);
|
|
601
|
+
let he = async () => {
|
|
602
|
+
D(null), T(null);
|
|
602
603
|
try {
|
|
603
|
-
await
|
|
604
|
+
await ue({ variables: {
|
|
604
605
|
id: e.id,
|
|
605
606
|
input: {
|
|
606
607
|
name: i.name.trim() || void 0,
|
|
@@ -611,66 +612,66 @@ var q = {
|
|
|
611
612
|
logoUrl: i.logoUrl.trim() || null,
|
|
612
613
|
bannerUrl: i.bannerUrl.trim() || null
|
|
613
614
|
}
|
|
614
|
-
} }),
|
|
615
|
+
} }), T(r("devportal.organizationUpdated", "Organization details updated"));
|
|
615
616
|
} catch (e) {
|
|
616
|
-
|
|
617
|
+
D(e instanceof Error ? e.message : r("devportal.failedToUpdateOrganization", "Failed to update organization"));
|
|
617
618
|
}
|
|
618
|
-
},
|
|
619
|
-
|
|
619
|
+
}, ge = async () => {
|
|
620
|
+
D(null), T(null);
|
|
620
621
|
try {
|
|
621
|
-
await
|
|
622
|
+
await de({ variables: {
|
|
622
623
|
id: e.id,
|
|
623
624
|
input: {
|
|
624
625
|
legalEntityName: o.legalEntityName.trim() || null,
|
|
625
626
|
legalEntityType: o.legalEntityType.trim() || null
|
|
626
627
|
}
|
|
627
|
-
} }),
|
|
628
|
+
} }), T(r("devportal.legalInfoUpdated", "Legal information updated"));
|
|
628
629
|
} catch (e) {
|
|
629
|
-
|
|
630
|
+
D(e instanceof Error ? e.message : r("devportal.failedToUpdateLegalInfo", "Failed to update legal information"));
|
|
630
631
|
}
|
|
631
|
-
},
|
|
632
|
-
|
|
632
|
+
}, _e = async () => {
|
|
633
|
+
D(null), T(null);
|
|
633
634
|
try {
|
|
634
|
-
await
|
|
635
|
+
await pe({ variables: {
|
|
635
636
|
id: e.id,
|
|
636
637
|
input: {
|
|
637
638
|
taxId: f.taxId.trim() || null,
|
|
638
639
|
taxCountry: f.taxCountry.trim() || null
|
|
639
640
|
}
|
|
640
|
-
} }),
|
|
641
|
+
} }), T(r("devportal.taxInfoUpdated", "Tax information updated"));
|
|
641
642
|
} catch (e) {
|
|
642
|
-
|
|
643
|
+
D(e instanceof Error ? e.message : r("devportal.failedToUpdateTaxInfo", "Failed to update tax information"));
|
|
643
644
|
}
|
|
644
|
-
},
|
|
645
|
-
|
|
645
|
+
}, ve = async () => {
|
|
646
|
+
D(null), T(null);
|
|
646
647
|
try {
|
|
647
|
-
await
|
|
648
|
+
await ue({ variables: {
|
|
648
649
|
id: e.id,
|
|
649
650
|
input: { pickupPostalCode: m.pickupPostalCode.trim() || null }
|
|
650
|
-
} }),
|
|
651
|
+
} }), T(r("devportal.fulfillmentInfoUpdated", "Fulfillment settings updated"));
|
|
651
652
|
} catch (e) {
|
|
652
|
-
|
|
653
|
+
D(e instanceof Error ? e.message : r("devportal.failedToUpdateFulfillmentInfo", "Failed to update fulfillment settings"));
|
|
653
654
|
}
|
|
654
655
|
};
|
|
655
|
-
return /* @__PURE__ */
|
|
656
|
+
return /* @__PURE__ */ V("div", {
|
|
656
657
|
className: "space-y-6 max-w-2xl",
|
|
657
658
|
children: [
|
|
658
|
-
|
|
659
|
+
E && /* @__PURE__ */ B("div", {
|
|
659
660
|
className: "rounded-md border border-status-error-bg bg-status-error-bg-subtle px-4 py-3 text-sm text-status-error-text",
|
|
660
|
-
children:
|
|
661
|
+
children: E
|
|
661
662
|
}),
|
|
662
|
-
|
|
663
|
+
w && /* @__PURE__ */ B("div", {
|
|
663
664
|
className: "rounded-md border border-status-success-bg bg-status-success-bg-subtle px-4 py-3 text-sm text-status-success-text",
|
|
664
|
-
children:
|
|
665
|
+
children: w
|
|
665
666
|
}),
|
|
666
|
-
/* @__PURE__ */
|
|
667
|
+
/* @__PURE__ */ B(d, {
|
|
667
668
|
title: r("devportal.organizationDetails", "Organization Details"),
|
|
668
|
-
children: /* @__PURE__ */
|
|
669
|
+
children: /* @__PURE__ */ V("div", {
|
|
669
670
|
className: "space-y-4",
|
|
670
671
|
children: [
|
|
671
|
-
/* @__PURE__ */
|
|
672
|
+
/* @__PURE__ */ V("div", {
|
|
672
673
|
className: "grid gap-4 sm:grid-cols-2",
|
|
673
|
-
children: [/* @__PURE__ */
|
|
674
|
+
children: [/* @__PURE__ */ B(v, {
|
|
674
675
|
label: r("devportal.organizationName", "Organization Name"),
|
|
675
676
|
value: i.name,
|
|
676
677
|
onChange: (e) => a((t) => ({
|
|
@@ -679,14 +680,14 @@ var q = {
|
|
|
679
680
|
})),
|
|
680
681
|
disabled: !n,
|
|
681
682
|
required: !0
|
|
682
|
-
}), /* @__PURE__ */
|
|
683
|
+
}), /* @__PURE__ */ B(v, {
|
|
683
684
|
label: r("devportal.slug", "Slug"),
|
|
684
685
|
value: e.slug,
|
|
685
686
|
disabled: !0,
|
|
686
687
|
hint: r("devportal.slugReadOnly", "Slug cannot be changed here")
|
|
687
688
|
})]
|
|
688
689
|
}),
|
|
689
|
-
/* @__PURE__ */
|
|
690
|
+
/* @__PURE__ */ B(y, {
|
|
690
691
|
label: r("devportal.description", "Description"),
|
|
691
692
|
value: i.description,
|
|
692
693
|
onChange: (e) => a((t) => ({
|
|
@@ -696,10 +697,10 @@ var q = {
|
|
|
696
697
|
disabled: !n,
|
|
697
698
|
rows: 4
|
|
698
699
|
}),
|
|
699
|
-
/* @__PURE__ */
|
|
700
|
+
/* @__PURE__ */ V("div", {
|
|
700
701
|
className: "grid gap-4 sm:grid-cols-2",
|
|
701
702
|
children: [
|
|
702
|
-
/* @__PURE__ */
|
|
703
|
+
/* @__PURE__ */ B(v, {
|
|
703
704
|
label: r("devportal.website", "Website"),
|
|
704
705
|
type: "url",
|
|
705
706
|
value: i.websiteUrl,
|
|
@@ -709,7 +710,7 @@ var q = {
|
|
|
709
710
|
})),
|
|
710
711
|
disabled: !n
|
|
711
712
|
}),
|
|
712
|
-
/* @__PURE__ */
|
|
713
|
+
/* @__PURE__ */ B(v, {
|
|
713
714
|
label: r("devportal.contactEmail", "Contact Email"),
|
|
714
715
|
type: "email",
|
|
715
716
|
value: i.contactEmail,
|
|
@@ -719,7 +720,7 @@ var q = {
|
|
|
719
720
|
})),
|
|
720
721
|
disabled: !n
|
|
721
722
|
}),
|
|
722
|
-
/* @__PURE__ */
|
|
723
|
+
/* @__PURE__ */ B(v, {
|
|
723
724
|
label: r("devportal.supportEmail", "Support Email"),
|
|
724
725
|
type: "email",
|
|
725
726
|
value: i.supportEmail,
|
|
@@ -729,7 +730,7 @@ var q = {
|
|
|
729
730
|
})),
|
|
730
731
|
disabled: !n
|
|
731
732
|
}),
|
|
732
|
-
/* @__PURE__ */
|
|
733
|
+
/* @__PURE__ */ B(v, {
|
|
733
734
|
label: r("devportal.logoUrl", "Logo URL"),
|
|
734
735
|
type: "url",
|
|
735
736
|
value: i.logoUrl,
|
|
@@ -741,7 +742,7 @@ var q = {
|
|
|
741
742
|
})
|
|
742
743
|
]
|
|
743
744
|
}),
|
|
744
|
-
/* @__PURE__ */
|
|
745
|
+
/* @__PURE__ */ B(v, {
|
|
745
746
|
label: r("devportal.bannerUrl", "Banner URL"),
|
|
746
747
|
type: "url",
|
|
747
748
|
value: i.bannerUrl,
|
|
@@ -751,10 +752,10 @@ var q = {
|
|
|
751
752
|
})),
|
|
752
753
|
disabled: !n
|
|
753
754
|
}),
|
|
754
|
-
/* @__PURE__ */
|
|
755
|
+
/* @__PURE__ */ B(_, { items: [
|
|
755
756
|
{
|
|
756
757
|
label: r("devportal.organizationId", "Organization ID"),
|
|
757
|
-
value: /* @__PURE__ */
|
|
758
|
+
value: /* @__PURE__ */ B("code", {
|
|
758
759
|
className: "text-xs",
|
|
759
760
|
children: e.id
|
|
760
761
|
})
|
|
@@ -776,31 +777,31 @@ var q = {
|
|
|
776
777
|
value: `${(e.platformFeeRate * 100).toFixed(0)}%`
|
|
777
778
|
}
|
|
778
779
|
] }),
|
|
779
|
-
/* @__PURE__ */
|
|
780
|
+
/* @__PURE__ */ B("div", {
|
|
780
781
|
className: "flex justify-end",
|
|
781
|
-
children: /* @__PURE__ */
|
|
782
|
+
children: /* @__PURE__ */ V("button", {
|
|
782
783
|
type: "button",
|
|
783
784
|
disabled: !n || $,
|
|
784
|
-
onClick: () => void
|
|
785
|
+
onClick: () => void he(),
|
|
785
786
|
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",
|
|
786
|
-
children: [$ ? /* @__PURE__ */
|
|
787
|
+
children: [$ ? /* @__PURE__ */ B(M, {
|
|
787
788
|
size: 14,
|
|
788
789
|
className: "animate-spin"
|
|
789
|
-
}) : /* @__PURE__ */
|
|
790
|
+
}) : /* @__PURE__ */ B(P, { size: 14 }), r("devportal.saveChanges", "Save Changes")]
|
|
790
791
|
})
|
|
791
792
|
})
|
|
792
793
|
]
|
|
793
794
|
})
|
|
794
795
|
}),
|
|
795
|
-
/* @__PURE__ */
|
|
796
|
+
/* @__PURE__ */ B(d, {
|
|
796
797
|
title: r("devportal.legalInformation", "Legal Information"),
|
|
797
|
-
children: /* @__PURE__ */
|
|
798
|
+
children: /* @__PURE__ */ V("div", {
|
|
798
799
|
className: "space-y-4",
|
|
799
800
|
children: [
|
|
800
|
-
/* @__PURE__ */
|
|
801
|
+
/* @__PURE__ */ V("div", {
|
|
801
802
|
className: "grid gap-4 sm:grid-cols-2",
|
|
802
803
|
children: [
|
|
803
|
-
/* @__PURE__ */
|
|
804
|
+
/* @__PURE__ */ B(v, {
|
|
804
805
|
label: r("devportal.legalEntityName", "Legal Entity Name"),
|
|
805
806
|
value: o.legalEntityName,
|
|
806
807
|
onChange: (e) => u((t) => ({
|
|
@@ -809,7 +810,7 @@ var q = {
|
|
|
809
810
|
})),
|
|
810
811
|
disabled: !n
|
|
811
812
|
}),
|
|
812
|
-
/* @__PURE__ */
|
|
813
|
+
/* @__PURE__ */ B(v, {
|
|
813
814
|
label: r("devportal.entityType", "Entity Type"),
|
|
814
815
|
value: o.legalEntityType,
|
|
815
816
|
onChange: (e) => u((t) => ({
|
|
@@ -818,7 +819,7 @@ var q = {
|
|
|
818
819
|
})),
|
|
819
820
|
disabled: !n
|
|
820
821
|
}),
|
|
821
|
-
/* @__PURE__ */
|
|
822
|
+
/* @__PURE__ */ B(v, {
|
|
822
823
|
label: r("devportal.taxId", "Tax ID"),
|
|
823
824
|
value: f.taxId,
|
|
824
825
|
onChange: (e) => p((t) => ({
|
|
@@ -827,7 +828,7 @@ var q = {
|
|
|
827
828
|
})),
|
|
828
829
|
disabled: !n
|
|
829
830
|
}),
|
|
830
|
-
/* @__PURE__ */
|
|
831
|
+
/* @__PURE__ */ B(v, {
|
|
831
832
|
label: r("devportal.taxCountry", "Tax Country"),
|
|
832
833
|
value: f.taxCountry,
|
|
833
834
|
onChange: (e) => p((t) => ({
|
|
@@ -838,37 +839,37 @@ var q = {
|
|
|
838
839
|
})
|
|
839
840
|
]
|
|
840
841
|
}),
|
|
841
|
-
/* @__PURE__ */
|
|
842
|
+
/* @__PURE__ */ B(_, { items: [{
|
|
842
843
|
label: r("devportal.taxForm", "Tax Form"),
|
|
843
844
|
value: e.taxFormType || r("devportal.notSubmitted", "Not submitted")
|
|
844
845
|
}, {
|
|
845
846
|
label: r("devportal.taxFormStatus", "Tax Form Status"),
|
|
846
|
-
value: e.taxFormType ? e.taxFormVerified ? /* @__PURE__ */
|
|
847
|
+
value: e.taxFormType ? e.taxFormVerified ? /* @__PURE__ */ V("span", {
|
|
847
848
|
className: "text-status-success-text flex items-center gap-1",
|
|
848
849
|
children: [
|
|
849
|
-
/* @__PURE__ */
|
|
850
|
+
/* @__PURE__ */ B(k, { size: 14 }),
|
|
850
851
|
" ",
|
|
851
852
|
r("devportal.verified", "Verified")
|
|
852
853
|
]
|
|
853
854
|
}) : r("devportal.pendingVerification", "Pending verification") : r("devportal.notSubmitted", "Not submitted")
|
|
854
855
|
}] }),
|
|
855
|
-
/* @__PURE__ */
|
|
856
|
+
/* @__PURE__ */ V("div", {
|
|
856
857
|
className: "flex justify-end gap-2",
|
|
857
|
-
children: [/* @__PURE__ */
|
|
858
|
+
children: [/* @__PURE__ */ V("button", {
|
|
858
859
|
type: "button",
|
|
859
|
-
disabled: !n ||
|
|
860
|
-
onClick: () => void
|
|
860
|
+
disabled: !n || fe,
|
|
861
|
+
onClick: () => void ge(),
|
|
861
862
|
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",
|
|
862
|
-
children: [
|
|
863
|
+
children: [fe ? /* @__PURE__ */ B(M, {
|
|
863
864
|
size: 14,
|
|
864
865
|
className: "animate-spin"
|
|
865
866
|
}) : null, r("devportal.saveLegalInfo", "Save Legal Info")]
|
|
866
|
-
}), /* @__PURE__ */
|
|
867
|
+
}), /* @__PURE__ */ V("button", {
|
|
867
868
|
type: "button",
|
|
868
|
-
disabled: !n ||
|
|
869
|
-
onClick: () => void
|
|
869
|
+
disabled: !n || me,
|
|
870
|
+
onClick: () => void _e(),
|
|
870
871
|
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",
|
|
871
|
-
children: [
|
|
872
|
+
children: [me ? /* @__PURE__ */ B(M, {
|
|
872
873
|
size: 14,
|
|
873
874
|
className: "animate-spin"
|
|
874
875
|
}) : null, r("devportal.saveTaxInfo", "Save Tax Info")]
|
|
@@ -877,24 +878,36 @@ var q = {
|
|
|
877
878
|
]
|
|
878
879
|
})
|
|
879
880
|
}),
|
|
880
|
-
e.kind === "PHYSICAL" && /* @__PURE__ */
|
|
881
|
+
e.kind === "PHYSICAL" && /* @__PURE__ */ B(d, {
|
|
881
882
|
title: r("devportal.fulfillment", "Fulfillment"),
|
|
882
|
-
children: /* @__PURE__ */
|
|
883
|
+
children: /* @__PURE__ */ V("div", {
|
|
883
884
|
className: "space-y-4",
|
|
884
|
-
children: [/* @__PURE__ */
|
|
885
|
+
children: [g.length > 0 ? /* @__PURE__ */ B(ee, {
|
|
885
886
|
label: r("devportal.pickupPostalCode", "Pickup Pincode"),
|
|
886
887
|
value: m.pickupPostalCode,
|
|
887
888
|
onChange: (e) => h({ pickupPostalCode: e.target.value }),
|
|
888
889
|
disabled: !n,
|
|
890
|
+
placeholder: r("devportal.pickupPostalCodeUseBilling", "Use billing account address"),
|
|
891
|
+
options: g.map((e) => ({
|
|
892
|
+
value: e.postalCode,
|
|
893
|
+
label: `${e.label} — ${e.postalCode} · ${b(e.carrier)}`
|
|
894
|
+
})),
|
|
895
|
+
error: m.pickupPostalCode && !g.some((e) => e.postalCode === m.pickupPostalCode) ? r("devportal.pickupPostalCodeNotRegistered", "This pincode isn't a registered pickup location — orders may fail to ship. Pick one below.") : void 0,
|
|
889
896
|
hint: r("devportal.pickupPostalCodeHint", "The postal code your physical orders actually ship from — used to quote real carrier shipping rates. If left blank, we fall back to your linked billing account's address.")
|
|
890
|
-
})
|
|
897
|
+
}) : /* @__PURE__ */ B(v, {
|
|
898
|
+
label: r("devportal.pickupPostalCode", "Pickup Pincode"),
|
|
899
|
+
value: m.pickupPostalCode,
|
|
900
|
+
onChange: (e) => h({ pickupPostalCode: e.target.value }),
|
|
901
|
+
disabled: !n,
|
|
902
|
+
hint: r("devportal.pickupPostalCodeHintFallback", "The postal code your physical orders actually ship from — used to quote real carrier shipping rates. If left blank, we fall back to your linked billing account's address. (Live pickup-location list unavailable — enter your pincode manually.)")
|
|
903
|
+
}), /* @__PURE__ */ B("div", {
|
|
891
904
|
className: "flex justify-end",
|
|
892
|
-
children: /* @__PURE__ */
|
|
905
|
+
children: /* @__PURE__ */ V("button", {
|
|
893
906
|
type: "button",
|
|
894
907
|
disabled: !n || $,
|
|
895
|
-
onClick: () => void
|
|
908
|
+
onClick: () => void ve(),
|
|
896
909
|
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",
|
|
897
|
-
children: [$ ? /* @__PURE__ */
|
|
910
|
+
children: [$ ? /* @__PURE__ */ B(M, {
|
|
898
911
|
size: 14,
|
|
899
912
|
className: "animate-spin"
|
|
900
913
|
}) : null, r("devportal.saveFulfillmentInfo", "Save Fulfillment Settings")]
|
|
@@ -902,115 +915,115 @@ var q = {
|
|
|
902
915
|
})]
|
|
903
916
|
})
|
|
904
917
|
}),
|
|
905
|
-
/* @__PURE__ */
|
|
918
|
+
/* @__PURE__ */ V(d, {
|
|
906
919
|
title: r("devportal.verificationStatus", "Verification Status"),
|
|
907
|
-
children: [/* @__PURE__ */
|
|
920
|
+
children: [/* @__PURE__ */ B(_, { items: [{
|
|
908
921
|
label: r("devportal.verifiedLabel", "Verified"),
|
|
909
|
-
value:
|
|
922
|
+
value: X.verificationStatus === "VERIFIED" ? /* @__PURE__ */ V("span", {
|
|
910
923
|
className: "text-status-success-text flex items-center gap-1",
|
|
911
924
|
children: [
|
|
912
|
-
/* @__PURE__ */
|
|
925
|
+
/* @__PURE__ */ B(k, { size: 14 }),
|
|
913
926
|
" ",
|
|
914
927
|
r("devportal.verifiedVia", "Verified via"),
|
|
915
928
|
" ",
|
|
916
|
-
|
|
929
|
+
X.verificationMethod
|
|
917
930
|
]
|
|
918
|
-
}) :
|
|
931
|
+
}) : X.verificationStatus === "PENDING" ? r("devportal.pendingVerification", "Pending verification") : X.verificationStatus === "REJECTED" ? r("devportal.verificationRejected", "Rejected") : r("devportal.notVerified", "Not verified")
|
|
919
932
|
}, {
|
|
920
933
|
label: r("devportal.certifiedLabel", "Certified"),
|
|
921
|
-
value: e.isCertified ? /* @__PURE__ */
|
|
934
|
+
value: e.isCertified ? /* @__PURE__ */ V("span", {
|
|
922
935
|
className: "text-accent-blue flex items-center gap-1",
|
|
923
936
|
children: [
|
|
924
|
-
/* @__PURE__ */
|
|
937
|
+
/* @__PURE__ */ B(F, { size: 14 }),
|
|
925
938
|
" ",
|
|
926
939
|
r("devportal.certifiedUntil", "Certified until"),
|
|
927
940
|
" ",
|
|
928
941
|
e.certificationExpiry ? new Date(e.certificationExpiry).toLocaleDateString() : "N/A"
|
|
929
942
|
]
|
|
930
943
|
}) : r("devportal.notCertified", "Not certified")
|
|
931
|
-
}] }),
|
|
944
|
+
}] }), X.verificationStatus !== "VERIFIED" && /* @__PURE__ */ B("div", {
|
|
932
945
|
className: "mt-4 rounded-md border border-border-subtle p-4 space-y-3",
|
|
933
|
-
children:
|
|
946
|
+
children: j ? /* @__PURE__ */ V("p", {
|
|
934
947
|
className: "text-sm text-status-success-text flex items-center gap-2",
|
|
935
|
-
children: [/* @__PURE__ */
|
|
936
|
-
}) : /* @__PURE__ */
|
|
937
|
-
/* @__PURE__ */
|
|
948
|
+
children: [/* @__PURE__ */ B(k, { size: 14 }), r("devportal.verificationRequested", "Verification request submitted. Our team will review and contact you.")]
|
|
949
|
+
}) : /* @__PURE__ */ V(z, { children: [
|
|
950
|
+
/* @__PURE__ */ B("p", {
|
|
938
951
|
className: "text-sm text-text-secondary",
|
|
939
952
|
children: r("devportal.requestVerificationHint", "Get your organization verified to build trust with users. Choose a verification method:")
|
|
940
953
|
}),
|
|
941
|
-
|
|
954
|
+
X.verificationStatus === "PENDING" && /* @__PURE__ */ V("div", {
|
|
942
955
|
className: "rounded-md border border-border-subtle bg-bg-sunken/40 p-3 text-sm text-text-secondary",
|
|
943
956
|
children: [
|
|
944
957
|
r("devportal.pendingVerification", "Pending verification"),
|
|
945
|
-
|
|
946
|
-
|
|
958
|
+
X.verificationMethod ? ` · ${X.verificationMethod}` : "",
|
|
959
|
+
X.verificationRequestNotes ? ` · ${X.verificationRequestNotes}` : ""
|
|
947
960
|
]
|
|
948
961
|
}),
|
|
949
|
-
|
|
962
|
+
X.verificationStatus === "REJECTED" && X.verificationRejectedReason && /* @__PURE__ */ B("div", {
|
|
950
963
|
className: "rounded-md border border-status-error-border bg-status-error-bg-subtle p-3 text-sm text-status-error-text",
|
|
951
|
-
children:
|
|
964
|
+
children: X.verificationRejectedReason
|
|
952
965
|
}),
|
|
953
|
-
|
|
966
|
+
Z.length > 0 && /* @__PURE__ */ V("div", {
|
|
954
967
|
className: "rounded-md border border-border-subtle bg-bg-sunken/40 p-3 text-sm text-text-secondary",
|
|
955
|
-
children: [/* @__PURE__ */
|
|
968
|
+
children: [/* @__PURE__ */ B("div", {
|
|
956
969
|
className: "font-medium text-text-primary",
|
|
957
970
|
children: r("devportal.completeBeforeVerification", "Complete these details before submitting for review")
|
|
958
|
-
}), /* @__PURE__ */
|
|
971
|
+
}), /* @__PURE__ */ B("ul", {
|
|
959
972
|
className: "mt-2 list-disc pl-5 space-y-1",
|
|
960
|
-
children:
|
|
973
|
+
children: Z.map((e) => /* @__PURE__ */ B("li", { children: e }, e))
|
|
961
974
|
})]
|
|
962
975
|
}),
|
|
963
|
-
|
|
964
|
-
/* @__PURE__ */
|
|
976
|
+
X.verificationStatus !== "PENDING" && /* @__PURE__ */ V(z, { children: [
|
|
977
|
+
/* @__PURE__ */ B("div", {
|
|
965
978
|
className: "flex gap-2 flex-wrap",
|
|
966
979
|
children: [
|
|
967
980
|
"domain",
|
|
968
981
|
"document",
|
|
969
982
|
"manual"
|
|
970
|
-
].map((e) => /* @__PURE__ */
|
|
983
|
+
].map((e) => /* @__PURE__ */ B("button", {
|
|
971
984
|
type: "button",
|
|
972
|
-
onClick: () =>
|
|
973
|
-
className: `rounded-md border px-3 py-1 text-xs font-medium transition-colors ${
|
|
985
|
+
onClick: () => A(e),
|
|
986
|
+
className: `rounded-md border px-3 py-1 text-xs font-medium transition-colors ${O === e ? "bg-action-primary-bg text-action-primary-text border-primary" : "border-border-subtle hover:bg-bg-sunken"}`,
|
|
974
987
|
children: e === "domain" ? r("devportal.domainVerification", "Domain") : e === "document" ? r("devportal.documentVerification", "Document") : r("devportal.manualVerification", "Manual review")
|
|
975
988
|
}, e))
|
|
976
989
|
}),
|
|
977
|
-
|
|
990
|
+
O === "domain" ? /* @__PURE__ */ B(v, {
|
|
978
991
|
label: r("devportal.domainVerification", "Domain"),
|
|
979
|
-
value:
|
|
980
|
-
onChange: (e) =>
|
|
992
|
+
value: W,
|
|
993
|
+
onChange: (e) => re(e.target.value),
|
|
981
994
|
placeholder: "example.com"
|
|
982
|
-
}) :
|
|
995
|
+
}) : O === "document" ? /* @__PURE__ */ B(v, {
|
|
983
996
|
label: r("devportal.evidenceUrl", "Evidence URL"),
|
|
984
|
-
value:
|
|
985
|
-
onChange: (e) =>
|
|
997
|
+
value: R,
|
|
998
|
+
onChange: (e) => U(e.target.value),
|
|
986
999
|
placeholder: "https://..."
|
|
987
1000
|
}) : null,
|
|
988
|
-
/* @__PURE__ */
|
|
1001
|
+
/* @__PURE__ */ B(y, {
|
|
989
1002
|
label: r("devportal.notes", "Notes"),
|
|
990
|
-
value:
|
|
991
|
-
onChange: (e) =>
|
|
1003
|
+
value: I,
|
|
1004
|
+
onChange: (e) => L(e.target.value),
|
|
992
1005
|
placeholder: "What should reviewers validate?"
|
|
993
1006
|
}),
|
|
994
|
-
/* @__PURE__ */
|
|
1007
|
+
/* @__PURE__ */ V("button", {
|
|
995
1008
|
type: "button",
|
|
996
|
-
disabled: !
|
|
1009
|
+
disabled: !le,
|
|
997
1010
|
onClick: () => void (async () => {
|
|
998
|
-
let t =
|
|
999
|
-
if (
|
|
1000
|
-
|
|
1011
|
+
let t = W.trim(), n = R.trim(), a = I.trim();
|
|
1012
|
+
if (O === "domain" && !ae(t)) {
|
|
1013
|
+
D(r("devportal.verification.errors.domainRequired", "Enter a valid domain like burdenoff.com"));
|
|
1001
1014
|
return;
|
|
1002
1015
|
}
|
|
1003
|
-
if (
|
|
1004
|
-
|
|
1016
|
+
if (O === "document" && !J(n)) {
|
|
1017
|
+
D(r("devportal.verification.errors.evidenceUrlRequired", "Enter a valid evidence URL starting with http:// or https://"));
|
|
1005
1018
|
return;
|
|
1006
1019
|
}
|
|
1007
|
-
if (
|
|
1008
|
-
|
|
1020
|
+
if (O === "manual" && !a) {
|
|
1021
|
+
D(r("devportal.verification.errors.notesRequired", "Add notes so the reviewer knows what to verify"));
|
|
1009
1022
|
return;
|
|
1010
1023
|
}
|
|
1011
|
-
|
|
1024
|
+
D(null), T(null), ce(!0);
|
|
1012
1025
|
try {
|
|
1013
|
-
await
|
|
1026
|
+
await ue({ variables: {
|
|
1014
1027
|
id: e.id,
|
|
1015
1028
|
input: {
|
|
1016
1029
|
name: i.name.trim() || void 0,
|
|
@@ -1021,47 +1034,47 @@ var q = {
|
|
|
1021
1034
|
logoUrl: i.logoUrl.trim() || null,
|
|
1022
1035
|
bannerUrl: i.bannerUrl.trim() || null
|
|
1023
1036
|
}
|
|
1024
|
-
} }), await
|
|
1037
|
+
} }), await de({ variables: {
|
|
1025
1038
|
id: e.id,
|
|
1026
1039
|
input: {
|
|
1027
1040
|
legalEntityName: o.legalEntityName.trim() || null,
|
|
1028
1041
|
legalEntityType: o.legalEntityType.trim() || null
|
|
1029
1042
|
}
|
|
1030
|
-
} }), await
|
|
1043
|
+
} }), await pe({ variables: {
|
|
1031
1044
|
id: e.id,
|
|
1032
1045
|
input: {
|
|
1033
1046
|
taxId: f.taxId.trim() || null,
|
|
1034
1047
|
taxCountry: f.taxCountry.trim() || null
|
|
1035
1048
|
}
|
|
1036
1049
|
} });
|
|
1037
|
-
let s = await
|
|
1050
|
+
let s = await G({
|
|
1038
1051
|
gateway: "global",
|
|
1039
|
-
query:
|
|
1052
|
+
query: q,
|
|
1040
1053
|
variables: {
|
|
1041
1054
|
id: e.id,
|
|
1042
|
-
method:
|
|
1055
|
+
method: O,
|
|
1043
1056
|
notes: a || null,
|
|
1044
|
-
evidenceUrl:
|
|
1045
|
-
domain:
|
|
1057
|
+
evidenceUrl: O === "domain" ? null : n || null,
|
|
1058
|
+
domain: O === "domain" && t || null
|
|
1046
1059
|
}
|
|
1047
1060
|
});
|
|
1048
1061
|
if (s.errors?.length) throw Error(s.errors[0]?.message || "Verification request failed");
|
|
1049
|
-
|
|
1062
|
+
N(!0), T(r("devportal.verificationRequested", "Verification request submitted. Our team will review and contact you.")), Y((await G({
|
|
1050
1063
|
gateway: "global",
|
|
1051
|
-
query:
|
|
1064
|
+
query: K,
|
|
1052
1065
|
variables: { id: e.id }
|
|
1053
1066
|
})).data?.developerOrganization ?? null);
|
|
1054
1067
|
} catch (e) {
|
|
1055
|
-
|
|
1068
|
+
D(e instanceof Error ? e.message : r("devportal.verificationRequestFailed", "Verification request failed"));
|
|
1056
1069
|
} finally {
|
|
1057
|
-
|
|
1070
|
+
ce(!1);
|
|
1058
1071
|
}
|
|
1059
1072
|
})(),
|
|
1060
1073
|
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",
|
|
1061
|
-
children: [
|
|
1074
|
+
children: [se ? /* @__PURE__ */ B(M, {
|
|
1062
1075
|
size: 14,
|
|
1063
1076
|
className: "animate-spin"
|
|
1064
|
-
}) : /* @__PURE__ */
|
|
1077
|
+
}) : /* @__PURE__ */ B(F, { size: 14 }), r("devportal.requestVerification", "Request Verification")]
|
|
1065
1078
|
})
|
|
1066
1079
|
] })
|
|
1067
1080
|
] })
|
|
@@ -1071,6 +1084,6 @@ var q = {
|
|
|
1071
1084
|
});
|
|
1072
1085
|
};
|
|
1073
1086
|
//#endregion
|
|
1074
|
-
export {
|
|
1087
|
+
export { se as OrganizationDetailPage };
|
|
1075
1088
|
|
|
1076
1089
|
//# sourceMappingURL=OrganizationDetailPage.js.map
|