@burdenoff/microfe-devportal 2026.914.6 → 2026.915.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/components/ReportOrderIssueModal.d.ts +20 -0
- package/dist/devportal/components/ReportOrderIssueModal.d.ts.map +1 -0
- package/dist/devportal/components/ReportOrderIssueModal.js +157 -0
- package/dist/devportal/components/ReportOrderIssueModal.js.map +1 -0
- package/dist/devportal/components/index.d.ts +1 -0
- package/dist/devportal/components/index.d.ts.map +1 -1
- package/dist/devportal/components/index.js +1 -0
- package/dist/devportal/hooks/usePackageUpload.d.ts.map +1 -1
- package/dist/devportal/hooks/usePackageUpload.js.map +1 -1
- package/dist/devportal/pages/CreateOrganizationPage.d.ts.map +1 -1
- package/dist/devportal/pages/CreateOrganizationPage.js +11 -2
- package/dist/devportal/pages/CreateOrganizationPage.js.map +1 -1
- package/dist/devportal/pages/EditApplicationPage.d.ts.map +1 -1
- package/dist/devportal/pages/EditApplicationPage.js +4 -0
- package/dist/devportal/pages/EditApplicationPage.js.map +1 -1
- package/dist/devportal/pages/OrganizationDetailPage.d.ts.map +1 -1
- package/dist/devportal/pages/OrganizationDetailPage.js +145 -109
- package/dist/devportal/pages/OrganizationDetailPage.js.map +1 -1
- package/dist/devportal/pages/PublishPage.d.ts.map +1 -1
- package/dist/devportal/pages/PublishPage.js.map +1 -1
- package/dist/devportal/pages/RevenueDashboardPage.d.ts.map +1 -1
- package/dist/devportal/pages/RevenueDashboardPage.js +478 -258
- package/dist/devportal/pages/RevenueDashboardPage.js.map +1 -1
- package/dist/devportal/pages/SellerItemsPage.d.ts.map +1 -1
- package/dist/devportal/pages/SellerItemsPage.js.map +1 -1
- package/dist/devportal/pages/SellerOrdersPage.d.ts.map +1 -1
- package/dist/devportal/pages/SellerOrdersPage.js +186 -93
- package/dist/devportal/pages/SellerOrdersPage.js.map +1 -1
- package/dist/devportal/types/index.d.ts +1 -0
- package/dist/devportal/types/index.d.ts.map +1 -1
- package/dist/devportal/types/index.js.map +1 -1
- package/dist/generated/global-operations.d.ts +16 -0
- package/dist/generated/global-operations.d.ts.map +1 -1
- package/dist/generated/global-operations.js +74 -46
- package/dist/generated/global-operations.js.map +1 -1
- package/dist/generated/global-types.d.ts +15 -0
- package/dist/generated/global-types.d.ts.map +1 -1
- package/dist/generated/global-types.js +8 -0
- package/dist/generated/global-types.js.map +1 -0
- package/package.json +1 -1
|
@@ -16,11 +16,11 @@ import { AlertCircle as S, AppWindow as C, ArrowRight as w, BarChart3 as T, Buil
|
|
|
16
16
|
import { useParams as re } from "react-router";
|
|
17
17
|
import { Fragment as F, jsx as I, jsxs as L } from "react/jsx-runtime";
|
|
18
18
|
import { useI18n as R } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
19
|
-
import { EmphasisPanel as z, NextSteps as
|
|
20
|
-
import { graphqlFetch as
|
|
19
|
+
import { EmphasisPanel as z, NextSteps as ie } from "@burdenoff/fe-libs/ui";
|
|
20
|
+
import { graphqlFetch as B } from "@burdenoff/fe-libs/shared/graphql";
|
|
21
21
|
//#region src/devportal/pages/OrganizationDetailPage.tsx
|
|
22
|
-
var
|
|
23
|
-
function
|
|
22
|
+
var V = "\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", H = "\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";
|
|
23
|
+
function ae(e) {
|
|
24
24
|
let t = e;
|
|
25
25
|
return {
|
|
26
26
|
id: e.id,
|
|
@@ -72,11 +72,12 @@ function W(e) {
|
|
|
72
72
|
taxFormVerified: e.taxFormVerified ?? !1,
|
|
73
73
|
legalEntityName: e.legalEntityName ?? void 0,
|
|
74
74
|
legalEntityType: e.legalEntityType ?? void 0,
|
|
75
|
+
pickupPostalCode: e.pickupPostalCode ?? void 0,
|
|
75
76
|
createdAt: e.createdAt,
|
|
76
77
|
updatedAt: e.updatedAt
|
|
77
78
|
};
|
|
78
79
|
}
|
|
79
|
-
function
|
|
80
|
+
function U(e) {
|
|
80
81
|
return {
|
|
81
82
|
id: e.id,
|
|
82
83
|
organizationId: e.organizationId,
|
|
@@ -95,11 +96,11 @@ function G(e) {
|
|
|
95
96
|
updatedAt: e.updatedAt
|
|
96
97
|
};
|
|
97
98
|
}
|
|
98
|
-
function
|
|
99
|
+
function W(e) {
|
|
99
100
|
let t = e.trim().toLowerCase();
|
|
100
101
|
return /^[a-z0-9.-]+\.[a-z]{2,}$/i.test(t) && !t.includes("@");
|
|
101
102
|
}
|
|
102
|
-
function
|
|
103
|
+
function G(e) {
|
|
103
104
|
try {
|
|
104
105
|
let t = new URL(e.trim());
|
|
105
106
|
return t.protocol === "http:" || t.protocol === "https:";
|
|
@@ -107,16 +108,16 @@ function q(e) {
|
|
|
107
108
|
return !1;
|
|
108
109
|
}
|
|
109
110
|
}
|
|
110
|
-
function
|
|
111
|
+
function K(e) {
|
|
111
112
|
let t = e.trim();
|
|
112
113
|
return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t);
|
|
113
114
|
}
|
|
114
|
-
var
|
|
115
|
+
var q = {
|
|
115
116
|
VIEWER: 0,
|
|
116
117
|
DEVELOPER: 1,
|
|
117
118
|
ADMIN: 2,
|
|
118
119
|
OWNER: 3
|
|
119
|
-
},
|
|
120
|
+
}, J = () => {
|
|
120
121
|
let { navigate: n, basePath: s, setActiveOrgId: c, setActivePhysicalOrgId: l, currentUser: d } = e(), f = i(), { orgId: p } = re(), { t: m } = R(), h = (e, t) => {
|
|
121
122
|
let n = m(e);
|
|
122
123
|
return n === e ? t : n;
|
|
@@ -151,7 +152,7 @@ var Y = {
|
|
|
151
152
|
},
|
|
152
153
|
skip: !p,
|
|
153
154
|
fetchPolicy: "cache-and-network"
|
|
154
|
-
}), O = (T?.developerOrganization?.members ?? []).map(
|
|
155
|
+
}), O = (T?.developerOrganization?.members ?? []).map(U), M = (d ? O.find((e) => e.userId === d.id) : void 0)?.role, N = M !== void 0 && q[M] >= q.DEVELOPER, F = M !== void 0 && q[M] >= q.ADMIN, z = F, B = F, V = v.filter((e) => e.id !== "settings" || F), H = (e) => {
|
|
155
156
|
n?.(`${s}${e}`);
|
|
156
157
|
};
|
|
157
158
|
if (b(() => {
|
|
@@ -194,24 +195,24 @@ var Y = {
|
|
|
194
195
|
children: w?.message || h("devportal.organizationNotFoundDescription", "The organization you're looking for doesn't exist or you don't have access to it.")
|
|
195
196
|
}),
|
|
196
197
|
/* @__PURE__ */ I("button", {
|
|
197
|
-
onClick: () =>
|
|
198
|
+
onClick: () => H(r(f)),
|
|
198
199
|
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",
|
|
199
200
|
children: h("devportal.backToOrganizations", "Back to Organizations")
|
|
200
201
|
})
|
|
201
202
|
]
|
|
202
203
|
})
|
|
203
204
|
});
|
|
204
|
-
let
|
|
205
|
+
let W = ae(T.developerOrganization), G = O, K = E?.applications?.edges?.map((e) => e.node) ?? [];
|
|
205
206
|
return /* @__PURE__ */ L(u, {
|
|
206
|
-
title:
|
|
207
|
-
description:
|
|
207
|
+
title: W.name,
|
|
208
|
+
description: W.description,
|
|
208
209
|
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."),
|
|
209
210
|
backLink: `${s}${r(f)}`,
|
|
210
211
|
backLabel: h("devportal.backToOrganizations", "Back to Organizations"),
|
|
211
212
|
actions: /* @__PURE__ */ I("div", {
|
|
212
213
|
className: "flex items-center gap-2",
|
|
213
214
|
children: z ? /* @__PURE__ */ L("button", {
|
|
214
|
-
onClick: () => n?.(`/billing/earnings?developerOrgId=${encodeURIComponent(
|
|
215
|
+
onClick: () => n?.(`/billing/earnings?developerOrgId=${encodeURIComponent(W.id)}&developerOrgName=${encodeURIComponent(W.name)}`),
|
|
215
216
|
className: "inline-flex items-center gap-2 rounded-md border px-4 py-2 text-sm font-medium hover:bg-bg-sunken transition-colors",
|
|
216
217
|
children: [/* @__PURE__ */ I(D, { size: 16 }), h("devportal.revenue", "Revenue")]
|
|
217
218
|
}) : null
|
|
@@ -223,7 +224,7 @@ var Y = {
|
|
|
223
224
|
className: "-mb-px flex gap-4 overflow-x-auto",
|
|
224
225
|
role: "tablist",
|
|
225
226
|
"aria-label": h("devportal.organizationSections", "Organization sections"),
|
|
226
|
-
children:
|
|
227
|
+
children: V.map((e) => {
|
|
227
228
|
let n = e.icon;
|
|
228
229
|
return /* @__PURE__ */ L("button", {
|
|
229
230
|
id: `organization-tab-${e.id}`,
|
|
@@ -237,11 +238,11 @@ var Y = {
|
|
|
237
238
|
})
|
|
238
239
|
})
|
|
239
240
|
}),
|
|
240
|
-
/* @__PURE__ */ I(
|
|
241
|
+
/* @__PURE__ */ I(ie, {
|
|
241
242
|
className: "mt-6",
|
|
242
|
-
storageKey: `devportal-org-${
|
|
243
|
+
storageKey: `devportal-org-${W.id}`,
|
|
243
244
|
steps: [
|
|
244
|
-
...
|
|
245
|
+
...B ? [{
|
|
245
246
|
id: "invite-members",
|
|
246
247
|
label: h("devportal.inviteMembers", "Invite members"),
|
|
247
248
|
description: h("devportal.orgStepInvite", "Add teammates so they can build alongside you"),
|
|
@@ -253,14 +254,14 @@ var Y = {
|
|
|
253
254
|
label: h("devportal.createApp", "Create App"),
|
|
254
255
|
description: h("devportal.orgStepCreateApp", "Build a new application under this organization"),
|
|
255
256
|
icon: /* @__PURE__ */ I(C, { size: 16 }),
|
|
256
|
-
onClick: () =>
|
|
257
|
+
onClick: () => H("/apps/new")
|
|
257
258
|
}] : [],
|
|
258
259
|
...N && f ? [{
|
|
259
260
|
id: "list-item",
|
|
260
261
|
label: h("devportal.listAnItem", "List an Item"),
|
|
261
262
|
description: h("devportal.orgStepListItem", "List a physical product for sale under this organization"),
|
|
262
263
|
icon: /* @__PURE__ */ I(A, { size: 16 }),
|
|
263
|
-
onClick: () =>
|
|
264
|
+
onClick: () => H("/seller/items/new")
|
|
264
265
|
}] : [],
|
|
265
266
|
...F ? [{
|
|
266
267
|
id: "settings",
|
|
@@ -268,7 +269,7 @@ var Y = {
|
|
|
268
269
|
description: h("devportal.orgStepVerifyDesc", "Add a logo and details, then request verification"),
|
|
269
270
|
icon: /* @__PURE__ */ I(j, { size: 16 }),
|
|
270
271
|
onClick: () => _("settings"),
|
|
271
|
-
done: !!
|
|
272
|
+
done: !!W.isVerified
|
|
272
273
|
}] : []
|
|
273
274
|
]
|
|
274
275
|
}),
|
|
@@ -279,33 +280,33 @@ var Y = {
|
|
|
279
280
|
"aria-labelledby": `organization-tab-${g}`,
|
|
280
281
|
tabIndex: 0,
|
|
281
282
|
children: [
|
|
282
|
-
g === "overview" && /* @__PURE__ */ I(
|
|
283
|
-
org:
|
|
284
|
-
apps:
|
|
285
|
-
members:
|
|
283
|
+
g === "overview" && /* @__PURE__ */ I(Y, {
|
|
284
|
+
org: W,
|
|
285
|
+
apps: K,
|
|
286
|
+
members: G,
|
|
286
287
|
canCreateApps: N,
|
|
287
288
|
canViewRevenue: z,
|
|
288
|
-
onNavigate:
|
|
289
|
+
onNavigate: H,
|
|
289
290
|
onShowApps: () => _("apps")
|
|
290
291
|
}),
|
|
291
|
-
g === "apps" && /* @__PURE__ */ I(
|
|
292
|
-
org:
|
|
293
|
-
apps:
|
|
294
|
-
onNavigate:
|
|
292
|
+
g === "apps" && /* @__PURE__ */ I(X, {
|
|
293
|
+
org: W,
|
|
294
|
+
apps: K,
|
|
295
|
+
onNavigate: H,
|
|
295
296
|
canCreateApps: N
|
|
296
297
|
}),
|
|
297
|
-
g === "members" && /* @__PURE__ */ I(
|
|
298
|
-
members:
|
|
299
|
-
onNavigate:
|
|
300
|
-
orgId:
|
|
301
|
-
canInviteMembers:
|
|
298
|
+
g === "members" && /* @__PURE__ */ I(Z, {
|
|
299
|
+
members: G,
|
|
300
|
+
onNavigate: H,
|
|
301
|
+
orgId: W.id,
|
|
302
|
+
canInviteMembers: B
|
|
302
303
|
}),
|
|
303
|
-
g === "settings" && F && /* @__PURE__ */ I(
|
|
304
|
+
g === "settings" && F && /* @__PURE__ */ I(oe, { org: W })
|
|
304
305
|
]
|
|
305
306
|
})
|
|
306
307
|
]
|
|
307
308
|
});
|
|
308
|
-
},
|
|
309
|
+
}, Y = ({ org: e, apps: t, members: r, canCreateApps: i, canViewRevenue: a, onNavigate: o, onShowApps: s }) => {
|
|
309
310
|
let { t: c } = R(), l = (e, t) => {
|
|
310
311
|
let n = c(e);
|
|
311
312
|
return n === e ? t : n;
|
|
@@ -450,7 +451,7 @@ var Y = {
|
|
|
450
451
|
]
|
|
451
452
|
})]
|
|
452
453
|
});
|
|
453
|
-
},
|
|
454
|
+
}, X = ({ org: e, apps: t, onNavigate: r, canCreateApps: i }) => {
|
|
454
455
|
let { t: a } = R(), o = (e, t) => {
|
|
455
456
|
let n = a(e);
|
|
456
457
|
return n === e ? t : n;
|
|
@@ -489,7 +490,7 @@ var Y = {
|
|
|
489
490
|
}) : void 0
|
|
490
491
|
})]
|
|
491
492
|
});
|
|
492
|
-
},
|
|
493
|
+
}, Z = ({ members: e, onNavigate: n, orgId: r, canInviteMembers: i }) => {
|
|
493
494
|
let { t: a } = R(), o = (e, t) => {
|
|
494
495
|
let n = a(e);
|
|
495
496
|
return n === e ? t : n;
|
|
@@ -544,7 +545,7 @@ var Y = {
|
|
|
544
545
|
]
|
|
545
546
|
})]
|
|
546
547
|
});
|
|
547
|
-
},
|
|
548
|
+
}, oe = ({ org: e }) => {
|
|
548
549
|
let { t } = R(), { allowed: n } = ee(te.ORG_UPDATE), r = (e, n) => {
|
|
549
550
|
let r = t(e);
|
|
550
551
|
return r === e ? n : r;
|
|
@@ -562,17 +563,17 @@ var Y = {
|
|
|
562
563
|
}), [f, p] = x({
|
|
563
564
|
taxId: e.taxId ?? "",
|
|
564
565
|
taxCountry: e.taxCountry ?? ""
|
|
565
|
-
}), [m, h] = x(
|
|
566
|
+
}), [m, h] = x({ pickupPostalCode: e.pickupPostalCode ?? "" }), [g, S] = x(null), [C, w] = x(null), [T, ne] = x("manual"), [D, O] = x(!1), [A, N] = x(""), [P, re] = x(""), [z, ie] = x(""), [ae, U] = x(null), [q, J] = x(!1), Y = ae ?? {
|
|
566
567
|
verificationMethod: e.verificationMethod,
|
|
567
568
|
verificationRequestedAt: e.verificationRequestedAt,
|
|
568
569
|
verificationStatus: e.verificationStatus,
|
|
569
570
|
verificationRequestNotes: e.verificationRequestNotes,
|
|
570
571
|
verificationRejectedReason: e.verificationRejectedReason
|
|
571
572
|
}, X = [];
|
|
572
|
-
i.contactEmail.trim() ?
|
|
573
|
+
i.contactEmail.trim() ? K(i.contactEmail) || X.push(r("devportal.contactEmailInvalid", "Contact email must be valid")) : X.push(r("devportal.contactEmailRequired", "Contact email is required")), i.supportEmail.trim() && !K(i.supportEmail) && X.push(r("devportal.supportEmailInvalid", "Support email must be valid")), i.websiteUrl.trim() ? G(i.websiteUrl) || X.push(r("devportal.websiteInvalid", "Website URL must be valid")) : X.push(r("devportal.websiteRequired", "Website URL is required")), o.legalEntityName.trim() || X.push(r("devportal.legalEntityNameRequired", "Legal entity name is required")), o.legalEntityType.trim() || X.push(r("devportal.legalEntityTypeRequired", "Entity type is required")), f.taxId.trim() || X.push(r("devportal.taxIdRequired", "Tax ID is required")), f.taxCountry.trim() ? /^[A-Za-z]{2}$/.test(f.taxCountry.trim()) || X.push(r("devportal.taxCountryInvalid", "Tax country must be a 2-letter code")) : X.push(r("devportal.taxCountryRequired", "Tax country is required"));
|
|
573
574
|
let Z = [];
|
|
574
|
-
|
|
575
|
-
let
|
|
575
|
+
T === "domain" && !W(z.trim()) && Z.push(r("devportal.verification.errors.domainRequired", "Enter a valid domain like burdenoff.com")), T === "document" && !G(P.trim()) && Z.push(r("devportal.verification.errors.evidenceUrlRequired", "Enter a valid evidence URL starting with http:// or https://")), T === "manual" && !A.trim() && Z.push(r("devportal.verification.errors.notesRequired", "Add notes so the reviewer knows what to verify"));
|
|
576
|
+
let oe = X.length === 0 && Z.length === 0 && !q && n, [Q, { loading: $ }] = l({ refetchQueries: ["GetOrganization"] }), [se, { loading: ce }] = s({ refetchQueries: ["GetOrganization"] }), [le, { loading: ue }] = c({ refetchQueries: ["GetOrganization"] });
|
|
576
577
|
b(() => {
|
|
577
578
|
a({
|
|
578
579
|
name: e.name,
|
|
@@ -588,16 +589,16 @@ var Y = {
|
|
|
588
589
|
}), p({
|
|
589
590
|
taxId: e.taxId ?? "",
|
|
590
591
|
taxCountry: e.taxCountry ?? ""
|
|
591
|
-
});
|
|
592
|
+
}), h({ pickupPostalCode: e.pickupPostalCode ?? "" });
|
|
592
593
|
}, [e.id]), b(() => {
|
|
593
|
-
e.id &&
|
|
594
|
+
e.id && B({
|
|
594
595
|
gateway: "global",
|
|
595
|
-
query:
|
|
596
|
+
query: V,
|
|
596
597
|
variables: { id: e.id }
|
|
597
|
-
}).then((e) =>
|
|
598
|
-
}, [e.id,
|
|
599
|
-
let
|
|
600
|
-
|
|
598
|
+
}).then((e) => U(e.data?.developerOrganization ?? null)).catch(() => U(null));
|
|
599
|
+
}, [e.id, D]);
|
|
600
|
+
let de = async () => {
|
|
601
|
+
w(null), S(null);
|
|
601
602
|
try {
|
|
602
603
|
await Q({ variables: {
|
|
603
604
|
id: e.id,
|
|
@@ -610,47 +611,57 @@ var Y = {
|
|
|
610
611
|
logoUrl: i.logoUrl.trim() || null,
|
|
611
612
|
bannerUrl: i.bannerUrl.trim() || null
|
|
612
613
|
}
|
|
613
|
-
} }),
|
|
614
|
+
} }), S(r("devportal.organizationUpdated", "Organization details updated"));
|
|
614
615
|
} catch (e) {
|
|
615
|
-
|
|
616
|
+
w(e instanceof Error ? e.message : r("devportal.failedToUpdateOrganization", "Failed to update organization"));
|
|
616
617
|
}
|
|
617
|
-
},
|
|
618
|
-
|
|
618
|
+
}, fe = async () => {
|
|
619
|
+
w(null), S(null);
|
|
619
620
|
try {
|
|
620
|
-
await
|
|
621
|
+
await se({ variables: {
|
|
621
622
|
id: e.id,
|
|
622
623
|
input: {
|
|
623
624
|
legalEntityName: o.legalEntityName.trim() || null,
|
|
624
625
|
legalEntityType: o.legalEntityType.trim() || null
|
|
625
626
|
}
|
|
626
|
-
} }),
|
|
627
|
+
} }), S(r("devportal.legalInfoUpdated", "Legal information updated"));
|
|
627
628
|
} catch (e) {
|
|
628
|
-
|
|
629
|
+
w(e instanceof Error ? e.message : r("devportal.failedToUpdateLegalInfo", "Failed to update legal information"));
|
|
629
630
|
}
|
|
630
|
-
},
|
|
631
|
-
|
|
631
|
+
}, pe = async () => {
|
|
632
|
+
w(null), S(null);
|
|
632
633
|
try {
|
|
633
|
-
await
|
|
634
|
+
await le({ variables: {
|
|
634
635
|
id: e.id,
|
|
635
636
|
input: {
|
|
636
637
|
taxId: f.taxId.trim() || null,
|
|
637
638
|
taxCountry: f.taxCountry.trim() || null
|
|
638
639
|
}
|
|
639
|
-
} }),
|
|
640
|
+
} }), S(r("devportal.taxInfoUpdated", "Tax information updated"));
|
|
641
|
+
} catch (e) {
|
|
642
|
+
w(e instanceof Error ? e.message : r("devportal.failedToUpdateTaxInfo", "Failed to update tax information"));
|
|
643
|
+
}
|
|
644
|
+
}, me = async () => {
|
|
645
|
+
w(null), S(null);
|
|
646
|
+
try {
|
|
647
|
+
await Q({ variables: {
|
|
648
|
+
id: e.id,
|
|
649
|
+
input: { pickupPostalCode: m.pickupPostalCode.trim() || null }
|
|
650
|
+
} }), S(r("devportal.fulfillmentInfoUpdated", "Fulfillment settings updated"));
|
|
640
651
|
} catch (e) {
|
|
641
|
-
|
|
652
|
+
w(e instanceof Error ? e.message : r("devportal.failedToUpdateFulfillmentInfo", "Failed to update fulfillment settings"));
|
|
642
653
|
}
|
|
643
654
|
};
|
|
644
655
|
return /* @__PURE__ */ L("div", {
|
|
645
656
|
className: "space-y-6 max-w-2xl",
|
|
646
657
|
children: [
|
|
647
|
-
|
|
658
|
+
C && /* @__PURE__ */ I("div", {
|
|
648
659
|
className: "rounded-md border border-status-error-bg bg-status-error-bg-subtle px-4 py-3 text-sm text-status-error-text",
|
|
649
|
-
children:
|
|
660
|
+
children: C
|
|
650
661
|
}),
|
|
651
|
-
|
|
662
|
+
g && /* @__PURE__ */ I("div", {
|
|
652
663
|
className: "rounded-md border border-status-success-bg bg-status-success-bg-subtle px-4 py-3 text-sm text-status-success-text",
|
|
653
|
-
children:
|
|
664
|
+
children: g
|
|
654
665
|
}),
|
|
655
666
|
/* @__PURE__ */ I(d, {
|
|
656
667
|
title: r("devportal.organizationDetails", "Organization Details"),
|
|
@@ -770,7 +781,7 @@ var Y = {
|
|
|
770
781
|
children: /* @__PURE__ */ L("button", {
|
|
771
782
|
type: "button",
|
|
772
783
|
disabled: !n || $,
|
|
773
|
-
onClick: () => void
|
|
784
|
+
onClick: () => void de(),
|
|
774
785
|
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",
|
|
775
786
|
children: [$ ? /* @__PURE__ */ I(k, {
|
|
776
787
|
size: 14,
|
|
@@ -845,19 +856,19 @@ var Y = {
|
|
|
845
856
|
className: "flex justify-end gap-2",
|
|
846
857
|
children: [/* @__PURE__ */ L("button", {
|
|
847
858
|
type: "button",
|
|
848
|
-
disabled: !n ||
|
|
849
|
-
onClick: () => void
|
|
859
|
+
disabled: !n || ce,
|
|
860
|
+
onClick: () => void fe(),
|
|
850
861
|
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",
|
|
851
|
-
children: [
|
|
862
|
+
children: [ce ? /* @__PURE__ */ I(k, {
|
|
852
863
|
size: 14,
|
|
853
864
|
className: "animate-spin"
|
|
854
865
|
}) : null, r("devportal.saveLegalInfo", "Save Legal Info")]
|
|
855
866
|
}), /* @__PURE__ */ L("button", {
|
|
856
867
|
type: "button",
|
|
857
|
-
disabled: !n ||
|
|
858
|
-
onClick: () => void
|
|
868
|
+
disabled: !n || ue,
|
|
869
|
+
onClick: () => void pe(),
|
|
859
870
|
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",
|
|
860
|
-
children: [
|
|
871
|
+
children: [ue ? /* @__PURE__ */ I(k, {
|
|
861
872
|
size: 14,
|
|
862
873
|
className: "animate-spin"
|
|
863
874
|
}) : null, r("devportal.saveTaxInfo", "Save Tax Info")]
|
|
@@ -866,6 +877,31 @@ var Y = {
|
|
|
866
877
|
]
|
|
867
878
|
})
|
|
868
879
|
}),
|
|
880
|
+
e.kind === "PHYSICAL" && /* @__PURE__ */ I(d, {
|
|
881
|
+
title: r("devportal.fulfillment", "Fulfillment"),
|
|
882
|
+
children: /* @__PURE__ */ L("div", {
|
|
883
|
+
className: "space-y-4",
|
|
884
|
+
children: [/* @__PURE__ */ I(v, {
|
|
885
|
+
label: r("devportal.pickupPostalCode", "Pickup Pincode"),
|
|
886
|
+
value: m.pickupPostalCode,
|
|
887
|
+
onChange: (e) => h({ pickupPostalCode: e.target.value }),
|
|
888
|
+
disabled: !n,
|
|
889
|
+
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
|
+
}), /* @__PURE__ */ I("div", {
|
|
891
|
+
className: "flex justify-end",
|
|
892
|
+
children: /* @__PURE__ */ L("button", {
|
|
893
|
+
type: "button",
|
|
894
|
+
disabled: !n || $,
|
|
895
|
+
onClick: () => void me(),
|
|
896
|
+
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__ */ I(k, {
|
|
898
|
+
size: 14,
|
|
899
|
+
className: "animate-spin"
|
|
900
|
+
}) : null, r("devportal.saveFulfillmentInfo", "Save Fulfillment Settings")]
|
|
901
|
+
})
|
|
902
|
+
})]
|
|
903
|
+
})
|
|
904
|
+
}),
|
|
869
905
|
/* @__PURE__ */ L(d, {
|
|
870
906
|
title: r("devportal.verificationStatus", "Verification Status"),
|
|
871
907
|
children: [/* @__PURE__ */ I(_, { items: [{
|
|
@@ -894,7 +930,7 @@ var Y = {
|
|
|
894
930
|
}) : r("devportal.notCertified", "Not certified")
|
|
895
931
|
}] }), Y.verificationStatus !== "VERIFIED" && /* @__PURE__ */ I("div", {
|
|
896
932
|
className: "mt-4 rounded-md border border-border-subtle p-4 space-y-3",
|
|
897
|
-
children:
|
|
933
|
+
children: D ? /* @__PURE__ */ L("p", {
|
|
898
934
|
className: "text-sm text-status-success-text flex items-center gap-2",
|
|
899
935
|
children: [/* @__PURE__ */ I(E, { size: 14 }), r("devportal.verificationRequested", "Verification request submitted. Our team will review and contact you.")]
|
|
900
936
|
}) : /* @__PURE__ */ L(F, { children: [
|
|
@@ -933,46 +969,46 @@ var Y = {
|
|
|
933
969
|
"manual"
|
|
934
970
|
].map((e) => /* @__PURE__ */ I("button", {
|
|
935
971
|
type: "button",
|
|
936
|
-
onClick: () =>
|
|
937
|
-
className: `rounded-md border px-3 py-1 text-xs font-medium transition-colors ${
|
|
972
|
+
onClick: () => ne(e),
|
|
973
|
+
className: `rounded-md border px-3 py-1 text-xs font-medium transition-colors ${T === e ? "bg-action-primary-bg text-action-primary-text border-primary" : "border-border-subtle hover:bg-bg-sunken"}`,
|
|
938
974
|
children: e === "domain" ? r("devportal.domainVerification", "Domain") : e === "document" ? r("devportal.documentVerification", "Document") : r("devportal.manualVerification", "Manual review")
|
|
939
975
|
}, e))
|
|
940
976
|
}),
|
|
941
|
-
|
|
977
|
+
T === "domain" ? /* @__PURE__ */ I(v, {
|
|
942
978
|
label: r("devportal.domainVerification", "Domain"),
|
|
943
|
-
value:
|
|
944
|
-
onChange: (e) =>
|
|
979
|
+
value: z,
|
|
980
|
+
onChange: (e) => ie(e.target.value),
|
|
945
981
|
placeholder: "example.com"
|
|
946
|
-
}) :
|
|
982
|
+
}) : T === "document" ? /* @__PURE__ */ I(v, {
|
|
947
983
|
label: r("devportal.evidenceUrl", "Evidence URL"),
|
|
948
|
-
value:
|
|
949
|
-
onChange: (e) =>
|
|
984
|
+
value: P,
|
|
985
|
+
onChange: (e) => re(e.target.value),
|
|
950
986
|
placeholder: "https://..."
|
|
951
987
|
}) : null,
|
|
952
988
|
/* @__PURE__ */ I(y, {
|
|
953
989
|
label: r("devportal.notes", "Notes"),
|
|
954
|
-
value:
|
|
955
|
-
onChange: (e) =>
|
|
990
|
+
value: A,
|
|
991
|
+
onChange: (e) => N(e.target.value),
|
|
956
992
|
placeholder: "What should reviewers validate?"
|
|
957
993
|
}),
|
|
958
994
|
/* @__PURE__ */ L("button", {
|
|
959
995
|
type: "button",
|
|
960
|
-
disabled: !
|
|
996
|
+
disabled: !oe,
|
|
961
997
|
onClick: () => void (async () => {
|
|
962
|
-
let t =
|
|
963
|
-
if (
|
|
964
|
-
|
|
998
|
+
let t = z.trim(), n = P.trim(), a = A.trim();
|
|
999
|
+
if (T === "domain" && !W(t)) {
|
|
1000
|
+
w(r("devportal.verification.errors.domainRequired", "Enter a valid domain like burdenoff.com"));
|
|
965
1001
|
return;
|
|
966
1002
|
}
|
|
967
|
-
if (
|
|
968
|
-
|
|
1003
|
+
if (T === "document" && !G(n)) {
|
|
1004
|
+
w(r("devportal.verification.errors.evidenceUrlRequired", "Enter a valid evidence URL starting with http:// or https://"));
|
|
969
1005
|
return;
|
|
970
1006
|
}
|
|
971
|
-
if (
|
|
972
|
-
|
|
1007
|
+
if (T === "manual" && !a) {
|
|
1008
|
+
w(r("devportal.verification.errors.notesRequired", "Add notes so the reviewer knows what to verify"));
|
|
973
1009
|
return;
|
|
974
1010
|
}
|
|
975
|
-
|
|
1011
|
+
w(null), S(null), J(!0);
|
|
976
1012
|
try {
|
|
977
1013
|
await Q({ variables: {
|
|
978
1014
|
id: e.id,
|
|
@@ -985,44 +1021,44 @@ var Y = {
|
|
|
985
1021
|
logoUrl: i.logoUrl.trim() || null,
|
|
986
1022
|
bannerUrl: i.bannerUrl.trim() || null
|
|
987
1023
|
}
|
|
988
|
-
} }), await
|
|
1024
|
+
} }), await se({ variables: {
|
|
989
1025
|
id: e.id,
|
|
990
1026
|
input: {
|
|
991
1027
|
legalEntityName: o.legalEntityName.trim() || null,
|
|
992
1028
|
legalEntityType: o.legalEntityType.trim() || null
|
|
993
1029
|
}
|
|
994
|
-
} }), await
|
|
1030
|
+
} }), await le({ variables: {
|
|
995
1031
|
id: e.id,
|
|
996
1032
|
input: {
|
|
997
1033
|
taxId: f.taxId.trim() || null,
|
|
998
1034
|
taxCountry: f.taxCountry.trim() || null
|
|
999
1035
|
}
|
|
1000
1036
|
} });
|
|
1001
|
-
let s = await
|
|
1037
|
+
let s = await B({
|
|
1002
1038
|
gateway: "global",
|
|
1003
|
-
query:
|
|
1039
|
+
query: H,
|
|
1004
1040
|
variables: {
|
|
1005
1041
|
id: e.id,
|
|
1006
|
-
method:
|
|
1042
|
+
method: T,
|
|
1007
1043
|
notes: a || null,
|
|
1008
|
-
evidenceUrl:
|
|
1009
|
-
domain:
|
|
1044
|
+
evidenceUrl: T === "domain" ? null : n || null,
|
|
1045
|
+
domain: T === "domain" && t || null
|
|
1010
1046
|
}
|
|
1011
1047
|
});
|
|
1012
1048
|
if (s.errors?.length) throw Error(s.errors[0]?.message || "Verification request failed");
|
|
1013
|
-
|
|
1049
|
+
O(!0), S(r("devportal.verificationRequested", "Verification request submitted. Our team will review and contact you.")), U((await B({
|
|
1014
1050
|
gateway: "global",
|
|
1015
|
-
query:
|
|
1051
|
+
query: V,
|
|
1016
1052
|
variables: { id: e.id }
|
|
1017
1053
|
})).data?.developerOrganization ?? null);
|
|
1018
1054
|
} catch (e) {
|
|
1019
|
-
|
|
1055
|
+
w(e instanceof Error ? e.message : r("devportal.verificationRequestFailed", "Verification request failed"));
|
|
1020
1056
|
} finally {
|
|
1021
|
-
|
|
1057
|
+
J(!1);
|
|
1022
1058
|
}
|
|
1023
1059
|
})(),
|
|
1024
1060
|
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",
|
|
1025
|
-
children: [
|
|
1061
|
+
children: [q ? /* @__PURE__ */ I(k, {
|
|
1026
1062
|
size: 14,
|
|
1027
1063
|
className: "animate-spin"
|
|
1028
1064
|
}) : /* @__PURE__ */ I(M, { size: 14 }), r("devportal.requestVerification", "Request Verification")]
|
|
@@ -1035,6 +1071,6 @@ var Y = {
|
|
|
1035
1071
|
});
|
|
1036
1072
|
};
|
|
1037
1073
|
//#endregion
|
|
1038
|
-
export {
|
|
1074
|
+
export { J as OrganizationDetailPage };
|
|
1039
1075
|
|
|
1040
1076
|
//# sourceMappingURL=OrganizationDetailPage.js.map
|