@walkeros/server-source-gcp 0.5.0 → 0.6.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.
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var e,o=Object.defineProperty,r=Object.getOwnPropertyDescriptor,t=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,n=(e,r)=>{for(var t in r)o(e,t,{get:r[t],enumerable:!0})},i={};n(i,{SourceCloudFunction:()=>a,examples:()=>b,schemas:()=>c,sourceCloudFunction:()=>C}),module.exports=(e=i,((e,n,i,a)=>{if(n&&"object"==typeof n||"function"==typeof n)for(let c of t(n))s.call(e,c)||c===i||o(e,c,{get:()=>n[c],enumerable:!(a=r(n,c))||a.enumerable});return e})(o({},"__esModule",{value:!0}),e));var a={},c={};n(c,{CorsOptionsSchema:()=>f,CorsOrigin:()=>m,HttpMethod:()=>g,SettingsSchema:()=>h,settings:()=>p});var l=require("@walkeros/core/dev"),u=require("@walkeros/core/dev"),d=require("@walkeros/core/dev"),g=d.z.enum(["GET","POST","PUT","PATCH","DELETE","OPTIONS","HEAD"]),m=d.z.union([d.z.string(),d.z.array(d.z.string()),d.z.literal("*")]),f=d.z.object({origin:m.describe("Allowed origins (* for all, URL string, or array of URLs)").optional(),methods:d.z.array(g).describe("Allowed HTTP methods").optional(),headers:d.z.array(d.z.string()).describe("Allowed request headers").optional(),credentials:d.z.boolean().describe("Allow credentials (cookies, authorization headers)").optional(),maxAge:d.z.number().int().positive().describe("Preflight cache duration in seconds").optional()}),h=u.z.object({cors:u.z.union([u.z.boolean(),f]).describe("CORS configuration: false = disabled, true = allow all origins, object = custom configuration").optional(),timeout:u.z.number().int().positive().max(54e4).describe("Request timeout in milliseconds (max: 540000 for GCP)").optional()}),p=(0,l.zodToSchema)(h),b={};n(b,{env:()=>A});var A={};n(A,{push:()=>O});var v=()=>()=>Promise.resolve({ok:!0,successful:[],queued:[],failed:[]}),w=()=>{},y={error:w,info:w,debug:w,throw:e=>{throw"string"==typeof e?new Error(e):e},scope:()=>y},O={get push(){return v()},get command(){return v()},get elb(){return v()},logger:y},z={cors:!0,timeout:3e4},j=async(e={},o)=>{const{push:r}=o,t={...z,...e.settings||{}};return{type:"cloudfunction",config:{...e,settings:t},push:async(e,o)=>{try{if(function(e,o){if(o)if(!0===o)e.set("Access-Control-Allow-Origin","*"),e.set("Access-Control-Allow-Methods","POST, OPTIONS"),e.set("Access-Control-Allow-Headers","Content-Type, Authorization"),e.set("Access-Control-Max-Age","3600");else{if(o.origin){const r=Array.isArray(o.origin)?o.origin.join(", "):o.origin;e.set("Access-Control-Allow-Origin",r)}o.methods&&e.set("Access-Control-Allow-Methods",o.methods.join(", ")),o.headers&&e.set("Access-Control-Allow-Headers",o.headers.join(", ")),o.credentials&&e.set("Access-Control-Allow-Credentials","true"),void 0!==o.maxAge&&e.set("Access-Control-Max-Age",o.maxAge.toString())}}(o,t.cors||!1),"OPTIONS"===e.method)return void o.status(204).send();if("POST"!==e.method)return void o.status(405).json({success:!1,error:"Method not allowed. Use POST."});if(!e.body)return void o.status(400).json({success:!1,error:"Request body is required"});const s=e.body;if(function(e){return"event"in e&&"string"==typeof e.event}(s)){const e=await async function(e,o){var r;try{const t=await o({name:e.event,data:e.data||{},context:e.context,user:e.user,globals:e.globals,consent:e.consent});return{id:null==(r=null==t?void 0:t.event)?void 0:r.id}}catch(e){return{error:e instanceof Error?e.message:"Unknown error"}}}(s,r);e.error?o.status(400).json({success:!1,error:e.error}):o.status(200).json({success:!0,id:e.id})}else o.status(400).json({success:!1,error:"Invalid request format. Expected event object."})}catch(e){o.status(500).json({success:!1,error:e instanceof Error?e.message:"Internal server error"})}}}},C=j;//# sourceMappingURL=index.js.map
1
+ "use strict";var mod,__defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},index_exports={};__export(index_exports,{SourceCloudFunction:()=>types_exports,examples:()=>examples_exports,schemas:()=>schemas_exports,sourceCloudFunction:()=>cloudfunction_default}),module.exports=(mod=index_exports,((to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to})(__defProp({},"__esModule",{value:!0}),mod));var types_exports={},schemas_exports={};__export(schemas_exports,{CorsOptionsSchema:()=>CorsOptionsSchema,CorsOrigin:()=>CorsOrigin,HttpMethod:()=>HttpMethod,SettingsSchema:()=>SettingsSchema,settings:()=>settings});var import_dev3=require("@walkeros/core/dev"),import_dev2=require("@walkeros/core/dev"),import_dev=require("@walkeros/core/dev"),HttpMethod=import_dev.z.enum(["GET","POST","PUT","PATCH","DELETE","OPTIONS","HEAD"]),CorsOrigin=import_dev.z.union([import_dev.z.string(),import_dev.z.array(import_dev.z.string()),import_dev.z.literal("*")]),CorsOptionsSchema=import_dev.z.object({origin:CorsOrigin.describe("Allowed origins (* for all, URL string, or array of URLs)").optional(),methods:import_dev.z.array(HttpMethod).describe("Allowed HTTP methods").optional(),headers:import_dev.z.array(import_dev.z.string()).describe("Allowed request headers").optional(),credentials:import_dev.z.boolean().describe("Allow credentials (cookies, authorization headers)").optional(),maxAge:import_dev.z.number().int().positive().describe("Preflight cache duration in seconds").optional()}),SettingsSchema=import_dev2.z.object({cors:import_dev2.z.union([import_dev2.z.boolean(),CorsOptionsSchema]).describe("CORS configuration: false = disabled, true = allow all origins, object = custom configuration").optional(),timeout:import_dev2.z.number().int().positive().max(54e4).describe("Request timeout in milliseconds (max: 540000 for GCP)").optional()}),settings=(0,import_dev3.zodToSchema)(SettingsSchema),examples_exports={};__export(examples_exports,{env:()=>env_exports});var env_exports={};__export(env_exports,{push:()=>push});var createMockElbFn=()=>()=>Promise.resolve({ok:!0,successful:[],queued:[],failed:[]}),noopFn=()=>{},noopLogger={error:noopFn,info:noopFn,debug:noopFn,throw:message=>{throw"string"==typeof message?new Error(message):message},scope:()=>noopLogger},push={get push(){return createMockElbFn()},get command(){return createMockElbFn()},get elb(){return createMockElbFn()},logger:noopLogger},DEFAULT_SETTINGS={cors:!0,timeout:3e4},sourceCloudFunction=async(config={},env)=>{const{push:envPush}=env,settings2={...DEFAULT_SETTINGS,...config.settings||{}};return{type:"cloudfunction",config:{...config,settings:settings2},push:async(req,res)=>{try{if(function(res,corsOptions){if(corsOptions)if(!0===corsOptions)res.set("Access-Control-Allow-Origin","*"),res.set("Access-Control-Allow-Methods","POST, OPTIONS"),res.set("Access-Control-Allow-Headers","Content-Type, Authorization"),res.set("Access-Control-Max-Age","3600");else{if(corsOptions.origin){const origin=Array.isArray(corsOptions.origin)?corsOptions.origin.join(", "):corsOptions.origin;res.set("Access-Control-Allow-Origin",origin)}corsOptions.methods&&res.set("Access-Control-Allow-Methods",corsOptions.methods.join(", ")),corsOptions.headers&&res.set("Access-Control-Allow-Headers",corsOptions.headers.join(", ")),corsOptions.credentials&&res.set("Access-Control-Allow-Credentials","true"),void 0!==corsOptions.maxAge&&res.set("Access-Control-Max-Age",corsOptions.maxAge.toString())}}(res,settings2.cors||!1),"OPTIONS"===req.method)return void res.status(204).send();if("POST"!==req.method)return void res.status(405).json({success:!1,error:"Method not allowed. Use POST."});if(!req.body)return void res.status(400).json({success:!1,error:"Request body is required"});const body=req.body;if(function(body){return"event"in body&&"string"==typeof body.event}(body)){const result=await async function(eventReq,push2){var _a;try{const result=await push2({name:eventReq.event,data:eventReq.data||{},context:eventReq.context,user:eventReq.user,globals:eventReq.globals,consent:eventReq.consent});return{id:null==(_a=null==result?void 0:result.event)?void 0:_a.id}}catch(error){return{error:error instanceof Error?error.message:"Unknown error"}}}(body,envPush);result.error?res.status(400).json({success:!1,error:result.error}):res.status(200).json({success:!0,id:result.id})}else res.status(400).json({success:!1,error:"Invalid request format. Expected event object."})}catch(error){res.status(500).json({success:!1,error:error instanceof Error?error.message:"Internal server error"})}}}},cloudfunction_default=sourceCloudFunction;//# sourceMappingURL=index.js.map
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- var e=Object.defineProperty,o=(o,r)=>{for(var s in r)e(o,s,{get:r[s],enumerable:!0})};var r={},s={};o(s,{CorsOptionsSchema:()=>l,CorsOrigin:()=>c,HttpMethod:()=>a,SettingsSchema:()=>u,settings:()=>d});import{zodToSchema as t}from"@walkeros/core/dev";import{z as n}from"@walkeros/core/dev";import{z as i}from"@walkeros/core/dev";var a=i.enum(["GET","POST","PUT","PATCH","DELETE","OPTIONS","HEAD"]),c=i.union([i.string(),i.array(i.string()),i.literal("*")]),l=i.object({origin:c.describe("Allowed origins (* for all, URL string, or array of URLs)").optional(),methods:i.array(a).describe("Allowed HTTP methods").optional(),headers:i.array(i.string()).describe("Allowed request headers").optional(),credentials:i.boolean().describe("Allow credentials (cookies, authorization headers)").optional(),maxAge:i.number().int().positive().describe("Preflight cache duration in seconds").optional()}),u=n.object({cors:n.union([n.boolean(),l]).describe("CORS configuration: false = disabled, true = allow all origins, object = custom configuration").optional(),timeout:n.number().int().positive().max(54e4).describe("Request timeout in milliseconds (max: 540000 for GCP)").optional()}),d=t(u),g={};o(g,{env:()=>m});var m={};o(m,{push:()=>p});var f=()=>()=>Promise.resolve({ok:!0,successful:[],queued:[],failed:[]}),h=()=>{},A={error:h,info:h,debug:h,throw:e=>{throw"string"==typeof e?new Error(e):e},scope:()=>A},p={get push(){return f()},get command(){return f()},get elb(){return f()},logger:A},v={cors:!0,timeout:3e4},b=async(e={},o)=>{const{push:r}=o,s={...v,...e.settings||{}};return{type:"cloudfunction",config:{...e,settings:s},push:async(e,o)=>{try{if(function(e,o){if(o)if(!0===o)e.set("Access-Control-Allow-Origin","*"),e.set("Access-Control-Allow-Methods","POST, OPTIONS"),e.set("Access-Control-Allow-Headers","Content-Type, Authorization"),e.set("Access-Control-Max-Age","3600");else{if(o.origin){const r=Array.isArray(o.origin)?o.origin.join(", "):o.origin;e.set("Access-Control-Allow-Origin",r)}o.methods&&e.set("Access-Control-Allow-Methods",o.methods.join(", ")),o.headers&&e.set("Access-Control-Allow-Headers",o.headers.join(", ")),o.credentials&&e.set("Access-Control-Allow-Credentials","true"),void 0!==o.maxAge&&e.set("Access-Control-Max-Age",o.maxAge.toString())}}(o,s.cors||!1),"OPTIONS"===e.method)return void o.status(204).send();if("POST"!==e.method)return void o.status(405).json({success:!1,error:"Method not allowed. Use POST."});if(!e.body)return void o.status(400).json({success:!1,error:"Request body is required"});const t=e.body;if(function(e){return"event"in e&&"string"==typeof e.event}(t)){const e=await async function(e,o){var r;try{const s=await o({name:e.event,data:e.data||{},context:e.context,user:e.user,globals:e.globals,consent:e.consent});return{id:null==(r=null==s?void 0:s.event)?void 0:r.id}}catch(e){return{error:e instanceof Error?e.message:"Unknown error"}}}(t,r);e.error?o.status(400).json({success:!1,error:e.error}):o.status(200).json({success:!0,id:e.id})}else o.status(400).json({success:!1,error:"Invalid request format. Expected event object."})}catch(e){o.status(500).json({success:!1,error:e instanceof Error?e.message:"Internal server error"})}}}};export{r as SourceCloudFunction,g as examples,s as schemas,b as sourceCloudFunction};//# sourceMappingURL=index.mjs.map
1
+ var __defProp=Object.defineProperty,__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})};var types_exports={},schemas_exports={};__export(schemas_exports,{CorsOptionsSchema:()=>CorsOptionsSchema,CorsOrigin:()=>CorsOrigin,HttpMethod:()=>HttpMethod,SettingsSchema:()=>SettingsSchema,settings:()=>settings});import{zodToSchema}from"@walkeros/core/dev";import{z as z2}from"@walkeros/core/dev";import{z}from"@walkeros/core/dev";var HttpMethod=z.enum(["GET","POST","PUT","PATCH","DELETE","OPTIONS","HEAD"]),CorsOrigin=z.union([z.string(),z.array(z.string()),z.literal("*")]),CorsOptionsSchema=z.object({origin:CorsOrigin.describe("Allowed origins (* for all, URL string, or array of URLs)").optional(),methods:z.array(HttpMethod).describe("Allowed HTTP methods").optional(),headers:z.array(z.string()).describe("Allowed request headers").optional(),credentials:z.boolean().describe("Allow credentials (cookies, authorization headers)").optional(),maxAge:z.number().int().positive().describe("Preflight cache duration in seconds").optional()}),SettingsSchema=z2.object({cors:z2.union([z2.boolean(),CorsOptionsSchema]).describe("CORS configuration: false = disabled, true = allow all origins, object = custom configuration").optional(),timeout:z2.number().int().positive().max(54e4).describe("Request timeout in milliseconds (max: 540000 for GCP)").optional()}),settings=zodToSchema(SettingsSchema),examples_exports={};__export(examples_exports,{env:()=>env_exports});var env_exports={};__export(env_exports,{push:()=>push});var createMockElbFn=()=>()=>Promise.resolve({ok:!0,successful:[],queued:[],failed:[]}),noopFn=()=>{},noopLogger={error:noopFn,info:noopFn,debug:noopFn,throw:message=>{throw"string"==typeof message?new Error(message):message},scope:()=>noopLogger},push={get push(){return createMockElbFn()},get command(){return createMockElbFn()},get elb(){return createMockElbFn()},logger:noopLogger},DEFAULT_SETTINGS={cors:!0,timeout:3e4},cloudfunction_default=async(config={},env)=>{const{push:envPush}=env,settings2={...DEFAULT_SETTINGS,...config.settings||{}};return{type:"cloudfunction",config:{...config,settings:settings2},push:async(req,res)=>{try{if(function(res,corsOptions){if(corsOptions)if(!0===corsOptions)res.set("Access-Control-Allow-Origin","*"),res.set("Access-Control-Allow-Methods","POST, OPTIONS"),res.set("Access-Control-Allow-Headers","Content-Type, Authorization"),res.set("Access-Control-Max-Age","3600");else{if(corsOptions.origin){const origin=Array.isArray(corsOptions.origin)?corsOptions.origin.join(", "):corsOptions.origin;res.set("Access-Control-Allow-Origin",origin)}corsOptions.methods&&res.set("Access-Control-Allow-Methods",corsOptions.methods.join(", ")),corsOptions.headers&&res.set("Access-Control-Allow-Headers",corsOptions.headers.join(", ")),corsOptions.credentials&&res.set("Access-Control-Allow-Credentials","true"),void 0!==corsOptions.maxAge&&res.set("Access-Control-Max-Age",corsOptions.maxAge.toString())}}(res,settings2.cors||!1),"OPTIONS"===req.method)return void res.status(204).send();if("POST"!==req.method)return void res.status(405).json({success:!1,error:"Method not allowed. Use POST."});if(!req.body)return void res.status(400).json({success:!1,error:"Request body is required"});const body=req.body;if(function(body){return"event"in body&&"string"==typeof body.event}(body)){const result=await async function(eventReq,push2){var _a;try{const result=await push2({name:eventReq.event,data:eventReq.data||{},context:eventReq.context,user:eventReq.user,globals:eventReq.globals,consent:eventReq.consent});return{id:null==(_a=null==result?void 0:result.event)?void 0:_a.id}}catch(error){return{error:error instanceof Error?error.message:"Unknown error"}}}(body,envPush);result.error?res.status(400).json({success:!1,error:result.error}):res.status(200).json({success:!0,id:result.id})}else res.status(400).json({success:!1,error:"Invalid request format. Expected event object."})}catch(error){res.status(500).json({success:!1,error:error instanceof Error?error.message:"Internal server error"})}}}};export{types_exports as SourceCloudFunction,examples_exports as examples,schemas_exports as schemas,cloudfunction_default as sourceCloudFunction};//# sourceMappingURL=index.mjs.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@walkeros/server-source-gcp",
3
3
  "description": "Google Cloud Platform server sources for walkerOS (Cloud Functions)",
4
- "version": "0.5.0",
4
+ "version": "0.6.0",
5
5
  "license": "MIT",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.mjs",
@@ -18,7 +18,7 @@
18
18
  "update": "npx npm-check-updates -u && npm update"
19
19
  },
20
20
  "dependencies": {
21
- "@walkeros/core": "0.5.0"
21
+ "@walkeros/core": "0.6.0"
22
22
  },
23
23
  "peerDependencies": {
24
24
  "@google-cloud/functions-framework": "^3.0.0"