@devup-api/utils
Advanced tools
@@ -20,2 +20,4 @@ import type { OpenAPIV3_1 } from 'openapi-types'; | ||
| generateCrudConfigTypes: (schemas: Record<string, OpenAPIV3_1.Document>) => string; | ||
| generateServerActionCode: (schemas: Record<string, OpenAPIV3_1.Document>, options?: TOptions) => string; | ||
| generateServerActionTypes: (schemas: Record<string, OpenAPIV3_1.Document>, options?: TOptions) => string; | ||
| createUrlMap: (schemas: Record<string, OpenAPIV3_1.Document>, options?: TOptions) => Record<string, unknown>; | ||
@@ -50,2 +52,4 @@ } | ||
| crudTypes: string; | ||
| serverActions: string; | ||
| serverActionTypes: string; | ||
| } | ||
@@ -52,0 +56,0 @@ /** |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"generate-devup.d.ts","sourceRoot":"","sources":["../src/generate-devup.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"generate-devup.d.ts","sourceRoot":"","sources":["../src/generate-devup.ts"],"names":[],"mappings":"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"} |
+1
-1
@@ -1,1 +0,1 @@ | ||
| var{defineProperty:V,getOwnPropertyNames:T,getOwnPropertyDescriptor:z}=Object,M=Object.prototype.hasOwnProperty;function U(x){return this[x]}var O=(x)=>{var q=(W??=new WeakMap).get(x),B;if(q)return q;if(q=V({},"__esModule",{value:!0}),x&&typeof x==="object"||typeof x==="function"){for(var C of T(x))if(!M.call(q,C))V(q,C,{get:U.bind(x,C),enumerable:!(B=z(x,C))||B.enumerable})}return W.set(x,q),q},W;var R=(x)=>x;function k(x,q){this[x]=R.bind(null,q)}var b=(x,q)=>{for(var B in q)V(x,B,{get:q[B],enumerable:!0,configurable:!0,set:k.bind(q,B)})};var g={};b(g,{writeInterfaceAsync:()=>F,writeInterface:()=>D,toSnake:()=>w,toPascal:()=>u,toCamel:()=>y,readOpenapis:()=>P,readOpenapiAsync:()=>j,normalizeOpenapiFiles:()=>S,generateDevupArtifactsAsync:()=>I,generateDevupArtifacts:()=>A,createTmpDirAsync:()=>v,createTmpDir:()=>N});module.exports=O(g);var J=require("node:fs"),X=require("node:fs/promises");function N(x="df"){if(!J.existsSync(x))J.mkdirSync(x,{recursive:!0});return x}async function v(x="df"){try{await X.mkdir(x,{recursive:!0})}catch(q){if(q.code!=="EEXIST")throw q}return x}var H=require("node:path");async function I(x,q,B){let C=await x.createTmpDirAsync(B?.tempDir),K=x.normalizeOpenapiFiles(B?.openapiFiles),E=await x.readOpenapiAsync(K),G={interface:q.generateInterface(E,B),zodSchemas:q.generateZodSchemas(E,B),zodTypes:q.generateZodTypeDeclarations(E,B),crudConfig:q.generateCrudConfigCode(E),crudTypes:q.generateCrudConfigTypes(E)};await Promise.all([x.writeInterfaceAsync(H.join(C,"api.d.ts"),G.interface),x.writeInterfaceAsync(H.join(C,"zod-schemas.js"),G.zodSchemas),x.writeInterfaceAsync(H.join(C,"zod.d.ts"),G.zodTypes),x.writeInterfaceAsync(H.join(C,"crud-configs.jsx"),G.crudConfig),x.writeInterfaceAsync(H.join(C,"ui.d.ts"),G.crudTypes)]);let Q=q.createUrlMap(E,B);return{tempDir:C,schemas:E,files:G,urlMap:Q}}function A(x,q,B){let C=x.createTmpDir(B?.tempDir),K=x.normalizeOpenapiFiles(B?.openapiFiles),E=x.readOpenapis(K),G={interface:q.generateInterface(E,B),zodSchemas:q.generateZodSchemas(E,B),zodTypes:q.generateZodTypeDeclarations(E,B),crudConfig:q.generateCrudConfigCode(E),crudTypes:q.generateCrudConfigTypes(E)};x.writeInterface(H.join(C,"api.d.ts"),G.interface),x.writeInterface(H.join(C,"zod-schemas.js"),G.zodSchemas),x.writeInterface(H.join(C,"zod.d.ts"),G.zodTypes),x.writeInterface(H.join(C,"crud-configs.jsx"),G.crudConfig),x.writeInterface(H.join(C,"ui.d.ts"),G.crudTypes);let Q=q.createUrlMap(E,B);return{tempDir:C,schemas:E,files:G,urlMap:Q}}var Y=require("node:fs"),Z=require("node:fs/promises");function S(x){if(!x)return["openapi.json"];if(Array.isArray(x))return x.length>0?x:["openapi.json"];return[x]}function _(x){return x.replace(/^\.\//,"")}function P(x){return x.reduce((q,B)=>{return q[_(B)]=JSON.parse(Y.readFileSync(B,"utf8")),q},{})}async function j(x){let q=await Promise.all(x.map(async(B)=>{return[_(B),JSON.parse(await Z.readFile(B,"utf8"))]}));return Object.fromEntries(q)}function y(x){if(/^[a-z][a-zA-Z0-9]*$/.test(x))return x;let q=x.replace(/([a-z])([A-Z])/g,"$1 $2").split(/[^a-zA-Z0-9]+/).filter((B)=>B.length>0);if(q.length===0)return x.toLowerCase();return q[0]?.toLowerCase()+q.slice(1).map((B)=>B.charAt(0).toUpperCase()+B.slice(1).toLowerCase()).join("")}function u(x){if(/^[A-Z][a-zA-Z0-9]*$/.test(x))return x;let q=x.replace(/([a-z])([A-Z])/g,"$1 $2").split(/[^a-zA-Z0-9]+/).filter((B)=>B.length>0);if(q.length===0)return x.charAt(0).toUpperCase()+x.slice(1).toLowerCase();return q.map((B)=>B.charAt(0).toUpperCase()+B.slice(1).toLowerCase()).join("")}function w(x){if(!x)return x;return x.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/([0-9])([A-Z])/g,"$1_$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/[^a-zA-Z0-9]/g,"_").toLowerCase().replace(/_+/g,"_").replace(/^_|_$/g,"")}var $=require("node:fs"),L=require("node:fs/promises");function D(x,q){$.writeFileSync(x,q,"utf8")}async function F(x,q){await L.writeFile(x,q,"utf8")} | ||
| var{defineProperty:V,getOwnPropertyNames:T,getOwnPropertyDescriptor:z}=Object,M=Object.prototype.hasOwnProperty;function U(x){return this[x]}var O=(x)=>{var q=(W??=new WeakMap).get(x),B;if(q)return q;if(q=V({},"__esModule",{value:!0}),x&&typeof x==="object"||typeof x==="function"){for(var C of T(x))if(!M.call(q,C))V(q,C,{get:U.bind(x,C),enumerable:!(B=z(x,C))||B.enumerable})}return W.set(x,q),q},W;var R=(x)=>x;function k(x,q){this[x]=R.bind(null,q)}var b=(x,q)=>{for(var B in q)V(x,B,{get:q[B],enumerable:!0,configurable:!0,set:k.bind(q,B)})};var h={};b(h,{writeInterfaceAsync:()=>F,writeInterface:()=>D,toSnake:()=>w,toPascal:()=>j,toCamel:()=>u,readOpenapis:()=>P,readOpenapiAsync:()=>y,normalizeOpenapiFiles:()=>S,generateDevupArtifactsAsync:()=>I,generateDevupArtifacts:()=>A,createTmpDirAsync:()=>v,createTmpDir:()=>N});module.exports=O(h);var J=require("node:fs"),X=require("node:fs/promises");function N(x="df"){if(!J.existsSync(x))J.mkdirSync(x,{recursive:!0});return x}async function v(x="df"){try{await X.mkdir(x,{recursive:!0})}catch(q){if(q.code!=="EEXIST")throw q}return x}var H=require("node:path");async function I(x,q,B){let C=await x.createTmpDirAsync(B?.tempDir),K=x.normalizeOpenapiFiles(B?.openapiFiles),E=await x.readOpenapiAsync(K),G={interface:q.generateInterface(E,B),zodSchemas:q.generateZodSchemas(E,B),zodTypes:q.generateZodTypeDeclarations(E,B),crudConfig:q.generateCrudConfigCode(E),crudTypes:q.generateCrudConfigTypes(E),serverActions:q.generateServerActionCode(E,B),serverActionTypes:q.generateServerActionTypes(E,B)};await Promise.all([x.writeInterfaceAsync(H.join(C,"api.d.ts"),G.interface),x.writeInterfaceAsync(H.join(C,"zod-schemas.js"),G.zodSchemas),x.writeInterfaceAsync(H.join(C,"zod.d.ts"),G.zodTypes),x.writeInterfaceAsync(H.join(C,"crud-configs.jsx"),G.crudConfig),x.writeInterfaceAsync(H.join(C,"ui.d.ts"),G.crudTypes),x.writeInterfaceAsync(H.join(C,"server.ts"),G.serverActions),x.writeInterfaceAsync(H.join(C,"server-module.d.ts"),G.serverActionTypes)]);let Q=q.createUrlMap(E,B);return{tempDir:C,schemas:E,files:G,urlMap:Q}}function A(x,q,B){let C=x.createTmpDir(B?.tempDir),K=x.normalizeOpenapiFiles(B?.openapiFiles),E=x.readOpenapis(K),G={interface:q.generateInterface(E,B),zodSchemas:q.generateZodSchemas(E,B),zodTypes:q.generateZodTypeDeclarations(E,B),crudConfig:q.generateCrudConfigCode(E),crudTypes:q.generateCrudConfigTypes(E),serverActions:q.generateServerActionCode(E,B),serverActionTypes:q.generateServerActionTypes(E,B)};x.writeInterface(H.join(C,"api.d.ts"),G.interface),x.writeInterface(H.join(C,"zod-schemas.js"),G.zodSchemas),x.writeInterface(H.join(C,"zod.d.ts"),G.zodTypes),x.writeInterface(H.join(C,"crud-configs.jsx"),G.crudConfig),x.writeInterface(H.join(C,"ui.d.ts"),G.crudTypes),x.writeInterface(H.join(C,"server.ts"),G.serverActions),x.writeInterface(H.join(C,"server-module.d.ts"),G.serverActionTypes);let Q=q.createUrlMap(E,B);return{tempDir:C,schemas:E,files:G,urlMap:Q}}var Y=require("node:fs"),Z=require("node:fs/promises");function S(x){if(!x)return["openapi.json"];if(Array.isArray(x))return x.length>0?x:["openapi.json"];return[x]}function _(x){return x.replace(/^\.\//,"")}function P(x){return x.reduce((q,B)=>{return q[_(B)]=JSON.parse(Y.readFileSync(B,"utf8")),q},{})}async function y(x){let q=await Promise.all(x.map(async(B)=>{return[_(B),JSON.parse(await Z.readFile(B,"utf8"))]}));return Object.fromEntries(q)}function u(x){if(/^[a-z][a-zA-Z0-9]*$/.test(x))return x;let q=x.replace(/([a-z])([A-Z])/g,"$1 $2").split(/[^a-zA-Z0-9]+/).filter((B)=>B.length>0);if(q.length===0)return x.toLowerCase();return q[0]?.toLowerCase()+q.slice(1).map((B)=>B.charAt(0).toUpperCase()+B.slice(1).toLowerCase()).join("")}function j(x){if(/^[A-Z][a-zA-Z0-9]*$/.test(x))return x;let q=x.replace(/([a-z])([A-Z])/g,"$1 $2").split(/[^a-zA-Z0-9]+/).filter((B)=>B.length>0);if(q.length===0)return x.charAt(0).toUpperCase()+x.slice(1).toLowerCase();return q.map((B)=>B.charAt(0).toUpperCase()+B.slice(1).toLowerCase()).join("")}function w(x){if(!x)return x;return x.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/([0-9])([A-Z])/g,"$1_$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/[^a-zA-Z0-9]/g,"_").toLowerCase().replace(/_+/g,"_").replace(/^_|_$/g,"")}var $=require("node:fs"),L=require("node:fs/promises");function D(x,q){$.writeFileSync(x,q,"utf8")}async function F(x,q){await L.writeFile(x,q,"utf8")} |
+1
-1
@@ -1,1 +0,1 @@ | ||
| import{existsSync as V,mkdirSync as W}from"node:fs";import{mkdir as X}from"node:fs/promises";function z(x="df"){if(!V(x))W(x,{recursive:!0});return x}async function M(x="df"){try{await X(x,{recursive:!0})}catch(q){if(q.code!=="EEXIST")throw q}return x}import{join as H}from"node:path";async function R(x,q,B){let E=await x.createTmpDirAsync(B?.tempDir),J=x.normalizeOpenapiFiles(B?.openapiFiles),C=await x.readOpenapiAsync(J),G={interface:q.generateInterface(C,B),zodSchemas:q.generateZodSchemas(C,B),zodTypes:q.generateZodTypeDeclarations(C,B),crudConfig:q.generateCrudConfigCode(C),crudTypes:q.generateCrudConfigTypes(C)};await Promise.all([x.writeInterfaceAsync(H(E,"api.d.ts"),G.interface),x.writeInterfaceAsync(H(E,"zod-schemas.js"),G.zodSchemas),x.writeInterfaceAsync(H(E,"zod.d.ts"),G.zodTypes),x.writeInterfaceAsync(H(E,"crud-configs.jsx"),G.crudConfig),x.writeInterfaceAsync(H(E,"ui.d.ts"),G.crudTypes)]);let K=q.createUrlMap(C,B);return{tempDir:E,schemas:C,files:G,urlMap:K}}function k(x,q,B){let E=x.createTmpDir(B?.tempDir),J=x.normalizeOpenapiFiles(B?.openapiFiles),C=x.readOpenapis(J),G={interface:q.generateInterface(C,B),zodSchemas:q.generateZodSchemas(C,B),zodTypes:q.generateZodTypeDeclarations(C,B),crudConfig:q.generateCrudConfigCode(C),crudTypes:q.generateCrudConfigTypes(C)};x.writeInterface(H(E,"api.d.ts"),G.interface),x.writeInterface(H(E,"zod-schemas.js"),G.zodSchemas),x.writeInterface(H(E,"zod.d.ts"),G.zodTypes),x.writeInterface(H(E,"crud-configs.jsx"),G.crudConfig),x.writeInterface(H(E,"ui.d.ts"),G.crudTypes);let K=q.createUrlMap(C,B);return{tempDir:E,schemas:C,files:G,urlMap:K}}import{readFileSync as Y}from"node:fs";import{readFile as Z}from"node:fs/promises";function I(x){if(!x)return["openapi.json"];if(Array.isArray(x))return x.length>0?x:["openapi.json"];return[x]}function Q(x){return x.replace(/^\.\//,"")}function A(x){return x.reduce((q,B)=>{return q[Q(B)]=JSON.parse(Y(B,"utf8")),q},{})}async function S(x){let q=await Promise.all(x.map(async(B)=>{return[Q(B),JSON.parse(await Z(B,"utf8"))]}));return Object.fromEntries(q)}function j(x){if(/^[a-z][a-zA-Z0-9]*$/.test(x))return x;let q=x.replace(/([a-z])([A-Z])/g,"$1 $2").split(/[^a-zA-Z0-9]+/).filter((B)=>B.length>0);if(q.length===0)return x.toLowerCase();return q[0]?.toLowerCase()+q.slice(1).map((B)=>B.charAt(0).toUpperCase()+B.slice(1).toLowerCase()).join("")}function u(x){if(/^[A-Z][a-zA-Z0-9]*$/.test(x))return x;let q=x.replace(/([a-z])([A-Z])/g,"$1 $2").split(/[^a-zA-Z0-9]+/).filter((B)=>B.length>0);if(q.length===0)return x.charAt(0).toUpperCase()+x.slice(1).toLowerCase();return q.map((B)=>B.charAt(0).toUpperCase()+B.slice(1).toLowerCase()).join("")}function D(x){if(!x)return x;return x.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/([0-9])([A-Z])/g,"$1_$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/[^a-zA-Z0-9]/g,"_").toLowerCase().replace(/_+/g,"_").replace(/^_|_$/g,"")}import{writeFileSync as _}from"node:fs";import{writeFile as $}from"node:fs/promises";function f(x,q){_(x,q,"utf8")}async function d(x,q){await $(x,q,"utf8")}export{d as writeInterfaceAsync,f as writeInterface,D as toSnake,u as toPascal,j as toCamel,A as readOpenapis,S as readOpenapiAsync,I as normalizeOpenapiFiles,R as generateDevupArtifactsAsync,k as generateDevupArtifacts,M as createTmpDirAsync,z as createTmpDir}; | ||
| import{existsSync as V,mkdirSync as W}from"node:fs";import{mkdir as X}from"node:fs/promises";function z(x="df"){if(!V(x))W(x,{recursive:!0});return x}async function M(x="df"){try{await X(x,{recursive:!0})}catch(q){if(q.code!=="EEXIST")throw q}return x}import{join as H}from"node:path";async function R(x,q,B){let E=await x.createTmpDirAsync(B?.tempDir),J=x.normalizeOpenapiFiles(B?.openapiFiles),C=await x.readOpenapiAsync(J),G={interface:q.generateInterface(C,B),zodSchemas:q.generateZodSchemas(C,B),zodTypes:q.generateZodTypeDeclarations(C,B),crudConfig:q.generateCrudConfigCode(C),crudTypes:q.generateCrudConfigTypes(C),serverActions:q.generateServerActionCode(C,B),serverActionTypes:q.generateServerActionTypes(C,B)};await Promise.all([x.writeInterfaceAsync(H(E,"api.d.ts"),G.interface),x.writeInterfaceAsync(H(E,"zod-schemas.js"),G.zodSchemas),x.writeInterfaceAsync(H(E,"zod.d.ts"),G.zodTypes),x.writeInterfaceAsync(H(E,"crud-configs.jsx"),G.crudConfig),x.writeInterfaceAsync(H(E,"ui.d.ts"),G.crudTypes),x.writeInterfaceAsync(H(E,"server.ts"),G.serverActions),x.writeInterfaceAsync(H(E,"server-module.d.ts"),G.serverActionTypes)]);let K=q.createUrlMap(C,B);return{tempDir:E,schemas:C,files:G,urlMap:K}}function k(x,q,B){let E=x.createTmpDir(B?.tempDir),J=x.normalizeOpenapiFiles(B?.openapiFiles),C=x.readOpenapis(J),G={interface:q.generateInterface(C,B),zodSchemas:q.generateZodSchemas(C,B),zodTypes:q.generateZodTypeDeclarations(C,B),crudConfig:q.generateCrudConfigCode(C),crudTypes:q.generateCrudConfigTypes(C),serverActions:q.generateServerActionCode(C,B),serverActionTypes:q.generateServerActionTypes(C,B)};x.writeInterface(H(E,"api.d.ts"),G.interface),x.writeInterface(H(E,"zod-schemas.js"),G.zodSchemas),x.writeInterface(H(E,"zod.d.ts"),G.zodTypes),x.writeInterface(H(E,"crud-configs.jsx"),G.crudConfig),x.writeInterface(H(E,"ui.d.ts"),G.crudTypes),x.writeInterface(H(E,"server.ts"),G.serverActions),x.writeInterface(H(E,"server-module.d.ts"),G.serverActionTypes);let K=q.createUrlMap(C,B);return{tempDir:E,schemas:C,files:G,urlMap:K}}import{readFileSync as Y}from"node:fs";import{readFile as Z}from"node:fs/promises";function I(x){if(!x)return["openapi.json"];if(Array.isArray(x))return x.length>0?x:["openapi.json"];return[x]}function Q(x){return x.replace(/^\.\//,"")}function A(x){return x.reduce((q,B)=>{return q[Q(B)]=JSON.parse(Y(B,"utf8")),q},{})}async function S(x){let q=await Promise.all(x.map(async(B)=>{return[Q(B),JSON.parse(await Z(B,"utf8"))]}));return Object.fromEntries(q)}function y(x){if(/^[a-z][a-zA-Z0-9]*$/.test(x))return x;let q=x.replace(/([a-z])([A-Z])/g,"$1 $2").split(/[^a-zA-Z0-9]+/).filter((B)=>B.length>0);if(q.length===0)return x.toLowerCase();return q[0]?.toLowerCase()+q.slice(1).map((B)=>B.charAt(0).toUpperCase()+B.slice(1).toLowerCase()).join("")}function j(x){if(/^[A-Z][a-zA-Z0-9]*$/.test(x))return x;let q=x.replace(/([a-z])([A-Z])/g,"$1 $2").split(/[^a-zA-Z0-9]+/).filter((B)=>B.length>0);if(q.length===0)return x.charAt(0).toUpperCase()+x.slice(1).toLowerCase();return q.map((B)=>B.charAt(0).toUpperCase()+B.slice(1).toLowerCase()).join("")}function D(x){if(!x)return x;return x.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/([0-9])([A-Z])/g,"$1_$2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/[^a-zA-Z0-9]/g,"_").toLowerCase().replace(/_+/g,"_").replace(/^_|_$/g,"")}import{writeFileSync as _}from"node:fs";import{writeFile as $}from"node:fs/promises";function g(x,q){_(x,q,"utf8")}async function d(x,q){await $(x,q,"utf8")}export{d as writeInterfaceAsync,g as writeInterface,D as toSnake,j as toPascal,y as toCamel,A as readOpenapis,S as readOpenapiAsync,I as normalizeOpenapiFiles,R as generateDevupArtifactsAsync,k as generateDevupArtifacts,M as createTmpDirAsync,z as createTmpDir}; |
+1
-1
| { | ||
| "name": "@devup-api/utils", | ||
| "version": "0.1.9", | ||
| "version": "0.1.10", | ||
| "license": "Apache-2.0", | ||
@@ -5,0 +5,0 @@ "type": "module", |
20988
7.41%167
4.38%