@drawbridge/drawbridge-utils 0.0.144 → 0.0.146
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/connections/index.cjs +24 -13
- package/dist/connections/index.d.cts +25 -13
- package/dist/connections/index.d.ts +25 -13
- package/dist/connections/index.js +24 -13
- package/dist/providers.cjs +24 -13
- package/dist/providers.js +24 -13
- package/package.json +1 -1
|
@@ -4428,9 +4428,18 @@ var shopify_default2 = {
|
|
|
4428
4428
|
// there is nothing further to choose. `shop` absent means the install did not
|
|
4429
4429
|
// finish, which is a credential problem rather than a setup one, so the
|
|
4430
4430
|
// stored status already says so.
|
|
4431
|
-
//
|
|
4432
|
-
//
|
|
4433
|
-
|
|
4431
|
+
//
|
|
4432
|
+
// ONE presentation downgrade: an ACTIVE store whose approval carries no
|
|
4433
|
+
// usage meter (source.metered explicitly null) PRESENTS as error, so the
|
|
4434
|
+
// connections list shows the red state and the merchant knows to click in
|
|
4435
|
+
// — where the Fix-order-billing card and the billing Issue explain the
|
|
4436
|
+
// click. The STORED status stays active on purpose: serving and tracking
|
|
4437
|
+
// gate on it, and the orders recorded while the merchant fixes the plan
|
|
4438
|
+
// are the ones billed afterward.
|
|
4439
|
+
status: (data2) => {
|
|
4440
|
+
var _a;
|
|
4441
|
+
return (data2 == null ? void 0 : data2.status) === "active" && ((_a = data2 == null ? void 0 : data2.source) == null ? void 0 : _a.metered) === null ? "error" : data2 == null ? void 0 : data2.status;
|
|
4442
|
+
},
|
|
4434
4443
|
// Step types name the CAPABILITY, not this vendor. A second store platform
|
|
4435
4444
|
// implements the same four commerce steps, and the connection on the step
|
|
4436
4445
|
// says which store it runs against — so a merchant sees one "Create
|
|
@@ -4541,19 +4550,17 @@ var shopify_default2 = {
|
|
|
4541
4550
|
//
|
|
4542
4551
|
// Scope drift is NOT here: drawbridge-sync writes it onto the connection
|
|
4543
4552
|
// document, and the document's own warnings render beside these.
|
|
4544
|
-
// Both cards
|
|
4545
|
-
//
|
|
4546
|
-
//
|
|
4547
|
-
//
|
|
4548
|
-
// can perform for a merchant.
|
|
4553
|
+
// Both cards send the merchant INTO THE APP via the store link already on
|
|
4554
|
+
// this page — the App Home is where the issue renders (its error section)
|
|
4555
|
+
// and where the fix runs (the release-then-reselect flow). No dashboard
|
|
4556
|
+
// button: two entry points into a cancel flow is two ways to get it wrong.
|
|
4549
4557
|
tasks: (data2) => {
|
|
4550
4558
|
var _a;
|
|
4551
4559
|
return [
|
|
4552
4560
|
...(data2 == null ? void 0 : data2.status) === "pending" ? [
|
|
4553
4561
|
{
|
|
4554
|
-
|
|
4555
|
-
|
|
4556
|
-
title: "Approve your plan",
|
|
4562
|
+
message: "Open the Drawbridge app in your Shopify admin and choose your plan. The connection activates once Shopify confirms it.",
|
|
4563
|
+
title: "Choose your plan",
|
|
4557
4564
|
type: "warning"
|
|
4558
4565
|
}
|
|
4559
4566
|
] : [],
|
|
@@ -4566,8 +4573,7 @@ var shopify_default2 = {
|
|
|
4566
4573
|
// nagging on silence.
|
|
4567
4574
|
...(data2 == null ? void 0 : data2.status) === "active" && ((_a = data2 == null ? void 0 : data2.source) == null ? void 0 : _a.metered) === null ? [
|
|
4568
4575
|
{
|
|
4569
|
-
|
|
4570
|
-
message: "Order billing isn't set up for this store, so campaign-attributed orders aren't being charged. You'll need to reselect your plan on Shopify and approve it to fix this.",
|
|
4576
|
+
message: "Order billing isn't set up for this store, so campaign-attributed orders aren't being charged. Open the Drawbridge app in your Shopify admin \u2014 it shows this issue and walks you through reselecting your plan.",
|
|
4571
4577
|
title: "Fix order billing",
|
|
4572
4578
|
type: "error"
|
|
4573
4579
|
}
|
|
@@ -5175,6 +5181,11 @@ var publicConnectionKeys = Object.freeze([
|
|
|
5175
5181
|
"settings",
|
|
5176
5182
|
"shop",
|
|
5177
5183
|
"slug",
|
|
5184
|
+
// Vendor identity plus the metered billing stamp — domain, id, label,
|
|
5185
|
+
// metered — no credentials live here (those are the encrypted settings
|
|
5186
|
+
// blob). The status and tasks hooks pivot on source.metered, so stripping
|
|
5187
|
+
// it here left the presented status blind to the one state it must show.
|
|
5188
|
+
"source",
|
|
5178
5189
|
"status",
|
|
5179
5190
|
"tasks",
|
|
5180
5191
|
"title",
|
|
@@ -5283,9 +5283,19 @@ var shopify = {
|
|
|
5283
5283
|
// there is nothing further to choose. `shop` absent means the install did not
|
|
5284
5284
|
// finish, which is a credential problem rather than a setup one, so the
|
|
5285
5285
|
// stored status already says so.
|
|
5286
|
-
//
|
|
5287
|
-
//
|
|
5288
|
-
|
|
5286
|
+
//
|
|
5287
|
+
// ONE presentation downgrade: an ACTIVE store whose approval carries no
|
|
5288
|
+
// usage meter (source.metered explicitly null) PRESENTS as error, so the
|
|
5289
|
+
// connections list shows the red state and the merchant knows to click in
|
|
5290
|
+
// — where the Fix-order-billing card and the billing Issue explain the
|
|
5291
|
+
// click. The STORED status stays active on purpose: serving and tracking
|
|
5292
|
+
// gate on it, and the orders recorded while the merchant fixes the plan
|
|
5293
|
+
// are the ones billed afterward.
|
|
5294
|
+
status : ( data ) => (
|
|
5295
|
+
data?.status === 'active' && data?.source?.metered === null
|
|
5296
|
+
? 'error'
|
|
5297
|
+
: data?.status
|
|
5298
|
+
),
|
|
5289
5299
|
// Step types name the CAPABILITY, not this vendor. A second store platform
|
|
5290
5300
|
// implements the same four commerce steps, and the connection on the step
|
|
5291
5301
|
// says which store it runs against — so a merchant sees one "Create
|
|
@@ -5407,18 +5417,16 @@ var shopify = {
|
|
|
5407
5417
|
//
|
|
5408
5418
|
// Scope drift is NOT here: drawbridge-sync writes it onto the connection
|
|
5409
5419
|
// document, and the document's own warnings render beside these.
|
|
5410
|
-
// Both cards
|
|
5411
|
-
//
|
|
5412
|
-
//
|
|
5413
|
-
//
|
|
5414
|
-
// can perform for a merchant.
|
|
5420
|
+
// Both cards send the merchant INTO THE APP via the store link already on
|
|
5421
|
+
// this page — the App Home is where the issue renders (its error section)
|
|
5422
|
+
// and where the fix runs (the release-then-reselect flow). No dashboard
|
|
5423
|
+
// button: two entry points into a cancel flow is two ways to get it wrong.
|
|
5415
5424
|
tasks : ( data ) => [
|
|
5416
5425
|
...( data?.status === 'pending'
|
|
5417
5426
|
? [
|
|
5418
5427
|
{
|
|
5419
|
-
|
|
5420
|
-
|
|
5421
|
-
title : 'Approve your plan',
|
|
5428
|
+
message : 'Open the Drawbridge app in your Shopify admin and choose your plan. The connection activates once Shopify confirms it.',
|
|
5429
|
+
title : 'Choose your plan',
|
|
5422
5430
|
type : 'warning'
|
|
5423
5431
|
}
|
|
5424
5432
|
]
|
|
@@ -5434,8 +5442,7 @@ var shopify = {
|
|
|
5434
5442
|
...( data?.status === 'active' && data?.source?.metered === null
|
|
5435
5443
|
? [
|
|
5436
5444
|
{
|
|
5437
|
-
|
|
5438
|
-
message : 'Order billing isn\'t set up for this store, so campaign-attributed orders aren\'t being charged. You\'ll need to reselect your plan on Shopify and approve it to fix this.',
|
|
5445
|
+
message : 'Order billing isn\'t set up for this store, so campaign-attributed orders aren\'t being charged. Open the Drawbridge app in your Shopify admin — it shows this issue and walks you through reselecting your plan.',
|
|
5439
5446
|
title : 'Fix order billing',
|
|
5440
5447
|
type : 'error'
|
|
5441
5448
|
}
|
|
@@ -6454,6 +6461,11 @@ const publicConnectionKeys = Object.freeze([
|
|
|
6454
6461
|
'settings',
|
|
6455
6462
|
'shop',
|
|
6456
6463
|
'slug',
|
|
6464
|
+
// Vendor identity plus the metered billing stamp — domain, id, label,
|
|
6465
|
+
// metered — no credentials live here (those are the encrypted settings
|
|
6466
|
+
// blob). The status and tasks hooks pivot on source.metered, so stripping
|
|
6467
|
+
// it here left the presented status blind to the one state it must show.
|
|
6468
|
+
'source',
|
|
6457
6469
|
'status',
|
|
6458
6470
|
'tasks',
|
|
6459
6471
|
'title',
|
|
@@ -5283,9 +5283,19 @@ var shopify = {
|
|
|
5283
5283
|
// there is nothing further to choose. `shop` absent means the install did not
|
|
5284
5284
|
// finish, which is a credential problem rather than a setup one, so the
|
|
5285
5285
|
// stored status already says so.
|
|
5286
|
-
//
|
|
5287
|
-
//
|
|
5288
|
-
|
|
5286
|
+
//
|
|
5287
|
+
// ONE presentation downgrade: an ACTIVE store whose approval carries no
|
|
5288
|
+
// usage meter (source.metered explicitly null) PRESENTS as error, so the
|
|
5289
|
+
// connections list shows the red state and the merchant knows to click in
|
|
5290
|
+
// — where the Fix-order-billing card and the billing Issue explain the
|
|
5291
|
+
// click. The STORED status stays active on purpose: serving and tracking
|
|
5292
|
+
// gate on it, and the orders recorded while the merchant fixes the plan
|
|
5293
|
+
// are the ones billed afterward.
|
|
5294
|
+
status : ( data ) => (
|
|
5295
|
+
data?.status === 'active' && data?.source?.metered === null
|
|
5296
|
+
? 'error'
|
|
5297
|
+
: data?.status
|
|
5298
|
+
),
|
|
5289
5299
|
// Step types name the CAPABILITY, not this vendor. A second store platform
|
|
5290
5300
|
// implements the same four commerce steps, and the connection on the step
|
|
5291
5301
|
// says which store it runs against — so a merchant sees one "Create
|
|
@@ -5407,18 +5417,16 @@ var shopify = {
|
|
|
5407
5417
|
//
|
|
5408
5418
|
// Scope drift is NOT here: drawbridge-sync writes it onto the connection
|
|
5409
5419
|
// document, and the document's own warnings render beside these.
|
|
5410
|
-
// Both cards
|
|
5411
|
-
//
|
|
5412
|
-
//
|
|
5413
|
-
//
|
|
5414
|
-
// can perform for a merchant.
|
|
5420
|
+
// Both cards send the merchant INTO THE APP via the store link already on
|
|
5421
|
+
// this page — the App Home is where the issue renders (its error section)
|
|
5422
|
+
// and where the fix runs (the release-then-reselect flow). No dashboard
|
|
5423
|
+
// button: two entry points into a cancel flow is two ways to get it wrong.
|
|
5415
5424
|
tasks : ( data ) => [
|
|
5416
5425
|
...( data?.status === 'pending'
|
|
5417
5426
|
? [
|
|
5418
5427
|
{
|
|
5419
|
-
|
|
5420
|
-
|
|
5421
|
-
title : 'Approve your plan',
|
|
5428
|
+
message : 'Open the Drawbridge app in your Shopify admin and choose your plan. The connection activates once Shopify confirms it.',
|
|
5429
|
+
title : 'Choose your plan',
|
|
5422
5430
|
type : 'warning'
|
|
5423
5431
|
}
|
|
5424
5432
|
]
|
|
@@ -5434,8 +5442,7 @@ var shopify = {
|
|
|
5434
5442
|
...( data?.status === 'active' && data?.source?.metered === null
|
|
5435
5443
|
? [
|
|
5436
5444
|
{
|
|
5437
|
-
|
|
5438
|
-
message : 'Order billing isn\'t set up for this store, so campaign-attributed orders aren\'t being charged. You\'ll need to reselect your plan on Shopify and approve it to fix this.',
|
|
5445
|
+
message : 'Order billing isn\'t set up for this store, so campaign-attributed orders aren\'t being charged. Open the Drawbridge app in your Shopify admin — it shows this issue and walks you through reselecting your plan.',
|
|
5439
5446
|
title : 'Fix order billing',
|
|
5440
5447
|
type : 'error'
|
|
5441
5448
|
}
|
|
@@ -6454,6 +6461,11 @@ const publicConnectionKeys = Object.freeze([
|
|
|
6454
6461
|
'settings',
|
|
6455
6462
|
'shop',
|
|
6456
6463
|
'slug',
|
|
6464
|
+
// Vendor identity plus the metered billing stamp — domain, id, label,
|
|
6465
|
+
// metered — no credentials live here (those are the encrypted settings
|
|
6466
|
+
// blob). The status and tasks hooks pivot on source.metered, so stripping
|
|
6467
|
+
// it here left the presented status blind to the one state it must show.
|
|
6468
|
+
'source',
|
|
6457
6469
|
'status',
|
|
6458
6470
|
'tasks',
|
|
6459
6471
|
'title',
|
|
@@ -4354,9 +4354,18 @@ var shopify_default2 = {
|
|
|
4354
4354
|
// there is nothing further to choose. `shop` absent means the install did not
|
|
4355
4355
|
// finish, which is a credential problem rather than a setup one, so the
|
|
4356
4356
|
// stored status already says so.
|
|
4357
|
-
//
|
|
4358
|
-
//
|
|
4359
|
-
|
|
4357
|
+
//
|
|
4358
|
+
// ONE presentation downgrade: an ACTIVE store whose approval carries no
|
|
4359
|
+
// usage meter (source.metered explicitly null) PRESENTS as error, so the
|
|
4360
|
+
// connections list shows the red state and the merchant knows to click in
|
|
4361
|
+
// — where the Fix-order-billing card and the billing Issue explain the
|
|
4362
|
+
// click. The STORED status stays active on purpose: serving and tracking
|
|
4363
|
+
// gate on it, and the orders recorded while the merchant fixes the plan
|
|
4364
|
+
// are the ones billed afterward.
|
|
4365
|
+
status: (data2) => {
|
|
4366
|
+
var _a;
|
|
4367
|
+
return (data2 == null ? void 0 : data2.status) === "active" && ((_a = data2 == null ? void 0 : data2.source) == null ? void 0 : _a.metered) === null ? "error" : data2 == null ? void 0 : data2.status;
|
|
4368
|
+
},
|
|
4360
4369
|
// Step types name the CAPABILITY, not this vendor. A second store platform
|
|
4361
4370
|
// implements the same four commerce steps, and the connection on the step
|
|
4362
4371
|
// says which store it runs against — so a merchant sees one "Create
|
|
@@ -4467,19 +4476,17 @@ var shopify_default2 = {
|
|
|
4467
4476
|
//
|
|
4468
4477
|
// Scope drift is NOT here: drawbridge-sync writes it onto the connection
|
|
4469
4478
|
// document, and the document's own warnings render beside these.
|
|
4470
|
-
// Both cards
|
|
4471
|
-
//
|
|
4472
|
-
//
|
|
4473
|
-
//
|
|
4474
|
-
// can perform for a merchant.
|
|
4479
|
+
// Both cards send the merchant INTO THE APP via the store link already on
|
|
4480
|
+
// this page — the App Home is where the issue renders (its error section)
|
|
4481
|
+
// and where the fix runs (the release-then-reselect flow). No dashboard
|
|
4482
|
+
// button: two entry points into a cancel flow is two ways to get it wrong.
|
|
4475
4483
|
tasks: (data2) => {
|
|
4476
4484
|
var _a;
|
|
4477
4485
|
return [
|
|
4478
4486
|
...(data2 == null ? void 0 : data2.status) === "pending" ? [
|
|
4479
4487
|
{
|
|
4480
|
-
|
|
4481
|
-
|
|
4482
|
-
title: "Approve your plan",
|
|
4488
|
+
message: "Open the Drawbridge app in your Shopify admin and choose your plan. The connection activates once Shopify confirms it.",
|
|
4489
|
+
title: "Choose your plan",
|
|
4483
4490
|
type: "warning"
|
|
4484
4491
|
}
|
|
4485
4492
|
] : [],
|
|
@@ -4492,8 +4499,7 @@ var shopify_default2 = {
|
|
|
4492
4499
|
// nagging on silence.
|
|
4493
4500
|
...(data2 == null ? void 0 : data2.status) === "active" && ((_a = data2 == null ? void 0 : data2.source) == null ? void 0 : _a.metered) === null ? [
|
|
4494
4501
|
{
|
|
4495
|
-
|
|
4496
|
-
message: "Order billing isn't set up for this store, so campaign-attributed orders aren't being charged. You'll need to reselect your plan on Shopify and approve it to fix this.",
|
|
4502
|
+
message: "Order billing isn't set up for this store, so campaign-attributed orders aren't being charged. Open the Drawbridge app in your Shopify admin \u2014 it shows this issue and walks you through reselecting your plan.",
|
|
4497
4503
|
title: "Fix order billing",
|
|
4498
4504
|
type: "error"
|
|
4499
4505
|
}
|
|
@@ -5101,6 +5107,11 @@ var publicConnectionKeys = Object.freeze([
|
|
|
5101
5107
|
"settings",
|
|
5102
5108
|
"shop",
|
|
5103
5109
|
"slug",
|
|
5110
|
+
// Vendor identity plus the metered billing stamp — domain, id, label,
|
|
5111
|
+
// metered — no credentials live here (those are the encrypted settings
|
|
5112
|
+
// blob). The status and tasks hooks pivot on source.metered, so stripping
|
|
5113
|
+
// it here left the presented status blind to the one state it must show.
|
|
5114
|
+
"source",
|
|
5104
5115
|
"status",
|
|
5105
5116
|
"tasks",
|
|
5106
5117
|
"title",
|
package/dist/providers.cjs
CHANGED
|
@@ -4353,9 +4353,18 @@ var shopify_default2 = {
|
|
|
4353
4353
|
// there is nothing further to choose. `shop` absent means the install did not
|
|
4354
4354
|
// finish, which is a credential problem rather than a setup one, so the
|
|
4355
4355
|
// stored status already says so.
|
|
4356
|
-
//
|
|
4357
|
-
//
|
|
4358
|
-
|
|
4356
|
+
//
|
|
4357
|
+
// ONE presentation downgrade: an ACTIVE store whose approval carries no
|
|
4358
|
+
// usage meter (source.metered explicitly null) PRESENTS as error, so the
|
|
4359
|
+
// connections list shows the red state and the merchant knows to click in
|
|
4360
|
+
// — where the Fix-order-billing card and the billing Issue explain the
|
|
4361
|
+
// click. The STORED status stays active on purpose: serving and tracking
|
|
4362
|
+
// gate on it, and the orders recorded while the merchant fixes the plan
|
|
4363
|
+
// are the ones billed afterward.
|
|
4364
|
+
status: (data2) => {
|
|
4365
|
+
var _a;
|
|
4366
|
+
return (data2 == null ? void 0 : data2.status) === "active" && ((_a = data2 == null ? void 0 : data2.source) == null ? void 0 : _a.metered) === null ? "error" : data2 == null ? void 0 : data2.status;
|
|
4367
|
+
},
|
|
4359
4368
|
// Step types name the CAPABILITY, not this vendor. A second store platform
|
|
4360
4369
|
// implements the same four commerce steps, and the connection on the step
|
|
4361
4370
|
// says which store it runs against — so a merchant sees one "Create
|
|
@@ -4466,19 +4475,17 @@ var shopify_default2 = {
|
|
|
4466
4475
|
//
|
|
4467
4476
|
// Scope drift is NOT here: drawbridge-sync writes it onto the connection
|
|
4468
4477
|
// document, and the document's own warnings render beside these.
|
|
4469
|
-
// Both cards
|
|
4470
|
-
//
|
|
4471
|
-
//
|
|
4472
|
-
//
|
|
4473
|
-
// can perform for a merchant.
|
|
4478
|
+
// Both cards send the merchant INTO THE APP via the store link already on
|
|
4479
|
+
// this page — the App Home is where the issue renders (its error section)
|
|
4480
|
+
// and where the fix runs (the release-then-reselect flow). No dashboard
|
|
4481
|
+
// button: two entry points into a cancel flow is two ways to get it wrong.
|
|
4474
4482
|
tasks: (data2) => {
|
|
4475
4483
|
var _a;
|
|
4476
4484
|
return [
|
|
4477
4485
|
...(data2 == null ? void 0 : data2.status) === "pending" ? [
|
|
4478
4486
|
{
|
|
4479
|
-
|
|
4480
|
-
|
|
4481
|
-
title: "Approve your plan",
|
|
4487
|
+
message: "Open the Drawbridge app in your Shopify admin and choose your plan. The connection activates once Shopify confirms it.",
|
|
4488
|
+
title: "Choose your plan",
|
|
4482
4489
|
type: "warning"
|
|
4483
4490
|
}
|
|
4484
4491
|
] : [],
|
|
@@ -4491,8 +4498,7 @@ var shopify_default2 = {
|
|
|
4491
4498
|
// nagging on silence.
|
|
4492
4499
|
...(data2 == null ? void 0 : data2.status) === "active" && ((_a = data2 == null ? void 0 : data2.source) == null ? void 0 : _a.metered) === null ? [
|
|
4493
4500
|
{
|
|
4494
|
-
|
|
4495
|
-
message: "Order billing isn't set up for this store, so campaign-attributed orders aren't being charged. You'll need to reselect your plan on Shopify and approve it to fix this.",
|
|
4501
|
+
message: "Order billing isn't set up for this store, so campaign-attributed orders aren't being charged. Open the Drawbridge app in your Shopify admin \u2014 it shows this issue and walks you through reselecting your plan.",
|
|
4496
4502
|
title: "Fix order billing",
|
|
4497
4503
|
type: "error"
|
|
4498
4504
|
}
|
|
@@ -5017,6 +5023,11 @@ var publicConnectionKeys = Object.freeze([
|
|
|
5017
5023
|
"settings",
|
|
5018
5024
|
"shop",
|
|
5019
5025
|
"slug",
|
|
5026
|
+
// Vendor identity plus the metered billing stamp — domain, id, label,
|
|
5027
|
+
// metered — no credentials live here (those are the encrypted settings
|
|
5028
|
+
// blob). The status and tasks hooks pivot on source.metered, so stripping
|
|
5029
|
+
// it here left the presented status blind to the one state it must show.
|
|
5030
|
+
"source",
|
|
5020
5031
|
"status",
|
|
5021
5032
|
"tasks",
|
|
5022
5033
|
"title",
|
package/dist/providers.js
CHANGED
|
@@ -4309,9 +4309,18 @@ var shopify_default2 = {
|
|
|
4309
4309
|
// there is nothing further to choose. `shop` absent means the install did not
|
|
4310
4310
|
// finish, which is a credential problem rather than a setup one, so the
|
|
4311
4311
|
// stored status already says so.
|
|
4312
|
-
//
|
|
4313
|
-
//
|
|
4314
|
-
|
|
4312
|
+
//
|
|
4313
|
+
// ONE presentation downgrade: an ACTIVE store whose approval carries no
|
|
4314
|
+
// usage meter (source.metered explicitly null) PRESENTS as error, so the
|
|
4315
|
+
// connections list shows the red state and the merchant knows to click in
|
|
4316
|
+
// — where the Fix-order-billing card and the billing Issue explain the
|
|
4317
|
+
// click. The STORED status stays active on purpose: serving and tracking
|
|
4318
|
+
// gate on it, and the orders recorded while the merchant fixes the plan
|
|
4319
|
+
// are the ones billed afterward.
|
|
4320
|
+
status: (data2) => {
|
|
4321
|
+
var _a;
|
|
4322
|
+
return (data2 == null ? void 0 : data2.status) === "active" && ((_a = data2 == null ? void 0 : data2.source) == null ? void 0 : _a.metered) === null ? "error" : data2 == null ? void 0 : data2.status;
|
|
4323
|
+
},
|
|
4315
4324
|
// Step types name the CAPABILITY, not this vendor. A second store platform
|
|
4316
4325
|
// implements the same four commerce steps, and the connection on the step
|
|
4317
4326
|
// says which store it runs against — so a merchant sees one "Create
|
|
@@ -4422,19 +4431,17 @@ var shopify_default2 = {
|
|
|
4422
4431
|
//
|
|
4423
4432
|
// Scope drift is NOT here: drawbridge-sync writes it onto the connection
|
|
4424
4433
|
// document, and the document's own warnings render beside these.
|
|
4425
|
-
// Both cards
|
|
4426
|
-
//
|
|
4427
|
-
//
|
|
4428
|
-
//
|
|
4429
|
-
// can perform for a merchant.
|
|
4434
|
+
// Both cards send the merchant INTO THE APP via the store link already on
|
|
4435
|
+
// this page — the App Home is where the issue renders (its error section)
|
|
4436
|
+
// and where the fix runs (the release-then-reselect flow). No dashboard
|
|
4437
|
+
// button: two entry points into a cancel flow is two ways to get it wrong.
|
|
4430
4438
|
tasks: (data2) => {
|
|
4431
4439
|
var _a;
|
|
4432
4440
|
return [
|
|
4433
4441
|
...(data2 == null ? void 0 : data2.status) === "pending" ? [
|
|
4434
4442
|
{
|
|
4435
|
-
|
|
4436
|
-
|
|
4437
|
-
title: "Approve your plan",
|
|
4443
|
+
message: "Open the Drawbridge app in your Shopify admin and choose your plan. The connection activates once Shopify confirms it.",
|
|
4444
|
+
title: "Choose your plan",
|
|
4438
4445
|
type: "warning"
|
|
4439
4446
|
}
|
|
4440
4447
|
] : [],
|
|
@@ -4447,8 +4454,7 @@ var shopify_default2 = {
|
|
|
4447
4454
|
// nagging on silence.
|
|
4448
4455
|
...(data2 == null ? void 0 : data2.status) === "active" && ((_a = data2 == null ? void 0 : data2.source) == null ? void 0 : _a.metered) === null ? [
|
|
4449
4456
|
{
|
|
4450
|
-
|
|
4451
|
-
message: "Order billing isn't set up for this store, so campaign-attributed orders aren't being charged. You'll need to reselect your plan on Shopify and approve it to fix this.",
|
|
4457
|
+
message: "Order billing isn't set up for this store, so campaign-attributed orders aren't being charged. Open the Drawbridge app in your Shopify admin \u2014 it shows this issue and walks you through reselecting your plan.",
|
|
4452
4458
|
title: "Fix order billing",
|
|
4453
4459
|
type: "error"
|
|
4454
4460
|
}
|
|
@@ -4973,6 +4979,11 @@ var publicConnectionKeys = Object.freeze([
|
|
|
4973
4979
|
"settings",
|
|
4974
4980
|
"shop",
|
|
4975
4981
|
"slug",
|
|
4982
|
+
// Vendor identity plus the metered billing stamp — domain, id, label,
|
|
4983
|
+
// metered — no credentials live here (those are the encrypted settings
|
|
4984
|
+
// blob). The status and tasks hooks pivot on source.metered, so stripping
|
|
4985
|
+
// it here left the presented status blind to the one state it must show.
|
|
4986
|
+
"source",
|
|
4976
4987
|
"status",
|
|
4977
4988
|
"tasks",
|
|
4978
4989
|
"title",
|
package/package.json
CHANGED