@nextblock-cms/ecom 0.12.11 → 0.12.13

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.
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("@nextblock-cms/utils/server"),P=require("./shared-inventory.cjs.js"),E=require("@nextblock-cms/utils/utils"),g=e=>Math.round(e*100);function y(e){return Object.entries(e||{}).reduce((t,[r,i])=>(typeof i=="number"&&Number.isFinite(i)&&i>=0&&(t[E.normalizeCurrencyCode(r)]=g(i)),t),{})}function M(e){return(e||[]).map(t=>({id:t.id,sku:t.sku,upc:t.upc??null,price:g(t.price),sale_price:typeof t.sale_price=="number"&&!isNaN(t.sale_price)?g(t.sale_price):null,prices:y(t.prices),sale_prices:y(t.sale_prices),sale_start_at:t.sale_start_at??null,sale_end_at:t.sale_end_at??null,stock_quantity:t.stock_quantity,main_media_id:t.main_media_id??null,attribute_term_ids:t.attribute_term_ids}))}function S(e,t){const i=e.product_type==="digital"&&e.payment_provider==="freemius"?Math.max(0,Number(e.trial_period_days??0)):0;return{id:t,product_type:e.product_type,payment_provider:e.payment_provider,title:e.title,slug:e.slug,sku:e.sku,upc:e.upc??null,stock:e.stock,status:e.status,short_description:e.short_description??null,description_json:e.description_json??null,metadata:{},price:g(e.price),sale_price:typeof e.sale_price=="number"&&!isNaN(e.sale_price)?g(e.sale_price):null,prices:y(e.prices),sale_prices:y(e.sale_prices),sale_start_at:e.sale_start_at??null,sale_end_at:e.sale_end_at??null,freemius_plan_id:e.freemius_plan_id??null,freemius_product_id:e.freemius_product_id??null,trial_period_days:i,trial_requires_payment_method:i>0?e.trial_requires_payment_method??!1:!1,is_taxable:e.is_taxable,language_id:e.language_id,translation_group_id:e.translation_group_id||void 0,variants:M(e.variants)}}async function j(e,t,r){const i=a=>{const o=typeof a=="string"?a.trim():"";return o||null},{error:c}=await e.from("products").update({meta_title:i(r.meta_title),meta_description:i(r.meta_description),custom_canonical:i(r.custom_canonical),updated_at:new Date().toISOString()}).eq("id",t);if(c)throw c}async function x(e,t,r){const{error:i}=await e.from("products").update({is_taxable:r,updated_at:new Date().toISOString()}).eq("id",t);if(i)throw i}async function F(e,t,r){const i=new Date().toISOString(),{data:c}=await e.from("products").select("sku, sale_price, sale_prices").eq("id",t).maybeSingle(),a=c?.sku??r.sku,{data:o}=await e.from("products").select("id").eq("sku",a),d=(o??[]).map(s=>s.id);d.length===0&&d.push(t);const{error:n}=await e.from("products").update({sale_price:c?.sale_price??null,sale_prices:c?.sale_prices??null,sale_start_at:r.sale_start_at??null,sale_end_at:r.sale_end_at??null,updated_at:i}).in("id",d);if(n)throw n;const _=r.variants??[];if(_.length===0)return;const{data:l}=await e.from("product_variants").select("sku, sale_price, sale_prices").eq("product_id",t),u=new Map((l??[]).map(s=>[s.sku,s]));for(const s of _){const p=u.get(s.sku);if(!p)continue;const{error:m}=await e.from("product_variants").update({sale_price:p.sale_price??null,sale_prices:p.sale_prices??null,sale_start_at:s.sale_start_at??null,sale_end_at:s.sale_end_at??null,updated_at:i}).eq("sku",s.sku).in("product_id",d);if(m)throw m}}async function C(e,{page:t=1,limit:r=10,search:i="",languageId:c,categoryId:a}={}){const o=(t-1)*r,d=o+r-1;let n=e.from("products").select("id, title, average_rating, total_reviews, sku, upc, price, prices, sale_price, sale_prices, sale_start_at, sale_end_at, scheduled_price, scheduled_prices, scheduled_price_at, is_taxable, product_type, payment_provider, short_description, stock, status, slug, language_id, translation_group_id, freemius_product_id, freemius_plan_id, trial_period_days, trial_requires_payment_method, product_media(media(file_path, object_key)), product_variants(id, price, prices, sale_price, sale_prices, sale_start_at, sale_end_at, scheduled_price, scheduled_prices, scheduled_price_at), freemius_plans(id, name, title, freemius_pricing(id, license_quota, api_monthly_price, api_annual_price, api_lifetime_price, override_monthly_price, override_annual_price, override_lifetime_price, is_active)), product_categories(category:categories(id, name, slug, description, name_translations, description_translations))",{count:"exact"}).range(o,d).order("created_at",{ascending:!1});if(c&&(n=n.eq("language_id",c)),a){const{data:_,error:l}=await e.from("product_categories").select("product_id").eq("category_id",a);if(l)return{data:[],error:l,count:0};const u=(_||[]).map(s=>s.product_id).filter(Boolean);if(u.length===0)return{data:[],error:null,count:0};n=n.in("id",u)}return i&&(n=n.or(`title.ilike.%${i}%,sku.ilike.%${i}%`)),n}async function T(e,t){return e.from("products").select(`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("@nextblock-cms/utils/server"),P=require("./shared-inventory.cjs.js"),E=require("@nextblock-cms/utils/utils"),g=e=>Math.round(e*100);function y(e){return Object.entries(e||{}).reduce((t,[r,i])=>(typeof i=="number"&&Number.isFinite(i)&&i>=0&&(t[E.normalizeCurrencyCode(r)]=g(i)),t),{})}function M(e){return(e||[]).map(t=>({id:t.id,sku:t.sku,upc:t.upc??null,price:g(t.price),sale_price:typeof t.sale_price=="number"&&!isNaN(t.sale_price)?g(t.sale_price):null,prices:y(t.prices),sale_prices:y(t.sale_prices),sale_start_at:t.sale_start_at??null,sale_end_at:t.sale_end_at??null,stock_quantity:t.stock_quantity,main_media_id:t.main_media_id??null,attribute_term_ids:t.attribute_term_ids}))}function S(e,t){const i=e.product_type==="digital"&&e.payment_provider==="freemius"?Math.max(0,Number(e.trial_period_days??0)):0;return{id:t,product_type:e.product_type,payment_provider:e.payment_provider,title:e.title,slug:e.slug,sku:e.sku,upc:e.upc??null,stock:e.stock,status:e.status,short_description:e.short_description??null,description_json:e.description_json??null,metadata:{},price:g(e.price),sale_price:typeof e.sale_price=="number"&&!isNaN(e.sale_price)?g(e.sale_price):null,prices:y(e.prices),sale_prices:y(e.sale_prices),sale_start_at:e.sale_start_at??null,sale_end_at:e.sale_end_at??null,freemius_plan_id:e.freemius_plan_id??null,freemius_product_id:e.freemius_product_id??null,trial_period_days:i,trial_requires_payment_method:i>0?e.trial_requires_payment_method??!1:!1,is_taxable:e.is_taxable,language_id:e.language_id,translation_group_id:e.translation_group_id||void 0,variants:M(e.variants)}}async function j(e,t,r){const i=a=>{const o=typeof a=="string"?a.trim():"";return o||null},{error:c}=await e.from("products").update({meta_title:i(r.meta_title),meta_description:i(r.meta_description),custom_canonical:i(r.custom_canonical),updated_at:new Date().toISOString()}).eq("id",t);if(c)throw c}async function x(e,t,r){const{error:i}=await e.from("products").update({is_taxable:r,updated_at:new Date().toISOString()}).eq("id",t);if(i)throw i}async function F(e,t,r){const i=new Date().toISOString(),{data:c}=await e.from("products").select("sku, sale_price, sale_prices").eq("id",t).maybeSingle(),a=c?.sku??r.sku,{data:o}=await e.from("products").select("id").eq("sku",a),d=(o??[]).map(s=>s.id);d.length===0&&d.push(t);const{error:_}=await e.from("products").update({sale_price:c?.sale_price??null,sale_prices:c?.sale_prices??null,sale_start_at:r.sale_start_at??null,sale_end_at:r.sale_end_at??null,updated_at:i}).in("id",d);if(_)throw _;const n=r.variants??[];if(n.length===0)return;const{data:u}=await e.from("product_variants").select("sku, sale_price, sale_prices").eq("product_id",t),p=new Map((u??[]).map(s=>[s.sku,s]));for(const s of n){const l=p.get(s.sku);if(!l)continue;const{error:m}=await e.from("product_variants").update({sale_price:l.sale_price??null,sale_prices:l.sale_prices??null,sale_start_at:s.sale_start_at??null,sale_end_at:s.sale_end_at??null,updated_at:i}).eq("sku",s.sku).in("product_id",d);if(m)throw m}}async function C(e,{page:t=1,limit:r=10,search:i="",languageId:c,categoryId:a,status:o="active"}={}){const d=(t-1)*r,_=d+r-1;let n=e.from("products").select("id, title, average_rating, total_reviews, sku, upc, price, prices, sale_price, sale_prices, sale_start_at, sale_end_at, scheduled_price, scheduled_prices, scheduled_price_at, is_taxable, product_type, payment_provider, short_description, stock, status, slug, language_id, translation_group_id, freemius_product_id, freemius_plan_id, trial_period_days, trial_requires_payment_method, product_media(media(file_path, object_key)), product_variants(id, price, prices, sale_price, sale_prices, sale_start_at, sale_end_at, scheduled_price, scheduled_prices, scheduled_price_at), freemius_plans(id, name, title, freemius_pricing(id, license_quota, api_monthly_price, api_annual_price, api_lifetime_price, override_monthly_price, override_annual_price, override_lifetime_price, is_active)), product_categories(category:categories(id, name, slug, description, name_translations, description_translations))",{count:"exact"}).range(d,_).order("created_at",{ascending:!1});if(o!=="all"&&(n=n.eq("status",o)),c&&(n=n.eq("language_id",c)),a){const{data:u,error:p}=await e.from("product_categories").select("product_id").eq("category_id",a);if(p)return{data:[],error:p,count:0};const s=(u||[]).map(l=>l.product_id).filter(Boolean);if(s.length===0)return{data:[],error:null,count:0};n=n.in("id",s)}return i&&(n=n.or(`title.ilike.%${i}%,sku.ilike.%${i}%`)),n}async function T(e,t){return e.from("products").select(`
2
2
  *,
3
3
  languages (
4
4
  code
@@ -166,7 +166,7 @@
166
166
  description_translations
167
167
  )
168
168
  )
169
- `).eq("slug",t);if(c)return{data:null,error:c};if(!i||i.length===0)return{data:null,error:{message:"Product not found",code:"PGRST116"}};let a=null;return r&&(a=i.find(o=>(Array.isArray(o.languages)?o.languages[0]:o.languages)?.code===r)),a||(a=i.find(o=>(Array.isArray(o.languages)?o.languages[0]:o.languages)?.is_default)),a||(a=i.find(o=>(Array.isArray(o.languages)?o.languages[0]:o.languages)?.code==="en")),a||(a=i[0]),{data:a,error:null}}async function R(e,t){const{data:r,error:i}=await e.rpc("upsert_product_with_variants",{product_payload:S(t)});if(i||!r)throw i||new Error("Failed to create product");if(t.product_media&&t.product_media.length>0){const a=t.product_media.map((o,d)=>({product_id:r,media_id:o.media_id,sort_order:d}));await e.from("product_media").insert(a)}else t.media_id&&await e.from("product_media").insert({product_id:r,media_id:t.media_id,sort_order:0});await x(e,r,t.is_taxable),await j(e,r,t),await F(e,r,t),await P.syncSharedInventoryForSavedProduct(r,t),t.category_ids!==void 0&&await q(e,r,t.category_ids);const{data:c}=await e.from("products").select("*").eq("id",r).single();return c}async function I(e,t,r){const{data:i}=await e.from("product_media").select("media_id").eq("product_id",t),c=i?.map(s=>s.media_id)||[],{data:a,error:o}=await e.rpc("upsert_product_with_variants",{product_payload:S(r,t)});if(o||!a)throw o||new Error("Failed to update product");if(r.product_media){if(await e.from("product_media").delete().eq("product_id",t),r.product_media.length>0){const s=r.product_media.map((p,m)=>({product_id:t,media_id:p.media_id,sort_order:m}));await e.from("product_media").insert(s)}}else r.media_id&&(await e.from("product_media").delete().eq("product_id",t),await e.from("product_media").insert({product_id:t,media_id:r.media_id,sort_order:0}));await x(e,a,r.is_taxable),await j(e,a,r),await F(e,a,r);const d=r.product_media?r.product_media.map(s=>s.media_id):r.media_id?[r.media_id]:[],n=r.explicitly_removed_media_ids||[],_=c.filter(s=>!d.includes(s)),l=Array.from(new Set([..._,...n]));if(l.length>0)for(const s of l){const{count:p}=await e.from("product_media").select("*",{count:"exact",head:!0}).eq("media_id",s);if(p&&p>0)continue;const{count:m}=await e.from("posts").select("*",{count:"exact",head:!0}).eq("feature_image_id",s);if(m&&m>0)continue;const{count:h}=await e.from("logos").select("*",{count:"exact",head:!0}).eq("media_id",s);if(h&&h>0)continue;const{count:w}=await e.from("product_variants").select("*",{count:"exact",head:!0}).eq("main_media_id",s);if(w&&w>0)continue;const{data:f}=await e.from("media").select("object_key, variants").eq("id",s).single();if(f){const v=[f.object_key];f.variants&&Array.isArray(f.variants)&&f.variants.forEach(k=>{k.objectKey&&v.push(k.objectKey)}),await b.deleteMediaFiles(v),await e.from("media").delete().eq("id",s)}}await P.syncSharedInventoryForSavedProduct(a,r),r.category_ids!==void 0&&await q(e,t,r.category_ids);const{data:u}=await e.from("products").select("*").eq("id",a).single();return u}async function D(e,t){const{error:r}=await e.from("products").delete().eq("id",t);if(r)throw r;return!0}async function N(e,t,r){const{data:i,error:c}=await e.from("products").select("*").eq("id",r).single();if(c||!i)throw new Error(c?.message||"Source product not found");const{data:a,error:o}=await e.from("products").select("language_id").eq("id",t).single();if(o||!a)throw new Error(o?.message||"Target product not found");const{error:d}=await e.from("products").update({title:i.title,short_description:i.short_description,description_json:i.description_json}).eq("id",t);if(d)throw d;const{data:n,error:_}=await e.from("blocks").select("*").eq("product_id",r).order("order",{ascending:!0});if(_)throw _;if(await e.from("blocks").delete().eq("product_id",t),n&&n.length>0){const u=n.map(p=>{const{id:m,created_at:h,updated_at:w,...f}=p;return{...f,product_id:t,language_id:a.language_id}}),{error:s}=await e.from("blocks").insert(u);if(s)throw s}await e.from("product_drafts").delete().eq("product_id",t),await e.from("product_media").delete().eq("product_id",t);const{data:l}=await e.from("product_media").select("media_id, sort_order").eq("product_id",r);if(l&&l.length>0){const u=l.map(s=>({product_id:t,media_id:s.media_id,sort_order:s.sort_order}));await e.from("product_media").insert(u)}return{success:!0}}async function $(e,t,r,i=[],c=[]){const{data:a}=await e.from("languages").select("id").eq("code",r).single();if(!a)return{data:[],error:"Language not found"};const o=[];t.length>0&&o.push(`translation_group_id.in.(${t.join(",")})`),i.length>0&&o.push(`sku.in.(${i.map(_=>`"${_}"`).join(",")})`),c.length>0&&o.push(`id.in.(${c.join(",")})`);let d=e.from("products").select(`
169
+ `).eq("slug",t);if(c)return{data:null,error:c};if(!i||i.length===0)return{data:null,error:{message:"Product not found",code:"PGRST116"}};let a=null;return r&&(a=i.find(o=>(Array.isArray(o.languages)?o.languages[0]:o.languages)?.code===r)),a||(a=i.find(o=>(Array.isArray(o.languages)?o.languages[0]:o.languages)?.is_default)),a||(a=i.find(o=>(Array.isArray(o.languages)?o.languages[0]:o.languages)?.code==="en")),a||(a=i[0]),{data:a,error:null}}async function R(e,t){const{data:r,error:i}=await e.rpc("upsert_product_with_variants",{product_payload:S(t)});if(i||!r)throw i||new Error("Failed to create product");if(t.product_media&&t.product_media.length>0){const a=t.product_media.map((o,d)=>({product_id:r,media_id:o.media_id,sort_order:d}));await e.from("product_media").insert(a)}else t.media_id&&await e.from("product_media").insert({product_id:r,media_id:t.media_id,sort_order:0});await x(e,r,t.is_taxable),await j(e,r,t),await F(e,r,t),await P.syncSharedInventoryForSavedProduct(r,t),t.category_ids!==void 0&&await q(e,r,t.category_ids);const{data:c}=await e.from("products").select("*").eq("id",r).single();return c}async function I(e,t,r){const{data:i}=await e.from("product_media").select("media_id").eq("product_id",t),c=i?.map(s=>s.media_id)||[],{data:a,error:o}=await e.rpc("upsert_product_with_variants",{product_payload:S(r,t)});if(o||!a)throw o||new Error("Failed to update product");if(r.product_media){if(await e.from("product_media").delete().eq("product_id",t),r.product_media.length>0){const s=r.product_media.map((l,m)=>({product_id:t,media_id:l.media_id,sort_order:m}));await e.from("product_media").insert(s)}}else r.media_id&&(await e.from("product_media").delete().eq("product_id",t),await e.from("product_media").insert({product_id:t,media_id:r.media_id,sort_order:0}));await x(e,a,r.is_taxable),await j(e,a,r),await F(e,a,r);const d=r.product_media?r.product_media.map(s=>s.media_id):r.media_id?[r.media_id]:[],_=r.explicitly_removed_media_ids||[],n=c.filter(s=>!d.includes(s)),u=Array.from(new Set([...n,..._]));if(u.length>0)for(const s of u){const{count:l}=await e.from("product_media").select("*",{count:"exact",head:!0}).eq("media_id",s);if(l&&l>0)continue;const{count:m}=await e.from("posts").select("*",{count:"exact",head:!0}).eq("feature_image_id",s);if(m&&m>0)continue;const{count:h}=await e.from("logos").select("*",{count:"exact",head:!0}).eq("media_id",s);if(h&&h>0)continue;const{count:w}=await e.from("product_variants").select("*",{count:"exact",head:!0}).eq("main_media_id",s);if(w&&w>0)continue;const{data:f}=await e.from("media").select("object_key, variants").eq("id",s).single();if(f){const v=[f.object_key];f.variants&&Array.isArray(f.variants)&&f.variants.forEach(k=>{k.objectKey&&v.push(k.objectKey)}),await b.deleteMediaFiles(v),await e.from("media").delete().eq("id",s)}}await P.syncSharedInventoryForSavedProduct(a,r),r.category_ids!==void 0&&await q(e,t,r.category_ids);const{data:p}=await e.from("products").select("*").eq("id",a).single();return p}async function D(e,t){const{error:r}=await e.from("products").delete().eq("id",t);if(r)throw r;return!0}async function N(e,t,r){const{data:i,error:c}=await e.from("products").select("*").eq("id",r).single();if(c||!i)throw new Error(c?.message||"Source product not found");const{data:a,error:o}=await e.from("products").select("language_id").eq("id",t).single();if(o||!a)throw new Error(o?.message||"Target product not found");const{error:d}=await e.from("products").update({title:i.title,short_description:i.short_description,description_json:i.description_json}).eq("id",t);if(d)throw d;const{data:_,error:n}=await e.from("blocks").select("*").eq("product_id",r).order("order",{ascending:!0});if(n)throw n;if(await e.from("blocks").delete().eq("product_id",t),_&&_.length>0){const p=_.map(l=>{const{id:m,created_at:h,updated_at:w,...f}=l;return{...f,product_id:t,language_id:a.language_id}}),{error:s}=await e.from("blocks").insert(p);if(s)throw s}await e.from("product_drafts").delete().eq("product_id",t),await e.from("product_media").delete().eq("product_id",t);const{data:u}=await e.from("product_media").select("media_id, sort_order").eq("product_id",r);if(u&&u.length>0){const p=u.map(s=>({product_id:t,media_id:s.media_id,sort_order:s.sort_order}));await e.from("product_media").insert(p)}return{success:!0}}async function $(e,t,r,i=[],c=[]){const{data:a}=await e.from("languages").select("id").eq("code",r).single();if(!a)return{data:[],error:"Language not found"};const o=[];t.length>0&&o.push(`translation_group_id.in.(${t.join(",")})`),i.length>0&&o.push(`sku.in.(${i.map(n=>`"${n}"`).join(",")})`),c.length>0&&o.push(`id.in.(${c.join(",")})`);let d=e.from("products").select(`
170
170
  id,
171
171
  title,
172
172
  sku,
@@ -234,4 +234,4 @@
234
234
  )
235
235
  ),
236
236
  translation_group_id
237
- `).eq("language_id",a.id).eq("status","active");return o.length>0&&(d=d.or(o.join(","))),await d.order("id")}async function q(e,t,r){const{data:i}=await e.from("products").select("translation_group_id").eq("id",t).single();if(!i||!i.translation_group_id){if(await e.from("product_categories").delete().eq("product_id",t),r.length>0){const o=r.map(d=>({product_id:t,category_id:d}));await e.from("product_categories").insert(o)}return}const{data:c}=await e.from("products").select("id").eq("translation_group_id",i.translation_group_id),a=c&&c.length>0?c.map(o=>o.id):[t];if(await e.from("product_categories").delete().in("product_id",a),r.length>0){const o=[];for(const d of a)for(const n of r)o.push({product_id:d,category_id:n});await e.from("product_categories").insert(o)}}exports.copyProductFromLanguage=N;exports.createProduct=R;exports.deleteProduct=D;exports.fetchTranslatedProductsForCartInternal=$;exports.getProduct=T;exports.getProductBySlug=A;exports.getProducts=C;exports.syncCategoriesForTranslationGroup=q;exports.updateProduct=I;
237
+ `).eq("language_id",a.id).eq("status","active");return o.length>0&&(d=d.or(o.join(","))),await d.order("id")}async function q(e,t,r){const{data:i}=await e.from("products").select("translation_group_id").eq("id",t).single();if(!i||!i.translation_group_id){if(await e.from("product_categories").delete().eq("product_id",t),r.length>0){const o=r.map(d=>({product_id:t,category_id:d}));await e.from("product_categories").insert(o)}return}const{data:c}=await e.from("products").select("id").eq("translation_group_id",i.translation_group_id),a=c&&c.length>0?c.map(o=>o.id):[t];if(await e.from("product_categories").delete().in("product_id",a),r.length>0){const o=[];for(const d of a)for(const _ of r)o.push({product_id:d,category_id:_});await e.from("product_categories").insert(o)}}exports.copyProductFromLanguage=N;exports.createProduct=R;exports.deleteProduct=D;exports.fetchTranslatedProductsForCartInternal=$;exports.getProduct=T;exports.getProductBySlug=A;exports.getProducts=C;exports.syncCategoriesForTranslationGroup=q;exports.updateProduct=I;
@@ -1,12 +1,13 @@
1
1
  import { SupabaseClient } from '@supabase/supabase-js';
2
2
  import { Database } from '../../../db/src/lib/supabase/types.ts';
3
3
  import { ProductFormValues } from './product-schema';
4
- export declare function getProducts(supabase: SupabaseClient<Database>, { page, limit, search, languageId, categoryId, }?: {
4
+ export declare function getProducts(supabase: SupabaseClient<Database>, { page, limit, search, languageId, categoryId, status, }?: {
5
5
  page?: number;
6
6
  limit?: number;
7
7
  search?: string;
8
8
  languageId?: number;
9
9
  categoryId?: string;
10
+ status?: 'active' | 'draft' | 'archived' | 'all';
10
11
  }): Promise<import('@supabase/postgrest-js').PostgrestResponseFailure | import('@supabase/postgrest-js').PostgrestResponseSuccess<{
11
12
  id: string;
12
13
  title: string;
@@ -1,5 +1,5 @@
1
1
  import { deleteMediaFiles as F } from "@nextblock-cms/utils/server";
2
- import { syncSharedInventoryForSavedProduct as v } from "./shared-inventory.es.js";
2
+ import { syncSharedInventoryForSavedProduct as k } from "./shared-inventory.es.js";
3
3
  import { normalizeCurrencyCode as b } from "@nextblock-cms/utils/utils";
4
4
  const g = (e) => Math.round(e * 100);
5
5
  function y(e) {
@@ -79,28 +79,28 @@ async function x(e, t, i) {
79
79
  async function S(e, t, i) {
80
80
  const r = (/* @__PURE__ */ new Date()).toISOString(), { data: c } = await e.from("products").select("sku, sale_price, sale_prices").eq("id", t).maybeSingle(), o = c?.sku ?? i.sku, { data: a } = await e.from("products").select("id").eq("sku", o), d = (a ?? []).map((s) => s.id);
81
81
  d.length === 0 && d.push(t);
82
- const { error: n } = await e.from("products").update({
82
+ const { error: _ } = await e.from("products").update({
83
83
  sale_price: c?.sale_price ?? null,
84
84
  sale_prices: c?.sale_prices ?? null,
85
85
  sale_start_at: i.sale_start_at ?? null,
86
86
  sale_end_at: i.sale_end_at ?? null,
87
87
  updated_at: r
88
88
  }).in("id", d);
89
- if (n)
90
- throw n;
91
- const _ = i.variants ?? [];
92
- if (_.length === 0)
89
+ if (_)
90
+ throw _;
91
+ const n = i.variants ?? [];
92
+ if (n.length === 0)
93
93
  return;
94
- const { data: l } = await e.from("product_variants").select("sku, sale_price, sale_prices").eq("product_id", t), u = new Map(
95
- (l ?? []).map((s) => [s.sku, s])
94
+ const { data: u } = await e.from("product_variants").select("sku, sale_price, sale_prices").eq("product_id", t), p = new Map(
95
+ (u ?? []).map((s) => [s.sku, s])
96
96
  );
97
- for (const s of _) {
98
- const p = u.get(s.sku);
99
- if (!p)
97
+ for (const s of n) {
98
+ const l = p.get(s.sku);
99
+ if (!l)
100
100
  continue;
101
101
  const { error: m } = await e.from("product_variants").update({
102
- sale_price: p.sale_price ?? null,
103
- sale_prices: p.sale_prices ?? null,
102
+ sale_price: l.sale_price ?? null,
103
+ sale_prices: l.sale_prices ?? null,
104
104
  sale_start_at: s.sale_start_at ?? null,
105
105
  sale_end_at: s.sale_end_at ?? null,
106
106
  updated_at: r
@@ -114,21 +114,22 @@ async function T(e, {
114
114
  limit: i = 10,
115
115
  search: r = "",
116
116
  languageId: c,
117
- categoryId: o
117
+ categoryId: o,
118
+ status: a = "active"
118
119
  } = {}) {
119
- const a = (t - 1) * i, d = a + i - 1;
120
+ const d = (t - 1) * i, _ = d + i - 1;
120
121
  let n = e.from("products").select(
121
122
  "id, title, average_rating, total_reviews, sku, upc, price, prices, sale_price, sale_prices, sale_start_at, sale_end_at, scheduled_price, scheduled_prices, scheduled_price_at, is_taxable, product_type, payment_provider, short_description, stock, status, slug, language_id, translation_group_id, freemius_product_id, freemius_plan_id, trial_period_days, trial_requires_payment_method, product_media(media(file_path, object_key)), product_variants(id, price, prices, sale_price, sale_prices, sale_start_at, sale_end_at, scheduled_price, scheduled_prices, scheduled_price_at), freemius_plans(id, name, title, freemius_pricing(id, license_quota, api_monthly_price, api_annual_price, api_lifetime_price, override_monthly_price, override_annual_price, override_lifetime_price, is_active)), product_categories(category:categories(id, name, slug, description, name_translations, description_translations))",
122
123
  { count: "exact" }
123
- ).range(a, d).order("created_at", { ascending: !1 });
124
- if (c && (n = n.eq("language_id", c)), o) {
125
- const { data: _, error: l } = await e.from("product_categories").select("product_id").eq("category_id", o);
126
- if (l)
127
- return { data: [], error: l, count: 0 };
128
- const u = (_ || []).map((s) => s.product_id).filter(Boolean);
129
- if (u.length === 0)
124
+ ).range(d, _).order("created_at", { ascending: !1 });
125
+ if (a !== "all" && (n = n.eq("status", a)), c && (n = n.eq("language_id", c)), o) {
126
+ const { data: u, error: p } = await e.from("product_categories").select("product_id").eq("category_id", o);
127
+ if (p)
128
+ return { data: [], error: p, count: 0 };
129
+ const s = (u || []).map((l) => l.product_id).filter(Boolean);
130
+ if (s.length === 0)
130
131
  return { data: [], error: null, count: 0 };
131
- n = n.in("id", u);
132
+ n = n.in("id", s);
132
133
  }
133
134
  return r && (n = n.or(`title.ilike.%${r}%,sku.ilike.%${r}%`)), n;
134
135
  }
@@ -333,7 +334,7 @@ async function $(e, t) {
333
334
  media_id: t.media_id,
334
335
  sort_order: 0
335
336
  });
336
- await x(e, i, t.is_taxable), await P(e, i, t), await S(e, i, t), await v(i, t), t.category_ids !== void 0 && await E(e, i, t.category_ids);
337
+ await x(e, i, t.is_taxable), await P(e, i, t), await S(e, i, t), await k(i, t), t.category_ids !== void 0 && await E(e, i, t.category_ids);
337
338
  const { data: c } = await e.from("products").select("*").eq("id", i).single();
338
339
  return c;
339
340
  }
@@ -344,9 +345,9 @@ async function z(e, t, i) {
344
345
  if (a || !o) throw a || new Error("Failed to update product");
345
346
  if (i.product_media) {
346
347
  if (await e.from("product_media").delete().eq("product_id", t), i.product_media.length > 0) {
347
- const s = i.product_media.map((p, m) => ({
348
+ const s = i.product_media.map((l, m) => ({
348
349
  product_id: t,
349
- media_id: p.media_id,
350
+ media_id: l.media_id,
350
351
  sort_order: m
351
352
  }));
352
353
  await e.from("product_media").insert(s);
@@ -357,11 +358,11 @@ async function z(e, t, i) {
357
358
  sort_order: 0
358
359
  }));
359
360
  await x(e, o, i.is_taxable), await P(e, o, i), await S(e, o, i);
360
- const d = i.product_media ? i.product_media.map((s) => s.media_id) : i.media_id ? [i.media_id] : [], n = i.explicitly_removed_media_ids || [], _ = c.filter((s) => !d.includes(s)), l = Array.from(/* @__PURE__ */ new Set([..._, ...n]));
361
- if (l.length > 0)
362
- for (const s of l) {
363
- const { count: p } = await e.from("product_media").select("*", { count: "exact", head: !0 }).eq("media_id", s);
364
- if (p && p > 0) continue;
361
+ const d = i.product_media ? i.product_media.map((s) => s.media_id) : i.media_id ? [i.media_id] : [], _ = i.explicitly_removed_media_ids || [], n = c.filter((s) => !d.includes(s)), u = Array.from(/* @__PURE__ */ new Set([...n, ..._]));
362
+ if (u.length > 0)
363
+ for (const s of u) {
364
+ const { count: l } = await e.from("product_media").select("*", { count: "exact", head: !0 }).eq("media_id", s);
365
+ if (l && l > 0) continue;
365
366
  const { count: m } = await e.from("posts").select("*", { count: "exact", head: !0 }).eq("feature_image_id", s);
366
367
  if (m && m > 0) continue;
367
368
  const { count: h } = await e.from("logos").select("*", { count: "exact", head: !0 }).eq("media_id", s);
@@ -371,14 +372,14 @@ async function z(e, t, i) {
371
372
  const { data: f } = await e.from("media").select("object_key, variants").eq("id", s).single();
372
373
  if (f) {
373
374
  const q = [f.object_key];
374
- f.variants && Array.isArray(f.variants) && f.variants.forEach((k) => {
375
- k.objectKey && q.push(k.objectKey);
375
+ f.variants && Array.isArray(f.variants) && f.variants.forEach((v) => {
376
+ v.objectKey && q.push(v.objectKey);
376
377
  }), await F(q), await e.from("media").delete().eq("id", s);
377
378
  }
378
379
  }
379
- await v(o, i), i.category_ids !== void 0 && await E(e, t, i.category_ids);
380
- const { data: u } = await e.from("products").select("*").eq("id", o).single();
381
- return u;
380
+ await k(o, i), i.category_ids !== void 0 && await E(e, t, i.category_ids);
381
+ const { data: p } = await e.from("products").select("*").eq("id", o).single();
382
+ return p;
382
383
  }
383
384
  async function B(e, t) {
384
385
  const { error: i } = await e.from("products").delete().eq("id", t);
@@ -398,28 +399,28 @@ async function I(e, t, i) {
398
399
  description_json: r.description_json
399
400
  }).eq("id", t);
400
401
  if (d) throw d;
401
- const { data: n, error: _ } = await e.from("blocks").select("*").eq("product_id", i).order("order", { ascending: !0 });
402
- if (_) throw _;
403
- if (await e.from("blocks").delete().eq("product_id", t), n && n.length > 0) {
404
- const u = n.map((p) => {
405
- const { id: m, created_at: h, updated_at: w, ...f } = p;
402
+ const { data: _, error: n } = await e.from("blocks").select("*").eq("product_id", i).order("order", { ascending: !0 });
403
+ if (n) throw n;
404
+ if (await e.from("blocks").delete().eq("product_id", t), _ && _.length > 0) {
405
+ const p = _.map((l) => {
406
+ const { id: m, created_at: h, updated_at: w, ...f } = l;
406
407
  return {
407
408
  ...f,
408
409
  product_id: t,
409
410
  language_id: o.language_id
410
411
  };
411
- }), { error: s } = await e.from("blocks").insert(u);
412
+ }), { error: s } = await e.from("blocks").insert(p);
412
413
  if (s) throw s;
413
414
  }
414
415
  await e.from("product_drafts").delete().eq("product_id", t), await e.from("product_media").delete().eq("product_id", t);
415
- const { data: l } = await e.from("product_media").select("media_id, sort_order").eq("product_id", i);
416
- if (l && l.length > 0) {
417
- const u = l.map((s) => ({
416
+ const { data: u } = await e.from("product_media").select("media_id, sort_order").eq("product_id", i);
417
+ if (u && u.length > 0) {
418
+ const p = u.map((s) => ({
418
419
  product_id: t,
419
420
  media_id: s.media_id,
420
421
  sort_order: s.sort_order
421
422
  }));
422
- await e.from("product_media").insert(u);
423
+ await e.from("product_media").insert(p);
423
424
  }
424
425
  return { success: !0 };
425
426
  }
@@ -428,7 +429,7 @@ async function O(e, t, i, r = [], c = []) {
428
429
  if (!o)
429
430
  return { data: [], error: "Language not found" };
430
431
  const a = [];
431
- t.length > 0 && a.push(`translation_group_id.in.(${t.join(",")})`), r.length > 0 && a.push(`sku.in.(${r.map((_) => `"${_}"`).join(",")})`), c.length > 0 && a.push(`id.in.(${c.join(",")})`);
432
+ t.length > 0 && a.push(`translation_group_id.in.(${t.join(",")})`), r.length > 0 && a.push(`sku.in.(${r.map((n) => `"${n}"`).join(",")})`), c.length > 0 && a.push(`id.in.(${c.join(",")})`);
432
433
  let d = e.from("products").select(`
433
434
  id,
434
435
  title,
@@ -516,10 +517,10 @@ async function E(e, t, i) {
516
517
  if (await e.from("product_categories").delete().in("product_id", o), i.length > 0) {
517
518
  const a = [];
518
519
  for (const d of o)
519
- for (const n of i)
520
+ for (const _ of i)
520
521
  a.push({
521
522
  product_id: d,
522
- category_id: n
523
+ category_id: _
523
524
  });
524
525
  await e.from("product_categories").insert(a);
525
526
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nextblock-cms/ecom",
3
- "version": "0.12.11",
3
+ "version": "0.12.13",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -10,9 +10,9 @@
10
10
  },
11
11
  "type": "module",
12
12
  "dependencies": {
13
- "@nextblock-cms/db": "^0.12.11",
14
- "@nextblock-cms/ui": "^0.12.11",
15
- "@nextblock-cms/utils": "^0.12.11",
13
+ "@nextblock-cms/db": "^0.12.13",
14
+ "@nextblock-cms/ui": "^0.12.13",
15
+ "@nextblock-cms/utils": "^0.12.13",
16
16
  "@freemius/checkout": "^1.4.1",
17
17
  "@freemius/sdk": "^0.3.0",
18
18
  "@hookform/resolvers": "^5.2.2",
package/server.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./lib/payment-config.cjs.js"),h=require("./lib/stripe/client.cjs.js"),O=require("./lib/stripe/checkout.cjs.js"),A=require("./lib/stripe/order-sync.cjs.js"),R=require("./lib/stripe/webhooks.cjs.js"),T=require("./lib/order-inventory.cjs.js"),o=require("./lib/order-tax-details.cjs.js"),n=require("./lib/invoice.cjs.js"),g=require("./lib/invoice-server.cjs.js"),l=require("./lib/customer-orders.cjs.js"),C=require("./lib/coupon-server.cjs.js"),P=require("./lib/freemius-coupons.cjs.js"),d=require("./lib/customer.cjs.js"),m=require("./lib/customer-addresses.cjs.js"),e=require("./lib/currency.cjs.js"),q=require("./lib/currency-constants.cjs.js"),p=require("./lib/currency-sync.cjs.js"),D=require("./lib/product-schema.cjs.js"),r=require("./lib/product-actions.cjs.js"),E=require("./lib/factory.cjs.js"),I=require("./lib/providers/stripe.cjs.js"),c=require("./lib/providers/freemius.cjs.js"),i=require("./lib/freemius-order-sync.cjs.js"),a=require("./lib/pages/cms/products/actions.cjs.js"),s=require("./lib/pages/cms/products/server-actions.cjs.js"),y=require("./lib/pages/cms/payments/queries.cjs.js"),b=require("./lib/pages/cms/orders/OrdersPage.cjs.js"),f=require("./lib/pages/cms/orders/OrderDetailPage.cjs.js"),x=require("./lib/pages/cms/orders/ExportReportsDialog.cjs.js"),k=require("./lib/pages/cms/orders/export-actions.cjs.js"),v=require("./lib/pages/cms/orders/actions.cjs.js"),M=require("./lib/pages/cms/products/ProductsPage.cjs.js"),N=require("./lib/pages/cms/products/inventory/InventoryPage.cjs.js"),L=require("./lib/pages/cms/products/attributes/AttributeManagementPage.cjs.js"),z=require("./lib/pages/cms/products/new/NewProductPage.cjs.js"),_=require("./lib/pages/cms/products/_id_/edit/EditProductPage.cjs.js"),U=require("./lib/pages/cms/products/components/CopyProductFromLanguage.cjs.js"),W=require("./lib/pages/cms/products/categories/CategoryManagementPage.cjs.js"),G=require("./lib/pages/cms/payments/PaymentsPage.cjs.js"),F=require("./lib/pages/cms/payments/actions.cjs.js"),w=require("./lib/pages/cms/shipping/ShippingPage.cjs.js"),u=require("./lib/pages/cms/shipping/server-actions.cjs.js"),K=require("./lib/pages/cms/taxes/TaxesPage.cjs.js"),S=require("./lib/pages/cms/taxes/actions.cjs.js"),V=require("./lib/pages/cms/coupons/CouponsPage.cjs.js"),B=require("./lib/pages/cms/coupons/EditCouponPage.cjs.js");exports.clearPaymentConfigCache=t.clearPaymentConfigCache;exports.getPaymentConfigStatus=t.getPaymentConfigStatus;exports.getPaymentCredentialsView=t.getPaymentCredentialsView;exports.hydrateFreemiusEnvFromDb=t.hydrateFreemiusEnvFromDb;exports.resolveStripePublishableKey=t.resolveStripePublishableKey;exports.resolveStripeSecretKey=t.resolveStripeSecretKey;exports.resolveStripeWebhookSecret=t.resolveStripeWebhookSecret;exports.savePaymentCredentials=t.savePaymentCredentials;exports.getStripeClient=h.getStripeClient;exports.createCheckoutSession=O.createCheckoutSession;exports.syncStripeOrderFromSession=A.syncStripeOrderFromSession;exports.handleStripeWebhook=R.handleStripeWebhook;exports.applyOrderInventoryDeduction=T.applyOrderInventoryDeduction;exports.aggregateOrderTaxLines=o.aggregateOrderTaxLines;exports.buildOrderTaxDetailsFromCalculation=o.buildOrderTaxDetailsFromCalculation;exports.buildOrderTaxDetailsFromStripeSession=o.buildOrderTaxDetailsFromStripeSession;exports.getOrderTaxRateJurisdiction=o.getOrderTaxRateJurisdiction;exports.getOrderTaxRateLabel=o.getOrderTaxRateLabel;exports.getOrderTaxRatePercentage=o.getOrderTaxRatePercentage;exports.normalizeOrderTaxDetails=o.normalizeOrderTaxDetails;exports.DEFAULT_INVOICE_SETTINGS=n.DEFAULT_INVOICE_SETTINGS;exports.INVOICE_SETTINGS_KEY=n.INVOICE_SETTINGS_KEY;exports.formatInvoiceCurrency=n.formatInvoiceCurrency;exports.formatInvoiceDate=n.formatInvoiceDate;exports.getInvoiceAddressLines=n.getInvoiceAddressLines;exports.normalizeInvoiceSettings=n.normalizeInvoiceSettings;exports.serializeInvoiceSettings=n.serializeInvoiceSettings;exports.assignInvoiceMetadata=g.assignInvoiceMetadata;exports.getInvoiceBrandingData=g.getInvoiceBrandingData;exports.getInvoiceOrder=g.getInvoiceOrder;exports.getInvoicePresentationData=g.getInvoicePresentationData;exports.getCurrentCustomerOrder=l.getCurrentCustomerOrder;exports.getCurrentCustomerOrderInvoice=l.getCurrentCustomerOrderInvoice;exports.getCurrentCustomerOrders=l.getCurrentCustomerOrders;exports.getCouponQuote=C.getCouponQuote;exports.getQuoteLineDiscountMap=C.getQuoteLineDiscountMap;exports.recordCouponRedemption=C.recordCouponRedemption;exports.deleteCouponFromFreemius=P.deleteCouponFromFreemius;exports.syncCouponToFreemius=P.syncCouponToFreemius;exports.syncProductSaleCouponToFreemius=P.syncProductSaleCouponToFreemius;exports.addressesMatch=d.addressesMatch;exports.emptyCustomerAddress=d.emptyCustomerAddress;exports.isCustomerAddressComplete=d.isCustomerAddressComplete;exports.normalizeCustomerAddress=d.normalizeCustomerAddress;exports.normalizeOrderCustomerDetails=d.normalizeOrderCustomerDetails;exports.fillMissingUserProfileCheckoutDetails=m.fillMissingUserProfileCheckoutDetails;exports.getDefaultUserAddresses=m.getDefaultUserAddresses;exports.upsertDefaultUserAddresses=m.upsertDefaultUserAddresses;exports.CURRENCY_ROUNDING_MODES=e.CURRENCY_ROUNDING_MODES;exports.applyCurrencyRounding=e.applyCurrencyRounding;exports.convertMinorUnitAmount=e.convertMinorUnitAmount;exports.describeCurrencyRoundingRule=e.describeCurrencyRoundingRule;exports.getCurrencyLookup=e.getCurrencyLookup;exports.getDefaultCurrency=e.getDefaultCurrency;exports.getExchangeRateForCurrency=e.getExchangeRateForCurrency;exports.inferCurrencyCodeFromLocale=e.inferCurrencyCodeFromLocale;exports.isSaleWindowActive=e.isSaleWindowActive;exports.isScheduledPriceDue=e.isScheduledPriceDue;exports.normalizeCurrencyRecord=e.normalizeCurrencyRecord;exports.normalizeCurrencyRoundingMode=e.normalizeCurrencyRoundingMode;exports.normalizePriceMap=e.normalizePriceMap;exports.normalizeSalePriceMap=e.normalizeSalePriceMap;exports.resolveEffectivePriceForCurrency=e.resolveEffectivePriceForCurrency;exports.resolvePriceForCurrency=e.resolvePriceForCurrency;exports.resolvePriceRangeForCurrency=e.resolvePriceRangeForCurrency;exports.sortCurrencies=e.sortCurrencies;exports.CURRENCY_COOKIE_NAME=q.CURRENCY_COOKIE_NAME;exports.clearAutoSyncedCurrencyPriceOverrides=p.clearAutoSyncedCurrencyPriceOverrides;exports.rebaseStoreCurrencyExchangeRates=p.rebaseStoreCurrencyExchangeRates;exports.syncStoreCurrencyRates=p.syncStoreCurrencyRates;exports.productSchema=D.productSchema;exports.copyProductFromLanguage=r.copyProductFromLanguage;exports.createProduct=r.createProduct;exports.deleteProduct=r.deleteProduct;exports.fetchTranslatedProductsForCartInternal=r.fetchTranslatedProductsForCartInternal;exports.getProduct=r.getProduct;exports.getProductBySlug=r.getProductBySlug;exports.getProducts=r.getProducts;exports.syncCategoriesForTranslationGroup=r.syncCategoriesForTranslationGroup;exports.updateProduct=r.updateProduct;exports.getPaymentProvider=E.getPaymentProvider;exports.StripeProvider=I.StripeProvider;exports.FreemiusProvider=c.FreemiusProvider;exports.parseFreemiusCheckoutCredentialsMap=c.parseFreemiusCheckoutCredentialsMap;exports.readFreemiusEnvValue=c.readFreemiusEnvValue;exports.resolveFreemiusCheckoutCredentials=c.resolveFreemiusCheckoutCredentials;exports.syncFreemiusProductsToSupabase=c.syncFreemiusProductsToSupabase;exports.syncSingleFreemiusProduct=c.syncSingleFreemiusProduct;exports.extractFreemiusCheckoutMetadata=i.extractFreemiusCheckoutMetadata;exports.getFreemiusWebhookSecretCandidates=i.getFreemiusWebhookSecretCandidates;exports.resolveFreemiusStatusFromCheckoutResponse=i.resolveFreemiusStatusFromCheckoutResponse;exports.resolveFreemiusStatusFromWebhookEvent=i.resolveFreemiusStatusFromWebhookEvent;exports.syncFreemiusCheckoutOrder=i.syncFreemiusCheckoutOrder;exports.syncFreemiusOrderFromWebhookEvent=i.syncFreemiusOrderFromWebhookEvent;exports.verifyFreemiusWebhookSignature=i.verifyFreemiusWebhookSignature;exports.getCategoriesWithCount=a.getCategoriesWithCount;exports.getCategoryBySlug=a.getCategoryBySlug;exports.getCmsProduct=a.getProduct;exports.getCmsProducts=a.getProducts;exports.getGlobalProductAttributes=a.getGlobalProductAttributes;exports.getProductCategories=a.getProductCategories;exports.getProductTranslations=a.getProductTranslations;exports.createCategoryAction=s.createCategoryAction;exports.createProductAction=s.createProductAction;exports.deleteCategoryAction=s.deleteCategoryAction;exports.deleteProductAction=s.deleteProductAction;exports.syncProductCategoriesAction=s.syncProductCategoriesAction;exports.updateCategoryAction=s.updateCategoryAction;exports.updateProductAction=s.updateProductAction;exports.getEnabledPaymentProviders=y.getEnabledPaymentProviders;exports.getPaymentSettings=y.getPaymentSettings;exports.getStoreConfigStatus=y.getStoreConfigStatus;exports.OrdersPage=b.OrdersPage;exports.OrderDetailPage=f.OrderDetailPage;exports.ExportReportsDialog=x.ExportReportsDialog;exports.fetchOrderReportData=k.fetchOrderReportData;exports.getOrderDetails=v.getOrderDetails;exports.getOrders=v.getOrders;exports.ProductsPage=M.ProductsPage;exports.InventoryPage=N.InventoryPage;exports.AttributeManagementPage=L.AttributeManagementPage;exports.NewProductPage=z.NewProductPage;exports.EditProductPage=_.EditProductPage;exports.CopyProductFromLanguage=U.CopyProductFromLanguage;exports.CategoryManagementPage=W.CategoryManagementPage;exports.PaymentsPage=G.PaymentsPage;exports.savePaymentProviderCredentials=F.savePaymentProviderCredentials;exports.updatePaymentSettings=F.updatePaymentSettings;exports.ShippingPage=w.ShippingPage;exports.createShippingRate=u.createShippingRate;exports.createShippingZone=u.createShippingZone;exports.deleteShippingRate=u.deleteShippingRate;exports.deleteShippingZone=u.deleteShippingZone;exports.updateInventoryTrackingAction=u.updateInventoryTrackingAction;exports.updateShippingRate=u.updateShippingRate;exports.updateShippingZone=u.updateShippingZone;exports.TaxesPage=K.TaxesPage;exports.deleteTaxRateAction=S.deleteTaxRateAction;exports.saveTaxRateAction=S.saveTaxRateAction;exports.updateTaxSettingsAction=S.updateTaxSettingsAction;exports.CouponsPage=V.CouponsPage;exports.EditCouponPage=B.EditCouponPage;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./lib/payment-config.cjs.js"),h=require("./lib/stripe/client.cjs.js"),O=require("./lib/stripe/checkout.cjs.js"),A=require("./lib/stripe/order-sync.cjs.js"),R=require("./lib/stripe/webhooks.cjs.js"),T=require("./lib/order-inventory.cjs.js"),o=require("./lib/order-tax-details.cjs.js"),n=require("./lib/invoice.cjs.js"),g=require("./lib/invoice-server.cjs.js"),l=require("./lib/customer-orders.cjs.js"),C=require("./lib/coupon-server.cjs.js"),P=require("./lib/freemius-coupons.cjs.js"),d=require("./lib/customer.cjs.js"),m=require("./lib/customer-addresses.cjs.js"),e=require("./lib/currency.cjs.js"),q=require("./lib/currency-constants.cjs.js"),p=require("./lib/currency-sync.cjs.js"),D=require("./lib/product-schema.cjs.js"),r=require("./lib/product-actions.cjs.js"),E=require("./lib/factory.cjs.js"),I=require("./lib/providers/stripe.cjs.js"),c=require("./lib/providers/freemius.cjs.js"),i=require("./lib/freemius-order-sync.cjs.js"),b=require("./lib/freemius-license.cjs.js"),a=require("./lib/pages/cms/products/actions.cjs.js"),s=require("./lib/pages/cms/products/server-actions.cjs.js"),y=require("./lib/pages/cms/payments/queries.cjs.js"),f=require("./lib/pages/cms/orders/OrdersPage.cjs.js"),x=require("./lib/pages/cms/orders/OrderDetailPage.cjs.js"),k=require("./lib/pages/cms/orders/ExportReportsDialog.cjs.js"),M=require("./lib/pages/cms/orders/export-actions.cjs.js"),v=require("./lib/pages/cms/orders/actions.cjs.js"),L=require("./lib/pages/cms/products/ProductsPage.cjs.js"),N=require("./lib/pages/cms/products/inventory/InventoryPage.cjs.js"),z=require("./lib/pages/cms/products/attributes/AttributeManagementPage.cjs.js"),_=require("./lib/pages/cms/products/new/NewProductPage.cjs.js"),U=require("./lib/pages/cms/products/_id_/edit/EditProductPage.cjs.js"),W=require("./lib/pages/cms/products/components/CopyProductFromLanguage.cjs.js"),G=require("./lib/pages/cms/products/categories/CategoryManagementPage.cjs.js"),w=require("./lib/pages/cms/payments/PaymentsPage.cjs.js"),F=require("./lib/pages/cms/payments/actions.cjs.js"),K=require("./lib/pages/cms/shipping/ShippingPage.cjs.js"),u=require("./lib/pages/cms/shipping/server-actions.cjs.js"),V=require("./lib/pages/cms/taxes/TaxesPage.cjs.js"),S=require("./lib/pages/cms/taxes/actions.cjs.js"),B=require("./lib/pages/cms/coupons/CouponsPage.cjs.js"),Y=require("./lib/pages/cms/coupons/EditCouponPage.cjs.js");exports.clearPaymentConfigCache=t.clearPaymentConfigCache;exports.getPaymentConfigStatus=t.getPaymentConfigStatus;exports.getPaymentCredentialsView=t.getPaymentCredentialsView;exports.hydrateFreemiusEnvFromDb=t.hydrateFreemiusEnvFromDb;exports.resolveStripePublishableKey=t.resolveStripePublishableKey;exports.resolveStripeSecretKey=t.resolveStripeSecretKey;exports.resolveStripeWebhookSecret=t.resolveStripeWebhookSecret;exports.savePaymentCredentials=t.savePaymentCredentials;exports.getStripeClient=h.getStripeClient;exports.createCheckoutSession=O.createCheckoutSession;exports.syncStripeOrderFromSession=A.syncStripeOrderFromSession;exports.handleStripeWebhook=R.handleStripeWebhook;exports.applyOrderInventoryDeduction=T.applyOrderInventoryDeduction;exports.aggregateOrderTaxLines=o.aggregateOrderTaxLines;exports.buildOrderTaxDetailsFromCalculation=o.buildOrderTaxDetailsFromCalculation;exports.buildOrderTaxDetailsFromStripeSession=o.buildOrderTaxDetailsFromStripeSession;exports.getOrderTaxRateJurisdiction=o.getOrderTaxRateJurisdiction;exports.getOrderTaxRateLabel=o.getOrderTaxRateLabel;exports.getOrderTaxRatePercentage=o.getOrderTaxRatePercentage;exports.normalizeOrderTaxDetails=o.normalizeOrderTaxDetails;exports.DEFAULT_INVOICE_SETTINGS=n.DEFAULT_INVOICE_SETTINGS;exports.INVOICE_SETTINGS_KEY=n.INVOICE_SETTINGS_KEY;exports.formatInvoiceCurrency=n.formatInvoiceCurrency;exports.formatInvoiceDate=n.formatInvoiceDate;exports.getInvoiceAddressLines=n.getInvoiceAddressLines;exports.normalizeInvoiceSettings=n.normalizeInvoiceSettings;exports.serializeInvoiceSettings=n.serializeInvoiceSettings;exports.assignInvoiceMetadata=g.assignInvoiceMetadata;exports.getInvoiceBrandingData=g.getInvoiceBrandingData;exports.getInvoiceOrder=g.getInvoiceOrder;exports.getInvoicePresentationData=g.getInvoicePresentationData;exports.getCurrentCustomerOrder=l.getCurrentCustomerOrder;exports.getCurrentCustomerOrderInvoice=l.getCurrentCustomerOrderInvoice;exports.getCurrentCustomerOrders=l.getCurrentCustomerOrders;exports.getCouponQuote=C.getCouponQuote;exports.getQuoteLineDiscountMap=C.getQuoteLineDiscountMap;exports.recordCouponRedemption=C.recordCouponRedemption;exports.deleteCouponFromFreemius=P.deleteCouponFromFreemius;exports.syncCouponToFreemius=P.syncCouponToFreemius;exports.syncProductSaleCouponToFreemius=P.syncProductSaleCouponToFreemius;exports.addressesMatch=d.addressesMatch;exports.emptyCustomerAddress=d.emptyCustomerAddress;exports.isCustomerAddressComplete=d.isCustomerAddressComplete;exports.normalizeCustomerAddress=d.normalizeCustomerAddress;exports.normalizeOrderCustomerDetails=d.normalizeOrderCustomerDetails;exports.fillMissingUserProfileCheckoutDetails=m.fillMissingUserProfileCheckoutDetails;exports.getDefaultUserAddresses=m.getDefaultUserAddresses;exports.upsertDefaultUserAddresses=m.upsertDefaultUserAddresses;exports.CURRENCY_ROUNDING_MODES=e.CURRENCY_ROUNDING_MODES;exports.applyCurrencyRounding=e.applyCurrencyRounding;exports.convertMinorUnitAmount=e.convertMinorUnitAmount;exports.describeCurrencyRoundingRule=e.describeCurrencyRoundingRule;exports.getCurrencyLookup=e.getCurrencyLookup;exports.getDefaultCurrency=e.getDefaultCurrency;exports.getExchangeRateForCurrency=e.getExchangeRateForCurrency;exports.inferCurrencyCodeFromLocale=e.inferCurrencyCodeFromLocale;exports.isSaleWindowActive=e.isSaleWindowActive;exports.isScheduledPriceDue=e.isScheduledPriceDue;exports.normalizeCurrencyRecord=e.normalizeCurrencyRecord;exports.normalizeCurrencyRoundingMode=e.normalizeCurrencyRoundingMode;exports.normalizePriceMap=e.normalizePriceMap;exports.normalizeSalePriceMap=e.normalizeSalePriceMap;exports.resolveEffectivePriceForCurrency=e.resolveEffectivePriceForCurrency;exports.resolvePriceForCurrency=e.resolvePriceForCurrency;exports.resolvePriceRangeForCurrency=e.resolvePriceRangeForCurrency;exports.sortCurrencies=e.sortCurrencies;exports.CURRENCY_COOKIE_NAME=q.CURRENCY_COOKIE_NAME;exports.clearAutoSyncedCurrencyPriceOverrides=p.clearAutoSyncedCurrencyPriceOverrides;exports.rebaseStoreCurrencyExchangeRates=p.rebaseStoreCurrencyExchangeRates;exports.syncStoreCurrencyRates=p.syncStoreCurrencyRates;exports.productSchema=D.productSchema;exports.copyProductFromLanguage=r.copyProductFromLanguage;exports.createProduct=r.createProduct;exports.deleteProduct=r.deleteProduct;exports.fetchTranslatedProductsForCartInternal=r.fetchTranslatedProductsForCartInternal;exports.getProduct=r.getProduct;exports.getProductBySlug=r.getProductBySlug;exports.getProducts=r.getProducts;exports.syncCategoriesForTranslationGroup=r.syncCategoriesForTranslationGroup;exports.updateProduct=r.updateProduct;exports.getPaymentProvider=E.getPaymentProvider;exports.StripeProvider=I.StripeProvider;exports.FreemiusProvider=c.FreemiusProvider;exports.parseFreemiusCheckoutCredentialsMap=c.parseFreemiusCheckoutCredentialsMap;exports.readFreemiusEnvValue=c.readFreemiusEnvValue;exports.resolveFreemiusCheckoutCredentials=c.resolveFreemiusCheckoutCredentials;exports.syncFreemiusProductsToSupabase=c.syncFreemiusProductsToSupabase;exports.syncSingleFreemiusProduct=c.syncSingleFreemiusProduct;exports.extractFreemiusCheckoutMetadata=i.extractFreemiusCheckoutMetadata;exports.getFreemiusWebhookSecretCandidates=i.getFreemiusWebhookSecretCandidates;exports.resolveFreemiusStatusFromCheckoutResponse=i.resolveFreemiusStatusFromCheckoutResponse;exports.resolveFreemiusStatusFromWebhookEvent=i.resolveFreemiusStatusFromWebhookEvent;exports.syncFreemiusCheckoutOrder=i.syncFreemiusCheckoutOrder;exports.syncFreemiusOrderFromWebhookEvent=i.syncFreemiusOrderFromWebhookEvent;exports.verifyFreemiusWebhookSignature=i.verifyFreemiusWebhookSignature;exports.getFreemiusOrderLicense=b.getFreemiusOrderLicense;exports.getCategoriesWithCount=a.getCategoriesWithCount;exports.getCategoryBySlug=a.getCategoryBySlug;exports.getCmsProduct=a.getProduct;exports.getCmsProducts=a.getProducts;exports.getGlobalProductAttributes=a.getGlobalProductAttributes;exports.getProductCategories=a.getProductCategories;exports.getProductTranslations=a.getProductTranslations;exports.createCategoryAction=s.createCategoryAction;exports.createProductAction=s.createProductAction;exports.deleteCategoryAction=s.deleteCategoryAction;exports.deleteProductAction=s.deleteProductAction;exports.syncProductCategoriesAction=s.syncProductCategoriesAction;exports.updateCategoryAction=s.updateCategoryAction;exports.updateProductAction=s.updateProductAction;exports.getEnabledPaymentProviders=y.getEnabledPaymentProviders;exports.getPaymentSettings=y.getPaymentSettings;exports.getStoreConfigStatus=y.getStoreConfigStatus;exports.OrdersPage=f.OrdersPage;exports.OrderDetailPage=x.OrderDetailPage;exports.ExportReportsDialog=k.ExportReportsDialog;exports.fetchOrderReportData=M.fetchOrderReportData;exports.getOrderDetails=v.getOrderDetails;exports.getOrders=v.getOrders;exports.ProductsPage=L.ProductsPage;exports.InventoryPage=N.InventoryPage;exports.AttributeManagementPage=z.AttributeManagementPage;exports.NewProductPage=_.NewProductPage;exports.EditProductPage=U.EditProductPage;exports.CopyProductFromLanguage=W.CopyProductFromLanguage;exports.CategoryManagementPage=G.CategoryManagementPage;exports.PaymentsPage=w.PaymentsPage;exports.savePaymentProviderCredentials=F.savePaymentProviderCredentials;exports.updatePaymentSettings=F.updatePaymentSettings;exports.ShippingPage=K.ShippingPage;exports.createShippingRate=u.createShippingRate;exports.createShippingZone=u.createShippingZone;exports.deleteShippingRate=u.deleteShippingRate;exports.deleteShippingZone=u.deleteShippingZone;exports.updateInventoryTrackingAction=u.updateInventoryTrackingAction;exports.updateShippingRate=u.updateShippingRate;exports.updateShippingZone=u.updateShippingZone;exports.TaxesPage=V.TaxesPage;exports.deleteTaxRateAction=S.deleteTaxRateAction;exports.saveTaxRateAction=S.saveTaxRateAction;exports.updateTaxSettingsAction=S.updateTaxSettingsAction;exports.CouponsPage=B.CouponsPage;exports.EditCouponPage=Y.EditCouponPage;
package/server.d.ts CHANGED
@@ -21,6 +21,7 @@ export * from './lib/factory';
21
21
  export * from './lib/providers/stripe';
22
22
  export * from './lib/providers/freemius';
23
23
  export * from './lib/freemius-order-sync';
24
+ export * from './lib/freemius-license';
24
25
  export { getProduct as getCmsProduct, getProducts as getCmsProducts, getGlobalProductAttributes, getProductTranslations, getCategoriesWithCount, getProductCategories, getCategoryBySlug, } from './lib/pages/cms/products/actions';
25
26
  export { createProductAction, updateProductAction, deleteProductAction, createCategoryAction, updateCategoryAction, deleteCategoryAction, syncProductCategoriesAction, } from './lib/pages/cms/products/server-actions';
26
27
  export { getEnabledPaymentProviders, getPaymentSettings, getStoreConfigStatus, } from './lib/pages/cms/payments/queries';