@burdenoff/cli-sdk 2026.1102.2 → 2026.1102.4

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.
Files changed (51) hide show
  1. package/dist/modules/adaptercloud/index.cjs +6 -3
  2. package/dist/modules/adaptercloud/index.js +6 -3
  3. package/dist/modules/assethandler/index.cjs +22 -57
  4. package/dist/modules/assethandler/index.js +27 -62
  5. package/dist/modules/atheletebridge/index.cjs +33 -19
  6. package/dist/modules/atheletebridge/index.js +32 -18
  7. package/dist/modules/buildmyiq/index.cjs +64 -67
  8. package/dist/modules/buildmyiq/index.js +60 -63
  9. package/dist/modules/comradecircle/index.cjs +23 -15
  10. package/dist/modules/comradecircle/index.js +19 -11
  11. package/dist/modules/coolandlovely/index.cjs +27 -14
  12. package/dist/modules/coolandlovely/index.js +29 -16
  13. package/dist/modules/crewfoundry/index.cjs +63 -116
  14. package/dist/modules/crewfoundry/index.js +62 -115
  15. package/dist/modules/ecoimpacthub/index.cjs +19 -9
  16. package/dist/modules/ecoimpacthub/index.js +19 -9
  17. package/dist/modules/eventfullymanaged/index.cjs +77 -77
  18. package/dist/modules/eventfullymanaged/index.js +78 -78
  19. package/dist/modules/govcitizenhub/index.cjs +7 -4
  20. package/dist/modules/govcitizenhub/index.js +7 -4
  21. package/dist/modules/headshotmarketing/index.cjs +92 -261
  22. package/dist/modules/headshotmarketing/index.js +94 -263
  23. package/dist/modules/hookmovies/index.cjs +17 -6
  24. package/dist/modules/hookmovies/index.js +20 -9
  25. package/dist/modules/housingvista/index.cjs +31 -24
  26. package/dist/modules/housingvista/index.js +26 -19
  27. package/dist/modules/intelwatchtower/index.cjs +24 -12
  28. package/dist/modules/intelwatchtower/index.js +24 -12
  29. package/dist/modules/kadaikodi/index.cjs +56 -90
  30. package/dist/modules/kadaikodi/index.js +60 -94
  31. package/dist/modules/labsofscience/index.cjs +8 -4
  32. package/dist/modules/labsofscience/index.js +8 -4
  33. package/dist/modules/manufacturedops/index.cjs +35 -22
  34. package/dist/modules/manufacturedops/index.js +34 -21
  35. package/dist/modules/movethewheels/index.cjs +103 -231
  36. package/dist/modules/movethewheels/index.js +103 -231
  37. package/dist/modules/planmagnet/index.cjs +21 -21
  38. package/dist/modules/planmagnet/index.js +32 -32
  39. package/dist/modules/proserviceworld/index.cjs +17 -12
  40. package/dist/modules/proserviceworld/index.js +17 -12
  41. package/dist/modules/subscriberbot/index.cjs +43 -19
  42. package/dist/modules/subscriberbot/index.js +46 -22
  43. package/dist/modules/technospam/index.cjs +17 -8
  44. package/dist/modules/technospam/index.js +17 -8
  45. package/dist/modules/theculturepost/index.cjs +27 -22
  46. package/dist/modules/theculturepost/index.js +31 -26
  47. package/dist/modules/theglobalfuel/index.cjs +65 -60
  48. package/dist/modules/theglobalfuel/index.js +65 -60
  49. package/dist/modules/timecampus/index.cjs +31 -85
  50. package/dist/modules/timecampus/index.js +32 -86
  51. package/package.json +1 -1
@@ -1,12 +1,12 @@
1
- 'use strict';require('graphql-request'),require('cross-fetch'),require('commander');var m=class extends Error{exitCode;hint;constructor(o,t){super(o),this.name="CliUserError",this.exitCode=t?.exitCode??1,this.hint=t?.hint;}},E=class extends m{constructor(o,t){super(o,{exitCode:2,hint:t?.hint??"Run `<product> auth login` to authenticate."}),this.name="CliAuthError";}},h=class extends Error{cause;constructor(o,t){super(o),this.name="CliInternalError",this.cause=t;}};var A=null;function O(r){A=r;}function I(){if(!A)throw new h("vibecontrols module helpers used before setHelpersContext was called");return A}function At(){let r=I();if(!r.auth.isAuthenticated())throw new E("Authentication required.",{hint:`Run \`${r.productName} auth login\` to authenticate.`})}async function a(r,o){return At(),I().gql.workspace.request(r,o)}async function w(r,o){return I().gql.workspaceAuthOnly.request(r,o)}function i(r){let o=r instanceof Error?r.message:String(r);throw new m(o)}function s(r,o,t){I().output.formatAndOutput(r,o,t);}function d(r){I().output.printSuccess(r);}function y(r){return I().output.formatDate(r)}function p(r,o){return I().output.truncate(r,o)}var R=`
1
+ 'use strict';require('graphql-request'),require('cross-fetch'),require('commander');var m=class extends Error{exitCode;hint;constructor(o,t){super(o),this.name="CliUserError",this.exitCode=t?.exitCode??1,this.hint=t?.hint;}},I=class extends m{constructor(o,t){super(o,{exitCode:2,hint:t?.hint??"Run `<product> auth login` to authenticate."}),this.name="CliAuthError";}},C=class extends Error{cause;constructor(o,t){super(o),this.name="CliInternalError",this.cause=t;}};var T=null;function k(r){T=r;}function h(){if(!T)throw new C("vibecontrols module helpers used before setHelpersContext was called");return T}function Tt(){let r=h();if(!r.auth.isAuthenticated())throw new I("Authentication required.",{hint:`Run \`${r.productName} auth login\` to authenticate.`})}async function a(r,o){return Tt(),h().gql.workspace.request(r,o)}async function A(r,o){return h().gql.workspaceAuthOnly.request(r,o)}function i(r){let o=r instanceof Error?r.message:String(r);throw new m(o)}function s(r,o,t){h().output.formatAndOutput(r,o,t);}function d(r){h().output.printSuccess(r);}function y(r){return h().output.formatDate(r)}function p(r,o){return h().output.truncate(r,o)}var O=`
2
2
  query TheGetAsset($id: ID!) {
3
3
  theAsset(id: $id) {
4
- id name code kind commodity status location latitude longitude
5
- capacityPerDay capacityUnit workingInterestPct operatorLeadId tags
6
- commissionedAt decommissionedAt createdAt updatedAt workspaceId
4
+ id name code kind commodity status location latitude longitude capacityPerDay
5
+ capacityUnit workingInterestPct operatorLeadId commissionedAt decommissionedAt createdAt
6
+ updatedAt workspaceId
7
7
  }
8
8
  }
9
- `,v=`
9
+ `,R=`
10
10
  query TheListAssets(
11
11
  $commodity: TheCommodityType
12
12
  $kind: TheAssetKind
@@ -26,42 +26,39 @@
26
26
  pageInfo { cursor hasMore }
27
27
  }
28
28
  }
29
- `,x=`
29
+ `,v=`
30
30
  mutation TheCreateAsset($input: TheCreateAssetInput!) {
31
31
  theCreateAsset(input: $input) {
32
- id name code kind commodity status location latitude longitude
33
- capacityPerDay capacityUnit workingInterestPct operatorLeadId tags
34
- commissionedAt createdAt workspaceId
32
+ id name code kind commodity status location latitude longitude capacityPerDay
33
+ capacityUnit workingInterestPct operatorLeadId commissionedAt createdAt workspaceId
35
34
  }
36
35
  }
37
- `,b=`
36
+ `,x=`
38
37
  mutation TheUpdateAsset($id: ID!, $input: TheUpdateAssetInput!) {
39
38
  theUpdateAsset(id: $id, input: $input) {
40
- id name code kind commodity status location latitude longitude
41
- capacityPerDay capacityUnit workingInterestPct operatorLeadId tags
42
- commissionedAt decommissionedAt updatedAt
39
+ id name code kind commodity status location latitude longitude capacityPerDay
40
+ capacityUnit workingInterestPct operatorLeadId commissionedAt decommissionedAt updatedAt
43
41
  }
44
42
  }
45
- `,D=`
43
+ `,b=`
46
44
  mutation TheTransitionAsset($id: ID!, $status: TheAssetStatus!) {
47
45
  theTransitionAsset(id: $id, status: $status) {
48
46
  id name status updatedAt
49
47
  }
50
48
  }
51
- `,L=`
49
+ `,D=`
52
50
  mutation TheRetireAsset($id: ID!) {
53
51
  theRetireAsset(id: $id)
54
52
  }
55
- `,P=`
53
+ `,L=`
56
54
  query TheGetContract($id: ID!) {
57
55
  theContract(id: $id) {
58
- id reference counterparty commodity side status pricingBasis
59
- pricePerUnit priceIndex currency unit contractedVolume deliveredVolume
60
- deliveryLocation startDate endDate signedAt notes tags
61
- createdAt updatedAt workspaceId
56
+ id reference counterparty commodity side status pricingBasis pricePerUnit priceIndex
57
+ currency unit contractedVolume deliveredVolume deliveryLocation startDate endDate
58
+ signedAt notes createdAt updatedAt workspaceId
62
59
  }
63
60
  }
64
- `,$=`
61
+ `,P=`
65
62
  query TheListContracts(
66
63
  $commodity: TheCommodityType
67
64
  $side: TheContractSide
@@ -81,50 +78,52 @@
81
78
  pageInfo { cursor hasMore }
82
79
  }
83
80
  }
84
- `,N=`
81
+ `,$=`
85
82
  mutation TheCreateContract($input: TheCreateOfftakeContractInput!) {
86
83
  theCreateContract(input: $input) {
87
- id reference counterparty commodity side status pricingBasis
88
- pricePerUnit priceIndex currency unit contractedVolume deliveredVolume
89
- deliveryLocation startDate endDate notes tags createdAt
84
+ id reference counterparty commodity side status pricingBasis pricePerUnit priceIndex
85
+ currency unit contractedVolume deliveredVolume deliveryLocation startDate endDate notes
86
+ createdAt
90
87
  }
91
88
  }
92
- `,_=`
89
+ `,N=`
93
90
  mutation TheUpdateContract($id: ID!, $input: TheUpdateOfftakeContractInput!) {
94
91
  theUpdateContract(id: $id, input: $input) {
95
- id reference counterparty commodity side status pricingBasis
96
- pricePerUnit priceIndex currency unit contractedVolume deliveredVolume
97
- deliveryLocation startDate endDate notes tags updatedAt
92
+ id reference counterparty commodity side status pricingBasis pricePerUnit priceIndex
93
+ currency unit contractedVolume deliveredVolume deliveryLocation startDate endDate notes
94
+ updatedAt
98
95
  }
99
96
  }
100
- `,U=`
97
+ `,_=`
101
98
  mutation TheTransitionContract($id: ID!, $status: TheContractStatus!) {
102
99
  theTransitionContract(id: $id, status: $status) {
103
100
  id reference status signedAt updatedAt
104
101
  }
105
102
  }
106
- `,q=`
103
+ `,U=`
107
104
  query TheListShipments($contractId: ID, $status: TheShipmentStatus) {
108
105
  theListShipments(contractId: $contractId, status: $status) {
109
- id reference contractId status mode carrier origin destination
110
- volume unit scheduledAt departedAt deliveredAt notes
111
- createdAt updatedAt workspaceId
106
+ items {
107
+ id reference contractId status mode carrier origin destination volume unit scheduledAt
108
+ departedAt deliveredAt notes createdAt updatedAt workspaceId
109
+ }
110
+ pageInfo { cursor hasMore }
112
111
  }
113
112
  }
114
- `,F=`
113
+ `,q=`
115
114
  mutation TheScheduleShipment($input: TheCreateShipmentInput!) {
116
115
  theScheduleShipment(input: $input) {
117
116
  id reference contractId status mode carrier origin destination
118
117
  volume unit scheduledAt notes createdAt workspaceId
119
118
  }
120
119
  }
121
- `,V=`
120
+ `,F=`
122
121
  mutation TheDeliverShipment($id: ID!) {
123
122
  theDeliverShipment(id: $id) {
124
123
  id reference contractId status mode volume unit deliveredAt updatedAt
125
124
  }
126
125
  }
127
- `,M=`
126
+ `,V=`
128
127
  query TheListInventoryLots(
129
128
  $commodity: TheCommodityType
130
129
  $status: TheInventoryStatus
@@ -142,20 +141,20 @@
142
141
  pageInfo { cursor hasMore }
143
142
  }
144
143
  }
145
- `,G=`
144
+ `,M=`
146
145
  mutation TheCreateInventoryLot($input: TheCreateInventoryLotInput!) {
147
146
  theCreateInventoryLot(input: $input) {
148
147
  id lotCode commodity status quantity unit unitValue currency
149
148
  grade location assetId producedAt notes createdAt workspaceId
150
149
  }
151
150
  }
152
- `,W=`
151
+ `,G=`
153
152
  mutation TheSetInventoryLotStatus($id: ID!, $status: TheInventoryStatus!) {
154
153
  theSetInventoryLotStatus(id: $id, status: $status) {
155
154
  id lotCode commodity status quantity unit updatedAt
156
155
  }
157
156
  }
158
- `,B=`
157
+ `,W=`
159
158
  query TheListProductionRecords($assetId: ID, $pagination: PaginationInput) {
160
159
  theListProductionRecords(assetId: $assetId, pagination: $pagination) {
161
160
  items {
@@ -165,14 +164,14 @@
165
164
  pageInfo { cursor hasMore }
166
165
  }
167
166
  }
168
- `,H=`
167
+ `,B=`
169
168
  mutation TheRecordProduction($input: TheRecordProductionInput!) {
170
169
  theRecordProduction(input: $input) {
171
170
  id assetId volume unit grade downtimeHours periodStart periodEnd
172
171
  notes createdAt workspaceId
173
172
  }
174
173
  }
175
- `,j=`
174
+ `,H=`
176
175
  query TheListEmissionRecords(
177
176
  $assetId: ID
178
177
  $scope: TheEmissionScope
@@ -186,66 +185,72 @@
186
185
  pageInfo { cursor hasMore }
187
186
  }
188
187
  }
189
- `,Y=`
188
+ `,j=`
190
189
  mutation TheRecordEmission($input: TheRecordEmissionInput!) {
191
190
  theRecordEmission(input: $input) {
192
191
  id assetId scope co2eTonnes source methodology periodStart periodEnd
193
192
  verified notes createdAt workspaceId
194
193
  }
195
194
  }
196
- `,z=`
195
+ `,Y=`
197
196
  mutation TheVerifyEmission($id: ID!) {
198
197
  theVerifyEmission(id: $id) {
199
198
  id assetId scope co2eTonnes verified verifiedAt updatedAt
200
199
  }
201
200
  }
202
- `,K=`
201
+ `,z=`
203
202
  query TheListReserveEstimates($assetId: ID, $category: TheReserveCategory) {
204
203
  theListReserveEstimates(assetId: $assetId, category: $category) {
205
- id assetId category recoverable recoveryFactor unit asOfDate
206
- methodology notes createdAt updatedAt workspaceId
204
+ items {
205
+ id assetId category recoverable recoveryFactor unit asOfDate methodology notes
206
+ createdAt updatedAt workspaceId
207
+ }
208
+ pageInfo { cursor hasMore }
207
209
  }
208
210
  }
209
- `,J=`
211
+ `,K=`
210
212
  mutation TheCreateReserveEstimate($input: TheCreateReserveEstimateInput!) {
211
213
  theCreateReserveEstimate(input: $input) {
212
214
  id assetId category recoverable recoveryFactor unit asOfDate
213
215
  methodology notes createdAt workspaceId
214
216
  }
215
217
  }
216
- `,X=`
218
+ `,J=`
217
219
  query TheGetComplianceCert($id: ID!) {
218
220
  theComplianceCert(id: $id) {
219
- id title category status authority certNumber assetId ownerId
220
- issuedAt expiresAt notes tags createdAt updatedAt workspaceId
221
+ id title category status authority certNumber assetId ownerId issuedAt expiresAt notes
222
+ createdAt updatedAt workspaceId
221
223
  }
222
224
  }
223
- `,Q=`
225
+ `,X=`
224
226
  query TheListComplianceCerts(
225
227
  $assetId: ID
226
228
  $category: TheComplianceCategory
227
229
  $status: TheComplianceStatus
228
230
  ) {
229
231
  theListComplianceCerts(assetId: $assetId, category: $category, status: $status) {
230
- id title category status authority certNumber assetId ownerId
231
- issuedAt expiresAt createdAt
232
+ items {
233
+ id title category status authority certNumber assetId ownerId issuedAt expiresAt
234
+ createdAt
235
+ }
236
+ pageInfo { cursor hasMore }
232
237
  }
233
238
  }
234
- `,Z=`
239
+ `,Q=`
235
240
  mutation TheCreateComplianceCert($input: TheCreateComplianceCertInput!) {
236
241
  theCreateComplianceCert(input: $input) {
237
- id title category status authority certNumber assetId ownerId
238
- issuedAt expiresAt notes tags createdAt workspaceId
242
+ id title category status authority certNumber assetId ownerId issuedAt expiresAt notes
243
+ createdAt workspaceId
239
244
  }
240
245
  }
241
- `,tt=`
246
+ `,Z=`
242
247
  mutation TheTransitionComplianceCert($id: ID!, $status: TheComplianceStatus!) {
243
248
  theTransitionComplianceCert(id: $id, status: $status) {
244
249
  id title status updatedAt
245
250
  }
246
251
  }
247
- `,et=`
252
+ `,tt=`
248
253
  query TheHealth {
249
254
  theHealth
250
255
  }
251
- `;function l(r){let o=Number.parseInt(r,10);if(Number.isNaN(o))throw new m(`Expected an integer but got "${r}"`);return o}function c(r){let o=Number.parseFloat(r);if(Number.isNaN(o))throw new m(`Expected a number but got "${r}"`);return o}function f(r,o){let t={};return r!==void 0&&(t.limit=r),o!==void 0&&(t.offset=o),t}function nt(r){let o=r.command("assets").description("Theglobalfuel upstream assets");o.command("list").description("List assets").option("--commodity <c>","Filter by commodity type").option("--kind <k>","Filter by asset kind").option("--status <s>","Filter by asset status").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(v,{commodity:t.commodity?t.commodity.toUpperCase():void 0,kind:t.kind?t.kind.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:f(t.limit,t.offset)});s(t,e.theListAssets.items,{headers:["ID","Name","Kind","Commodity","Status","Capacity/Day"],rows:e.theListAssets.items.map(n=>[p(n.id,12),n.name,n.kind,n.commodity,n.status,`${n.capacityPerDay??0} ${n.capacityUnit??""}`.trim()])});}catch(e){i(e);}}),o.command("get").description("Get an asset by id").argument("<id>","Asset ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(R,{id:t});if(!n.theAsset)throw new m(`Asset ${t} not found`);s(e,n.theAsset);}catch(n){i(n);}}),o.command("create").description("Create an asset").requiredOption("--name <name>","Asset name").requiredOption("--commodity <c>","Commodity type (e.g. CRUDE_OIL, NATURAL_GAS, LITHIUM)").option("--kind <k>","Asset kind (default WELL)").option("--code <code>","Asset code").option("--status <s>","Asset status (default EXPLORATION)").option("--location <s>","Location description").option("--latitude <n>","Latitude",c).option("--longitude <n>","Longitude",c).option("--capacity-per-day <n>","Capacity per day",c).option("--capacity-unit <u>","Capacity unit (default BARRELS)").option("--working-interest-pct <n>","Working interest %",c).option("--operator-lead <id>","Operator lead user ID").option("--commissioned-at <iso>","Commissioned date (ISO)").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,commodity:t.commodity.toUpperCase()};t.kind&&(e.kind=t.kind.toUpperCase()),t.code&&(e.code=t.code),t.status&&(e.status=t.status.toUpperCase()),t.location&&(e.location=t.location),t.latitude!==void 0&&(e.latitude=t.latitude),t.longitude!==void 0&&(e.longitude=t.longitude),t.capacityPerDay!==void 0&&(e.capacityPerDay=t.capacityPerDay),t.capacityUnit&&(e.capacityUnit=t.capacityUnit.toUpperCase()),t.workingInterestPct!==void 0&&(e.workingInterestPct=t.workingInterestPct),t.operatorLead&&(e.operatorLeadId=t.operatorLead),t.commissionedAt&&(e.commissionedAt=t.commissionedAt),t.tags&&(e.tags=t.tags.split(",").map(g=>g.trim()));let n=await a(x,{input:e});d(`Asset created: ${n.theCreateAsset.name}`),s(t,n.theCreateAsset);}catch(e){i(e);}}),o.command("update").description("Update an asset").argument("<id>","Asset ID").option("--name <name>","Asset name").option("--commodity <c>","Commodity type").option("--kind <k>","Asset kind").option("--code <code>","Asset code").option("--location <s>","Location description").option("--latitude <n>","Latitude",c).option("--longitude <n>","Longitude",c).option("--capacity-per-day <n>","Capacity per day",c).option("--capacity-unit <u>","Capacity unit").option("--working-interest-pct <n>","Working interest %",c).option("--operator-lead <id>","Operator lead user ID").option("--commissioned-at <iso>","Commissioned date (ISO)").option("--decommissioned-at <iso>","Decommissioned date (ISO)").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.commodity&&(n.commodity=e.commodity.toUpperCase()),e.kind&&(n.kind=e.kind.toUpperCase()),e.code&&(n.code=e.code),e.location!==void 0&&(n.location=e.location),e.latitude!==void 0&&(n.latitude=e.latitude),e.longitude!==void 0&&(n.longitude=e.longitude),e.capacityPerDay!==void 0&&(n.capacityPerDay=e.capacityPerDay),e.capacityUnit&&(n.capacityUnit=e.capacityUnit.toUpperCase()),e.workingInterestPct!==void 0&&(n.workingInterestPct=e.workingInterestPct),e.operatorLead&&(n.operatorLeadId=e.operatorLead),e.commissionedAt&&(n.commissionedAt=e.commissionedAt),e.decommissionedAt&&(n.decommissionedAt=e.decommissionedAt),e.tags&&(n.tags=e.tags.split(",").map(T=>T.trim())),!Object.keys(n).length)throw new m("No updates specified");let g=await a(b,{id:t,input:n});d("Asset updated"),s(e,g.theUpdateAsset);}catch(n){i(n);}}),o.command("transition").description("Advance an asset through its lifecycle").argument("<id>","Asset ID").requiredOption("--status <s>","EXPLORATION|APPRAISAL|DEVELOPMENT|PRODUCING|SUSPENDED|DECOMMISSIONING|RETIRED").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(D,{id:t,status:e.status.toUpperCase()});d(`Asset transitioned to ${n.theTransitionAsset.status}`),s(e,n.theTransitionAsset);}catch(n){i(n);}}),o.command("retire").description("Retire (delete) an asset").argument("<id>","Asset ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(L,{id:t});d(n.theRetireAsset?`Asset ${t} retired`:`Asset ${t} not retired`),s(e,{retired:n.theRetireAsset});}catch(n){i(n);}});}function ot(r){let o=r.command("contracts").description("Theglobalfuel offtake contracts");o.command("list").description("List offtake contracts").option("--commodity <c>","Filter by commodity type").option("--side <s>","BUY|SELL").option("--status <s>","Filter by contract status").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a($,{commodity:t.commodity?t.commodity.toUpperCase():void 0,side:t.side?t.side.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:f(t.limit,t.offset)});s(t,e.theListContracts.items,{headers:["ID","Reference","Counterparty","Commodity","Side","Status","Volume"],rows:e.theListContracts.items.map(n=>[p(n.id,12),n.reference,n.counterparty,n.commodity,n.side,n.status,`${n.deliveredVolume??0}/${n.contractedVolume??0}`])});}catch(e){i(e);}}),o.command("get").description("Get an offtake contract by id").argument("<id>","Contract ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(P,{id:t});if(!n.theContract)throw new m(`Contract ${t} not found`);s(e,n.theContract);}catch(n){i(n);}}),o.command("create").description("Create an offtake contract").requiredOption("--reference <r>","Contract reference").requiredOption("--counterparty <c>","Counterparty name").requiredOption("--commodity <c>","Commodity type").option("--side <s>","BUY|SELL (default SELL)").option("--pricing-basis <p>","FIXED|FORMULA|INDEX_LINKED|SPOT (default FIXED)").option("--price-per-unit <n>","Price per unit",c).option("--price-index <s>","Price index reference").option("--currency <s>","Currency code").option("--unit <u>","Unit (default BARRELS)").option("--contracted-volume <n>","Contracted volume",c).option("--delivery-location <s>","Delivery location").option("--start-date <iso>","Start date (ISO)").option("--end-date <iso>","End date (ISO)").option("--notes <s>","Notes").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={reference:t.reference,counterparty:t.counterparty,commodity:t.commodity.toUpperCase()};t.side&&(e.side=t.side.toUpperCase()),t.pricingBasis&&(e.pricingBasis=t.pricingBasis.toUpperCase()),t.pricePerUnit!==void 0&&(e.pricePerUnit=t.pricePerUnit),t.priceIndex&&(e.priceIndex=t.priceIndex),t.currency&&(e.currency=t.currency),t.unit&&(e.unit=t.unit.toUpperCase()),t.contractedVolume!==void 0&&(e.contractedVolume=t.contractedVolume),t.deliveryLocation&&(e.deliveryLocation=t.deliveryLocation),t.startDate&&(e.startDate=t.startDate),t.endDate&&(e.endDate=t.endDate),t.notes&&(e.notes=t.notes),t.tags&&(e.tags=t.tags.split(",").map(g=>g.trim()));let n=await a(N,{input:e});d(`Contract created: ${n.theCreateContract.reference}`),s(t,n.theCreateContract);}catch(e){i(e);}}),o.command("update").description("Update an offtake contract").argument("<id>","Contract ID").option("--counterparty <c>","Counterparty name").option("--pricing-basis <p>","FIXED|FORMULA|INDEX_LINKED|SPOT").option("--price-per-unit <n>","Price per unit",c).option("--price-index <s>","Price index reference").option("--currency <s>","Currency code").option("--unit <u>","Unit").option("--contracted-volume <n>","Contracted volume",c).option("--delivery-location <s>","Delivery location").option("--start-date <iso>","Start date (ISO)").option("--end-date <iso>","End date (ISO)").option("--notes <s>","Notes").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.counterparty&&(n.counterparty=e.counterparty),e.pricingBasis&&(n.pricingBasis=e.pricingBasis.toUpperCase()),e.pricePerUnit!==void 0&&(n.pricePerUnit=e.pricePerUnit),e.priceIndex&&(n.priceIndex=e.priceIndex),e.currency&&(n.currency=e.currency),e.unit&&(n.unit=e.unit.toUpperCase()),e.contractedVolume!==void 0&&(n.contractedVolume=e.contractedVolume),e.deliveryLocation!==void 0&&(n.deliveryLocation=e.deliveryLocation),e.startDate&&(n.startDate=e.startDate),e.endDate&&(n.endDate=e.endDate),e.notes!==void 0&&(n.notes=e.notes),e.tags&&(n.tags=e.tags.split(",").map(T=>T.trim())),!Object.keys(n).length)throw new m("No updates specified");let g=await a(_,{id:t,input:n});d("Contract updated"),s(e,g.theUpdateContract);}catch(n){i(n);}}),o.command("transition").description("Advance an offtake contract through its lifecycle").argument("<id>","Contract ID").requiredOption("--status <s>","DRAFT|NEGOTIATION|SIGNED|ACTIVE|SUSPENDED|COMPLETED|TERMINATED").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(U,{id:t,status:e.status.toUpperCase()});d(`Contract transitioned to ${n.theTransitionContract.status}`),s(e,n.theTransitionContract);}catch(n){i(n);}});}function rt(r){let o=r.command("shipments").description("Theglobalfuel shipments");o.command("list").description("List shipments").option("--contract <id>","Filter by contract ID").option("--status <s>","SCHEDULED|LOADING|IN_TRANSIT|DELIVERED|CANCELLED").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(q,{contractId:t.contract,status:t.status?t.status.toUpperCase():void 0});s(t,e.theListShipments,{headers:["ID","Reference","Contract","Status","Mode","Volume"],rows:e.theListShipments.map(n=>[p(n.id,12),n.reference,p(n.contractId,12),n.status,n.mode,`${n.volume} ${n.unit}`])});}catch(e){i(e);}}),o.command("schedule").description("Schedule a shipment against a contract").requiredOption("--contract <id>","Contract ID").requiredOption("--reference <r>","Shipment reference").requiredOption("--volume <n>","Volume",c).option("--mode <m>","PIPELINE|TANKER|RAIL|TRUCK|VESSEL_BULK|GRID (default PIPELINE)").option("--unit <u>","Unit (default BARRELS)").option("--carrier <s>","Carrier").option("--origin <s>","Origin").option("--destination <s>","Destination").option("--scheduled-at <iso>","Scheduled date (ISO)").option("--document-file <id>","Document file ID (bill of lading / certificate)").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={contractId:t.contract,reference:t.reference,volume:t.volume};t.mode&&(e.mode=t.mode.toUpperCase()),t.unit&&(e.unit=t.unit.toUpperCase()),t.carrier&&(e.carrier=t.carrier),t.origin&&(e.origin=t.origin),t.destination&&(e.destination=t.destination),t.scheduledAt&&(e.scheduledAt=t.scheduledAt),t.documentFile&&(e.documentFileId=t.documentFile),t.notes&&(e.notes=t.notes);let n=await a(F,{input:e});d(`Shipment scheduled: ${n.theScheduleShipment.reference}`),s(t,n.theScheduleShipment);}catch(e){i(e);}}),o.command("deliver").description("Mark a shipment delivered (rolls volume into the contract's delivered total)").argument("<id>","Shipment ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(V,{id:t});d(`Shipment delivered: ${n.theDeliverShipment.reference}`),s(e,n.theDeliverShipment);}catch(n){i(n);}});}function it(r){let o=r.command("inventory").description("Theglobalfuel inventory lots");o.command("list").description("List inventory lots").option("--commodity <c>","Filter by commodity type").option("--status <s>","AVAILABLE|RESERVED|IN_TRANSIT|CONSUMED|WRITTEN_OFF").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(M,{commodity:t.commodity?t.commodity.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:f(t.limit,t.offset)});s(t,e.theListInventoryLots.items,{headers:["ID","Lot Code","Commodity","Status","Quantity","Unit Value"],rows:e.theListInventoryLots.items.map(n=>[p(n.id,12),n.lotCode,n.commodity,n.status,`${n.quantity} ${n.unit}`,String(n.unitValue??0)])});}catch(e){i(e);}}),o.command("create").description("Create an inventory lot").requiredOption("--lot-code <c>","Lot code").requiredOption("--commodity <c>","Commodity type").requiredOption("--quantity <n>","Quantity",c).option("--unit <u>","Unit (default BARRELS)").option("--unit-value <n>","Unit value",c).option("--currency <s>","Currency code").option("--grade <n>","Grade",c).option("--location <s>","Storage location").option("--asset <id>","Source asset ID").option("--produced-at <iso>","Produced date (ISO)").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={lotCode:t.lotCode,commodity:t.commodity.toUpperCase(),quantity:t.quantity};t.unit&&(e.unit=t.unit.toUpperCase()),t.unitValue!==void 0&&(e.unitValue=t.unitValue),t.currency&&(e.currency=t.currency),t.grade!==void 0&&(e.grade=t.grade),t.location&&(e.location=t.location),t.asset&&(e.assetId=t.asset),t.producedAt&&(e.producedAt=t.producedAt),t.notes&&(e.notes=t.notes);let n=await a(G,{input:e});d(`Inventory lot created: ${n.theCreateInventoryLot.lotCode}`),s(t,n.theCreateInventoryLot);}catch(e){i(e);}}),o.command("set-status").description("Set an inventory lot status").argument("<id>","Inventory lot ID").requiredOption("--status <s>","AVAILABLE|RESERVED|IN_TRANSIT|CONSUMED|WRITTEN_OFF").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(W,{id:t,status:e.status.toUpperCase()});d(`Inventory lot status set to ${n.theSetInventoryLotStatus.status}`),s(e,n.theSetInventoryLotStatus);}catch(n){i(n);}});}function st(r){let o=r.command("production").description("Theglobalfuel production records");o.command("list").description("List production records").option("--asset <id>","Filter by asset ID").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(B,{assetId:t.asset,pagination:f(t.limit,t.offset)});s(t,e.theListProductionRecords.items,{headers:["ID","Asset","Volume","Downtime (h)","Period Start","Period End"],rows:e.theListProductionRecords.items.map(n=>[p(n.id,12),p(n.assetId,12),`${n.volume} ${n.unit}`,String(n.downtimeHours??0),y(n.periodStart),y(n.periodEnd)])});}catch(e){i(e);}}),o.command("record").description("Record a production figure for an asset").requiredOption("--asset <id>","Asset ID").requiredOption("--volume <n>","Produced volume",c).requiredOption("--period-start <iso>","Period start (ISO)").requiredOption("--period-end <iso>","Period end (ISO)").option("--unit <u>","Unit (default BARRELS)").option("--grade <n>","Grade",c).option("--downtime-hours <n>","Downtime hours",c).option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={assetId:t.asset,volume:t.volume,periodStart:t.periodStart,periodEnd:t.periodEnd};t.unit&&(e.unit=t.unit.toUpperCase()),t.grade!==void 0&&(e.grade=t.grade),t.downtimeHours!==void 0&&(e.downtimeHours=t.downtimeHours),t.notes&&(e.notes=t.notes);let n=await a(H,{input:e});d(`Production recorded: ${n.theRecordProduction.volume} ${t.unit??""}`.trim()),s(t,n.theRecordProduction);}catch(e){i(e);}});}function at(r){let o=r.command("emissions").description("Theglobalfuel emission records");o.command("list").description("List emission records").option("--asset <id>","Filter by asset ID").option("--scope <s>","SCOPE_1|SCOPE_2|SCOPE_3").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(j,{assetId:t.asset,scope:t.scope?t.scope.toUpperCase():void 0,pagination:f(t.limit,t.offset)});s(t,e.theListEmissionRecords.items,{headers:["ID","Asset","Scope","CO2e (t)","Source","Verified"],rows:e.theListEmissionRecords.items.map(n=>[p(n.id,12),p(n.assetId??"-",12),n.scope,String(n.co2eTonnes),n.source??"-",n.verified?"yes":"no"])});}catch(e){i(e);}}),o.command("record").description("Record an emission figure").requiredOption("--co2e-tonnes <n>","CO2e tonnes",c).requiredOption("--period-start <iso>","Period start (ISO)").requiredOption("--period-end <iso>","Period end (ISO)").option("--asset <id>","Asset ID").option("--scope <s>","SCOPE_1|SCOPE_2|SCOPE_3 (default SCOPE_1)").option("--source <s>","Emission source").option("--methodology <s>","Methodology").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={co2eTonnes:t.co2eTonnes,periodStart:t.periodStart,periodEnd:t.periodEnd};t.asset&&(e.assetId=t.asset),t.scope&&(e.scope=t.scope.toUpperCase()),t.source&&(e.source=t.source),t.methodology&&(e.methodology=t.methodology),t.notes&&(e.notes=t.notes);let n=await a(Y,{input:e});d(`Emission recorded: ${n.theRecordEmission.co2eTonnes} tCO2e`),s(t,n.theRecordEmission);}catch(e){i(e);}}),o.command("verify").description("Mark an emission figure third-party verified").argument("<id>","Emission record ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(z,{id:t});d("Emission verified"),s(e,n.theVerifyEmission);}catch(n){i(n);}});}function ct(r){let o=r.command("reserves").description("Theglobalfuel reserve estimates");o.command("list").description("List reserve estimates").option("--asset <id>","Filter by asset ID").option("--category <c>","PROVED|PROBABLE|POSSIBLE|CONTINGENT|PROSPECTIVE").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(K,{assetId:t.asset,category:t.category?t.category.toUpperCase():void 0});s(t,e.theListReserveEstimates,{headers:["ID","Asset","Category","Recoverable","Factor","As Of"],rows:e.theListReserveEstimates.map(n=>[p(n.id,12),p(n.assetId,12),n.category,`${n.recoverable} ${n.unit}`,n.recoveryFactor!=null?String(n.recoveryFactor):"-",y(n.asOfDate)])});}catch(e){i(e);}}),o.command("create").description("Create a reserve estimate for an asset").requiredOption("--asset <id>","Asset ID").requiredOption("--recoverable <n>","Recoverable quantity",c).requiredOption("--as-of-date <iso>","As-of date (ISO)").option("--category <c>","PROVED|PROBABLE|POSSIBLE|CONTINGENT|PROSPECTIVE (default PROVED)").option("--recovery-factor <n>","Recovery factor",c).option("--unit <u>","Unit (default BARRELS)").option("--methodology <s>","Methodology").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={assetId:t.asset,recoverable:t.recoverable,asOfDate:t.asOfDate};t.category&&(e.category=t.category.toUpperCase()),t.recoveryFactor!==void 0&&(e.recoveryFactor=t.recoveryFactor),t.unit&&(e.unit=t.unit.toUpperCase()),t.methodology&&(e.methodology=t.methodology),t.notes&&(e.notes=t.notes);let n=await a(J,{input:e});d(`Reserve estimate created (${n.theCreateReserveEstimate.category})`),s(t,n.theCreateReserveEstimate);}catch(e){i(e);}});}function dt(r){let o=r.command("compliance").description("Theglobalfuel compliance certifications");o.command("list").description("List compliance certifications").option("--asset <id>","Filter by asset ID").option("--category <c>","EXTRACTION_LICENSE|ENVIRONMENTAL_PERMIT|EXPORT_LICENSE|SAFETY_AUDIT|EMISSIONS_REPORT|CARBON_CREDIT|CHAIN_OF_CUSTODY").option("--status <s>","PENDING|SUBMITTED|APPROVED|REJECTED|EXPIRED|REVOKED").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(Q,{assetId:t.asset,category:t.category?t.category.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0});s(t,e.theListComplianceCerts,{headers:["ID","Title","Category","Status","Authority","Expires"],rows:e.theListComplianceCerts.map(n=>[p(n.id,12),n.title,n.category,n.status,n.authority??"-",y(n.expiresAt)])});}catch(e){i(e);}}),o.command("get").description("Get a compliance certification by id").argument("<id>","Compliance cert ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(X,{id:t});if(!n.theComplianceCert)throw new m(`Compliance cert ${t} not found`);s(e,n.theComplianceCert);}catch(n){i(n);}}),o.command("create").description("Create a compliance certification").requiredOption("--title <t>","Title").option("--category <c>","EXTRACTION_LICENSE|ENVIRONMENTAL_PERMIT|EXPORT_LICENSE|SAFETY_AUDIT|EMISSIONS_REPORT|CARBON_CREDIT|CHAIN_OF_CUSTODY (default ENVIRONMENTAL_PERMIT)").option("--asset <id>","Related asset ID").option("--authority <s>","Issuing authority").option("--cert-number <s>","Certificate number").option("--owner <id>","Owner user ID").option("--evidence-file <id>","Evidence file ID (certificate document)").option("--issued-at <iso>","Issued date (ISO)").option("--expires-at <iso>","Expiry date (ISO)").option("--notes <s>","Notes").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={title:t.title};t.category&&(e.category=t.category.toUpperCase()),t.asset&&(e.assetId=t.asset),t.authority&&(e.authority=t.authority),t.certNumber&&(e.certNumber=t.certNumber),t.owner&&(e.ownerId=t.owner),t.evidenceFile&&(e.evidenceFileId=t.evidenceFile),t.issuedAt&&(e.issuedAt=t.issuedAt),t.expiresAt&&(e.expiresAt=t.expiresAt),t.notes&&(e.notes=t.notes),t.tags&&(e.tags=t.tags.split(",").map(g=>g.trim()));let n=await a(Z,{input:e});d(`Compliance cert created: ${n.theCreateComplianceCert.title}`),s(t,n.theCreateComplianceCert);}catch(e){i(e);}}),o.command("transition").description("Advance a compliance certification through its lifecycle").argument("<id>","Compliance cert ID").requiredOption("--status <s>","PENDING|SUBMITTED|APPROVED|REJECTED|EXPIRED|REVOKED").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(tt,{id:t,status:e.status.toUpperCase()});d(`Compliance cert transitioned to ${n.theTransitionComplianceCert.status}`),s(e,n.theTransitionComplianceCert);}catch(n){i(n);}});}function ut(r){r.command("health").description("Theglobalfuel service health check (public)").option("-f, --format <format>","Output format").action(async o=>{try{let t=await w(et);d(t.theHealth),s(o,{health:t.theHealth});}catch(t){i(t);}});}var wt={id:"theglobalfuel",version:"1.0.0",displayName:"Theglobalfuel",dependsOn:["auth","workspaces"],register(r,o){O(o);let t=r.command("theglobalfuel").description("Theglobalfuel energy & commodities operations ledger");nt(t),ot(t),rt(t),it(t),st(t),at(t),ct(t),dt(t),ut(t);}},Cn=wt;module.exports=Cn;
256
+ `;function l(r){let o=Number.parseInt(r,10);if(Number.isNaN(o))throw new m(`Expected an integer but got "${r}"`);return o}function c(r){let o=Number.parseFloat(r);if(Number.isNaN(o))throw new m(`Expected a number but got "${r}"`);return o}function f(r,o){let t={};return r!==void 0&&(t.limit=r),o!==void 0&&(t.offset=o),t}function et(r){let o=r.command("assets").description("Theglobalfuel upstream assets");o.command("list").description("List assets").option("--commodity <c>","Filter by commodity type").option("--kind <k>","Filter by asset kind").option("--status <s>","Filter by asset status").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(R,{commodity:t.commodity?t.commodity.toUpperCase():void 0,kind:t.kind?t.kind.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:f(t.limit,t.offset)});s(t,e.theListAssets.items,{headers:["ID","Name","Kind","Commodity","Status","Capacity/Day"],rows:e.theListAssets.items.map(n=>[p(n.id,12),n.name,n.kind,n.commodity,n.status,`${n.capacityPerDay??0} ${n.capacityUnit??""}`.trim()])});}catch(e){i(e);}}),o.command("get").description("Get an asset by id").argument("<id>","Asset ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(O,{id:t});if(!n.theAsset)throw new m(`Asset ${t} not found`);s(e,n.theAsset);}catch(n){i(n);}}),o.command("create").description("Create an asset").requiredOption("--name <name>","Asset name").requiredOption("--commodity <c>","Commodity type (e.g. CRUDE_OIL, NATURAL_GAS, LITHIUM)").option("--kind <k>","Asset kind (default WELL)").option("--code <code>","Asset code").option("--status <s>","Asset status (default EXPLORATION)").option("--location <s>","Location description").option("--latitude <n>","Latitude",c).option("--longitude <n>","Longitude",c).option("--capacity-per-day <n>","Capacity per day",c).option("--capacity-unit <u>","Capacity unit (default BARRELS)").option("--working-interest-pct <n>","Working interest %",c).option("--operator-lead <id>","Operator lead user ID").option("--commissioned-at <iso>","Commissioned date (ISO)").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,commodity:t.commodity.toUpperCase()};t.kind&&(e.kind=t.kind.toUpperCase()),t.code&&(e.code=t.code),t.status&&(e.status=t.status.toUpperCase()),t.location&&(e.location=t.location),t.latitude!==void 0&&(e.latitude=t.latitude),t.longitude!==void 0&&(e.longitude=t.longitude),t.capacityPerDay!==void 0&&(e.capacityPerDay=t.capacityPerDay),t.capacityUnit&&(e.capacityUnit=t.capacityUnit.toUpperCase()),t.workingInterestPct!==void 0&&(e.workingInterestPct=t.workingInterestPct),t.operatorLead&&(e.operatorLeadId=t.operatorLead),t.commissionedAt&&(e.commissionedAt=t.commissionedAt);let n=await a(v,{input:e});d(`Asset created: ${n.theCreateAsset.name}`),s(t,n.theCreateAsset);}catch(e){i(e);}}),o.command("update").description("Update an asset").argument("<id>","Asset ID").option("--name <name>","Asset name").option("--commodity <c>","Commodity type").option("--kind <k>","Asset kind").option("--code <code>","Asset code").option("--location <s>","Location description").option("--latitude <n>","Latitude",c).option("--longitude <n>","Longitude",c).option("--capacity-per-day <n>","Capacity per day",c).option("--capacity-unit <u>","Capacity unit").option("--working-interest-pct <n>","Working interest %",c).option("--operator-lead <id>","Operator lead user ID").option("--commissioned-at <iso>","Commissioned date (ISO)").option("--decommissioned-at <iso>","Decommissioned date (ISO)").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.commodity&&(n.commodity=e.commodity.toUpperCase()),e.kind&&(n.kind=e.kind.toUpperCase()),e.code&&(n.code=e.code),e.location!==void 0&&(n.location=e.location),e.latitude!==void 0&&(n.latitude=e.latitude),e.longitude!==void 0&&(n.longitude=e.longitude),e.capacityPerDay!==void 0&&(n.capacityPerDay=e.capacityPerDay),e.capacityUnit&&(n.capacityUnit=e.capacityUnit.toUpperCase()),e.workingInterestPct!==void 0&&(n.workingInterestPct=e.workingInterestPct),e.operatorLead&&(n.operatorLeadId=e.operatorLead),e.commissionedAt&&(n.commissionedAt=e.commissionedAt),e.decommissionedAt&&(n.decommissionedAt=e.decommissionedAt),!Object.keys(n).length)throw new m("No updates specified");let E=await a(x,{id:t,input:n});d("Asset updated"),s(e,E.theUpdateAsset);}catch(n){i(n);}}),o.command("transition").description("Advance an asset through its lifecycle").argument("<id>","Asset ID").requiredOption("--status <s>","EXPLORATION|APPRAISAL|DEVELOPMENT|PRODUCING|SUSPENDED|DECOMMISSIONING|RETIRED").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(b,{id:t,status:e.status.toUpperCase()});d(`Asset transitioned to ${n.theTransitionAsset.status}`),s(e,n.theTransitionAsset);}catch(n){i(n);}}),o.command("retire").description("Retire (delete) an asset").argument("<id>","Asset ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(D,{id:t});d(n.theRetireAsset?`Asset ${t} retired`:`Asset ${t} not retired`),s(e,{retired:n.theRetireAsset});}catch(n){i(n);}});}function nt(r){let o=r.command("contracts").description("Theglobalfuel offtake contracts");o.command("list").description("List offtake contracts").option("--commodity <c>","Filter by commodity type").option("--side <s>","BUY|SELL").option("--status <s>","Filter by contract status").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(P,{commodity:t.commodity?t.commodity.toUpperCase():void 0,side:t.side?t.side.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:f(t.limit,t.offset)});s(t,e.theListContracts.items,{headers:["ID","Reference","Counterparty","Commodity","Side","Status","Volume"],rows:e.theListContracts.items.map(n=>[p(n.id,12),n.reference,n.counterparty,n.commodity,n.side,n.status,`${n.deliveredVolume??0}/${n.contractedVolume??0}`])});}catch(e){i(e);}}),o.command("get").description("Get an offtake contract by id").argument("<id>","Contract ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(L,{id:t});if(!n.theContract)throw new m(`Contract ${t} not found`);s(e,n.theContract);}catch(n){i(n);}}),o.command("create").description("Create an offtake contract").requiredOption("--reference <r>","Contract reference").requiredOption("--counterparty <c>","Counterparty name").requiredOption("--commodity <c>","Commodity type").option("--side <s>","BUY|SELL (default SELL)").option("--pricing-basis <p>","FIXED|FORMULA|INDEX_LINKED|SPOT (default FIXED)").option("--price-per-unit <n>","Price per unit",c).option("--price-index <s>","Price index reference").option("--currency <s>","Currency code").option("--unit <u>","Unit (default BARRELS)").option("--contracted-volume <n>","Contracted volume",c).option("--delivery-location <s>","Delivery location").option("--start-date <iso>","Start date (ISO)").option("--end-date <iso>","End date (ISO)").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={reference:t.reference,counterparty:t.counterparty,commodity:t.commodity.toUpperCase()};t.side&&(e.side=t.side.toUpperCase()),t.pricingBasis&&(e.pricingBasis=t.pricingBasis.toUpperCase()),t.pricePerUnit!==void 0&&(e.pricePerUnit=t.pricePerUnit),t.priceIndex&&(e.priceIndex=t.priceIndex),t.currency&&(e.currency=t.currency),t.unit&&(e.unit=t.unit.toUpperCase()),t.contractedVolume!==void 0&&(e.contractedVolume=t.contractedVolume),t.deliveryLocation&&(e.deliveryLocation=t.deliveryLocation),t.startDate&&(e.startDate=t.startDate),t.endDate&&(e.endDate=t.endDate),t.notes&&(e.notes=t.notes);let n=await a($,{input:e});d(`Contract created: ${n.theCreateContract.reference}`),s(t,n.theCreateContract);}catch(e){i(e);}}),o.command("update").description("Update an offtake contract").argument("<id>","Contract ID").option("--counterparty <c>","Counterparty name").option("--pricing-basis <p>","FIXED|FORMULA|INDEX_LINKED|SPOT").option("--price-per-unit <n>","Price per unit",c).option("--price-index <s>","Price index reference").option("--currency <s>","Currency code").option("--unit <u>","Unit").option("--contracted-volume <n>","Contracted volume",c).option("--delivery-location <s>","Delivery location").option("--start-date <iso>","Start date (ISO)").option("--end-date <iso>","End date (ISO)").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.counterparty&&(n.counterparty=e.counterparty),e.pricingBasis&&(n.pricingBasis=e.pricingBasis.toUpperCase()),e.pricePerUnit!==void 0&&(n.pricePerUnit=e.pricePerUnit),e.priceIndex&&(n.priceIndex=e.priceIndex),e.currency&&(n.currency=e.currency),e.unit&&(n.unit=e.unit.toUpperCase()),e.contractedVolume!==void 0&&(n.contractedVolume=e.contractedVolume),e.deliveryLocation!==void 0&&(n.deliveryLocation=e.deliveryLocation),e.startDate&&(n.startDate=e.startDate),e.endDate&&(n.endDate=e.endDate),e.notes!==void 0&&(n.notes=e.notes),!Object.keys(n).length)throw new m("No updates specified");let E=await a(N,{id:t,input:n});d("Contract updated"),s(e,E.theUpdateContract);}catch(n){i(n);}}),o.command("transition").description("Advance an offtake contract through its lifecycle").argument("<id>","Contract ID").requiredOption("--status <s>","DRAFT|NEGOTIATION|SIGNED|ACTIVE|SUSPENDED|COMPLETED|TERMINATED").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(_,{id:t,status:e.status.toUpperCase()});d(`Contract transitioned to ${n.theTransitionContract.status}`),s(e,n.theTransitionContract);}catch(n){i(n);}});}function ot(r){let o=r.command("shipments").description("Theglobalfuel shipments");o.command("list").description("List shipments").option("--contract <id>","Filter by contract ID").option("--status <s>","SCHEDULED|LOADING|IN_TRANSIT|DELIVERED|CANCELLED").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(U,{contractId:t.contract,status:t.status?t.status.toUpperCase():void 0});s(t,e.theListShipments.items,{headers:["ID","Reference","Contract","Status","Mode","Volume"],rows:e.theListShipments.items.map(n=>[p(n.id,12),n.reference,p(n.contractId,12),n.status,n.mode,`${n.volume} ${n.unit}`])});}catch(e){i(e);}}),o.command("schedule").description("Schedule a shipment against a contract").requiredOption("--contract <id>","Contract ID").requiredOption("--reference <r>","Shipment reference").requiredOption("--volume <n>","Volume",c).option("--mode <m>","PIPELINE|TANKER|RAIL|TRUCK|VESSEL_BULK|GRID (default PIPELINE)").option("--unit <u>","Unit (default BARRELS)").option("--carrier <s>","Carrier").option("--origin <s>","Origin").option("--destination <s>","Destination").option("--scheduled-at <iso>","Scheduled date (ISO)").option("--document-file <id>","Document file ID (bill of lading / certificate)").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={contractId:t.contract,reference:t.reference,volume:t.volume};t.mode&&(e.mode=t.mode.toUpperCase()),t.unit&&(e.unit=t.unit.toUpperCase()),t.carrier&&(e.carrier=t.carrier),t.origin&&(e.origin=t.origin),t.destination&&(e.destination=t.destination),t.scheduledAt&&(e.scheduledAt=t.scheduledAt),t.documentFile&&(e.documentFileId=t.documentFile),t.notes&&(e.notes=t.notes);let n=await a(q,{input:e});d(`Shipment scheduled: ${n.theScheduleShipment.reference}`),s(t,n.theScheduleShipment);}catch(e){i(e);}}),o.command("deliver").description("Mark a shipment delivered (rolls volume into the contract's delivered total)").argument("<id>","Shipment ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(F,{id:t});d(`Shipment delivered: ${n.theDeliverShipment.reference}`),s(e,n.theDeliverShipment);}catch(n){i(n);}});}function rt(r){let o=r.command("inventory").description("Theglobalfuel inventory lots");o.command("list").description("List inventory lots").option("--commodity <c>","Filter by commodity type").option("--status <s>","AVAILABLE|RESERVED|IN_TRANSIT|CONSUMED|WRITTEN_OFF").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(V,{commodity:t.commodity?t.commodity.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:f(t.limit,t.offset)});s(t,e.theListInventoryLots.items,{headers:["ID","Lot Code","Commodity","Status","Quantity","Unit Value"],rows:e.theListInventoryLots.items.map(n=>[p(n.id,12),n.lotCode,n.commodity,n.status,`${n.quantity} ${n.unit}`,String(n.unitValue??0)])});}catch(e){i(e);}}),o.command("create").description("Create an inventory lot").requiredOption("--lot-code <c>","Lot code").requiredOption("--commodity <c>","Commodity type").requiredOption("--quantity <n>","Quantity",c).option("--unit <u>","Unit (default BARRELS)").option("--unit-value <n>","Unit value",c).option("--currency <s>","Currency code").option("--grade <n>","Grade",c).option("--location <s>","Storage location").option("--asset <id>","Source asset ID").option("--produced-at <iso>","Produced date (ISO)").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={lotCode:t.lotCode,commodity:t.commodity.toUpperCase(),quantity:t.quantity};t.unit&&(e.unit=t.unit.toUpperCase()),t.unitValue!==void 0&&(e.unitValue=t.unitValue),t.currency&&(e.currency=t.currency),t.grade!==void 0&&(e.grade=t.grade),t.location&&(e.location=t.location),t.asset&&(e.assetId=t.asset),t.producedAt&&(e.producedAt=t.producedAt),t.notes&&(e.notes=t.notes);let n=await a(M,{input:e});d(`Inventory lot created: ${n.theCreateInventoryLot.lotCode}`),s(t,n.theCreateInventoryLot);}catch(e){i(e);}}),o.command("set-status").description("Set an inventory lot status").argument("<id>","Inventory lot ID").requiredOption("--status <s>","AVAILABLE|RESERVED|IN_TRANSIT|CONSUMED|WRITTEN_OFF").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(G,{id:t,status:e.status.toUpperCase()});d(`Inventory lot status set to ${n.theSetInventoryLotStatus.status}`),s(e,n.theSetInventoryLotStatus);}catch(n){i(n);}});}function it(r){let o=r.command("production").description("Theglobalfuel production records");o.command("list").description("List production records").option("--asset <id>","Filter by asset ID").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(W,{assetId:t.asset,pagination:f(t.limit,t.offset)});s(t,e.theListProductionRecords.items,{headers:["ID","Asset","Volume","Downtime (h)","Period Start","Period End"],rows:e.theListProductionRecords.items.map(n=>[p(n.id,12),p(n.assetId,12),`${n.volume} ${n.unit}`,String(n.downtimeHours??0),y(n.periodStart),y(n.periodEnd)])});}catch(e){i(e);}}),o.command("record").description("Record a production figure for an asset").requiredOption("--asset <id>","Asset ID").requiredOption("--volume <n>","Produced volume",c).requiredOption("--period-start <iso>","Period start (ISO)").requiredOption("--period-end <iso>","Period end (ISO)").option("--unit <u>","Unit (default BARRELS)").option("--grade <n>","Grade",c).option("--downtime-hours <n>","Downtime hours",c).option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={assetId:t.asset,volume:t.volume,periodStart:t.periodStart,periodEnd:t.periodEnd};t.unit&&(e.unit=t.unit.toUpperCase()),t.grade!==void 0&&(e.grade=t.grade),t.downtimeHours!==void 0&&(e.downtimeHours=t.downtimeHours),t.notes&&(e.notes=t.notes);let n=await a(B,{input:e});d(`Production recorded: ${n.theRecordProduction.volume} ${t.unit??""}`.trim()),s(t,n.theRecordProduction);}catch(e){i(e);}});}function st(r){let o=r.command("emissions").description("Theglobalfuel emission records");o.command("list").description("List emission records").option("--asset <id>","Filter by asset ID").option("--scope <s>","SCOPE_1|SCOPE_2|SCOPE_3").option("--limit <n>","Page size",l,50).option("--offset <n>","Offset",l,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(H,{assetId:t.asset,scope:t.scope?t.scope.toUpperCase():void 0,pagination:f(t.limit,t.offset)});s(t,e.theListEmissionRecords.items,{headers:["ID","Asset","Scope","CO2e (t)","Source","Verified"],rows:e.theListEmissionRecords.items.map(n=>[p(n.id,12),p(n.assetId??"-",12),n.scope,String(n.co2eTonnes),n.source??"-",n.verified?"yes":"no"])});}catch(e){i(e);}}),o.command("record").description("Record an emission figure").requiredOption("--co2e-tonnes <n>","CO2e tonnes",c).requiredOption("--period-start <iso>","Period start (ISO)").requiredOption("--period-end <iso>","Period end (ISO)").option("--asset <id>","Asset ID").option("--scope <s>","SCOPE_1|SCOPE_2|SCOPE_3 (default SCOPE_1)").option("--source <s>","Emission source").option("--methodology <s>","Methodology").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={co2eTonnes:t.co2eTonnes,periodStart:t.periodStart,periodEnd:t.periodEnd};t.asset&&(e.assetId=t.asset),t.scope&&(e.scope=t.scope.toUpperCase()),t.source&&(e.source=t.source),t.methodology&&(e.methodology=t.methodology),t.notes&&(e.notes=t.notes);let n=await a(j,{input:e});d(`Emission recorded: ${n.theRecordEmission.co2eTonnes} tCO2e`),s(t,n.theRecordEmission);}catch(e){i(e);}}),o.command("verify").description("Mark an emission figure third-party verified").argument("<id>","Emission record ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(Y,{id:t});d("Emission verified"),s(e,n.theVerifyEmission);}catch(n){i(n);}});}function at(r){let o=r.command("reserves").description("Theglobalfuel reserve estimates");o.command("list").description("List reserve estimates").option("--asset <id>","Filter by asset ID").option("--category <c>","PROVED|PROBABLE|POSSIBLE|CONTINGENT|PROSPECTIVE").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(z,{assetId:t.asset,category:t.category?t.category.toUpperCase():void 0});s(t,e.theListReserveEstimates.items,{headers:["ID","Asset","Category","Recoverable","Factor","As Of"],rows:e.theListReserveEstimates.items.map(n=>[p(n.id,12),p(n.assetId,12),n.category,`${n.recoverable} ${n.unit}`,n.recoveryFactor!=null?String(n.recoveryFactor):"-",y(n.asOfDate)])});}catch(e){i(e);}}),o.command("create").description("Create a reserve estimate for an asset").requiredOption("--asset <id>","Asset ID").requiredOption("--recoverable <n>","Recoverable quantity",c).requiredOption("--as-of-date <iso>","As-of date (ISO)").option("--category <c>","PROVED|PROBABLE|POSSIBLE|CONTINGENT|PROSPECTIVE (default PROVED)").option("--recovery-factor <n>","Recovery factor",c).option("--unit <u>","Unit (default BARRELS)").option("--methodology <s>","Methodology").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={assetId:t.asset,recoverable:t.recoverable,asOfDate:t.asOfDate};t.category&&(e.category=t.category.toUpperCase()),t.recoveryFactor!==void 0&&(e.recoveryFactor=t.recoveryFactor),t.unit&&(e.unit=t.unit.toUpperCase()),t.methodology&&(e.methodology=t.methodology),t.notes&&(e.notes=t.notes);let n=await a(K,{input:e});d(`Reserve estimate created (${n.theCreateReserveEstimate.category})`),s(t,n.theCreateReserveEstimate);}catch(e){i(e);}});}function ct(r){let o=r.command("compliance").description("Theglobalfuel compliance certifications");o.command("list").description("List compliance certifications").option("--asset <id>","Filter by asset ID").option("--category <c>","EXTRACTION_LICENSE|ENVIRONMENTAL_PERMIT|EXPORT_LICENSE|SAFETY_AUDIT|EMISSIONS_REPORT|CARBON_CREDIT|CHAIN_OF_CUSTODY").option("--status <s>","PENDING|SUBMITTED|APPROVED|REJECTED|EXPIRED|REVOKED").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(X,{assetId:t.asset,category:t.category?t.category.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0});s(t,e.theListComplianceCerts.items,{headers:["ID","Title","Category","Status","Authority","Expires"],rows:e.theListComplianceCerts.items.map(n=>[p(n.id,12),n.title,n.category,n.status,n.authority??"-",y(n.expiresAt)])});}catch(e){i(e);}}),o.command("get").description("Get a compliance certification by id").argument("<id>","Compliance cert ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(J,{id:t});if(!n.theComplianceCert)throw new m(`Compliance cert ${t} not found`);s(e,n.theComplianceCert);}catch(n){i(n);}}),o.command("create").description("Create a compliance certification").requiredOption("--title <t>","Title").option("--category <c>","EXTRACTION_LICENSE|ENVIRONMENTAL_PERMIT|EXPORT_LICENSE|SAFETY_AUDIT|EMISSIONS_REPORT|CARBON_CREDIT|CHAIN_OF_CUSTODY (default ENVIRONMENTAL_PERMIT)").option("--asset <id>","Related asset ID").option("--authority <s>","Issuing authority").option("--cert-number <s>","Certificate number").option("--owner <id>","Owner user ID").option("--evidence-file <id>","Evidence file ID (certificate document)").option("--issued-at <iso>","Issued date (ISO)").option("--expires-at <iso>","Expiry date (ISO)").option("--notes <s>","Notes").option("-f, --format <format>","Output format").action(async t=>{try{let e={title:t.title};t.category&&(e.category=t.category.toUpperCase()),t.asset&&(e.assetId=t.asset),t.authority&&(e.authority=t.authority),t.certNumber&&(e.certNumber=t.certNumber),t.owner&&(e.ownerId=t.owner),t.evidenceFile&&(e.evidenceFileId=t.evidenceFile),t.issuedAt&&(e.issuedAt=t.issuedAt),t.expiresAt&&(e.expiresAt=t.expiresAt),t.notes&&(e.notes=t.notes);let n=await a(Q,{input:e});d(`Compliance cert created: ${n.theCreateComplianceCert.title}`),s(t,n.theCreateComplianceCert);}catch(e){i(e);}}),o.command("transition").description("Advance a compliance certification through its lifecycle").argument("<id>","Compliance cert ID").requiredOption("--status <s>","PENDING|SUBMITTED|APPROVED|REJECTED|EXPIRED|REVOKED").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(Z,{id:t,status:e.status.toUpperCase()});d(`Compliance cert transitioned to ${n.theTransitionComplianceCert.status}`),s(e,n.theTransitionComplianceCert);}catch(n){i(n);}});}function dt(r){r.command("health").description("Theglobalfuel service health check (public)").option("-f, --format <format>","Output format").action(async o=>{try{let t=await A(tt);d(t.theHealth),s(o,{health:t.theHealth});}catch(t){i(t);}});}var At={id:"theglobalfuel",version:"1.0.0",displayName:"Theglobalfuel",dependsOn:["auth","workspaces"],register(r,o){k(o);let t=r.command("theglobalfuel").description("Theglobalfuel energy & commodities operations ledger");et(t),nt(t),ot(t),rt(t),it(t),st(t),at(t),ct(t),dt(t);}},gn=At;module.exports=gn;