@noormdev/cli 1.0.0-alpha.0

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.
@@ -0,0 +1 @@
1
+ import{readFile as V}from"fs/promises";import{Eta as Z}from"eta";import{ObserverEngine as q}from"@logosdx/observer";var a=new q({name:"noorm",spy:process.env.NOORM_DEBUG?e=>console.error(`[noorm:${e.fn}] ${String(e.event)}`):void 0});var N=".tmpl",p="$helpers",v=[".ts",".js",".mjs"];import f from"path";import{readdir as Q}from"fs/promises";import{attempt as w}from"@logosdx/utils";import g from"path";import{stat as D}from"fs/promises";import{attempt as R}from"@logosdx/utils";import{pathToFileURL as M}from"url";async function m(e){let n=await import(`${M(e).href}?t=${Date.now()}`);return n.default!==void 0?n.default:n}async function I(e,t){let r=[],n=g.resolve(e),o=g.resolve(t);for(;n.startsWith(o);){let s=await H(n);s&&r.unshift(s);let i=g.dirname(n);if(i===n)break;n=i}return r}async function H(e){for(let t of v){let r=g.join(e,`${p}${t}`),[n]=await R(()=>D(r));if(n?.isFile())return r}return null}async function k(e,t){let r=await I(e,t),n={};for(let o of r){let[s,i]=await R(()=>m(o));if(i){a.emit("error",{source:"template",error:i,context:{filepath:o,operation:"load-helpers"}});continue}if(s&&typeof s=="object"){let c=s,l=Object.keys(c).length;Object.assign(n,c),a.emit("template:helpers",{filepath:o,count:l})}}return n}import X from"path";import{readFile as A}from"fs/promises";import $ from"json5";async function u(e){let t=await A(e,"utf-8");return $.parse(t)}import{readFile as _}from"fs/promises";import{parse as J}from"yaml";async function d(e){let t=await _(e,"utf-8");return J(t)}import{readFile as W}from"fs/promises";import{parse as U}from"csv-parse/sync";async function h(e){let t=await W(e,"utf-8");return U(t,{columns:!0,skip_empty_lines:!0,trim:!0})}import{readFile as B}from"fs/promises";async function x(e){return B(e,"utf-8")}var P={".json":u,".json5":u,".yaml":d,".yml":d,".csv":h,".js":m,".mjs":m,".ts":m,".sql":x};function S(e){return e in P}function Y(e){return P[e]}async function y(e){let t=X.extname(e).toLowerCase(),r=Y(t);if(!r)throw new Error(`No loader registered for extension: ${t}`);return r(e)}import K from"voca";import C from"path";function j(e){let t=C.extname(e),r=C.basename(e,t);return K.camelCase(r)}function b(e){return e.replace(/'/g,"''")}function L(e){return e===null?"NULL":`'${b(String(e))}'`}function O(){return crypto.randomUUID()}function F(){return new Date().toISOString()}async function T(e,t={}){let r=f.dirname(e),n=t.projectRoot??process.cwd(),o=await k(r,n),s=await G(r),i="config"in s;return{...o,...s,...i?{}:{config:t.config},secrets:t.secrets??{},globalSecrets:t.globalSecrets??{},env:process.env,include:z(r,n,t),escape:b,quote:L,json:l=>JSON.stringify(l),now:F,uuid:O}}async function G(e){let t={},[r,n]=await w(()=>Q(e,{withFileTypes:!0}));if(n||!r)return a.emit("error",{source:"template",error:n??new Error("Failed to read directory"),context:{dir:e,operation:"scan-data-files"}}),t;for(let o of r){if(!o.isFile()||o.name.startsWith(p)||o.name.endsWith(".tmpl"))continue;let s=f.extname(o.name).toLowerCase();if(!S(s)||s===".sql")continue;let i=f.join(e,o.name),c=j(o.name),[l,E]=await w(()=>y(i));if(E){a.emit("error",{source:"template",error:E,context:{filepath:i,operation:"load-data-file"}});continue}t[c]=l,a.emit("template:load",{filepath:i,format:s})}return t}function z(e,t,r){return async n=>{let o=f.resolve(e,n);if(!o.startsWith(t))throw new Error(`Include path escapes project root: ${n}`);if(o.endsWith(".tmpl")){let{processFile:c}=await import("./engine-Z55HXOAZ.js");return(await c(o,r)).sql}let[s,i]=await w(()=>y(o));if(i)throw new Error(`Failed to include '${n}': ${i.message}`);return typeof s=="string"?s:JSON.stringify(s)}}var ee=new Z({tags:["{%","%}"],varName:"$",autoEscape:!1,useWith:!1,cache:!1});function te(e){return e.endsWith(N)}async function re(e,t){return ee.renderStringAsync(e,t)}async function ne(e,t={}){let r=await V(e,"utf-8");if(!te(e))return{sql:r,isTemplate:!1};let n=performance.now(),o=await T(e,t),s=await re(r,o),i=performance.now()-n;return a.emit("template:render",{filepath:e,durationMs:i}),{sql:s,isTemplate:!0,durationMs:i}}async function rt(e,t={}){let r=[];for(let n of e){let o=await ne(n,t);r.push(o)}return r}export{a,ee as b,te as c,re as d,ne as e,rt as f};
@@ -0,0 +1 @@
1
+ var d=Object.defineProperty;var e=(c,a)=>{for(var b in a)d(c,b,{get:a[b],enumerable:!0})};export{e as a};
@@ -0,0 +1 @@
1
+ import{b as a,c as b,d as c,e as d,f as e}from"./chunk-FQKJMLMW.js";import"./chunk-WOT6VMZA.js";export{a as eta,b as isTemplate,d as processFile,e as processFiles,c as renderTemplate};