@commercelayer/cli-core 5.6.1 → 5.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.mts CHANGED
@@ -537,7 +537,9 @@ declare const log: (message?: string, ...args: unknown[]) => void;
537
537
  declare const specialFolder: (filePath: string, createIfNotExists?: boolean) => string;
538
538
  declare const generateGroupUID: () => string;
539
539
  declare const userAgent: (config: Config$1) => string;
540
+ declare const dotNotationToObject: (dotNot: KeyValObj) => KeyValObj;
540
541
 
542
+ declare const util_dotNotationToObject: typeof dotNotationToObject;
541
543
  declare const util_generateGroupUID: typeof generateGroupUID;
542
544
  declare const util_log: typeof log;
543
545
  declare const util_resetConsole: typeof resetConsole;
@@ -545,7 +547,7 @@ declare const util_sleep: typeof sleep;
545
547
  declare const util_specialFolder: typeof specialFolder;
546
548
  declare const util_userAgent: typeof userAgent;
547
549
  declare namespace util {
548
- export { util_generateGroupUID as generateGroupUID, util_log as log, util_resetConsole as resetConsole, util_sleep as sleep, util_specialFolder as specialFolder, util_userAgent as userAgent };
550
+ export { util_dotNotationToObject as dotNotationToObject, util_generateGroupUID as generateGroupUID, util_log as log, util_resetConsole as resetConsole, util_sleep as sleep, util_specialFolder as specialFolder, util_userAgent as userAgent };
549
551
  }
550
552
 
551
553
  declare class CLICommandHelp extends CommandHelp {
@@ -612,4 +614,4 @@ declare namespace filter {
612
614
  export { type filter_Filter as Filter, applyFilter as apply, filterAvailable as available, filter_documentation as documentation, filter_filters as filters, filterList as list };
613
615
  }
614
616
 
615
- export { type AccessToken, type AccessTokenInfo, type ApiMode, type ApiType, type AppAuth, type AppInfo, type AppKey, type AuthScope, type CustomToken, type KeyVal, type KeyValArray, type KeyValObj, type KeyValRel, type KeyValSort, type KeyValString, type Method, type ResAttributes, api$1 as clApi, application as clApplication, color as clColor, command as clCommand, config as clConfig, filter as clFilter, CLIBaseHelp as clHelp, output as clOutput, schema as clSchema, symbol as clSymbol, text as clText, token as clToken, update as clUpdate, util as clUtil };
617
+ export { type AccessToken, type AccessTokenInfo, type ApiMode, type ApiType, type AppAuth, type AppInfo, type AppKey, type ApplicationKind, type AuthScope, type CustomToken, type KeyVal, type KeyValArray, type KeyValObj, type KeyValRel, type KeyValSort, type KeyValString, type Method, type OwnerType, type ResAttributes, api$1 as clApi, application as clApplication, color as clColor, command as clCommand, config as clConfig, filter as clFilter, CLIBaseHelp as clHelp, output as clOutput, schema as clSchema, symbol as clSymbol, text as clText, token as clToken, update as clUpdate, util as clUtil };
package/lib/index.d.ts CHANGED
@@ -537,7 +537,9 @@ declare const log: (message?: string, ...args: unknown[]) => void;
537
537
  declare const specialFolder: (filePath: string, createIfNotExists?: boolean) => string;
538
538
  declare const generateGroupUID: () => string;
539
539
  declare const userAgent: (config: Config$1) => string;
540
+ declare const dotNotationToObject: (dotNot: KeyValObj) => KeyValObj;
540
541
 
542
+ declare const util_dotNotationToObject: typeof dotNotationToObject;
541
543
  declare const util_generateGroupUID: typeof generateGroupUID;
542
544
  declare const util_log: typeof log;
543
545
  declare const util_resetConsole: typeof resetConsole;
@@ -545,7 +547,7 @@ declare const util_sleep: typeof sleep;
545
547
  declare const util_specialFolder: typeof specialFolder;
546
548
  declare const util_userAgent: typeof userAgent;
547
549
  declare namespace util {
548
- export { util_generateGroupUID as generateGroupUID, util_log as log, util_resetConsole as resetConsole, util_sleep as sleep, util_specialFolder as specialFolder, util_userAgent as userAgent };
550
+ export { util_dotNotationToObject as dotNotationToObject, util_generateGroupUID as generateGroupUID, util_log as log, util_resetConsole as resetConsole, util_sleep as sleep, util_specialFolder as specialFolder, util_userAgent as userAgent };
549
551
  }
550
552
 
551
553
  declare class CLICommandHelp extends CommandHelp {
@@ -612,4 +614,4 @@ declare namespace filter {
612
614
  export { type filter_Filter as Filter, applyFilter as apply, filterAvailable as available, filter_documentation as documentation, filter_filters as filters, filterList as list };
613
615
  }
614
616
 
615
- export { type AccessToken, type AccessTokenInfo, type ApiMode, type ApiType, type AppAuth, type AppInfo, type AppKey, type AuthScope, type CustomToken, type KeyVal, type KeyValArray, type KeyValObj, type KeyValRel, type KeyValSort, type KeyValString, type Method, type ResAttributes, api$1 as clApi, application as clApplication, color as clColor, command as clCommand, config as clConfig, filter as clFilter, CLIBaseHelp as clHelp, output as clOutput, schema as clSchema, symbol as clSymbol, text as clText, token as clToken, update as clUpdate, util as clUtil };
617
+ export { type AccessToken, type AccessTokenInfo, type ApiMode, type ApiType, type AppAuth, type AppInfo, type AppKey, type ApplicationKind, type AuthScope, type CustomToken, type KeyVal, type KeyValArray, type KeyValObj, type KeyValRel, type KeyValSort, type KeyValString, type Method, type OwnerType, type ResAttributes, api$1 as clApi, application as clApplication, color as clColor, command as clCommand, config as clConfig, filter as clFilter, CLIBaseHelp as clHelp, output as clOutput, schema as clSchema, symbol as clSymbol, text as clText, token as clToken, update as clUpdate, util as clUtil };
package/lib/index.js CHANGED
@@ -1,11 +1,11 @@
1
- "use strict";var Re=Object.create;var I=Object.defineProperty;var Ee=Object.getOwnPropertyDescriptor;var Se=Object.getOwnPropertyNames;var ze=Object.getPrototypeOf,Ie=Object.prototype.hasOwnProperty;var f=(e,t)=>{for(var r in t)I(e,r,{get:t[r],enumerable:!0})},pe=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Se(t))!Ie.call(e,n)&&n!==r&&I(e,n,{get:()=>t[n],enumerable:!(s=Ee(t,n))||s.enumerable});return e};var B=(e,t,r)=>(r=e!=null?Re(ze(e)):{},pe(t||!e||!e.__esModule?I(r,"default",{value:e,enumerable:!0}):r,e)),Be=e=>pe(I({},"__esModule",{value:!0}),e);var rr={};f(rr,{clApi:()=>J,clApplication:()=>Y,clColor:()=>k,clCommand:()=>X,clConfig:()=>m,clFilter:()=>ce,clHelp:()=>S,clOutput:()=>Z,clSchema:()=>ae,clSymbol:()=>ne,clText:()=>ie,clToken:()=>te,clUpdate:()=>re,clUtil:()=>se});module.exports=Be(rr);var J={};f(J,{Operation:()=>H,baseURL:()=>je,execMode:()=>We,extractDomain:()=>Ue,humanizeResource:()=>Ve,isResourceCacheable:()=>de,liveEnvironment:()=>Ne,request:()=>He,requestDataFile:()=>N,requestRateLimitDelay:()=>ge,requestRaw:()=>F,response:()=>Ge,responseDenormalize:()=>G});var V=["in_progress","pending","completed","interrupted"],Oe=["addresses","bundles","coupons","customer_addresses","customer_payment_sources","customer_subscriptions","customers","gift_cards","line_items","line_item_options","orders","price_tiers","prices","shipping_categories","sku_lists","sku_list_items","sku_options","skus","stock_items","stock_transfers","tags","tax_categories"],De=["addresses","authorizations","bundles","captures","coupons","customer_addresses","customer_payment_sources","customer_subscriptions","customers","gift_cards","line_items","line_item_options","orders","payment_methods","price_tiers","prices","refunds","shipments","shipping_categories","shipping_methods","sku_lists","sku_list_items","sku_options","skus","stock_items","stock_transfers","tags","tax_categories","transactions","voids"],Me=["bundles","gift_cards","prices","promotions","sku_lists","sku_options","skus","stock_items"],Ke=["addresses","bundles","customers","coupons","gift_cards","line_items","line_item_options","orders","returns","skus","sku_options","promotions","external_promotions","fixed_amount_promotions","fixed_price_promotions","free_gift_promotions","free_shipping_promotions","percentage_discount_promotions"],Le=["orders","skus","sku_lists"],b={erl_oauth_limit_live:30,erl_average_limit_cachable_live:1e3,erl_average_limit_cachable_test:500,erl_burst_limit_cachable_live:250,erl_burst_limit_cachable_test:125,erl_average_limit_uncachable_live:200,erl_average_limit_uncachable_test:100,erl_burst_limit_uncachable_live:50,erl_burst_limit_uncachable_test:25},Pe={api:{default_domain:"commercelayer.io",default_app_domain:"commercelayer.app",default_stg_domain:"commercelayer.co",token_expiration_mins:60*4,token_encoding_algorithm:"HS512",token_owner_types:["Customer","User"],requests_max_num_burst:b.erl_burst_limit_uncachable_live,requests_max_num_burst_cacheable:b.erl_burst_limit_cachable_live,requests_max_num_burst_test:b.erl_burst_limit_uncachable_test,requests_max_num_burst_test_cacheable:b.erl_burst_limit_cachable_test,requests_max_num_avg:b.erl_average_limit_uncachable_live,requests_max_num_avg_cacheable:b.erl_average_limit_cachable_live,requests_max_num_avg_test:b.erl_average_limit_uncachable_test,requests_max_num_avg_test_cacheable:b.erl_average_limit_cachable_test,requests_max_num_oauth:b.erl_oauth_limit_live,requests_max_secs_burst:10,requests_max_secs_oauth:60,requests_max_secs_avg:60,page_max_size:25,page_default_size:10},application:{kinds:["integration","sales_channel","webapp","user"],login_scopes:["market","stock_location","store"]},imports:{max_size:1e4,statuses:V,types:Oe,max_queue_length:10,attachment_expiration:5},exports:{max_size:1e4,statuses:V,types:De,max_queue_length:10,attachment_expiration:5},cleanups:{max_size:1e4,statuses:V,types:Me,max_queue_length:10},webhooks:{retry_number:5},cli:{applications:["integration","sales_channel","user"]},doc:{core:"https://docs.commercelayer.io/core/",core_api_reference:"https://docs.commercelayer.io/developers/v/api-reference",core_how_tos:"https://docs.commercelayer.io/core/v/how-tos/",core_raste_limits:"https://docs.commercelayer.io/core/rate-limits",core_filtering_data:"https://docs.commercelayer.io/core/filtering-data#list-of-predicates",metrics:"https://docs.commercelayer.io/metrics/",metrics_api_reference:"https://docs.commercelayer.io/metrics/v/api-reference-m/",provisioning:"https://docs.commercelayer.io/provisioning/",provisioning_api_reference:"https://docs.commercelayer.io/provisioning/v/api-reference-p/",imports_resources:"https://docs.commercelayer.io/api/importing-resources#supported-resources",exports_resources:"https://docs.commercelayer.io/core/exporting-resources#supported-resources",cleanups_resources:"https://docs.commercelayer.io/core/cleaning-resources#supported-resources",webhooks_events:"https://docs.commercelayer.io/api/real-time-webhooks#supported-events",tags_resources:"https://docs.commercelayer.io/core/v/api-reference/tags#taggable-resources",links_resources:"https://docs.commercelayer.io/core/v/api-reference/links"},tags:{max_resource_tags:10,taggable_resources:Ke,tag_name_max_length:25,tag_name_pattern:/^[0-9A-Za-z_-]{1,25}$/},provisioning:{default_subdomain:"provisioning",scope:"provisioning-api",applications:["user"]},links:{default_domain:"c11r.link",linkable_resources:Le}},m=Pe;var ue=require("fs");var F=async(e,t,r)=>await(await fetch(new URL(`/api/${e.resource}`+(r?`/${r}`:""),e.baseUrl),{method:e.operation,headers:{"Content-Type":"application/vnd.api+json",Accept:"application/vnd.api+json",Authorization:`Bearer ${e.accessToken}`},body:JSON.stringify(t)}).then(n=>{if(n.ok)return n;throw new Error(n.statusText)})).json(),N=e=>{let t,r;try{t=(0,ue.readFileSync)(e,"utf-8")}catch{throw new Error(`Unable to find or open the data file ${k.msg.error(e)}`)}try{r=JSON.parse(t)}catch{throw new Error(`Unable to parse the data file ${k.msg.error(e)}: invalid JSON format`)}return r.data?r:{data:r}},H=(r=>(r.Create="POST",r.Update="PATCH",r))(H||{});var me=(e,t)=>t.find(r=>e.id===r.id&&e.type===r.type),O=(e,t)=>{let r={id:e.id,type:e.type,...e.attributes};return e.relationships&&Object.keys(e.relationships).forEach(s=>{let n=e.relationships[s].data;n?Array.isArray(n)?r[s]=n.map(i=>O(me(i,t),t)):r[s]=O(me(n,t),t):n===null&&(r[s]=null)}),r},G=e=>{let t;e.links&&delete e.links;let r=e.data,s=e.included;return Array.isArray(r)?t=r.map(n=>O(n,s)):t=O(r,s),t};var je=(e="core",t,r)=>`https://${(e==="core"&&t||e).toLowerCase()}.${r||m.api.default_domain}`,Ue=e=>{if(e)return e.substring(e.indexOf(".")+1)},We=e=>e===!0||e==="live"?"live":"test",Ve=e=>e.replace(/_/g," ");var Fe=["bundles","imports","markets","prices","price_lists","promotions","buy_x_pay_y_promotions","external_promotions","fixed_amount_promotions","fixed_price_promotions","free_gift_promotions","free_shipping_promotions","percentage_discount_promotions","skus","sku_options","stock_items","stock_locations"],de=(e,t)=>Fe.includes(e||"")&&(t||"GET").toUpperCase()==="GET",Ne=e=>e==="live",ge=e=>{let t=e?.environment||"test",r=e?.parallelRequests||1,s=de(e?.resourceType,e?.method),n,i;t==="live"?(n=s?m.api.requests_max_num_burst_cacheable:m.api.requests_max_num_burst,i=s?m.api.requests_max_num_avg_cacheable:m.api.requests_max_num_avg):(n=s?m.api.requests_max_num_burst_test_cacheable:m.api.requests_max_num_burst_test,i=s?m.api.requests_max_num_avg_test_cacheable:m.api.requests_max_num_avg_test);let c=m.api.requests_max_secs_burst/n,u=m.api.requests_max_secs_avg/i,_=r*c,y=r*u,d=e?.totalRequests,a=0;return d&&d>0?d>n&&(d>i?a=y:a=_):a=Math.max(_,y),a=a*1e3,e?.minimumDelay&&(a=Math.max(e.minimumDelay,a)),e?.securityDelay&&(a+=e.securityDelay),a=Math.ceil(a),a};var He={raw:F,readDataFile:N,rateLimitDelay:ge},Ge={denormalize:G};var Y={};f(Y,{appKey:()=>Je,appKeyMatch:()=>Xe,appKeyValid:()=>Ye,arrayScope:()=>_e,isProvisioningApp:()=>Ze});var Je=()=>Date.now().toString(36),Ye=e=>e.key!==void 0&&e.key!=="",Xe=(e,t)=>{let r=e!==void 0,s=t!==void 0;return!r&&!s||r&&s&&e.key===t.key},_e=e=>{if(!e)return[];if(Array.isArray(e))return e;let t=e.replace(/[ ,;]/g,"_").split("_");return Array.isArray(t)?t:[t]},Ze=e=>_e(e.scope).includes(m.provisioning.scope)||e.api==="provisioning";var X={};f(X,{allFlags:()=>et,checkISODateTimeValue:()=>nt,commandFlags:()=>Qe,findLongStringFlag:()=>rt,fixDashedFlagValue:()=>st,fixValueType:()=>tt});var Qe=(e,t)=>{let r={...e};if(t)for(let s of t)delete r[s];return r},et=e=>({...e.flags,...e.baseFlags});var tt=e=>{let t=e;return t==="null"?t=null:Number(t)==t?t=Number(t):t=t==="true"?!0:t==="false"?!1:t,t},rt=(e,t)=>{let r=t.startsWith("--")?t:`--${t}`,s,n=e.findIndex(c=>c.startsWith(r)),i=!1;if(n>-1){let c=e[n];if(c.includes("=")){let u=c.split("=");s=u.length===2?u[1]:"",i=!0}else s=e[n+1];return{value:s,index:n,single:i}}else return},st=(e,t,r,s)=>{let n="____",i=t.name||r,c=t.char;if(!i&&!c)return e;let u=i?i.startsWith("--")?i:`--${i}`:void 0,_=c?t.char.startsWith("-")?c:`-${c}`:void 0,y=e.findIndex(T=>_&&T.startsWith(_)||u&&T.startsWith(u));if(y<0)return e;let d=e[y],a="",le="";if(_&&d.startsWith(_))a=d.replace(_,"").trim(),d=_;else if(u&&d.startsWith(u))a=d.replace(u,"").trim(),d=u;else return e;if(a.startsWith("=")?(a=a.slice(1),le=d+"="):a||(a=e[++y]),a.startsWith("-")||a.startsWith(n)){let T=a.startsWith(`${n}`)?a.replace(`${n}`,""):a.replace("-",`${n}-`);if(e[y]=le+T,a.startsWith(n)&&s){let z=i?i.replace("--",""):void 0,j=Object.entries(s.flags).find(([W,qe])=>qe===a);j&&(!z||z===j[0])&&(s.flags[j[0]]=T);let U=Object.values(s.raw).find(W=>W.type==="flag"&&W.input===a);U&&(!z||z===U.flag)&&(U.input=T)}}return e},nt=e=>{if(!e)throw Error("Date is empty");try{let t=Date.parse(e);if(Number.isNaN(t))throw new Error("Invalid date");return new Date(t)}catch{throw new Error("Error parsing date: "+e)}};var Z={};f(Z,{center:()=>it,cleanDate:()=>at,formatError:()=>lt,formatOutput:()=>xe,localeDate:()=>ct,maxLength:()=>ot,printCSV:()=>be,printJSON:()=>ye,printObject:()=>he});var fe=require("util"),he=(e,t)=>(0,fe.inspect)(e,{showHidden:!1,depth:null,colors:t?.color===void 0?!0:t.color,sorted:t?.sort===void 0?!1:t?.sort,maxArrayLength:1/0,breakLength:t?.width||120}),ye=(e,t)=>JSON.stringify(e,null,t?.unformatted?void 0:t?.tabSize||4),be=(e,t)=>{if(!e||e.length===0)return"";let r=Object.keys(e[0]).filter(n=>["id","type"].includes(n)?t?.fields.includes(n):!0),s=r.map(n=>n.toUpperCase().replace(/_/g," ")).join(";")+`
1
+ "use strict";var Ee=Object.create;var O=Object.defineProperty;var Se=Object.getOwnPropertyDescriptor;var ze=Object.getOwnPropertyNames;var Oe=Object.getPrototypeOf,Ie=Object.prototype.hasOwnProperty;var g=(e,t)=>{for(var r in t)O(e,r,{get:t[r],enumerable:!0})},ue=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ze(t))!Ie.call(e,n)&&n!==r&&O(e,n,{get:()=>t[n],enumerable:!(s=Se(t,n))||s.enumerable});return e};var I=(e,t,r)=>(r=e!=null?Ee(Oe(e)):{},ue(t||!e||!e.__esModule?O(r,"default",{value:e,enumerable:!0}):r,e)),Ke=e=>ue(O({},"__esModule",{value:!0}),e);var sr={};g(sr,{clApi:()=>J,clApplication:()=>Y,clColor:()=>k,clCommand:()=>X,clConfig:()=>m,clFilter:()=>le,clHelp:()=>S,clOutput:()=>Z,clSchema:()=>ce,clSymbol:()=>ie,clText:()=>oe,clToken:()=>se,clUpdate:()=>ne,clUtil:()=>re});module.exports=Ke(sr);var J={};g(J,{Operation:()=>H,baseURL:()=>Ve,execMode:()=>We,extractDomain:()=>Ue,humanizeResource:()=>Fe,isResourceCacheable:()=>ge,liveEnvironment:()=>He,request:()=>Ge,requestDataFile:()=>N,requestRateLimitDelay:()=>_e,requestRaw:()=>F,response:()=>Je,responseDenormalize:()=>G});var W=["in_progress","pending","completed","interrupted"],Be=["addresses","bundles","coupons","customer_addresses","customer_payment_sources","customer_subscriptions","customers","gift_cards","line_items","line_item_options","orders","price_tiers","prices","shipping_categories","sku_lists","sku_list_items","sku_options","skus","stock_items","stock_transfers","tags","tax_categories"],je=["addresses","authorizations","bundles","captures","coupons","customer_addresses","customer_payment_sources","customer_subscriptions","customers","gift_cards","line_items","line_item_options","orders","payment_methods","price_tiers","prices","refunds","shipments","shipping_categories","shipping_methods","sku_lists","sku_list_items","sku_options","skus","stock_items","stock_transfers","tags","tax_categories","transactions","voids"],De=["bundles","gift_cards","prices","promotions","sku_lists","sku_options","skus","stock_items"],Me=["addresses","bundles","customers","coupons","gift_cards","line_items","line_item_options","orders","returns","skus","sku_options","promotions","external_promotions","fixed_amount_promotions","fixed_price_promotions","free_gift_promotions","free_shipping_promotions","percentage_discount_promotions"],Le=["orders","skus","sku_lists"],y={erl_oauth_limit_live:30,erl_average_limit_cachable_live:1e3,erl_average_limit_cachable_test:500,erl_burst_limit_cachable_live:250,erl_burst_limit_cachable_test:125,erl_average_limit_uncachable_live:200,erl_average_limit_uncachable_test:100,erl_burst_limit_uncachable_live:50,erl_burst_limit_uncachable_test:25},Pe={api:{default_domain:"commercelayer.io",default_app_domain:"commercelayer.app",default_stg_domain:"commercelayer.co",token_expiration_mins:60*4,token_encoding_algorithm:"HS512",token_owner_types:["Customer","User"],requests_max_num_burst:y.erl_burst_limit_uncachable_live,requests_max_num_burst_cacheable:y.erl_burst_limit_cachable_live,requests_max_num_burst_test:y.erl_burst_limit_uncachable_test,requests_max_num_burst_test_cacheable:y.erl_burst_limit_cachable_test,requests_max_num_avg:y.erl_average_limit_uncachable_live,requests_max_num_avg_cacheable:y.erl_average_limit_cachable_live,requests_max_num_avg_test:y.erl_average_limit_uncachable_test,requests_max_num_avg_test_cacheable:y.erl_average_limit_cachable_test,requests_max_num_oauth:y.erl_oauth_limit_live,requests_max_secs_burst:10,requests_max_secs_oauth:60,requests_max_secs_avg:60,page_max_size:25,page_default_size:10},application:{kinds:["dashboard","user","metrics","contentful","bundles","customers","datocms","exports","external","gift_cards","imports","integration","inventory","orders","price_lists","promotions","resources","returns","sales_channel","sanity","shipments","skus","sku_lists","stock_transfers","subscriptions","tags","webapp","webhooks","zapier"],login_scopes:["market","stock_location","store"]},imports:{max_size:1e4,statuses:W,types:Be,max_queue_length:10,attachment_expiration:5},exports:{max_size:1e4,statuses:W,types:je,max_queue_length:10,attachment_expiration:5},cleanups:{max_size:1e4,statuses:W,types:De,max_queue_length:10},webhooks:{retry_number:5},cli:{applications:["integration","sales_channel","user"]},doc:{core:"https://docs.commercelayer.io/core/",core_api_reference:"https://docs.commercelayer.io/developers/v/api-reference",core_how_tos:"https://docs.commercelayer.io/core/v/how-tos/",core_raste_limits:"https://docs.commercelayer.io/core/rate-limits",core_filtering_data:"https://docs.commercelayer.io/core/filtering-data#list-of-predicates",metrics:"https://docs.commercelayer.io/metrics/",metrics_api_reference:"https://docs.commercelayer.io/metrics/v/api-reference-m/",provisioning:"https://docs.commercelayer.io/provisioning/",provisioning_api_reference:"https://docs.commercelayer.io/provisioning/v/api-reference-p/",imports_resources:"https://docs.commercelayer.io/api/importing-resources#supported-resources",exports_resources:"https://docs.commercelayer.io/core/exporting-resources#supported-resources",cleanups_resources:"https://docs.commercelayer.io/core/cleaning-resources#supported-resources",webhooks_events:"https://docs.commercelayer.io/api/real-time-webhooks#supported-events",tags_resources:"https://docs.commercelayer.io/core/v/api-reference/tags#taggable-resources",links_resources:"https://docs.commercelayer.io/core/v/api-reference/links"},tags:{max_resource_tags:10,taggable_resources:Me,tag_name_max_length:25,tag_name_pattern:/^[0-9A-Za-z_-]{1,25}$/},provisioning:{default_subdomain:"provisioning",scope:"provisioning-api",applications:["user"]},links:{default_domain:"c11r.link",linkable_resources:Le}},m=Pe;var me=require("fs");var F=async(e,t,r)=>await(await fetch(new URL(`/api/${e.resource}`+(r?`/${r}`:""),e.baseUrl),{method:e.operation,headers:{"Content-Type":"application/vnd.api+json",Accept:"application/vnd.api+json",Authorization:`Bearer ${e.accessToken}`},body:JSON.stringify(t)}).then(n=>{if(n.ok)return n;throw new Error(n.statusText)})).json(),N=e=>{let t,r;try{t=(0,me.readFileSync)(e,"utf-8")}catch{throw new Error(`Unable to find or open the data file ${k.msg.error(e)}`)}try{r=JSON.parse(t)}catch{throw new Error(`Unable to parse the data file ${k.msg.error(e)}: invalid JSON format`)}return r.data?r:{data:r}},H=(r=>(r.Create="POST",r.Update="PATCH",r))(H||{});var de=(e,t)=>t.find(r=>e.id===r.id&&e.type===r.type),K=(e,t)=>{let r={id:e.id,type:e.type,...e.attributes};return e.relationships&&Object.keys(e.relationships).forEach(s=>{let n=e.relationships[s].data;n?Array.isArray(n)?r[s]=n.map(i=>K(de(i,t),t)):r[s]=K(de(n,t),t):n===null&&(r[s]=null)}),r},G=e=>{let t;e.links&&delete e.links;let r=e.data,s=e.included;return Array.isArray(r)?t=r.map(n=>K(n,s)):t=K(r,s),t};var Ve=(e="core",t,r)=>`https://${(e==="core"&&t||e).toLowerCase()}.${r||m.api.default_domain}`,Ue=e=>{if(e)return e.substring(e.indexOf(".")+1)},We=e=>e===!0||e==="live"?"live":"test",Fe=e=>e.replace(/_/g," ");var Ne=["bundles","imports","markets","prices","price_lists","promotions","buy_x_pay_y_promotions","external_promotions","fixed_amount_promotions","fixed_price_promotions","free_gift_promotions","free_shipping_promotions","percentage_discount_promotions","skus","sku_options","stock_items","stock_locations"],ge=(e,t)=>Ne.includes(e||"")&&(t||"GET").toUpperCase()==="GET",He=e=>e==="live",_e=e=>{let t=e?.environment||"test",r=e?.parallelRequests||1,s=ge(e?.resourceType,e?.method),n,i;t==="live"?(n=s?m.api.requests_max_num_burst_cacheable:m.api.requests_max_num_burst,i=s?m.api.requests_max_num_avg_cacheable:m.api.requests_max_num_avg):(n=s?m.api.requests_max_num_burst_test_cacheable:m.api.requests_max_num_burst_test,i=s?m.api.requests_max_num_avg_test_cacheable:m.api.requests_max_num_avg_test);let a=m.api.requests_max_secs_burst/n,p=m.api.requests_max_secs_avg/i,h=r*a,v=r*p,_=e?.totalRequests,c=0;return _&&_>0?_>n&&(_>i?c=v:c=h):c=Math.max(h,v),c=c*1e3,e?.minimumDelay&&(c=Math.max(e.minimumDelay,c)),e?.securityDelay&&(c+=e.securityDelay),c=Math.ceil(c),c};var Ge={raw:F,readDataFile:N,rateLimitDelay:_e},Je={denormalize:G};var Y={};g(Y,{appKey:()=>Ye,appKeyMatch:()=>Ze,appKeyValid:()=>Xe,arrayScope:()=>fe,isProvisioningApp:()=>Qe});var Ye=()=>Date.now().toString(36),Xe=e=>e.key!==void 0&&e.key!=="",Ze=(e,t)=>{let r=e!==void 0,s=t!==void 0;return!r&&!s||r&&s&&e.key===t.key},fe=e=>{if(!e)return[];if(Array.isArray(e))return e;let t=e.replace(/[ ,;]/g,"_").split("_");return Array.isArray(t)?t:[t]},Qe=e=>fe(e.scope).includes(m.provisioning.scope)||e.api==="provisioning";var X={};g(X,{allFlags:()=>tt,checkISODateTimeValue:()=>it,commandFlags:()=>et,findLongStringFlag:()=>st,fixDashedFlagValue:()=>nt,fixValueType:()=>rt});var et=(e,t)=>{let r={...e};if(t)for(let s of t)delete r[s];return r},tt=e=>({...e.flags,...e.baseFlags});var rt=e=>{let t=e;return t==="null"?t=null:Number(t)==t?t=Number(t):t=t==="true"?!0:t==="false"?!1:t,t},st=(e,t)=>{let r=t.startsWith("--")?t:`--${t}`,s,n=e.findIndex(a=>a.startsWith(r)),i=!1;if(n>-1){let a=e[n];if(a.includes("=")){let p=a.split("=");s=p.length===2?p[1]:"",i=!0}else s=e[n+1];return{value:s,index:n,single:i}}else return},nt=(e,t,r,s)=>{let n="____",i=t.name||r,a=t.char;if(!i&&!a)return e;let p=i?i.startsWith("--")?i:`--${i}`:void 0,h=a?t.char.startsWith("-")?a:`-${a}`:void 0,v=e.findIndex(w=>h&&w.startsWith(h)||p&&w.startsWith(p));if(v<0)return e;let _=e[v],c="",pe="";if(h&&_.startsWith(h))c=_.replace(h,"").trim(),_=h;else if(p&&_.startsWith(p))c=_.replace(p,"").trim(),_=p;else return e;if(c.startsWith("=")?(c=c.slice(1),pe=_+"="):c||(c=e[++v]),c.startsWith("-")||c.startsWith(n)){let w=c.startsWith(`${n}`)?c.replace(`${n}`,""):c.replace("-",`${n}-`);if(e[v]=pe+w,c.startsWith(n)&&s){let z=i?i.replace("--",""):void 0,P=Object.entries(s.flags).find(([U,Re])=>Re===c);P&&(!z||z===P[0])&&(s.flags[P[0]]=w);let V=Object.values(s.raw).find(U=>U.type==="flag"&&U.input===c);V&&(!z||z===V.flag)&&(V.input=w)}}return e},it=e=>{if(!e)throw Error("Date is empty");try{let t=Date.parse(e);if(Number.isNaN(t))throw new Error("Invalid date");return new Date(t)}catch{throw new Error("Error parsing date: "+e)}};var Z={};g(Z,{center:()=>ot,cleanDate:()=>ct,formatError:()=>pt,formatOutput:()=>ve,localeDate:()=>lt,maxLength:()=>at,printCSV:()=>xe,printJSON:()=>be,printObject:()=>ye});var he=require("util"),ye=(e,t)=>(0,he.inspect)(e,{showHidden:!1,depth:null,colors:t?.color===void 0?!0:t.color,sorted:t?.sort===void 0?!1:t?.sort,maxArrayLength:1/0,breakLength:t?.width||120}),be=(e,t)=>JSON.stringify(e,null,t?.unformatted?void 0:t?.tabSize||4),xe=(e,t)=>{if(!e||e.length===0)return"";let r=Object.keys(e[0]).filter(n=>["id","type"].includes(n)?t?.fields.includes(n):!0),s=r.map(n=>n.toUpperCase().replace(/_/g," ")).join(";")+`
2
2
  `;return e.forEach(n=>{s+=r.map(i=>n[i]).join(";")+`
3
- `}),s},it=(e,t)=>e.padStart(e.length+Math.floor((t-e.length)/2)," ").padEnd(t," "),ot=(e,t)=>e.reduce((r,s)=>{let n=Array.isArray(s[t])?s[t].join():s[t];return Math.max(r,String(n).length)},0),at=e=>e?e.replace("T"," ").replace("Z","").substring(0,e.lastIndexOf(".")):"",ct=e=>e?new Date(Date.parse(e)).toLocaleString():"",xe=(e,t,{color:r=!0}={})=>{if(!e)return"";if(typeof e=="string")return e;if(t){if(t.csv)return be(e,t);if(t.json)return ye(e,{unformatted:t.unformatted})}return he(e,{color:r})},lt=(e,t)=>xe(e.errors||e,t);var k={};f(k,{api:()=>Rt,bg:()=>Ct,black:()=>bt,blackBright:()=>xt,blue:()=>ft,blueBright:()=>C,bold:()=>ee,cli:()=>St,cyan:()=>wt,cyanBright:()=>$,dim:()=>At,green:()=>gt,greenBright:()=>Q,grey:()=>vt,hidden:()=>mt,italic:()=>w,magenta:()=>Tt,magentaBright:()=>kt,msg:()=>Et,red:()=>dt,redBright:()=>ve,reset:()=>pt,style:()=>l,table:()=>zt,type:()=>qt,underline:()=>$t,visible:()=>ut,white:()=>ht,whiteBright:()=>yt,yellow:()=>_t,yellowBright:()=>v});var o=B(require("chalk")),pt=o.default.reset,ut=o.default.visible,mt=o.default.hidden,dt=o.default.red,ve=o.default.redBright,gt=o.default.green,Q=o.default.greenBright,_t=o.default.yellow,v=o.default.yellowBright,ft=o.default.blue,C=o.default.blueBright,ht=o.default.white,yt=o.default.whiteBright,bt=o.default.black,xt=o.default.blackBright,vt=o.default.grey,wt=o.default.cyan,$=o.default.cyanBright,Tt=o.default.magenta,kt=o.default.magentaBright,ee=o.default.bold,At=o.default.dim,$t=o.default.underline,w=o.default.italic,Ct={white:o.default.bgWhite,whiteBright:o.default.bgWhiteBright,black:o.default.bgBlack,blackBright:o.default.bgBlackBright,grey:o.default.bgGrey,red:o.default.bgRed,redBright:o.default.bgRedBright,green:o.default.bgGreen,greenBright:o.default.bgGreenBright,yellow:o.default.bgYellow,yellowBright:o.default.bgYellowBright,blue:o.default.bgBlue,blueBright:o.default.bgBlueBright,magenta:o.default.bgMagenta,magentaBright:o.default.bgMagentaBright,cyan:o.default.bgCyan,cyanBright:o.default.bgCyanBright},l={organization:v.bold,application:v.bold,slug:v,id:ee,token:C,resource:ee,attribute:w,trigger:$,kind:$,live:Q,test:v,execMode:e=>e==="live"?l.live:l.test,success:Q,warning:v,error:ve,arg:w,flag:w,command:w,value:w,alias:$,plugin:C,title:C,path:w,datetime:$,number:v},qt={datetime:l.datetime,number:l.number,path:l.path},Rt={organization:l.organization,application:l.application,slug:l.slug,id:l.id,token:l.token,resource:l.resource,attribute:l.attribute,trigger:l.trigger,kind:l.kind,live:l.live,test:l.test},Et={success:l.success,warning:l.warning,error:l.error},St={arg:l.arg,flag:l.flag,command:l.command,value:l.value,alias:l.alias,plugin:l.plugin},zt={header:v.bold,key:C};var te={};f(te,{buildAssertionPayload:()=>Kt,decodeAccessToken:()=>we,generateAccessToken:()=>It,getAccessToken:()=>Bt,getTokenEnvironment:()=>Mt,isAccessTokenExpiring:()=>Dt,revokeAccessToken:()=>Ot});var D=B(require("jsonwebtoken"));var A=require("@commercelayer/js-auth"),we=e=>{let t=D.default.decode(e);if(t===null)throw new Error("Error decoding access token");return t},It=(e,t,r)=>{let n={...e,exp:Math.floor(Date.now()/1e3)+r*60,rand:Math.random()},i=m.api.token_encoding_algorithm,c=D.default.sign(n,t,{algorithm:i,noTimestamp:!0}),u=D.default.verify(c,t,{algorithms:[i]});return{accessToken:c,info:u,expMinutes:r}},Bt=async e=>{let t,r=e.scope?Array.isArray(e.scope)?e.scope.map(n=>n.trim()).join(","):e.scope:"",s={clientId:e.clientId,clientSecret:e.clientSecret,slug:e.slug,domain:e.domain,scope:r};if(e.email&&e.password?(s.username=e.email,s.password=e.password,t=await(0,A.authenticate)("password",s)):e.assertion?(s.assertion=e.assertion,t=await(0,A.authenticate)("urn:ietf:params:oauth:grant-type:jwt-bearer",s)):t=await(0,A.authenticate)("client_credentials",s),t){if(t.errors)throw new Error(`Unable to get access token: ${t.errors[0].detail}`)}else throw new Error("Unable to get access token");return t},Ot=async(e,t)=>{let r=await(0,A.revoke)({...e,token:t});if(r.errors)throw new Error(r.errors[0].detail)},Dt=e=>{let r=Math.floor(Date.now()/1e3),s=Math.floor(new Date(e.expires).getTime()/1e3);return r>=s-30},Mt=e=>(typeof e=="string"?we(e):e).test?"test":"live";var Kt=(e,t,r)=>{let s="https://commercelayer.io/claims",n={[s]:{owner:{type:e,id:t}}};if(r&&Object.keys(r).length>0){let i={};Object.entries(r).forEach(([c,u])=>{let _=c.split("."),y=_[_.length-1],d=i;_.forEach(a=>{a===y?d[a]=u:d=d[a]||(d[a]={})})}),n[s].custom_claim=i}return n};var re={};f(re,{checkUpdate:()=>Pt});var q=B(require("chalk")),Te=B(require("update-notifier-cjs")),Lt=1,Pt=e=>{let t=(0,Te.default)({pkg:e,updateCheckInterval:36e5*Lt});t.update&&t.notify({isGlobal:!1,message:`-= ${q.default.bgWhite.black.bold(` ${e.description} `)} =-
3
+ `}),s},ot=(e,t)=>e.padStart(e.length+Math.floor((t-e.length)/2)," ").padEnd(t," "),at=(e,t)=>e.reduce((r,s)=>{let n=Array.isArray(s[t])?s[t].join():s[t];return Math.max(r,String(n).length)},0),ct=e=>e?e.replace("T"," ").replace("Z","").substring(0,e.lastIndexOf(".")):"",lt=e=>e?new Date(Date.parse(e)).toLocaleString():"",ve=(e,t,{color:r=!0}={})=>{if(!e)return"";if(typeof e=="string")return e;if(t){if(t.csv)return xe(e,t);if(t.json)return be(e,{unformatted:t.unformatted})}return ye(e,{color:r})},pt=(e,t)=>ve(e.errors||e,t);var k={};g(k,{api:()=>Et,bg:()=>qt,black:()=>xt,blackBright:()=>vt,blue:()=>ht,blueBright:()=>C,bold:()=>ee,cli:()=>zt,cyan:()=>wt,cyanBright:()=>$,dim:()=>$t,green:()=>_t,greenBright:()=>Q,grey:()=>Tt,hidden:()=>dt,italic:()=>T,magenta:()=>kt,magentaBright:()=>At,msg:()=>St,red:()=>gt,redBright:()=>Te,reset:()=>ut,style:()=>l,table:()=>Ot,type:()=>Rt,underline:()=>Ct,visible:()=>mt,white:()=>yt,whiteBright:()=>bt,yellow:()=>ft,yellowBright:()=>x});var o=I(require("chalk")),ut=o.default.reset,mt=o.default.visible,dt=o.default.hidden,gt=o.default.red,Te=o.default.redBright,_t=o.default.green,Q=o.default.greenBright,ft=o.default.yellow,x=o.default.yellowBright,ht=o.default.blue,C=o.default.blueBright,yt=o.default.white,bt=o.default.whiteBright,xt=o.default.black,vt=o.default.blackBright,Tt=o.default.grey,wt=o.default.cyan,$=o.default.cyanBright,kt=o.default.magenta,At=o.default.magentaBright,ee=o.default.bold,$t=o.default.dim,Ct=o.default.underline,T=o.default.italic,qt={white:o.default.bgWhite,whiteBright:o.default.bgWhiteBright,black:o.default.bgBlack,blackBright:o.default.bgBlackBright,grey:o.default.bgGrey,red:o.default.bgRed,redBright:o.default.bgRedBright,green:o.default.bgGreen,greenBright:o.default.bgGreenBright,yellow:o.default.bgYellow,yellowBright:o.default.bgYellowBright,blue:o.default.bgBlue,blueBright:o.default.bgBlueBright,magenta:o.default.bgMagenta,magentaBright:o.default.bgMagentaBright,cyan:o.default.bgCyan,cyanBright:o.default.bgCyanBright},l={organization:x.bold,application:x.bold,slug:x,id:ee,token:C,resource:ee,attribute:T,trigger:$,kind:$,live:Q,test:x,execMode:e=>e==="live"?l.live:l.test,success:Q,warning:x,error:Te,arg:T,flag:T,command:T,value:T,alias:$,plugin:C,title:C,path:T,datetime:$,number:x},Rt={datetime:l.datetime,number:l.number,path:l.path},Et={organization:l.organization,application:l.application,slug:l.slug,id:l.id,token:l.token,resource:l.resource,attribute:l.attribute,trigger:l.trigger,kind:l.kind,live:l.live,test:l.test},St={success:l.success,warning:l.warning,error:l.error},zt={arg:l.arg,flag:l.flag,command:l.command,value:l.value,alias:l.alias,plugin:l.plugin},Ot={header:x.bold,key:C};var se={};g(se,{buildAssertionPayload:()=>Ft,decodeAccessToken:()=>ke,generateAccessToken:()=>Lt,getAccessToken:()=>Pt,getTokenEnvironment:()=>Wt,isAccessTokenExpiring:()=>Ut,revokeAccessToken:()=>Vt});var M=I(require("jsonwebtoken"));var A=require("@commercelayer/js-auth");var re={};g(re,{dotNotationToObject:()=>te,generateGroupUID:()=>Dt,log:()=>Bt,resetConsole:()=>Kt,sleep:()=>It,specialFolder:()=>jt,userAgent:()=>Mt});var B=require("util"),j=require("path"),we=require("os"),D=require("fs"),It=async e=>new Promise(t=>setTimeout(t,e)),Kt=()=>{process.stdout.write("\x1B[?25h\x1B[?7h")},Bt=(e="",...t)=>{e=typeof e=="string"?e:(0,B.inspect)(e),process.stdout.write((0,B.format)(e,...t)+`
4
+ `)},jt=(e,t=!1)=>{let r=["desktop","home"],s=e.toLowerCase().split(/[\\\/]/g)[0];if(r.includes(s)){let i=(0,we.homedir)();s==="desktop"&&(i+=`${j.sep}Desktop`),e=e.replace(s,i)}let n=(0,j.dirname)(e);return t&&!(0,D.existsSync)(n)&&(0,D.mkdirSync)(n,{recursive:!0}),e},Dt=()=>{let e=Math.trunc(Math.random()*46656),t=Math.trunc(Math.random()*46656),r=("000"+e.toString(36)).slice(-3),s=("000"+t.toString(36)).slice(-3);return r+s},Mt=e=>`${e.name.replace(/@commercelayer\/cli-plugin/,"CLI")}/${e.version}`,te=e=>{let t={};return Object.entries(e).forEach(([r,s])=>{let n=r.split("."),i=n[n.length-1],a=t;n.forEach(p=>{p===i?a[p]=s:a=a[p]||(a[p]={})})}),t};var ke=e=>{let t=M.default.decode(e);if(t===null)throw new Error("Error decoding access token");return t},Lt=(e,t,r)=>{let n={...e,exp:Math.floor(Date.now()/1e3)+r*60,rand:Math.random()},i=m.api.token_encoding_algorithm,a=M.default.sign(n,t,{algorithm:i,noTimestamp:!0}),p=M.default.verify(a,t,{algorithms:[i]});return{accessToken:a,info:p,expMinutes:r}},Pt=async e=>{let t,r=e.scope?Array.isArray(e.scope)?e.scope.map(n=>n.trim()).join(","):e.scope:"",s={clientId:e.clientId,clientSecret:e.clientSecret,slug:e.slug,domain:e.domain,scope:r};if(e.email&&e.password?(s.username=e.email,s.password=e.password,t=await(0,A.authenticate)("password",s)):e.assertion?(s.assertion=e.assertion,t=await(0,A.authenticate)("urn:ietf:params:oauth:grant-type:jwt-bearer",s)):t=await(0,A.authenticate)("client_credentials",s),t){if(t.errors)throw new Error(`Unable to get access token: ${t.errors[0].detail}`)}else throw new Error("Unable to get access token");return t},Vt=async(e,t)=>{let r=await(0,A.revoke)({...e,token:t});if(r.errors)throw new Error(r.errors[0].detail)},Ut=e=>{let r=Math.floor(Date.now()/1e3),s=Math.floor(new Date(e.expires).getTime()/1e3);return r>=s-30},Wt=e=>(typeof e=="string"?ke(e):e).test?"test":"live";var Ft=(e,t,r)=>{let s="https://commercelayer.io/claims",n={[s]:{owner:{type:e,id:t}}};if(r&&Object.keys(r).length>0){let i=te(r);n[s].custom_claim=i}return n};var ne={};g(ne,{checkUpdate:()=>Ht});var q=I(require("chalk")),Ae=I(require("update-notifier-cjs")),Nt=1,Ht=e=>{let t=(0,Ae.default)({pkg:e,updateCheckInterval:36e5*Nt});t.update&&t.notify({isGlobal:!1,message:`-= ${q.default.bgWhite.black.bold(` ${e.description} `)} =-
4
5
 
5
6
  New version available: ${q.default.dim("{currentVersion}")} -> ${q.default.green("{latestVersion}")}
6
- Run ${q.default.cyanBright("commercelayer plugins:update")} to update`})};var se={};f(se,{generateGroupUID:()=>Ft,log:()=>Wt,resetConsole:()=>Ut,sleep:()=>jt,specialFolder:()=>Vt,userAgent:()=>Nt});var M=require("util"),K=require("path"),ke=require("os"),L=require("fs"),jt=async e=>new Promise(t=>setTimeout(t,e)),Ut=()=>{process.stdout.write("\x1B[?25h\x1B[?7h")},Wt=(e="",...t)=>{e=typeof e=="string"?e:(0,M.inspect)(e),process.stdout.write((0,M.format)(e,...t)+`
7
- `)},Vt=(e,t=!1)=>{let r=["desktop","home"],s=e.toLowerCase().split(/[\\\/]/g)[0];if(r.includes(s)){let i=(0,ke.homedir)();s==="desktop"&&(i+=`${K.sep}Desktop`),e=e.replace(s,i)}let n=(0,K.dirname)(e);return t&&!(0,L.existsSync)(n)&&(0,L.mkdirSync)(n,{recursive:!0}),e},Ft=()=>{let e=Math.trunc(Math.random()*46656),t=Math.trunc(Math.random()*46656),r=("000"+e.toString(36)).slice(-3),s=("000"+t.toString(36)).slice(-3);return r+s},Nt=e=>`${e.name.replace(/@commercelayer\/cli-plugin/,"CLI")}/${e.version}`;var P=require("@oclif/core");var ie={};f(ie,{camelize:()=>Xt,capitalize:()=>E,dasherize:()=>Ht,pluralize:()=>Jt,singularize:()=>Yt,symbols:()=>x,underscorize:()=>Gt});var p={uncountableWords:["equipment","information","rice","money","species","series","fish","sheep","moose","deer","news"],pluralRules:[[/(m)an$/gi,"$1en"],[/(pe)rson$/gi,"$1ople"],[/(child)$/gi,"$1ren"],[/^(ox)$/gi,"$1en"],[/(ax|test)is$/gi,"$1es"],[/(octop|vir)us$/gi,"$1i"],[/(alias|status)$/gi,"$1es"],[/(bu)s$/gi,"$1ses"],[/(buffal|tomat|potat)o$/gi,"$1oes"],[/([ti])um$/gi,"$1a"],[/sis$/gi,"ses"],[/(?:([^f])fe|([lr])f)$/gi,"$1$2ves"],[/(hive)$/gi,"$1s"],[/([^aeiouy]|qu)y$/gi,"$1ies"],[/(x|ch|ss|sh)$/gi,"$1es"],[/(matr|vert|ind)ix|ex$/gi,"$1ices"],[/([m|l])ouse$/gi,"$1ice"],[/(quiz)$/gi,"$1zes"],[/s$/gi,"s"],[/$/gi,"s"]],singularRules:[[/(m)en$/gi,"$1an"],[/(pe)ople$/gi,"$1rson"],[/(child)ren$/gi,"$1"],[/([ti])a$/gi,"$1um"],[/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/gi,"$1$2sis"],[/(hive)s$/gi,"$1"],[/(tive)s$/gi,"$1"],[/(curve)s$/gi,"$1"],[/([lr])ves$/gi,"$1f"],[/([^fo])ves$/gi,"$1fe"],[/([^aeiouy]|qu)ies$/gi,"$1y"],[/(s)eries$/gi,"$1eries"],[/(m)ovies$/gi,"$1ovie"],[/(x|ch|ss|sh)es$/gi,"$1"],[/([m|l])ice$/gi,"$1ouse"],[/(bus)es$/gi,"$1"],[/(o)es$/gi,"$1"],[/(shoe)s$/gi,"$1"],[/(cris|ax|test)es$/gi,"$1is"],[/(octop|vir)i$/gi,"$1us"],[/(alias|status)es$/gi,"$1"],[/^(ox)en/gi,"$1"],[/(vert|ind)ices$/gi,"$1ex"],[/(matr)ices$/gi,"$1ix"],[/(quiz)zes$/gi,"$1"],[/s$/gi,""]],nonTitlecasedWords:["and","or","nor","a","an","the","so","but","to","of","at","by","from","into","on","onto","off","out","in","over","with","for"],idSuffix:/(_ids|_id)$/g,underbar:/_/g,spaceOrUnderbar:/[ _]/g,uppercase:/([A-Z])/g,underbarPrefix:/^_/,applyRules:function(e,t,r,s){if(s)e=s;else if(!r.includes(e.toLowerCase())){for(let i=0;i<t.length;i++)if(e.match(t[i][0])){e=e.replace(t[i][0],t[i][1]);break}}return e},pluralize:function(e,t){return p.applyRules(e,p.pluralRules,p.uncountableWords,t)},singularize:function(e,t){return p.applyRules(e,p.singularRules,p.uncountableWords,t)},camelize:function(e,t){let r=e.split("/");for(let s=0;s<r.length;s++){let n=r[s].split("_"),i=t&&s+1===r.length?1:0;for(let c=i;c<n.length;c++)n[c]=n[c].charAt(0).toUpperCase()+n[c].substring(1);r[s]=n.join("")}if(e=r.join("::"),t){let s=e.charAt(0).toLowerCase(),n=e.slice(1);e=s+n}return e},underscore:function(e){let t=e.split("::");for(let r=0;r<t.length;r++)t[r]=t[r].replace(p.uppercase,"_$1"),t[r]=t[r].replace(p.underbarPrefix,"");return e=t.join("/").toLowerCase(),e},humanize:function(e,t){return e=e.toLowerCase(),e=e.replace(p.idSuffix,""),e=e.replace(p.underbar," "),t||(e=p.capitalize(e)),e},capitalize:function(e){return e=e.toLowerCase(),e=e.substring(0,1).toUpperCase()+e.substring(1),e},dasherize:function(e){return e=e.replace(p.spaceOrUnderbar,"-"),e},camel2words:function(e,t){t?(e=p.camelize(e),e=p.underscore(e)):e=e.toLowerCase(),e=e.replace(p.underbar," ");let r=e.split(" ");for(let s=0;s<r.length;s++){let n=r[s].split("-");for(let i=0;i<n.length;i++)p.nonTitlecasedWords.includes(n[i].toLowerCase())||(n[i]=p.capitalize(n[i]));r[s]=n.join("-")}return e=r.join(" "),e=e.substring(0,1).toUpperCase()+e.substring(1),e},demodulize:function(e){let t=e.split("::");return e=t[t.length-1],e},tableize:function(e){return e=p.pluralize(p.underscore(e)),e},classify:function(e){return e=p.singularize(p.camelize(e)),e},foreignKey:function(e,t){return e=p.underscore(p.demodulize(e))+(t?"":"_")+"id",e},ordinalize:function(e){let t=e.split(" ");for(let r=0;r<t.length;r++){let s=parseInt(t[r]);if(Number.isNaN(s)){let n=t[r].substring(t[r].length-2),i=t[r].substring(t[r].length-1),c="th";n!=="11"&&n!=="12"&&n!=="13"&&(i==="1"?c="st":i==="2"?c="nd":i==="3"&&(c="rd")),t[r]+=c}}return e=t.join(" "),e}},R=p;var ne={};f(ne,{symbols:()=>x});var x={check:{small:"\u2714",bkgGreen:"\u2705",squareRoot:"\u221A"},cross:{small:"\u2718",red:"\u274C"},clock:{stopwatch:"\u23F1"},arrow:{down:"\u2193"},selection:{fisheye:"\u25C9"}};x.check.heavy=x.check.small;x.check.whiteHeavy=x.check.bkgGreen;x.cross.heavyBallot=x.cross.small;var E=e=>e&&R.capitalize(e),Ht=e=>e&&(e=e.toLocaleLowerCase(),e.replace(/[ _]/g,"-")),Gt=e=>e&&(e=e.toLocaleLowerCase(),e.replace(/[ -]/g,"_")),Jt=(e,t)=>R.pluralize(e,t),Yt=(e,t)=>R.singularize(e,t),Xt=(e,t)=>R.camelize(e,t);var h=!1,oe=class extends P.CommandHelp{examples(t){return h&&console.log("---------- command.examples"),super.examples(t)}},S=class extends P.Help{async showHelp(t){return h&&console.log("---------- showHelp"),super.showHelp(t)}async showRootHelp(){return h&&console.log("---------- showRootHelp"),super.showRootHelp()}async showTopicHelp(t){return h&&console.log("---------- showTopicHelp"),super.showTopicHelp(t)}async showCommandHelp(t){h&&console.log("---------- showCommandHelp");let r=t.id,s=r?r.split(":").length:1,n=this.sortedTopics.filter(u=>u.name.startsWith(r+":")&&u.name.split(":").length===s+1),i=this.sortedCommands.filter(u=>u.id.startsWith(r+":")&&u.id.split(":").length===s+1),c=t.description&&this.render(t.description).split(`
8
- `)[0];c&&console.log(`${E(c)}
9
- `),console.log(this.formatCommand(t)),console.log(""),n.length>0&&(console.log(this.formatTopics(n)),console.log("")),i.length>0&&(console.log(this.formatCommands(i)),console.log(""))}formatRoot(){return h&&console.log("---------- formatRoot"),super.formatRoot()}formatTopic(t){return h&&console.log("---------- formatTopic"),super.formatTopic(t)}formatTopics(t){h&&console.log("---------- formatTopics");let r=t.filter(s=>!s.hidden).map(s=>(s.description=E(s.description),s));return super.formatTopics(r)}formatCommands(t){return h&&console.log("---------- formatCommands"),super.formatCommands(t).split(`
7
+ Run ${q.default.cyanBright("commercelayer plugins:update")} to update`})};var L=require("@oclif/core");var oe={};g(oe,{camelize:()=>Zt,capitalize:()=>E,dasherize:()=>Gt,pluralize:()=>Yt,singularize:()=>Xt,symbols:()=>b,underscorize:()=>Jt});var u={uncountableWords:["equipment","information","rice","money","species","series","fish","sheep","moose","deer","news"],pluralRules:[[/(m)an$/gi,"$1en"],[/(pe)rson$/gi,"$1ople"],[/(child)$/gi,"$1ren"],[/^(ox)$/gi,"$1en"],[/(ax|test)is$/gi,"$1es"],[/(octop|vir)us$/gi,"$1i"],[/(alias|status)$/gi,"$1es"],[/(bu)s$/gi,"$1ses"],[/(buffal|tomat|potat)o$/gi,"$1oes"],[/([ti])um$/gi,"$1a"],[/sis$/gi,"ses"],[/(?:([^f])fe|([lr])f)$/gi,"$1$2ves"],[/(hive)$/gi,"$1s"],[/([^aeiouy]|qu)y$/gi,"$1ies"],[/(x|ch|ss|sh)$/gi,"$1es"],[/(matr|vert|ind)ix|ex$/gi,"$1ices"],[/([m|l])ouse$/gi,"$1ice"],[/(quiz)$/gi,"$1zes"],[/s$/gi,"s"],[/$/gi,"s"]],singularRules:[[/(m)en$/gi,"$1an"],[/(pe)ople$/gi,"$1rson"],[/(child)ren$/gi,"$1"],[/([ti])a$/gi,"$1um"],[/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/gi,"$1$2sis"],[/(hive)s$/gi,"$1"],[/(tive)s$/gi,"$1"],[/(curve)s$/gi,"$1"],[/([lr])ves$/gi,"$1f"],[/([^fo])ves$/gi,"$1fe"],[/([^aeiouy]|qu)ies$/gi,"$1y"],[/(s)eries$/gi,"$1eries"],[/(m)ovies$/gi,"$1ovie"],[/(x|ch|ss|sh)es$/gi,"$1"],[/([m|l])ice$/gi,"$1ouse"],[/(bus)es$/gi,"$1"],[/(o)es$/gi,"$1"],[/(shoe)s$/gi,"$1"],[/(cris|ax|test)es$/gi,"$1is"],[/(octop|vir)i$/gi,"$1us"],[/(alias|status)es$/gi,"$1"],[/^(ox)en/gi,"$1"],[/(vert|ind)ices$/gi,"$1ex"],[/(matr)ices$/gi,"$1ix"],[/(quiz)zes$/gi,"$1"],[/s$/gi,""]],nonTitlecasedWords:["and","or","nor","a","an","the","so","but","to","of","at","by","from","into","on","onto","off","out","in","over","with","for"],idSuffix:/(_ids|_id)$/g,underbar:/_/g,spaceOrUnderbar:/[ _]/g,uppercase:/([A-Z])/g,underbarPrefix:/^_/,applyRules:function(e,t,r,s){if(s)e=s;else if(!r.includes(e.toLowerCase())){for(let i=0;i<t.length;i++)if(e.match(t[i][0])){e=e.replace(t[i][0],t[i][1]);break}}return e},pluralize:function(e,t){return u.applyRules(e,u.pluralRules,u.uncountableWords,t)},singularize:function(e,t){return u.applyRules(e,u.singularRules,u.uncountableWords,t)},camelize:function(e,t){let r=e.split("/");for(let s=0;s<r.length;s++){let n=r[s].split("_"),i=t&&s+1===r.length?1:0;for(let a=i;a<n.length;a++)n[a]=n[a].charAt(0).toUpperCase()+n[a].substring(1);r[s]=n.join("")}if(e=r.join("::"),t){let s=e.charAt(0).toLowerCase(),n=e.slice(1);e=s+n}return e},underscore:function(e){let t=e.split("::");for(let r=0;r<t.length;r++)t[r]=t[r].replace(u.uppercase,"_$1"),t[r]=t[r].replace(u.underbarPrefix,"");return e=t.join("/").toLowerCase(),e},humanize:function(e,t){return e=e.toLowerCase(),e=e.replace(u.idSuffix,""),e=e.replace(u.underbar," "),t||(e=u.capitalize(e)),e},capitalize:function(e){return e=e.toLowerCase(),e=e.substring(0,1).toUpperCase()+e.substring(1),e},dasherize:function(e){return e=e.replace(u.spaceOrUnderbar,"-"),e},camel2words:function(e,t){t?(e=u.camelize(e),e=u.underscore(e)):e=e.toLowerCase(),e=e.replace(u.underbar," ");let r=e.split(" ");for(let s=0;s<r.length;s++){let n=r[s].split("-");for(let i=0;i<n.length;i++)u.nonTitlecasedWords.includes(n[i].toLowerCase())||(n[i]=u.capitalize(n[i]));r[s]=n.join("-")}return e=r.join(" "),e=e.substring(0,1).toUpperCase()+e.substring(1),e},demodulize:function(e){let t=e.split("::");return e=t[t.length-1],e},tableize:function(e){return e=u.pluralize(u.underscore(e)),e},classify:function(e){return e=u.singularize(u.camelize(e)),e},foreignKey:function(e,t){return e=u.underscore(u.demodulize(e))+(t?"":"_")+"id",e},ordinalize:function(e){let t=e.split(" ");for(let r=0;r<t.length;r++){let s=parseInt(t[r]);if(Number.isNaN(s)){let n=t[r].substring(t[r].length-2),i=t[r].substring(t[r].length-1),a="th";n!=="11"&&n!=="12"&&n!=="13"&&(i==="1"?a="st":i==="2"?a="nd":i==="3"&&(a="rd")),t[r]+=a}}return e=t.join(" "),e}},R=u;var ie={};g(ie,{symbols:()=>b});var b={check:{small:"\u2714",bkgGreen:"\u2705",squareRoot:"\u221A"},cross:{small:"\u2718",red:"\u274C"},clock:{stopwatch:"\u23F1"},arrow:{down:"\u2193"},selection:{fisheye:"\u25C9"}};b.check.heavy=b.check.small;b.check.whiteHeavy=b.check.bkgGreen;b.cross.heavyBallot=b.cross.small;var E=e=>e&&R.capitalize(e),Gt=e=>e&&(e=e.toLocaleLowerCase(),e.replace(/[ _]/g,"-")),Jt=e=>e&&(e=e.toLocaleLowerCase(),e.replace(/[ -]/g,"_")),Yt=(e,t)=>R.pluralize(e,t),Xt=(e,t)=>R.singularize(e,t),Zt=(e,t)=>R.camelize(e,t);var f=!1,ae=class extends L.CommandHelp{examples(t){return f&&console.log("---------- command.examples"),super.examples(t)}},S=class extends L.Help{async showHelp(t){return f&&console.log("---------- showHelp"),super.showHelp(t)}async showRootHelp(){return f&&console.log("---------- showRootHelp"),super.showRootHelp()}async showTopicHelp(t){return f&&console.log("---------- showTopicHelp"),super.showTopicHelp(t)}async showCommandHelp(t){f&&console.log("---------- showCommandHelp");let r=t.id,s=r?r.split(":").length:1,n=this.sortedTopics.filter(p=>p.name.startsWith(r+":")&&p.name.split(":").length===s+1),i=this.sortedCommands.filter(p=>p.id.startsWith(r+":")&&p.id.split(":").length===s+1),a=t.description&&this.render(t.description).split(`
8
+ `)[0];a&&console.log(`${E(a)}
9
+ `),console.log(this.formatCommand(t)),console.log(""),n.length>0&&(console.log(this.formatTopics(n)),console.log("")),i.length>0&&(console.log(this.formatCommands(i)),console.log(""))}formatRoot(){return f&&console.log("---------- formatRoot"),super.formatRoot()}formatTopic(t){return f&&console.log("---------- formatTopic"),super.formatTopic(t)}formatTopics(t){f&&console.log("---------- formatTopics");let r=t.filter(s=>!s.hidden).map(s=>(s.description=E(s.description),s));return super.formatTopics(r)}formatCommands(t){return f&&console.log("---------- formatCommands"),super.formatCommands(t).split(`
10
10
  `).map(r=>{let s=0;return r.split(" ").map(n=>(n||"").trim()!==""&&++s===2?E(n):n).join(" ")}).join(`
11
- `)}formatCommand(t){return h&&console.log("---------- formatCommand"),super.formatCommand(t)}getCommandHelpClass(t){return h&&console.log("---------- getCommandHelpClass"),new oe(t,this.config,this.opts)}};var ae={};f(ae,{download:()=>Zt});var Zt=async e=>{let r=`https://data.${m.api.default_app_domain}/schemas/`,n=`openapi${e?"_"+e.replace(/\./g,"-"):""}.json`,i=r+n;return await(await fetch(i)).json()};var ce={};f(ce,{apply:()=>tr,available:()=>$e,documentation:()=>er,filters:()=>Ce,list:()=>Ae});var Qt=[{predicate:"*_eq",description:"The attribute is equal to the filter value"},{predicate:"*_eq_or_null",description:"The attribute is equal to the filter value, including null values"},{predicate:"*_not_eq",description:"The attribute is not equal to the filter value"},{predicate:"*_not_eq_or_null",description:"The attribute is not equal to the filter value, including null values"},{predicate:"*_matches",description:'The attribute matches the filter value with "LIKE" operator'},{predicate:"*_does_not_match",description:'The attribute does not match the filter value with "LIKE" operator'},{predicate:"*_matches_any",description:'The attribute matches all of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_matches_all",description:'The attribute matches all of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_does_not_match_any",description:'The attribute does not match any of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_does_not_match_all",description:'The attribute matches none of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_lt",description:"The attribute is less than the filter value"},{predicate:"*_lteq",description:"The attribute is less than or equal to the filter value"},{predicate:"*_gt",description:"The attribute is greater than the filter value"},{predicate:"*_gteq",description:"The attribute is greater than or equal to the filter value"},{predicate:"*_present",description:"The attribute is not null and not empty"},{predicate:"*_blank",description:"The attribute is null or empty"},{predicate:"*_null",description:"The attribute is null"},{predicate:"*_not_null",description:"The attribute is not null"},{predicate:"*_in",description:"The attribute matches any of the filter values (comma-separated)"},{predicate:"*_in_or_null",description:"The attribute matches any of the filter values (comma-separated), including null values"},{predicate:"*_not_in",description:"The attribute matches none of the filter values (comma-separated)"},{predicate:"*_not_in_or_null",description:"The attribute matches none of the filter values (comma-separated), including null values"},{predicate:"*_lt_any",description:"The attribute is less than any of the filter values (comma-separated)"},{predicate:"*_lteq_any",description:"The attribute is less than or equal to any of the filter values (comma-separated)"},{predicate:"*_gt_any",description:"The attribute is greater than any of the filter values (comma-separated)"},{predicate:"*_gteq_any",description:"The attribute is greater than or qual to any of the filter values (comma-separated)"},{predicate:"*_lt_all",description:"The attribute is less than all of the filter values (comma-separated)"},{predicate:"*_lteq_all",description:"The attribute is less than or equal to all of the filter values (comma-separated)"},{predicate:"*_gt_all",description:"The attribute is greater than all of the filter values (comma-separated)"},{predicate:"*_gteq_all",description:"The attribute is greater or equal to all of the filter values (comma-separated)"},{predicate:"*_not_eq_all",description:"The attribute is equal to none of the filter values (comma-separated)"},{predicate:"*_start",description:"The attribute starts with the filter value (comma-separated)"},{predicate:"*_not_start",description:"The attribute does not start with the filter value (comma-separated)"},{predicate:"*_start_any",description:"The attribute starts with any of the filter values (comma-separated)"},{predicate:"*_start_all",description:"The attribute starts with all of the filter values (comma-separated)"},{predicate:"*_not_start_any",description:"The attribute does not start with any of the filter values (comma-separated)"},{predicate:"*_not_start_all",description:"The attribute starts with none of the filter values (comma-separated)"},{predicate:"*_end",description:"The attribute ends with the filter value"},{predicate:"*_not_end",description:"The attribute does not end with the filter value"},{predicate:"*_end_any",description:"The attribute ends with any of the filter values (comma-separated)"},{predicate:"*_end_all",description:"The attribute ends with all of the filter values (comma-separated)"},{predicate:"*_not_end_any",description:"The attribute does not end with any of the filter values (comma-separated)"},{predicate:"*_not_end_all",description:"The attribute ends with none of the filter values (comma-separated)"},{predicate:"*_cont",description:"The attribute contains the filter value"},{predicate:"*_not_cont",description:"The attribute does not contains the filter value"},{predicate:"*_cont_any",description:"The attribute contains any of the filter values (comma-separated)"},{predicate:"*_cont_all",description:"The attribute contains all of the filter values (comma-separated)"},{predicate:"*_not_cont_all",description:"The attribute contains none of the filter values (comma-separated)"},{predicate:"*_jcont",description:"The attribute contains a portion of the JSON used as filter value (works with object only)"},{predicate:"*_true",description:"The attribute is true"},{predicate:"*_false",description:"The attribute is false"}],er=m.doc.core_filtering_data,Ae=()=>Ce().map(e=>e.predicate.replace(/^\*/g,"")),$e=e=>{let t=e.startsWith("_")?e:`_${e}`;return Ae().some(r=>t.endsWith(r))},tr=(e,...t)=>{if(!$e(e))throw new Error("Unknown filter: "+e);let r="";for(let s of t)r+=(r.length===0?"":"_or_")+s;return r+=e.startsWith("_")?e:`_${e}`,r},Ce=()=>[...Qt];0&&(module.exports={clApi,clApplication,clColor,clCommand,clConfig,clFilter,clHelp,clOutput,clSchema,clSymbol,clText,clToken,clUpdate,clUtil});
11
+ `)}formatCommand(t){return f&&console.log("---------- formatCommand"),super.formatCommand(t)}getCommandHelpClass(t){return f&&console.log("---------- getCommandHelpClass"),new ae(t,this.config,this.opts)}};var ce={};g(ce,{download:()=>Qt});var Qt=async e=>{let r=`https://data.${m.api.default_app_domain}/schemas/`,n=`openapi${e?"_"+e.replace(/\./g,"-"):""}.json`,i=r+n;return await(await fetch(i)).json()};var le={};g(le,{apply:()=>rr,available:()=>Ce,documentation:()=>tr,filters:()=>qe,list:()=>$e});var er=[{predicate:"*_eq",description:"The attribute is equal to the filter value"},{predicate:"*_eq_or_null",description:"The attribute is equal to the filter value, including null values"},{predicate:"*_not_eq",description:"The attribute is not equal to the filter value"},{predicate:"*_not_eq_or_null",description:"The attribute is not equal to the filter value, including null values"},{predicate:"*_matches",description:'The attribute matches the filter value with "LIKE" operator'},{predicate:"*_does_not_match",description:'The attribute does not match the filter value with "LIKE" operator'},{predicate:"*_matches_any",description:'The attribute matches all of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_matches_all",description:'The attribute matches all of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_does_not_match_any",description:'The attribute does not match any of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_does_not_match_all",description:'The attribute matches none of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_lt",description:"The attribute is less than the filter value"},{predicate:"*_lteq",description:"The attribute is less than or equal to the filter value"},{predicate:"*_gt",description:"The attribute is greater than the filter value"},{predicate:"*_gteq",description:"The attribute is greater than or equal to the filter value"},{predicate:"*_present",description:"The attribute is not null and not empty"},{predicate:"*_blank",description:"The attribute is null or empty"},{predicate:"*_null",description:"The attribute is null"},{predicate:"*_not_null",description:"The attribute is not null"},{predicate:"*_in",description:"The attribute matches any of the filter values (comma-separated)"},{predicate:"*_in_or_null",description:"The attribute matches any of the filter values (comma-separated), including null values"},{predicate:"*_not_in",description:"The attribute matches none of the filter values (comma-separated)"},{predicate:"*_not_in_or_null",description:"The attribute matches none of the filter values (comma-separated), including null values"},{predicate:"*_lt_any",description:"The attribute is less than any of the filter values (comma-separated)"},{predicate:"*_lteq_any",description:"The attribute is less than or equal to any of the filter values (comma-separated)"},{predicate:"*_gt_any",description:"The attribute is greater than any of the filter values (comma-separated)"},{predicate:"*_gteq_any",description:"The attribute is greater than or qual to any of the filter values (comma-separated)"},{predicate:"*_lt_all",description:"The attribute is less than all of the filter values (comma-separated)"},{predicate:"*_lteq_all",description:"The attribute is less than or equal to all of the filter values (comma-separated)"},{predicate:"*_gt_all",description:"The attribute is greater than all of the filter values (comma-separated)"},{predicate:"*_gteq_all",description:"The attribute is greater or equal to all of the filter values (comma-separated)"},{predicate:"*_not_eq_all",description:"The attribute is equal to none of the filter values (comma-separated)"},{predicate:"*_start",description:"The attribute starts with the filter value (comma-separated)"},{predicate:"*_not_start",description:"The attribute does not start with the filter value (comma-separated)"},{predicate:"*_start_any",description:"The attribute starts with any of the filter values (comma-separated)"},{predicate:"*_start_all",description:"The attribute starts with all of the filter values (comma-separated)"},{predicate:"*_not_start_any",description:"The attribute does not start with any of the filter values (comma-separated)"},{predicate:"*_not_start_all",description:"The attribute starts with none of the filter values (comma-separated)"},{predicate:"*_end",description:"The attribute ends with the filter value"},{predicate:"*_not_end",description:"The attribute does not end with the filter value"},{predicate:"*_end_any",description:"The attribute ends with any of the filter values (comma-separated)"},{predicate:"*_end_all",description:"The attribute ends with all of the filter values (comma-separated)"},{predicate:"*_not_end_any",description:"The attribute does not end with any of the filter values (comma-separated)"},{predicate:"*_not_end_all",description:"The attribute ends with none of the filter values (comma-separated)"},{predicate:"*_cont",description:"The attribute contains the filter value"},{predicate:"*_not_cont",description:"The attribute does not contains the filter value"},{predicate:"*_cont_any",description:"The attribute contains any of the filter values (comma-separated)"},{predicate:"*_cont_all",description:"The attribute contains all of the filter values (comma-separated)"},{predicate:"*_not_cont_all",description:"The attribute contains none of the filter values (comma-separated)"},{predicate:"*_jcont",description:"The attribute contains a portion of the JSON used as filter value (works with object only)"},{predicate:"*_true",description:"The attribute is true"},{predicate:"*_false",description:"The attribute is false"}],tr=m.doc.core_filtering_data,$e=()=>qe().map(e=>e.predicate.replace(/^\*/g,"")),Ce=e=>{let t=e.startsWith("_")?e:`_${e}`;return $e().some(r=>t.endsWith(r))},rr=(e,...t)=>{if(!Ce(e))throw new Error("Unknown filter: "+e);let r="";for(let s of t)r+=(r.length===0?"":"_or_")+s;return r+=e.startsWith("_")?e:`_${e}`,r},qe=()=>[...er];0&&(module.exports={clApi,clApplication,clColor,clCommand,clConfig,clFilter,clHelp,clOutput,clSchema,clSymbol,clText,clToken,clUpdate,clUtil});
package/lib/index.mjs CHANGED
@@ -1,11 +1,11 @@
1
- var be=Object.defineProperty;var h=(e,t)=>{for(var r in t)be(e,r,{get:t[r],enumerable:!0})};var X={};h(X,{Operation:()=>P,baseURL:()=>Ce,execMode:()=>Re,extractDomain:()=>qe,humanizeResource:()=>Ee,isResourceCacheable:()=>J,liveEnvironment:()=>ze,request:()=>Ie,requestDataFile:()=>L,requestRateLimitDelay:()=>Y,requestRaw:()=>K,response:()=>Be,responseDenormalize:()=>j});var M=["in_progress","pending","completed","interrupted"],xe=["addresses","bundles","coupons","customer_addresses","customer_payment_sources","customer_subscriptions","customers","gift_cards","line_items","line_item_options","orders","price_tiers","prices","shipping_categories","sku_lists","sku_list_items","sku_options","skus","stock_items","stock_transfers","tags","tax_categories"],ve=["addresses","authorizations","bundles","captures","coupons","customer_addresses","customer_payment_sources","customer_subscriptions","customers","gift_cards","line_items","line_item_options","orders","payment_methods","price_tiers","prices","refunds","shipments","shipping_categories","shipping_methods","sku_lists","sku_list_items","sku_options","skus","stock_items","stock_transfers","tags","tax_categories","transactions","voids"],we=["bundles","gift_cards","prices","promotions","sku_lists","sku_options","skus","stock_items"],Te=["addresses","bundles","customers","coupons","gift_cards","line_items","line_item_options","orders","returns","skus","sku_options","promotions","external_promotions","fixed_amount_promotions","fixed_price_promotions","free_gift_promotions","free_shipping_promotions","percentage_discount_promotions"],ke=["orders","skus","sku_lists"],x={erl_oauth_limit_live:30,erl_average_limit_cachable_live:1e3,erl_average_limit_cachable_test:500,erl_burst_limit_cachable_live:250,erl_burst_limit_cachable_test:125,erl_average_limit_uncachable_live:200,erl_average_limit_uncachable_test:100,erl_burst_limit_uncachable_live:50,erl_burst_limit_uncachable_test:25},Ae={api:{default_domain:"commercelayer.io",default_app_domain:"commercelayer.app",default_stg_domain:"commercelayer.co",token_expiration_mins:60*4,token_encoding_algorithm:"HS512",token_owner_types:["Customer","User"],requests_max_num_burst:x.erl_burst_limit_uncachable_live,requests_max_num_burst_cacheable:x.erl_burst_limit_cachable_live,requests_max_num_burst_test:x.erl_burst_limit_uncachable_test,requests_max_num_burst_test_cacheable:x.erl_burst_limit_cachable_test,requests_max_num_avg:x.erl_average_limit_uncachable_live,requests_max_num_avg_cacheable:x.erl_average_limit_cachable_live,requests_max_num_avg_test:x.erl_average_limit_uncachable_test,requests_max_num_avg_test_cacheable:x.erl_average_limit_cachable_test,requests_max_num_oauth:x.erl_oauth_limit_live,requests_max_secs_burst:10,requests_max_secs_oauth:60,requests_max_secs_avg:60,page_max_size:25,page_default_size:10},application:{kinds:["integration","sales_channel","webapp","user"],login_scopes:["market","stock_location","store"]},imports:{max_size:1e4,statuses:M,types:xe,max_queue_length:10,attachment_expiration:5},exports:{max_size:1e4,statuses:M,types:ve,max_queue_length:10,attachment_expiration:5},cleanups:{max_size:1e4,statuses:M,types:we,max_queue_length:10},webhooks:{retry_number:5},cli:{applications:["integration","sales_channel","user"]},doc:{core:"https://docs.commercelayer.io/core/",core_api_reference:"https://docs.commercelayer.io/developers/v/api-reference",core_how_tos:"https://docs.commercelayer.io/core/v/how-tos/",core_raste_limits:"https://docs.commercelayer.io/core/rate-limits",core_filtering_data:"https://docs.commercelayer.io/core/filtering-data#list-of-predicates",metrics:"https://docs.commercelayer.io/metrics/",metrics_api_reference:"https://docs.commercelayer.io/metrics/v/api-reference-m/",provisioning:"https://docs.commercelayer.io/provisioning/",provisioning_api_reference:"https://docs.commercelayer.io/provisioning/v/api-reference-p/",imports_resources:"https://docs.commercelayer.io/api/importing-resources#supported-resources",exports_resources:"https://docs.commercelayer.io/core/exporting-resources#supported-resources",cleanups_resources:"https://docs.commercelayer.io/core/cleaning-resources#supported-resources",webhooks_events:"https://docs.commercelayer.io/api/real-time-webhooks#supported-events",tags_resources:"https://docs.commercelayer.io/core/v/api-reference/tags#taggable-resources",links_resources:"https://docs.commercelayer.io/core/v/api-reference/links"},tags:{max_resource_tags:10,taggable_resources:Te,tag_name_max_length:25,tag_name_pattern:/^[0-9A-Za-z_-]{1,25}$/},provisioning:{default_subdomain:"provisioning",scope:"provisioning-api",applications:["user"]},links:{default_domain:"c11r.link",linkable_resources:ke}},m=Ae;import{readFileSync as $e}from"fs";var K=async(e,t,r)=>await(await fetch(new URL(`/api/${e.resource}`+(r?`/${r}`:""),e.baseUrl),{method:e.operation,headers:{"Content-Type":"application/vnd.api+json",Accept:"application/vnd.api+json",Authorization:`Bearer ${e.accessToken}`},body:JSON.stringify(t)}).then(n=>{if(n.ok)return n;throw new Error(n.statusText)})).json(),L=e=>{let t,r;try{t=$e(e,"utf-8")}catch{throw new Error(`Unable to find or open the data file ${A.msg.error(e)}`)}try{r=JSON.parse(t)}catch{throw new Error(`Unable to parse the data file ${A.msg.error(e)}: invalid JSON format`)}return r.data?r:{data:r}},P=(r=>(r.Create="POST",r.Update="PATCH",r))(P||{});var G=(e,t)=>t.find(r=>e.id===r.id&&e.type===r.type),S=(e,t)=>{let r={id:e.id,type:e.type,...e.attributes};return e.relationships&&Object.keys(e.relationships).forEach(s=>{let n=e.relationships[s].data;n?Array.isArray(n)?r[s]=n.map(i=>S(G(i,t),t)):r[s]=S(G(n,t),t):n===null&&(r[s]=null)}),r},j=e=>{let t;e.links&&delete e.links;let r=e.data,s=e.included;return Array.isArray(r)?t=r.map(n=>S(n,s)):t=S(r,s),t};var Ce=(e="core",t,r)=>`https://${(e==="core"&&t||e).toLowerCase()}.${r||m.api.default_domain}`,qe=e=>{if(e)return e.substring(e.indexOf(".")+1)},Re=e=>e===!0||e==="live"?"live":"test",Ee=e=>e.replace(/_/g," ");var Se=["bundles","imports","markets","prices","price_lists","promotions","buy_x_pay_y_promotions","external_promotions","fixed_amount_promotions","fixed_price_promotions","free_gift_promotions","free_shipping_promotions","percentage_discount_promotions","skus","sku_options","stock_items","stock_locations"],J=(e,t)=>Se.includes(e||"")&&(t||"GET").toUpperCase()==="GET",ze=e=>e==="live",Y=e=>{let t=e?.environment||"test",r=e?.parallelRequests||1,s=J(e?.resourceType,e?.method),n,i;t==="live"?(n=s?m.api.requests_max_num_burst_cacheable:m.api.requests_max_num_burst,i=s?m.api.requests_max_num_avg_cacheable:m.api.requests_max_num_avg):(n=s?m.api.requests_max_num_burst_test_cacheable:m.api.requests_max_num_burst_test,i=s?m.api.requests_max_num_avg_test_cacheable:m.api.requests_max_num_avg_test);let c=m.api.requests_max_secs_burst/n,u=m.api.requests_max_secs_avg/i,f=r*c,b=r*u,d=e?.totalRequests,a=0;return d&&d>0?d>n&&(d>i?a=b:a=f):a=Math.max(f,b),a=a*1e3,e?.minimumDelay&&(a=Math.max(e.minimumDelay,a)),e?.securityDelay&&(a+=e.securityDelay),a=Math.ceil(a),a};var Ie={raw:K,readDataFile:L,rateLimitDelay:Y},Be={denormalize:j};var Q={};h(Q,{appKey:()=>Oe,appKeyMatch:()=>Me,appKeyValid:()=>De,arrayScope:()=>Z,isProvisioningApp:()=>Ke});var Oe=()=>Date.now().toString(36),De=e=>e.key!==void 0&&e.key!=="",Me=(e,t)=>{let r=e!==void 0,s=t!==void 0;return!r&&!s||r&&s&&e.key===t.key},Z=e=>{if(!e)return[];if(Array.isArray(e))return e;let t=e.replace(/[ ,;]/g,"_").split("_");return Array.isArray(t)?t:[t]},Ke=e=>Z(e.scope).includes(m.provisioning.scope)||e.api==="provisioning";var ee={};h(ee,{allFlags:()=>Pe,checkISODateTimeValue:()=>Ve,commandFlags:()=>Le,findLongStringFlag:()=>Ue,fixDashedFlagValue:()=>We,fixValueType:()=>je});var Le=(e,t)=>{let r={...e};if(t)for(let s of t)delete r[s];return r},Pe=e=>({...e.flags,...e.baseFlags});var je=e=>{let t=e;return t==="null"?t=null:Number(t)==t?t=Number(t):t=t==="true"?!0:t==="false"?!1:t,t},Ue=(e,t)=>{let r=t.startsWith("--")?t:`--${t}`,s,n=e.findIndex(c=>c.startsWith(r)),i=!1;if(n>-1){let c=e[n];if(c.includes("=")){let u=c.split("=");s=u.length===2?u[1]:"",i=!0}else s=e[n+1];return{value:s,index:n,single:i}}else return},We=(e,t,r,s)=>{let n="____",i=t.name||r,c=t.char;if(!i&&!c)return e;let u=i?i.startsWith("--")?i:`--${i}`:void 0,f=c?t.char.startsWith("-")?c:`-${c}`:void 0,b=e.findIndex(k=>f&&k.startsWith(f)||u&&k.startsWith(u));if(b<0)return e;let d=e[b],a="",H="";if(f&&d.startsWith(f))a=d.replace(f,"").trim(),d=f;else if(u&&d.startsWith(u))a=d.replace(u,"").trim(),d=u;else return e;if(a.startsWith("=")?(a=a.slice(1),H=d+"="):a||(a=e[++b]),a.startsWith("-")||a.startsWith(n)){let k=a.startsWith(`${n}`)?a.replace(`${n}`,""):a.replace("-",`${n}-`);if(e[b]=H+k,a.startsWith(n)&&s){let E=i?i.replace("--",""):void 0,B=Object.entries(s.flags).find(([D,ye])=>ye===a);B&&(!E||E===B[0])&&(s.flags[B[0]]=k);let O=Object.values(s.raw).find(D=>D.type==="flag"&&D.input===a);O&&(!E||E===O.flag)&&(O.input=k)}}return e},Ve=e=>{if(!e)throw Error("Date is empty");try{let t=Date.parse(e);if(Number.isNaN(t))throw new Error("Invalid date");return new Date(t)}catch{throw new Error("Error parsing date: "+e)}};var ie={};h(ie,{center:()=>Ne,cleanDate:()=>Ge,formatError:()=>Ye,formatOutput:()=>ne,localeDate:()=>Je,maxLength:()=>He,printCSV:()=>se,printJSON:()=>re,printObject:()=>te});import{inspect as Fe}from"node:util";var te=(e,t)=>Fe(e,{showHidden:!1,depth:null,colors:t?.color===void 0?!0:t.color,sorted:t?.sort===void 0?!1:t?.sort,maxArrayLength:1/0,breakLength:t?.width||120}),re=(e,t)=>JSON.stringify(e,null,t?.unformatted?void 0:t?.tabSize||4),se=(e,t)=>{if(!e||e.length===0)return"";let r=Object.keys(e[0]).filter(n=>["id","type"].includes(n)?t?.fields.includes(n):!0),s=r.map(n=>n.toUpperCase().replace(/_/g," ")).join(";")+`
1
+ var xe=Object.defineProperty;var f=(e,t)=>{for(var r in t)xe(e,r,{get:t[r],enumerable:!0})};var Z={};f(Z,{Operation:()=>L,baseURL:()=>qe,execMode:()=>Ee,extractDomain:()=>Re,humanizeResource:()=>Se,isResourceCacheable:()=>Y,liveEnvironment:()=>Oe,request:()=>Ie,requestDataFile:()=>M,requestRateLimitDelay:()=>X,requestRaw:()=>D,response:()=>Ke,responseDenormalize:()=>P});var j=["in_progress","pending","completed","interrupted"],ve=["addresses","bundles","coupons","customer_addresses","customer_payment_sources","customer_subscriptions","customers","gift_cards","line_items","line_item_options","orders","price_tiers","prices","shipping_categories","sku_lists","sku_list_items","sku_options","skus","stock_items","stock_transfers","tags","tax_categories"],Te=["addresses","authorizations","bundles","captures","coupons","customer_addresses","customer_payment_sources","customer_subscriptions","customers","gift_cards","line_items","line_item_options","orders","payment_methods","price_tiers","prices","refunds","shipments","shipping_categories","shipping_methods","sku_lists","sku_list_items","sku_options","skus","stock_items","stock_transfers","tags","tax_categories","transactions","voids"],we=["bundles","gift_cards","prices","promotions","sku_lists","sku_options","skus","stock_items"],ke=["addresses","bundles","customers","coupons","gift_cards","line_items","line_item_options","orders","returns","skus","sku_options","promotions","external_promotions","fixed_amount_promotions","fixed_price_promotions","free_gift_promotions","free_shipping_promotions","percentage_discount_promotions"],Ae=["orders","skus","sku_lists"],b={erl_oauth_limit_live:30,erl_average_limit_cachable_live:1e3,erl_average_limit_cachable_test:500,erl_burst_limit_cachable_live:250,erl_burst_limit_cachable_test:125,erl_average_limit_uncachable_live:200,erl_average_limit_uncachable_test:100,erl_burst_limit_uncachable_live:50,erl_burst_limit_uncachable_test:25},$e={api:{default_domain:"commercelayer.io",default_app_domain:"commercelayer.app",default_stg_domain:"commercelayer.co",token_expiration_mins:60*4,token_encoding_algorithm:"HS512",token_owner_types:["Customer","User"],requests_max_num_burst:b.erl_burst_limit_uncachable_live,requests_max_num_burst_cacheable:b.erl_burst_limit_cachable_live,requests_max_num_burst_test:b.erl_burst_limit_uncachable_test,requests_max_num_burst_test_cacheable:b.erl_burst_limit_cachable_test,requests_max_num_avg:b.erl_average_limit_uncachable_live,requests_max_num_avg_cacheable:b.erl_average_limit_cachable_live,requests_max_num_avg_test:b.erl_average_limit_uncachable_test,requests_max_num_avg_test_cacheable:b.erl_average_limit_cachable_test,requests_max_num_oauth:b.erl_oauth_limit_live,requests_max_secs_burst:10,requests_max_secs_oauth:60,requests_max_secs_avg:60,page_max_size:25,page_default_size:10},application:{kinds:["dashboard","user","metrics","contentful","bundles","customers","datocms","exports","external","gift_cards","imports","integration","inventory","orders","price_lists","promotions","resources","returns","sales_channel","sanity","shipments","skus","sku_lists","stock_transfers","subscriptions","tags","webapp","webhooks","zapier"],login_scopes:["market","stock_location","store"]},imports:{max_size:1e4,statuses:j,types:ve,max_queue_length:10,attachment_expiration:5},exports:{max_size:1e4,statuses:j,types:Te,max_queue_length:10,attachment_expiration:5},cleanups:{max_size:1e4,statuses:j,types:we,max_queue_length:10},webhooks:{retry_number:5},cli:{applications:["integration","sales_channel","user"]},doc:{core:"https://docs.commercelayer.io/core/",core_api_reference:"https://docs.commercelayer.io/developers/v/api-reference",core_how_tos:"https://docs.commercelayer.io/core/v/how-tos/",core_raste_limits:"https://docs.commercelayer.io/core/rate-limits",core_filtering_data:"https://docs.commercelayer.io/core/filtering-data#list-of-predicates",metrics:"https://docs.commercelayer.io/metrics/",metrics_api_reference:"https://docs.commercelayer.io/metrics/v/api-reference-m/",provisioning:"https://docs.commercelayer.io/provisioning/",provisioning_api_reference:"https://docs.commercelayer.io/provisioning/v/api-reference-p/",imports_resources:"https://docs.commercelayer.io/api/importing-resources#supported-resources",exports_resources:"https://docs.commercelayer.io/core/exporting-resources#supported-resources",cleanups_resources:"https://docs.commercelayer.io/core/cleaning-resources#supported-resources",webhooks_events:"https://docs.commercelayer.io/api/real-time-webhooks#supported-events",tags_resources:"https://docs.commercelayer.io/core/v/api-reference/tags#taggable-resources",links_resources:"https://docs.commercelayer.io/core/v/api-reference/links"},tags:{max_resource_tags:10,taggable_resources:ke,tag_name_max_length:25,tag_name_pattern:/^[0-9A-Za-z_-]{1,25}$/},provisioning:{default_subdomain:"provisioning",scope:"provisioning-api",applications:["user"]},links:{default_domain:"c11r.link",linkable_resources:Ae}},m=$e;import{readFileSync as Ce}from"fs";var D=async(e,t,r)=>await(await fetch(new URL(`/api/${e.resource}`+(r?`/${r}`:""),e.baseUrl),{method:e.operation,headers:{"Content-Type":"application/vnd.api+json",Accept:"application/vnd.api+json",Authorization:`Bearer ${e.accessToken}`},body:JSON.stringify(t)}).then(n=>{if(n.ok)return n;throw new Error(n.statusText)})).json(),M=e=>{let t,r;try{t=Ce(e,"utf-8")}catch{throw new Error(`Unable to find or open the data file ${A.msg.error(e)}`)}try{r=JSON.parse(t)}catch{throw new Error(`Unable to parse the data file ${A.msg.error(e)}: invalid JSON format`)}return r.data?r:{data:r}},L=(r=>(r.Create="POST",r.Update="PATCH",r))(L||{});var J=(e,t)=>t.find(r=>e.id===r.id&&e.type===r.type),S=(e,t)=>{let r={id:e.id,type:e.type,...e.attributes};return e.relationships&&Object.keys(e.relationships).forEach(s=>{let n=e.relationships[s].data;n?Array.isArray(n)?r[s]=n.map(i=>S(J(i,t),t)):r[s]=S(J(n,t),t):n===null&&(r[s]=null)}),r},P=e=>{let t;e.links&&delete e.links;let r=e.data,s=e.included;return Array.isArray(r)?t=r.map(n=>S(n,s)):t=S(r,s),t};var qe=(e="core",t,r)=>`https://${(e==="core"&&t||e).toLowerCase()}.${r||m.api.default_domain}`,Re=e=>{if(e)return e.substring(e.indexOf(".")+1)},Ee=e=>e===!0||e==="live"?"live":"test",Se=e=>e.replace(/_/g," ");var ze=["bundles","imports","markets","prices","price_lists","promotions","buy_x_pay_y_promotions","external_promotions","fixed_amount_promotions","fixed_price_promotions","free_gift_promotions","free_shipping_promotions","percentage_discount_promotions","skus","sku_options","stock_items","stock_locations"],Y=(e,t)=>ze.includes(e||"")&&(t||"GET").toUpperCase()==="GET",Oe=e=>e==="live",X=e=>{let t=e?.environment||"test",r=e?.parallelRequests||1,s=Y(e?.resourceType,e?.method),n,i;t==="live"?(n=s?m.api.requests_max_num_burst_cacheable:m.api.requests_max_num_burst,i=s?m.api.requests_max_num_avg_cacheable:m.api.requests_max_num_avg):(n=s?m.api.requests_max_num_burst_test_cacheable:m.api.requests_max_num_burst_test,i=s?m.api.requests_max_num_avg_test_cacheable:m.api.requests_max_num_avg_test);let a=m.api.requests_max_secs_burst/n,p=m.api.requests_max_secs_avg/i,y=r*a,T=r*p,_=e?.totalRequests,c=0;return _&&_>0?_>n&&(_>i?c=T:c=y):c=Math.max(y,T),c=c*1e3,e?.minimumDelay&&(c=Math.max(e.minimumDelay,c)),e?.securityDelay&&(c+=e.securityDelay),c=Math.ceil(c),c};var Ie={raw:D,readDataFile:M,rateLimitDelay:X},Ke={denormalize:P};var ee={};f(ee,{appKey:()=>Be,appKeyMatch:()=>De,appKeyValid:()=>je,arrayScope:()=>Q,isProvisioningApp:()=>Me});var Be=()=>Date.now().toString(36),je=e=>e.key!==void 0&&e.key!=="",De=(e,t)=>{let r=e!==void 0,s=t!==void 0;return!r&&!s||r&&s&&e.key===t.key},Q=e=>{if(!e)return[];if(Array.isArray(e))return e;let t=e.replace(/[ ,;]/g,"_").split("_");return Array.isArray(t)?t:[t]},Me=e=>Q(e.scope).includes(m.provisioning.scope)||e.api==="provisioning";var te={};f(te,{allFlags:()=>Pe,checkISODateTimeValue:()=>Fe,commandFlags:()=>Le,findLongStringFlag:()=>Ue,fixDashedFlagValue:()=>We,fixValueType:()=>Ve});var Le=(e,t)=>{let r={...e};if(t)for(let s of t)delete r[s];return r},Pe=e=>({...e.flags,...e.baseFlags});var Ve=e=>{let t=e;return t==="null"?t=null:Number(t)==t?t=Number(t):t=t==="true"?!0:t==="false"?!1:t,t},Ue=(e,t)=>{let r=t.startsWith("--")?t:`--${t}`,s,n=e.findIndex(a=>a.startsWith(r)),i=!1;if(n>-1){let a=e[n];if(a.includes("=")){let p=a.split("=");s=p.length===2?p[1]:"",i=!0}else s=e[n+1];return{value:s,index:n,single:i}}else return},We=(e,t,r,s)=>{let n="____",i=t.name||r,a=t.char;if(!i&&!a)return e;let p=i?i.startsWith("--")?i:`--${i}`:void 0,y=a?t.char.startsWith("-")?a:`-${a}`:void 0,T=e.findIndex(k=>y&&k.startsWith(y)||p&&k.startsWith(p));if(T<0)return e;let _=e[T],c="",G="";if(y&&_.startsWith(y))c=_.replace(y,"").trim(),_=y;else if(p&&_.startsWith(p))c=_.replace(p,"").trim(),_=p;else return e;if(c.startsWith("=")?(c=c.slice(1),G=_+"="):c||(c=e[++T]),c.startsWith("-")||c.startsWith(n)){let k=c.startsWith(`${n}`)?c.replace(`${n}`,""):c.replace("-",`${n}-`);if(e[T]=G+k,c.startsWith(n)&&s){let E=i?i.replace("--",""):void 0,I=Object.entries(s.flags).find(([B,be])=>be===c);I&&(!E||E===I[0])&&(s.flags[I[0]]=k);let K=Object.values(s.raw).find(B=>B.type==="flag"&&B.input===c);K&&(!E||E===K.flag)&&(K.input=k)}}return e},Fe=e=>{if(!e)throw Error("Date is empty");try{let t=Date.parse(e);if(Number.isNaN(t))throw new Error("Invalid date");return new Date(t)}catch{throw new Error("Error parsing date: "+e)}};var oe={};f(oe,{center:()=>He,cleanDate:()=>Je,formatError:()=>Xe,formatOutput:()=>ie,localeDate:()=>Ye,maxLength:()=>Ge,printCSV:()=>ne,printJSON:()=>se,printObject:()=>re});import{inspect as Ne}from"node:util";var re=(e,t)=>Ne(e,{showHidden:!1,depth:null,colors:t?.color===void 0?!0:t.color,sorted:t?.sort===void 0?!1:t?.sort,maxArrayLength:1/0,breakLength:t?.width||120}),se=(e,t)=>JSON.stringify(e,null,t?.unformatted?void 0:t?.tabSize||4),ne=(e,t)=>{if(!e||e.length===0)return"";let r=Object.keys(e[0]).filter(n=>["id","type"].includes(n)?t?.fields.includes(n):!0),s=r.map(n=>n.toUpperCase().replace(/_/g," ")).join(";")+`
2
2
  `;return e.forEach(n=>{s+=r.map(i=>n[i]).join(";")+`
3
- `}),s},Ne=(e,t)=>e.padStart(e.length+Math.floor((t-e.length)/2)," ").padEnd(t," "),He=(e,t)=>e.reduce((r,s)=>{let n=Array.isArray(s[t])?s[t].join():s[t];return Math.max(r,String(n).length)},0),Ge=e=>e?e.replace("T"," ").replace("Z","").substring(0,e.lastIndexOf(".")):"",Je=e=>e?new Date(Date.parse(e)).toLocaleString():"",ne=(e,t,{color:r=!0}={})=>{if(!e)return"";if(typeof e=="string")return e;if(t){if(t.csv)return se(e,t);if(t.json)return re(e,{unformatted:t.unformatted})}return te(e,{color:r})},Ye=(e,t)=>ne(e.errors||e,t);var A={};h(A,{api:()=>ft,bg:()=>gt,black:()=>ot,blackBright:()=>at,blue:()=>st,blueBright:()=>C,bold:()=>W,cli:()=>yt,cyan:()=>lt,cyanBright:()=>$,dim:()=>mt,green:()=>tt,greenBright:()=>U,grey:()=>ct,hidden:()=>Qe,italic:()=>T,magenta:()=>pt,magentaBright:()=>ut,msg:()=>ht,red:()=>et,redBright:()=>oe,reset:()=>Xe,style:()=>l,table:()=>bt,type:()=>_t,underline:()=>dt,visible:()=>Ze,white:()=>nt,whiteBright:()=>it,yellow:()=>rt,yellowBright:()=>w});import o from"chalk";var Xe=o.reset,Ze=o.visible,Qe=o.hidden,et=o.red,oe=o.redBright,tt=o.green,U=o.greenBright,rt=o.yellow,w=o.yellowBright,st=o.blue,C=o.blueBright,nt=o.white,it=o.whiteBright,ot=o.black,at=o.blackBright,ct=o.grey,lt=o.cyan,$=o.cyanBright,pt=o.magenta,ut=o.magentaBright,W=o.bold,mt=o.dim,dt=o.underline,T=o.italic,gt={white:o.bgWhite,whiteBright:o.bgWhiteBright,black:o.bgBlack,blackBright:o.bgBlackBright,grey:o.bgGrey,red:o.bgRed,redBright:o.bgRedBright,green:o.bgGreen,greenBright:o.bgGreenBright,yellow:o.bgYellow,yellowBright:o.bgYellowBright,blue:o.bgBlue,blueBright:o.bgBlueBright,magenta:o.bgMagenta,magentaBright:o.bgMagentaBright,cyan:o.bgCyan,cyanBright:o.bgCyanBright},l={organization:w.bold,application:w.bold,slug:w,id:W,token:C,resource:W,attribute:T,trigger:$,kind:$,live:U,test:w,execMode:e=>e==="live"?l.live:l.test,success:U,warning:w,error:oe,arg:T,flag:T,command:T,value:T,alias:$,plugin:C,title:C,path:T,datetime:$,number:w},_t={datetime:l.datetime,number:l.number,path:l.path},ft={organization:l.organization,application:l.application,slug:l.slug,id:l.id,token:l.token,resource:l.resource,attribute:l.attribute,trigger:l.trigger,kind:l.kind,live:l.live,test:l.test},ht={success:l.success,warning:l.warning,error:l.error},yt={arg:l.arg,flag:l.flag,command:l.command,value:l.value,alias:l.alias,plugin:l.plugin},bt={header:w.bold,key:C};var ce={};h(ce,{buildAssertionPayload:()=>$t,decodeAccessToken:()=>ae,generateAccessToken:()=>vt,getAccessToken:()=>wt,getTokenEnvironment:()=>At,isAccessTokenExpiring:()=>kt,revokeAccessToken:()=>Tt});import F from"jsonwebtoken";import{authenticate as V,revoke as xt}from"@commercelayer/js-auth";var ae=e=>{let t=F.decode(e);if(t===null)throw new Error("Error decoding access token");return t},vt=(e,t,r)=>{let n={...e,exp:Math.floor(Date.now()/1e3)+r*60,rand:Math.random()},i=m.api.token_encoding_algorithm,c=F.sign(n,t,{algorithm:i,noTimestamp:!0}),u=F.verify(c,t,{algorithms:[i]});return{accessToken:c,info:u,expMinutes:r}},wt=async e=>{let t,r=e.scope?Array.isArray(e.scope)?e.scope.map(n=>n.trim()).join(","):e.scope:"",s={clientId:e.clientId,clientSecret:e.clientSecret,slug:e.slug,domain:e.domain,scope:r};if(e.email&&e.password?(s.username=e.email,s.password=e.password,t=await V("password",s)):e.assertion?(s.assertion=e.assertion,t=await V("urn:ietf:params:oauth:grant-type:jwt-bearer",s)):t=await V("client_credentials",s),t){if(t.errors)throw new Error(`Unable to get access token: ${t.errors[0].detail}`)}else throw new Error("Unable to get access token");return t},Tt=async(e,t)=>{let r=await xt({...e,token:t});if(r.errors)throw new Error(r.errors[0].detail)},kt=e=>{let r=Math.floor(Date.now()/1e3),s=Math.floor(new Date(e.expires).getTime()/1e3);return r>=s-30},At=e=>(typeof e=="string"?ae(e):e).test?"test":"live";var $t=(e,t,r)=>{let s="https://commercelayer.io/claims",n={[s]:{owner:{type:e,id:t}}};if(r&&Object.keys(r).length>0){let i={};Object.entries(r).forEach(([c,u])=>{let f=c.split("."),b=f[f.length-1],d=i;f.forEach(a=>{a===b?d[a]=u:d=d[a]||(d[a]={})})}),n[s].custom_claim=i}return n};var le={};h(le,{checkUpdate:()=>Rt});import z from"chalk";import Ct from"update-notifier-cjs";var qt=1,Rt=e=>{let t=Ct({pkg:e,updateCheckInterval:36e5*qt});t.update&&t.notify({isGlobal:!1,message:`-= ${z.bgWhite.black.bold(` ${e.description} `)} =-
3
+ `}),s},He=(e,t)=>e.padStart(e.length+Math.floor((t-e.length)/2)," ").padEnd(t," "),Ge=(e,t)=>e.reduce((r,s)=>{let n=Array.isArray(s[t])?s[t].join():s[t];return Math.max(r,String(n).length)},0),Je=e=>e?e.replace("T"," ").replace("Z","").substring(0,e.lastIndexOf(".")):"",Ye=e=>e?new Date(Date.parse(e)).toLocaleString():"",ie=(e,t,{color:r=!0}={})=>{if(!e)return"";if(typeof e=="string")return e;if(t){if(t.csv)return ne(e,t);if(t.json)return se(e,{unformatted:t.unformatted})}return re(e,{color:r})},Xe=(e,t)=>ie(e.errors||e,t);var A={};f(A,{api:()=>ht,bg:()=>_t,black:()=>at,blackBright:()=>ct,blue:()=>nt,blueBright:()=>C,bold:()=>U,cli:()=>bt,cyan:()=>pt,cyanBright:()=>$,dim:()=>dt,green:()=>rt,greenBright:()=>V,grey:()=>lt,hidden:()=>et,italic:()=>w,magenta:()=>ut,magentaBright:()=>mt,msg:()=>yt,red:()=>tt,redBright:()=>ae,reset:()=>Ze,style:()=>l,table:()=>xt,type:()=>ft,underline:()=>gt,visible:()=>Qe,white:()=>it,whiteBright:()=>ot,yellow:()=>st,yellowBright:()=>v});import o from"chalk";var Ze=o.reset,Qe=o.visible,et=o.hidden,tt=o.red,ae=o.redBright,rt=o.green,V=o.greenBright,st=o.yellow,v=o.yellowBright,nt=o.blue,C=o.blueBright,it=o.white,ot=o.whiteBright,at=o.black,ct=o.blackBright,lt=o.grey,pt=o.cyan,$=o.cyanBright,ut=o.magenta,mt=o.magentaBright,U=o.bold,dt=o.dim,gt=o.underline,w=o.italic,_t={white:o.bgWhite,whiteBright:o.bgWhiteBright,black:o.bgBlack,blackBright:o.bgBlackBright,grey:o.bgGrey,red:o.bgRed,redBright:o.bgRedBright,green:o.bgGreen,greenBright:o.bgGreenBright,yellow:o.bgYellow,yellowBright:o.bgYellowBright,blue:o.bgBlue,blueBright:o.bgBlueBright,magenta:o.bgMagenta,magentaBright:o.bgMagentaBright,cyan:o.bgCyan,cyanBright:o.bgCyanBright},l={organization:v.bold,application:v.bold,slug:v,id:U,token:C,resource:U,attribute:w,trigger:$,kind:$,live:V,test:v,execMode:e=>e==="live"?l.live:l.test,success:V,warning:v,error:ae,arg:w,flag:w,command:w,value:w,alias:$,plugin:C,title:C,path:w,datetime:$,number:v},ft={datetime:l.datetime,number:l.number,path:l.path},ht={organization:l.organization,application:l.application,slug:l.slug,id:l.id,token:l.token,resource:l.resource,attribute:l.attribute,trigger:l.trigger,kind:l.kind,live:l.live,test:l.test},yt={success:l.success,warning:l.warning,error:l.error},bt={arg:l.arg,flag:l.flag,command:l.command,value:l.value,alias:l.alias,plugin:l.plugin},xt={header:v.bold,key:C};var pe={};f(pe,{buildAssertionPayload:()=>Lt,decodeAccessToken:()=>le,generateAccessToken:()=>Kt,getAccessToken:()=>Bt,getTokenEnvironment:()=>Mt,isAccessTokenExpiring:()=>Dt,revokeAccessToken:()=>jt});import N from"jsonwebtoken";import{authenticate as F,revoke as It}from"@commercelayer/js-auth";var ce={};f(ce,{dotNotationToObject:()=>W,generateGroupUID:()=>zt,log:()=>Et,resetConsole:()=>Rt,sleep:()=>qt,specialFolder:()=>St,userAgent:()=>Ot});import{format as vt,inspect as Tt}from"util";import{sep as wt,dirname as kt}from"path";import{homedir as At}from"os";import{existsSync as $t,mkdirSync as Ct}from"fs";var qt=async e=>new Promise(t=>setTimeout(t,e)),Rt=()=>{process.stdout.write("\x1B[?25h\x1B[?7h")},Et=(e="",...t)=>{e=typeof e=="string"?e:Tt(e),process.stdout.write(vt(e,...t)+`
4
+ `)},St=(e,t=!1)=>{let r=["desktop","home"],s=e.toLowerCase().split(/[\\\/]/g)[0];if(r.includes(s)){let i=At();s==="desktop"&&(i+=`${wt}Desktop`),e=e.replace(s,i)}let n=kt(e);return t&&!$t(n)&&Ct(n,{recursive:!0}),e},zt=()=>{let e=Math.trunc(Math.random()*46656),t=Math.trunc(Math.random()*46656),r=("000"+e.toString(36)).slice(-3),s=("000"+t.toString(36)).slice(-3);return r+s},Ot=e=>`${e.name.replace(/@commercelayer\/cli-plugin/,"CLI")}/${e.version}`,W=e=>{let t={};return Object.entries(e).forEach(([r,s])=>{let n=r.split("."),i=n[n.length-1],a=t;n.forEach(p=>{p===i?a[p]=s:a=a[p]||(a[p]={})})}),t};var le=e=>{let t=N.decode(e);if(t===null)throw new Error("Error decoding access token");return t},Kt=(e,t,r)=>{let n={...e,exp:Math.floor(Date.now()/1e3)+r*60,rand:Math.random()},i=m.api.token_encoding_algorithm,a=N.sign(n,t,{algorithm:i,noTimestamp:!0}),p=N.verify(a,t,{algorithms:[i]});return{accessToken:a,info:p,expMinutes:r}},Bt=async e=>{let t,r=e.scope?Array.isArray(e.scope)?e.scope.map(n=>n.trim()).join(","):e.scope:"",s={clientId:e.clientId,clientSecret:e.clientSecret,slug:e.slug,domain:e.domain,scope:r};if(e.email&&e.password?(s.username=e.email,s.password=e.password,t=await F("password",s)):e.assertion?(s.assertion=e.assertion,t=await F("urn:ietf:params:oauth:grant-type:jwt-bearer",s)):t=await F("client_credentials",s),t){if(t.errors)throw new Error(`Unable to get access token: ${t.errors[0].detail}`)}else throw new Error("Unable to get access token");return t},jt=async(e,t)=>{let r=await It({...e,token:t});if(r.errors)throw new Error(r.errors[0].detail)},Dt=e=>{let r=Math.floor(Date.now()/1e3),s=Math.floor(new Date(e.expires).getTime()/1e3);return r>=s-30},Mt=e=>(typeof e=="string"?le(e):e).test?"test":"live";var Lt=(e,t,r)=>{let s="https://commercelayer.io/claims",n={[s]:{owner:{type:e,id:t}}};if(r&&Object.keys(r).length>0){let i=W(r);n[s].custom_claim=i}return n};var ue={};f(ue,{checkUpdate:()=>Ut});import z from"chalk";import Pt from"update-notifier-cjs";var Vt=1,Ut=e=>{let t=Pt({pkg:e,updateCheckInterval:36e5*Vt});t.update&&t.notify({isGlobal:!1,message:`-= ${z.bgWhite.black.bold(` ${e.description} `)} =-
4
5
 
5
6
  New version available: ${z.dim("{currentVersion}")} -> ${z.green("{latestVersion}")}
6
- Run ${z.cyanBright("commercelayer plugins:update")} to update`})};var pe={};h(pe,{generateGroupUID:()=>jt,log:()=>Lt,resetConsole:()=>Kt,sleep:()=>Mt,specialFolder:()=>Pt,userAgent:()=>Ut});import{format as Et,inspect as St}from"util";import{sep as zt,dirname as It}from"path";import{homedir as Bt}from"os";import{existsSync as Ot,mkdirSync as Dt}from"fs";var Mt=async e=>new Promise(t=>setTimeout(t,e)),Kt=()=>{process.stdout.write("\x1B[?25h\x1B[?7h")},Lt=(e="",...t)=>{e=typeof e=="string"?e:St(e),process.stdout.write(Et(e,...t)+`
7
- `)},Pt=(e,t=!1)=>{let r=["desktop","home"],s=e.toLowerCase().split(/[\\\/]/g)[0];if(r.includes(s)){let i=Bt();s==="desktop"&&(i+=`${zt}Desktop`),e=e.replace(s,i)}let n=It(e);return t&&!Ot(n)&&Dt(n,{recursive:!0}),e},jt=()=>{let e=Math.trunc(Math.random()*46656),t=Math.trunc(Math.random()*46656),r=("000"+e.toString(36)).slice(-3),s=("000"+t.toString(36)).slice(-3);return r+s},Ut=e=>`${e.name.replace(/@commercelayer\/cli-plugin/,"CLI")}/${e.version}`;import{CommandHelp as Gt,Help as Jt}from"@oclif/core";var me={};h(me,{camelize:()=>Ht,capitalize:()=>R,dasherize:()=>Wt,pluralize:()=>Ft,singularize:()=>Nt,symbols:()=>v,underscorize:()=>Vt});var p={uncountableWords:["equipment","information","rice","money","species","series","fish","sheep","moose","deer","news"],pluralRules:[[/(m)an$/gi,"$1en"],[/(pe)rson$/gi,"$1ople"],[/(child)$/gi,"$1ren"],[/^(ox)$/gi,"$1en"],[/(ax|test)is$/gi,"$1es"],[/(octop|vir)us$/gi,"$1i"],[/(alias|status)$/gi,"$1es"],[/(bu)s$/gi,"$1ses"],[/(buffal|tomat|potat)o$/gi,"$1oes"],[/([ti])um$/gi,"$1a"],[/sis$/gi,"ses"],[/(?:([^f])fe|([lr])f)$/gi,"$1$2ves"],[/(hive)$/gi,"$1s"],[/([^aeiouy]|qu)y$/gi,"$1ies"],[/(x|ch|ss|sh)$/gi,"$1es"],[/(matr|vert|ind)ix|ex$/gi,"$1ices"],[/([m|l])ouse$/gi,"$1ice"],[/(quiz)$/gi,"$1zes"],[/s$/gi,"s"],[/$/gi,"s"]],singularRules:[[/(m)en$/gi,"$1an"],[/(pe)ople$/gi,"$1rson"],[/(child)ren$/gi,"$1"],[/([ti])a$/gi,"$1um"],[/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/gi,"$1$2sis"],[/(hive)s$/gi,"$1"],[/(tive)s$/gi,"$1"],[/(curve)s$/gi,"$1"],[/([lr])ves$/gi,"$1f"],[/([^fo])ves$/gi,"$1fe"],[/([^aeiouy]|qu)ies$/gi,"$1y"],[/(s)eries$/gi,"$1eries"],[/(m)ovies$/gi,"$1ovie"],[/(x|ch|ss|sh)es$/gi,"$1"],[/([m|l])ice$/gi,"$1ouse"],[/(bus)es$/gi,"$1"],[/(o)es$/gi,"$1"],[/(shoe)s$/gi,"$1"],[/(cris|ax|test)es$/gi,"$1is"],[/(octop|vir)i$/gi,"$1us"],[/(alias|status)es$/gi,"$1"],[/^(ox)en/gi,"$1"],[/(vert|ind)ices$/gi,"$1ex"],[/(matr)ices$/gi,"$1ix"],[/(quiz)zes$/gi,"$1"],[/s$/gi,""]],nonTitlecasedWords:["and","or","nor","a","an","the","so","but","to","of","at","by","from","into","on","onto","off","out","in","over","with","for"],idSuffix:/(_ids|_id)$/g,underbar:/_/g,spaceOrUnderbar:/[ _]/g,uppercase:/([A-Z])/g,underbarPrefix:/^_/,applyRules:function(e,t,r,s){if(s)e=s;else if(!r.includes(e.toLowerCase())){for(let i=0;i<t.length;i++)if(e.match(t[i][0])){e=e.replace(t[i][0],t[i][1]);break}}return e},pluralize:function(e,t){return p.applyRules(e,p.pluralRules,p.uncountableWords,t)},singularize:function(e,t){return p.applyRules(e,p.singularRules,p.uncountableWords,t)},camelize:function(e,t){let r=e.split("/");for(let s=0;s<r.length;s++){let n=r[s].split("_"),i=t&&s+1===r.length?1:0;for(let c=i;c<n.length;c++)n[c]=n[c].charAt(0).toUpperCase()+n[c].substring(1);r[s]=n.join("")}if(e=r.join("::"),t){let s=e.charAt(0).toLowerCase(),n=e.slice(1);e=s+n}return e},underscore:function(e){let t=e.split("::");for(let r=0;r<t.length;r++)t[r]=t[r].replace(p.uppercase,"_$1"),t[r]=t[r].replace(p.underbarPrefix,"");return e=t.join("/").toLowerCase(),e},humanize:function(e,t){return e=e.toLowerCase(),e=e.replace(p.idSuffix,""),e=e.replace(p.underbar," "),t||(e=p.capitalize(e)),e},capitalize:function(e){return e=e.toLowerCase(),e=e.substring(0,1).toUpperCase()+e.substring(1),e},dasherize:function(e){return e=e.replace(p.spaceOrUnderbar,"-"),e},camel2words:function(e,t){t?(e=p.camelize(e),e=p.underscore(e)):e=e.toLowerCase(),e=e.replace(p.underbar," ");let r=e.split(" ");for(let s=0;s<r.length;s++){let n=r[s].split("-");for(let i=0;i<n.length;i++)p.nonTitlecasedWords.includes(n[i].toLowerCase())||(n[i]=p.capitalize(n[i]));r[s]=n.join("-")}return e=r.join(" "),e=e.substring(0,1).toUpperCase()+e.substring(1),e},demodulize:function(e){let t=e.split("::");return e=t[t.length-1],e},tableize:function(e){return e=p.pluralize(p.underscore(e)),e},classify:function(e){return e=p.singularize(p.camelize(e)),e},foreignKey:function(e,t){return e=p.underscore(p.demodulize(e))+(t?"":"_")+"id",e},ordinalize:function(e){let t=e.split(" ");for(let r=0;r<t.length;r++){let s=parseInt(t[r]);if(Number.isNaN(s)){let n=t[r].substring(t[r].length-2),i=t[r].substring(t[r].length-1),c="th";n!=="11"&&n!=="12"&&n!=="13"&&(i==="1"?c="st":i==="2"?c="nd":i==="3"&&(c="rd")),t[r]+=c}}return e=t.join(" "),e}},q=p;var ue={};h(ue,{symbols:()=>v});var v={check:{small:"\u2714",bkgGreen:"\u2705",squareRoot:"\u221A"},cross:{small:"\u2718",red:"\u274C"},clock:{stopwatch:"\u23F1"},arrow:{down:"\u2193"},selection:{fisheye:"\u25C9"}};v.check.heavy=v.check.small;v.check.whiteHeavy=v.check.bkgGreen;v.cross.heavyBallot=v.cross.small;var R=e=>e&&q.capitalize(e),Wt=e=>e&&(e=e.toLocaleLowerCase(),e.replace(/[ _]/g,"-")),Vt=e=>e&&(e=e.toLocaleLowerCase(),e.replace(/[ -]/g,"_")),Ft=(e,t)=>q.pluralize(e,t),Nt=(e,t)=>q.singularize(e,t),Ht=(e,t)=>q.camelize(e,t);var y=!1,N=class extends Gt{examples(t){return y&&console.log("---------- command.examples"),super.examples(t)}},I=class extends Jt{async showHelp(t){return y&&console.log("---------- showHelp"),super.showHelp(t)}async showRootHelp(){return y&&console.log("---------- showRootHelp"),super.showRootHelp()}async showTopicHelp(t){return y&&console.log("---------- showTopicHelp"),super.showTopicHelp(t)}async showCommandHelp(t){y&&console.log("---------- showCommandHelp");let r=t.id,s=r?r.split(":").length:1,n=this.sortedTopics.filter(u=>u.name.startsWith(r+":")&&u.name.split(":").length===s+1),i=this.sortedCommands.filter(u=>u.id.startsWith(r+":")&&u.id.split(":").length===s+1),c=t.description&&this.render(t.description).split(`
8
- `)[0];c&&console.log(`${R(c)}
9
- `),console.log(this.formatCommand(t)),console.log(""),n.length>0&&(console.log(this.formatTopics(n)),console.log("")),i.length>0&&(console.log(this.formatCommands(i)),console.log(""))}formatRoot(){return y&&console.log("---------- formatRoot"),super.formatRoot()}formatTopic(t){return y&&console.log("---------- formatTopic"),super.formatTopic(t)}formatTopics(t){y&&console.log("---------- formatTopics");let r=t.filter(s=>!s.hidden).map(s=>(s.description=R(s.description),s));return super.formatTopics(r)}formatCommands(t){return y&&console.log("---------- formatCommands"),super.formatCommands(t).split(`
7
+ Run ${z.cyanBright("commercelayer plugins:update")} to update`})};import{CommandHelp as Jt,Help as Yt}from"@oclif/core";var de={};f(de,{camelize:()=>Gt,capitalize:()=>R,dasherize:()=>Wt,pluralize:()=>Nt,singularize:()=>Ht,symbols:()=>x,underscorize:()=>Ft});var u={uncountableWords:["equipment","information","rice","money","species","series","fish","sheep","moose","deer","news"],pluralRules:[[/(m)an$/gi,"$1en"],[/(pe)rson$/gi,"$1ople"],[/(child)$/gi,"$1ren"],[/^(ox)$/gi,"$1en"],[/(ax|test)is$/gi,"$1es"],[/(octop|vir)us$/gi,"$1i"],[/(alias|status)$/gi,"$1es"],[/(bu)s$/gi,"$1ses"],[/(buffal|tomat|potat)o$/gi,"$1oes"],[/([ti])um$/gi,"$1a"],[/sis$/gi,"ses"],[/(?:([^f])fe|([lr])f)$/gi,"$1$2ves"],[/(hive)$/gi,"$1s"],[/([^aeiouy]|qu)y$/gi,"$1ies"],[/(x|ch|ss|sh)$/gi,"$1es"],[/(matr|vert|ind)ix|ex$/gi,"$1ices"],[/([m|l])ouse$/gi,"$1ice"],[/(quiz)$/gi,"$1zes"],[/s$/gi,"s"],[/$/gi,"s"]],singularRules:[[/(m)en$/gi,"$1an"],[/(pe)ople$/gi,"$1rson"],[/(child)ren$/gi,"$1"],[/([ti])a$/gi,"$1um"],[/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/gi,"$1$2sis"],[/(hive)s$/gi,"$1"],[/(tive)s$/gi,"$1"],[/(curve)s$/gi,"$1"],[/([lr])ves$/gi,"$1f"],[/([^fo])ves$/gi,"$1fe"],[/([^aeiouy]|qu)ies$/gi,"$1y"],[/(s)eries$/gi,"$1eries"],[/(m)ovies$/gi,"$1ovie"],[/(x|ch|ss|sh)es$/gi,"$1"],[/([m|l])ice$/gi,"$1ouse"],[/(bus)es$/gi,"$1"],[/(o)es$/gi,"$1"],[/(shoe)s$/gi,"$1"],[/(cris|ax|test)es$/gi,"$1is"],[/(octop|vir)i$/gi,"$1us"],[/(alias|status)es$/gi,"$1"],[/^(ox)en/gi,"$1"],[/(vert|ind)ices$/gi,"$1ex"],[/(matr)ices$/gi,"$1ix"],[/(quiz)zes$/gi,"$1"],[/s$/gi,""]],nonTitlecasedWords:["and","or","nor","a","an","the","so","but","to","of","at","by","from","into","on","onto","off","out","in","over","with","for"],idSuffix:/(_ids|_id)$/g,underbar:/_/g,spaceOrUnderbar:/[ _]/g,uppercase:/([A-Z])/g,underbarPrefix:/^_/,applyRules:function(e,t,r,s){if(s)e=s;else if(!r.includes(e.toLowerCase())){for(let i=0;i<t.length;i++)if(e.match(t[i][0])){e=e.replace(t[i][0],t[i][1]);break}}return e},pluralize:function(e,t){return u.applyRules(e,u.pluralRules,u.uncountableWords,t)},singularize:function(e,t){return u.applyRules(e,u.singularRules,u.uncountableWords,t)},camelize:function(e,t){let r=e.split("/");for(let s=0;s<r.length;s++){let n=r[s].split("_"),i=t&&s+1===r.length?1:0;for(let a=i;a<n.length;a++)n[a]=n[a].charAt(0).toUpperCase()+n[a].substring(1);r[s]=n.join("")}if(e=r.join("::"),t){let s=e.charAt(0).toLowerCase(),n=e.slice(1);e=s+n}return e},underscore:function(e){let t=e.split("::");for(let r=0;r<t.length;r++)t[r]=t[r].replace(u.uppercase,"_$1"),t[r]=t[r].replace(u.underbarPrefix,"");return e=t.join("/").toLowerCase(),e},humanize:function(e,t){return e=e.toLowerCase(),e=e.replace(u.idSuffix,""),e=e.replace(u.underbar," "),t||(e=u.capitalize(e)),e},capitalize:function(e){return e=e.toLowerCase(),e=e.substring(0,1).toUpperCase()+e.substring(1),e},dasherize:function(e){return e=e.replace(u.spaceOrUnderbar,"-"),e},camel2words:function(e,t){t?(e=u.camelize(e),e=u.underscore(e)):e=e.toLowerCase(),e=e.replace(u.underbar," ");let r=e.split(" ");for(let s=0;s<r.length;s++){let n=r[s].split("-");for(let i=0;i<n.length;i++)u.nonTitlecasedWords.includes(n[i].toLowerCase())||(n[i]=u.capitalize(n[i]));r[s]=n.join("-")}return e=r.join(" "),e=e.substring(0,1).toUpperCase()+e.substring(1),e},demodulize:function(e){let t=e.split("::");return e=t[t.length-1],e},tableize:function(e){return e=u.pluralize(u.underscore(e)),e},classify:function(e){return e=u.singularize(u.camelize(e)),e},foreignKey:function(e,t){return e=u.underscore(u.demodulize(e))+(t?"":"_")+"id",e},ordinalize:function(e){let t=e.split(" ");for(let r=0;r<t.length;r++){let s=parseInt(t[r]);if(Number.isNaN(s)){let n=t[r].substring(t[r].length-2),i=t[r].substring(t[r].length-1),a="th";n!=="11"&&n!=="12"&&n!=="13"&&(i==="1"?a="st":i==="2"?a="nd":i==="3"&&(a="rd")),t[r]+=a}}return e=t.join(" "),e}},q=u;var me={};f(me,{symbols:()=>x});var x={check:{small:"\u2714",bkgGreen:"\u2705",squareRoot:"\u221A"},cross:{small:"\u2718",red:"\u274C"},clock:{stopwatch:"\u23F1"},arrow:{down:"\u2193"},selection:{fisheye:"\u25C9"}};x.check.heavy=x.check.small;x.check.whiteHeavy=x.check.bkgGreen;x.cross.heavyBallot=x.cross.small;var R=e=>e&&q.capitalize(e),Wt=e=>e&&(e=e.toLocaleLowerCase(),e.replace(/[ _]/g,"-")),Ft=e=>e&&(e=e.toLocaleLowerCase(),e.replace(/[ -]/g,"_")),Nt=(e,t)=>q.pluralize(e,t),Ht=(e,t)=>q.singularize(e,t),Gt=(e,t)=>q.camelize(e,t);var h=!1,H=class extends Jt{examples(t){return h&&console.log("---------- command.examples"),super.examples(t)}},O=class extends Yt{async showHelp(t){return h&&console.log("---------- showHelp"),super.showHelp(t)}async showRootHelp(){return h&&console.log("---------- showRootHelp"),super.showRootHelp()}async showTopicHelp(t){return h&&console.log("---------- showTopicHelp"),super.showTopicHelp(t)}async showCommandHelp(t){h&&console.log("---------- showCommandHelp");let r=t.id,s=r?r.split(":").length:1,n=this.sortedTopics.filter(p=>p.name.startsWith(r+":")&&p.name.split(":").length===s+1),i=this.sortedCommands.filter(p=>p.id.startsWith(r+":")&&p.id.split(":").length===s+1),a=t.description&&this.render(t.description).split(`
8
+ `)[0];a&&console.log(`${R(a)}
9
+ `),console.log(this.formatCommand(t)),console.log(""),n.length>0&&(console.log(this.formatTopics(n)),console.log("")),i.length>0&&(console.log(this.formatCommands(i)),console.log(""))}formatRoot(){return h&&console.log("---------- formatRoot"),super.formatRoot()}formatTopic(t){return h&&console.log("---------- formatTopic"),super.formatTopic(t)}formatTopics(t){h&&console.log("---------- formatTopics");let r=t.filter(s=>!s.hidden).map(s=>(s.description=R(s.description),s));return super.formatTopics(r)}formatCommands(t){return h&&console.log("---------- formatCommands"),super.formatCommands(t).split(`
10
10
  `).map(r=>{let s=0;return r.split(" ").map(n=>(n||"").trim()!==""&&++s===2?R(n):n).join(" ")}).join(`
11
- `)}formatCommand(t){return y&&console.log("---------- formatCommand"),super.formatCommand(t)}getCommandHelpClass(t){return y&&console.log("---------- getCommandHelpClass"),new N(t,this.config,this.opts)}};var de={};h(de,{download:()=>Yt});var Yt=async e=>{let r=`https://data.${m.api.default_app_domain}/schemas/`,n=`openapi${e?"_"+e.replace(/\./g,"-"):""}.json`,i=r+n;return await(await fetch(i)).json()};var he={};h(he,{apply:()=>Qt,available:()=>_e,documentation:()=>Zt,filters:()=>fe,list:()=>ge});var Xt=[{predicate:"*_eq",description:"The attribute is equal to the filter value"},{predicate:"*_eq_or_null",description:"The attribute is equal to the filter value, including null values"},{predicate:"*_not_eq",description:"The attribute is not equal to the filter value"},{predicate:"*_not_eq_or_null",description:"The attribute is not equal to the filter value, including null values"},{predicate:"*_matches",description:'The attribute matches the filter value with "LIKE" operator'},{predicate:"*_does_not_match",description:'The attribute does not match the filter value with "LIKE" operator'},{predicate:"*_matches_any",description:'The attribute matches all of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_matches_all",description:'The attribute matches all of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_does_not_match_any",description:'The attribute does not match any of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_does_not_match_all",description:'The attribute matches none of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_lt",description:"The attribute is less than the filter value"},{predicate:"*_lteq",description:"The attribute is less than or equal to the filter value"},{predicate:"*_gt",description:"The attribute is greater than the filter value"},{predicate:"*_gteq",description:"The attribute is greater than or equal to the filter value"},{predicate:"*_present",description:"The attribute is not null and not empty"},{predicate:"*_blank",description:"The attribute is null or empty"},{predicate:"*_null",description:"The attribute is null"},{predicate:"*_not_null",description:"The attribute is not null"},{predicate:"*_in",description:"The attribute matches any of the filter values (comma-separated)"},{predicate:"*_in_or_null",description:"The attribute matches any of the filter values (comma-separated), including null values"},{predicate:"*_not_in",description:"The attribute matches none of the filter values (comma-separated)"},{predicate:"*_not_in_or_null",description:"The attribute matches none of the filter values (comma-separated), including null values"},{predicate:"*_lt_any",description:"The attribute is less than any of the filter values (comma-separated)"},{predicate:"*_lteq_any",description:"The attribute is less than or equal to any of the filter values (comma-separated)"},{predicate:"*_gt_any",description:"The attribute is greater than any of the filter values (comma-separated)"},{predicate:"*_gteq_any",description:"The attribute is greater than or qual to any of the filter values (comma-separated)"},{predicate:"*_lt_all",description:"The attribute is less than all of the filter values (comma-separated)"},{predicate:"*_lteq_all",description:"The attribute is less than or equal to all of the filter values (comma-separated)"},{predicate:"*_gt_all",description:"The attribute is greater than all of the filter values (comma-separated)"},{predicate:"*_gteq_all",description:"The attribute is greater or equal to all of the filter values (comma-separated)"},{predicate:"*_not_eq_all",description:"The attribute is equal to none of the filter values (comma-separated)"},{predicate:"*_start",description:"The attribute starts with the filter value (comma-separated)"},{predicate:"*_not_start",description:"The attribute does not start with the filter value (comma-separated)"},{predicate:"*_start_any",description:"The attribute starts with any of the filter values (comma-separated)"},{predicate:"*_start_all",description:"The attribute starts with all of the filter values (comma-separated)"},{predicate:"*_not_start_any",description:"The attribute does not start with any of the filter values (comma-separated)"},{predicate:"*_not_start_all",description:"The attribute starts with none of the filter values (comma-separated)"},{predicate:"*_end",description:"The attribute ends with the filter value"},{predicate:"*_not_end",description:"The attribute does not end with the filter value"},{predicate:"*_end_any",description:"The attribute ends with any of the filter values (comma-separated)"},{predicate:"*_end_all",description:"The attribute ends with all of the filter values (comma-separated)"},{predicate:"*_not_end_any",description:"The attribute does not end with any of the filter values (comma-separated)"},{predicate:"*_not_end_all",description:"The attribute ends with none of the filter values (comma-separated)"},{predicate:"*_cont",description:"The attribute contains the filter value"},{predicate:"*_not_cont",description:"The attribute does not contains the filter value"},{predicate:"*_cont_any",description:"The attribute contains any of the filter values (comma-separated)"},{predicate:"*_cont_all",description:"The attribute contains all of the filter values (comma-separated)"},{predicate:"*_not_cont_all",description:"The attribute contains none of the filter values (comma-separated)"},{predicate:"*_jcont",description:"The attribute contains a portion of the JSON used as filter value (works with object only)"},{predicate:"*_true",description:"The attribute is true"},{predicate:"*_false",description:"The attribute is false"}],Zt=m.doc.core_filtering_data,ge=()=>fe().map(e=>e.predicate.replace(/^\*/g,"")),_e=e=>{let t=e.startsWith("_")?e:`_${e}`;return ge().some(r=>t.endsWith(r))},Qt=(e,...t)=>{if(!_e(e))throw new Error("Unknown filter: "+e);let r="";for(let s of t)r+=(r.length===0?"":"_or_")+s;return r+=e.startsWith("_")?e:`_${e}`,r},fe=()=>[...Xt];export{X as clApi,Q as clApplication,A as clColor,ee as clCommand,m as clConfig,he as clFilter,I as clHelp,ie as clOutput,de as clSchema,ue as clSymbol,me as clText,ce as clToken,le as clUpdate,pe as clUtil};
11
+ `)}formatCommand(t){return h&&console.log("---------- formatCommand"),super.formatCommand(t)}getCommandHelpClass(t){return h&&console.log("---------- getCommandHelpClass"),new H(t,this.config,this.opts)}};var ge={};f(ge,{download:()=>Xt});var Xt=async e=>{let r=`https://data.${m.api.default_app_domain}/schemas/`,n=`openapi${e?"_"+e.replace(/\./g,"-"):""}.json`,i=r+n;return await(await fetch(i)).json()};var ye={};f(ye,{apply:()=>er,available:()=>fe,documentation:()=>Qt,filters:()=>he,list:()=>_e});var Zt=[{predicate:"*_eq",description:"The attribute is equal to the filter value"},{predicate:"*_eq_or_null",description:"The attribute is equal to the filter value, including null values"},{predicate:"*_not_eq",description:"The attribute is not equal to the filter value"},{predicate:"*_not_eq_or_null",description:"The attribute is not equal to the filter value, including null values"},{predicate:"*_matches",description:'The attribute matches the filter value with "LIKE" operator'},{predicate:"*_does_not_match",description:'The attribute does not match the filter value with "LIKE" operator'},{predicate:"*_matches_any",description:'The attribute matches all of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_matches_all",description:'The attribute matches all of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_does_not_match_any",description:'The attribute does not match any of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_does_not_match_all",description:'The attribute matches none of the filter values (comma-separated) with "LIKE" operator'},{predicate:"*_lt",description:"The attribute is less than the filter value"},{predicate:"*_lteq",description:"The attribute is less than or equal to the filter value"},{predicate:"*_gt",description:"The attribute is greater than the filter value"},{predicate:"*_gteq",description:"The attribute is greater than or equal to the filter value"},{predicate:"*_present",description:"The attribute is not null and not empty"},{predicate:"*_blank",description:"The attribute is null or empty"},{predicate:"*_null",description:"The attribute is null"},{predicate:"*_not_null",description:"The attribute is not null"},{predicate:"*_in",description:"The attribute matches any of the filter values (comma-separated)"},{predicate:"*_in_or_null",description:"The attribute matches any of the filter values (comma-separated), including null values"},{predicate:"*_not_in",description:"The attribute matches none of the filter values (comma-separated)"},{predicate:"*_not_in_or_null",description:"The attribute matches none of the filter values (comma-separated), including null values"},{predicate:"*_lt_any",description:"The attribute is less than any of the filter values (comma-separated)"},{predicate:"*_lteq_any",description:"The attribute is less than or equal to any of the filter values (comma-separated)"},{predicate:"*_gt_any",description:"The attribute is greater than any of the filter values (comma-separated)"},{predicate:"*_gteq_any",description:"The attribute is greater than or qual to any of the filter values (comma-separated)"},{predicate:"*_lt_all",description:"The attribute is less than all of the filter values (comma-separated)"},{predicate:"*_lteq_all",description:"The attribute is less than or equal to all of the filter values (comma-separated)"},{predicate:"*_gt_all",description:"The attribute is greater than all of the filter values (comma-separated)"},{predicate:"*_gteq_all",description:"The attribute is greater or equal to all of the filter values (comma-separated)"},{predicate:"*_not_eq_all",description:"The attribute is equal to none of the filter values (comma-separated)"},{predicate:"*_start",description:"The attribute starts with the filter value (comma-separated)"},{predicate:"*_not_start",description:"The attribute does not start with the filter value (comma-separated)"},{predicate:"*_start_any",description:"The attribute starts with any of the filter values (comma-separated)"},{predicate:"*_start_all",description:"The attribute starts with all of the filter values (comma-separated)"},{predicate:"*_not_start_any",description:"The attribute does not start with any of the filter values (comma-separated)"},{predicate:"*_not_start_all",description:"The attribute starts with none of the filter values (comma-separated)"},{predicate:"*_end",description:"The attribute ends with the filter value"},{predicate:"*_not_end",description:"The attribute does not end with the filter value"},{predicate:"*_end_any",description:"The attribute ends with any of the filter values (comma-separated)"},{predicate:"*_end_all",description:"The attribute ends with all of the filter values (comma-separated)"},{predicate:"*_not_end_any",description:"The attribute does not end with any of the filter values (comma-separated)"},{predicate:"*_not_end_all",description:"The attribute ends with none of the filter values (comma-separated)"},{predicate:"*_cont",description:"The attribute contains the filter value"},{predicate:"*_not_cont",description:"The attribute does not contains the filter value"},{predicate:"*_cont_any",description:"The attribute contains any of the filter values (comma-separated)"},{predicate:"*_cont_all",description:"The attribute contains all of the filter values (comma-separated)"},{predicate:"*_not_cont_all",description:"The attribute contains none of the filter values (comma-separated)"},{predicate:"*_jcont",description:"The attribute contains a portion of the JSON used as filter value (works with object only)"},{predicate:"*_true",description:"The attribute is true"},{predicate:"*_false",description:"The attribute is false"}],Qt=m.doc.core_filtering_data,_e=()=>he().map(e=>e.predicate.replace(/^\*/g,"")),fe=e=>{let t=e.startsWith("_")?e:`_${e}`;return _e().some(r=>t.endsWith(r))},er=(e,...t)=>{if(!fe(e))throw new Error("Unknown filter: "+e);let r="";for(let s of t)r+=(r.length===0?"":"_or_")+s;return r+=e.startsWith("_")?e:`_${e}`,r},he=()=>[...Zt];export{Z as clApi,ee as clApplication,A as clColor,te as clCommand,m as clConfig,ye as clFilter,O as clHelp,oe as clOutput,ge as clSchema,me as clSymbol,de as clText,pe as clToken,ue as clUpdate,ce as clUtil};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@commercelayer/cli-core",
3
- "version": "5.6.1",
3
+ "version": "5.6.3",
4
4
  "author": "Pierluigi Viti <pierluigi@commercelayer.io>",
5
5
  "license": "MIT",
6
6
  "description": "Commerce Layer Javascript CLI core lib",
@@ -34,21 +34,21 @@
34
34
  "node": ">=20"
35
35
  },
36
36
  "devDependencies": {
37
- "@babel/preset-env": "^7.26.0",
37
+ "@babel/preset-env": "^7.26.7",
38
38
  "@babel/preset-typescript": "^7.26.0",
39
39
  "@commercelayer/eslint-config-ts": "^1.4.5",
40
40
  "@semantic-release/changelog": "^6.0.3",
41
41
  "@semantic-release/git": "^10.0.1",
42
42
  "@types/jest": "^29.5.14",
43
- "@types/jsonwebtoken": "^9.0.7",
44
- "@types/node": "^22.10.7",
43
+ "@types/jsonwebtoken": "^9.0.8",
44
+ "@types/node": "^22.12.0",
45
45
  "@typescript-eslint/eslint-plugin": "^7.18.0",
46
46
  "dotenv": "^16.4.7",
47
47
  "eslint": "^8.57.1",
48
48
  "jest": "^29.7.0",
49
- "oclif": "^4.17.13",
49
+ "oclif": "^4.17.19",
50
50
  "semantic-release": "^24.2.1",
51
- "tsup": "^8.3.5",
51
+ "tsup": "^8.3.6",
52
52
  "tsx": "^4.19.2",
53
53
  "typescript": "^5.7.3"
54
54
  },