@walkeros/transformer-demo 3.4.2 → 4.0.0-next-1777463920154
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/dev.d.mts +1 -1
- package/dist/dev.d.ts +1 -1
- package/dist/dev.js +1 -1
- package/dist/dev.js.map +1 -1
- package/dist/dev.mjs +1 -1
- package/dist/dev.mjs.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/walkerOS.json +13 -28
- package/package.json +2 -2
package/dist/dev.d.mts
CHANGED
|
@@ -41,7 +41,7 @@ declare namespace env {
|
|
|
41
41
|
export { env_init as init, env_push as push, env_simulation as simulation };
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
/** Default passthrough
|
|
44
|
+
/** Default passthrough - logs the event and returns void (no modification). */
|
|
45
45
|
declare const passthrough: Flow.StepExample;
|
|
46
46
|
/** addProcessedFlag enriches the event with _processed metadata. */
|
|
47
47
|
declare const addProcessedFlag: Flow.StepExample;
|
package/dist/dev.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ declare namespace env {
|
|
|
41
41
|
export { env_init as init, env_push as push, env_simulation as simulation };
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
/** Default passthrough
|
|
44
|
+
/** Default passthrough - logs the event and returns void (no modification). */
|
|
45
45
|
declare const passthrough: Flow.StepExample;
|
|
46
46
|
/** addProcessedFlag enriches the event with _processed metadata. */
|
|
47
47
|
declare const addProcessedFlag: Flow.StepExample;
|
package/dist/dev.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e,t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,s=(e,r)=>{for(var o in r)t(e,o,{get:r[o],enumerable:!0})},
|
|
1
|
+
"use strict";var e,t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,s=(e,r)=>{for(var o in r)t(e,o,{get:r[o],enumerable:!0})},d={};s(d,{examples:()=>m,schemas:()=>i}),module.exports=(e=d,((e,s,d,i)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let n of o(s))a.call(e,n)||n===d||t(e,n,{get:()=>s[n],enumerable:!(i=r(s,n))||i.enumerable});return e})(t({},"__esModule",{value:!0}),e));var i={};s(i,{SettingsSchema:()=>p,settings:()=>l});var n=require("@walkeros/core/dev"),c=require("@walkeros/core/dev"),p=c.z.object({name:c.z.string().optional().describe('Custom name for logging prefix. Default: "transformer-demo"'),fields:c.z.array(c.z.string()).optional().describe("Dot-notation paths to log from the event. If omitted, logs entire event."),addProcessedFlag:c.z.boolean().optional().describe("If true, adds _processed and _processedBy flags to event.data")}).describe("Demo transformer: logs events and optionally adds processed flag"),l=(0,n.zodToSchema)(p),m={};s(m,{env:()=>g,step:()=>b});var g={};s(g,{init:()=>u,push:()=>f,simulation:()=>v});var u={log:void 0},f={log:Object.assign(()=>{},{})},v=["call:log"],b={};s(b,{addProcessedFlag:()=>h,passthrough:()=>y});var y={public:!1,description:"Default config: logs event, passes through unchanged",in:{name:"page view",data:{title:"Getting Started",id:"/docs/getting-started"},id:"ev-1700000600",trigger:"load",entity:"page",action:"view",timestamp:1700000600,source:{type:"browser",platform:"web",url:"https://example.com/"}},out:[]},h={title:"Add processed flag",description:"With addProcessedFlag: true, adds _processed and _processedBy to event.data",in:{name:"product add",data:{name:"Everyday Ruck Snack",price:420},id:"ev-1700000601",trigger:"click",entity:"product",action:"add",timestamp:1700000601,source:{type:"browser",platform:"web",url:"https://example.com/"}},out:[["return",{name:"product add",data:{name:"Everyday Ruck Snack",price:420,_processed:!0,_processedBy:"transformer-demo"},id:"ev-1700000601",trigger:"click",entity:"product",action:"add",timestamp:1700000601,source:{type:"browser",platform:"web",url:"https://example.com/"}}]]};//# sourceMappingURL=dev.js.map
|
package/dist/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/dev.ts","../src/schemas/index.ts","../src/schemas/settings.ts","../src/examples/index.ts","../src/examples/env.ts","../src/examples/step.ts"],"sourcesContent":["export * as schemas from './schemas';\nexport * as examples from './examples';\n","import { zodToSchema } from '@walkeros/core/dev';\nimport { SettingsSchema } from './settings';\n\nexport { SettingsSchema, type Settings } from './settings';\nexport const settings = zodToSchema(SettingsSchema);\n","import { z } from '@walkeros/core/dev';\n\n/**\n * Demo transformer settings schema.\n *\n * Mirrors: types.ts Settings\n */\nexport const SettingsSchema = z\n .object({\n name: z\n .string()\n .optional()\n .describe('Custom name for logging prefix. Default: \"transformer-demo\"'),\n fields: z\n .array(z.string())\n .optional()\n .describe(\n 'Dot-notation paths to log from the event. If omitted, logs entire event.',\n ),\n addProcessedFlag: z\n .boolean()\n .optional()\n .describe(\n 'If true, adds _processed and _processedBy flags to event.data',\n ),\n })\n .describe('Demo transformer: logs events and optionally adds processed flag');\n\nexport type Settings = z.infer<typeof SettingsSchema>;\n","export * as env from './env';\nexport * as step from './step';\n","import type { Env } from '../types';\n\n/**\n * Example environment configurations for transformer demo\n */\n\nconst noop = () => {};\n\nexport const init: Env | undefined = {\n log: undefined,\n};\n\nexport const push: Env = {\n log: Object.assign(noop, {}) as Env['log'],\n};\n\n/**\n * Simulation tracking paths\n */\nexport const simulation = ['call:log'];\n","import type { Flow } from '@walkeros/core';\n\n/** Default passthrough
|
|
1
|
+
{"version":3,"sources":["../src/dev.ts","../src/schemas/index.ts","../src/schemas/settings.ts","../src/examples/index.ts","../src/examples/env.ts","../src/examples/step.ts"],"sourcesContent":["export * as schemas from './schemas';\nexport * as examples from './examples';\n","import { zodToSchema } from '@walkeros/core/dev';\nimport { SettingsSchema } from './settings';\n\nexport { SettingsSchema, type Settings } from './settings';\nexport const settings = zodToSchema(SettingsSchema);\n","import { z } from '@walkeros/core/dev';\n\n/**\n * Demo transformer settings schema.\n *\n * Mirrors: types.ts Settings\n */\nexport const SettingsSchema = z\n .object({\n name: z\n .string()\n .optional()\n .describe('Custom name for logging prefix. Default: \"transformer-demo\"'),\n fields: z\n .array(z.string())\n .optional()\n .describe(\n 'Dot-notation paths to log from the event. If omitted, logs entire event.',\n ),\n addProcessedFlag: z\n .boolean()\n .optional()\n .describe(\n 'If true, adds _processed and _processedBy flags to event.data',\n ),\n })\n .describe('Demo transformer: logs events and optionally adds processed flag');\n\nexport type Settings = z.infer<typeof SettingsSchema>;\n","export * as env from './env';\nexport * as step from './step';\n","import type { Env } from '../types';\n\n/**\n * Example environment configurations for transformer demo\n */\n\nconst noop = () => {};\n\nexport const init: Env | undefined = {\n log: undefined,\n};\n\nexport const push: Env = {\n log: Object.assign(noop, {}) as Env['log'],\n};\n\n/**\n * Simulation tracking paths\n */\nexport const simulation = ['call:log'];\n","import type { Flow } from '@walkeros/core';\n\n/** Default passthrough - logs the event and returns void (no modification). */\nexport const passthrough: Flow.StepExample = {\n public: false,\n description: 'Default config: logs event, passes through unchanged',\n in: {\n name: 'page view',\n data: { title: 'Getting Started', id: '/docs/getting-started' },\n id: 'ev-1700000600',\n trigger: 'load',\n entity: 'page',\n action: 'view',\n timestamp: 1700000600,\n source: { type: 'browser', platform: 'web', url: 'https://example.com/' },\n },\n out: [],\n};\n\n/** addProcessedFlag enriches the event with _processed metadata. */\nexport const addProcessedFlag: Flow.StepExample = {\n title: 'Add processed flag',\n description:\n 'With addProcessedFlag: true, adds _processed and _processedBy to event.data',\n in: {\n name: 'product add',\n data: { name: 'Everyday Ruck Snack', price: 420 },\n id: 'ev-1700000601',\n trigger: 'click',\n entity: 'product',\n action: 'add',\n timestamp: 1700000601,\n source: { type: 'browser', platform: 'web', url: 'https://example.com/' },\n },\n out: [\n [\n 'return',\n {\n name: 'product add',\n data: {\n name: 'Everyday Ruck Snack',\n price: 420,\n _processed: true,\n _processedBy: 'transformer-demo',\n },\n id: 'ev-1700000601',\n trigger: 'click',\n entity: 'product',\n action: 'add',\n timestamp: 1700000601,\n source: {\n type: 'browser',\n platform: 'web',\n url: 'https://example.com/',\n },\n },\n ],\n ],\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,cAA4B;;;ACA5B,iBAAkB;AAOX,IAAM,iBAAiB,aAC3B,OAAO;AAAA,EACN,MAAM,aACH,OAAO,EACP,SAAS,EACT,SAAS,6DAA6D;AAAA,EACzE,QAAQ,aACL,MAAM,aAAE,OAAO,CAAC,EAChB,SAAS,EACT;AAAA,IACC;AAAA,EACF;AAAA,EACF,kBAAkB,aACf,QAAQ,EACR,SAAS,EACT;AAAA,IACC;AAAA,EACF;AACJ,CAAC,EACA,SAAS,kEAAkE;;;ADtBvE,IAAM,eAAW,yBAAY,cAAc;;;AEJlD;AAAA;AAAA;AAAA;AAAA;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,IAAM,OAAO,MAAM;AAAC;AAEb,IAAM,OAAwB;AAAA,EACnC,KAAK;AACP;AAEO,IAAM,OAAY;AAAA,EACvB,KAAK,OAAO,OAAO,MAAM,CAAC,CAAC;AAC7B;AAKO,IAAM,aAAa,CAAC,UAAU;;;ACnBrC;AAAA;AAAA;AAAA;AAAA;AAGO,IAAM,cAAgC;AAAA,EAC3C,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,IAAI;AAAA,IACF,MAAM;AAAA,IACN,MAAM,EAAE,OAAO,mBAAmB,IAAI,wBAAwB;AAAA,IAC9D,IAAI;AAAA,IACJ,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,QAAQ,EAAE,MAAM,WAAW,UAAU,OAAO,KAAK,uBAAuB;AAAA,EAC1E;AAAA,EACA,KAAK,CAAC;AACR;AAGO,IAAM,mBAAqC;AAAA,EAChD,OAAO;AAAA,EACP,aACE;AAAA,EACF,IAAI;AAAA,IACF,MAAM;AAAA,IACN,MAAM,EAAE,MAAM,uBAAuB,OAAO,IAAI;AAAA,IAChD,IAAI;AAAA,IACJ,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,QAAQ,EAAE,MAAM,WAAW,UAAU,OAAO,KAAK,uBAAuB;AAAA,EAC1E;AAAA,EACA,KAAK;AAAA,IACH;AAAA,MACE;AAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,OAAO;AAAA,UACP,YAAY;AAAA,UACZ,cAAc;AAAA,QAChB;AAAA,QACA,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,UAAU;AAAA,UACV,KAAK;AAAA,QACP;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":["import_dev"]}
|
package/dist/dev.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=Object.defineProperty,t=(t,
|
|
1
|
+
var e=Object.defineProperty,t=(t,a)=>{for(var r in a)e(t,r,{get:a[r],enumerable:!0})},a={};t(a,{SettingsSchema:()=>s,settings:()=>d});import{zodToSchema as r}from"@walkeros/core/dev";import{z as o}from"@walkeros/core/dev";var s=o.object({name:o.string().optional().describe('Custom name for logging prefix. Default: "transformer-demo"'),fields:o.array(o.string()).optional().describe("Dot-notation paths to log from the event. If omitted, logs entire event."),addProcessedFlag:o.boolean().optional().describe("If true, adds _processed and _processedBy flags to event.data")}).describe("Demo transformer: logs events and optionally adds processed flag"),d=r(s),i={};t(i,{env:()=>n,step:()=>m});var n={};t(n,{init:()=>c,push:()=>p,simulation:()=>l});var c={log:void 0},p={log:Object.assign(()=>{},{})},l=["call:log"],m={};t(m,{addProcessedFlag:()=>u,passthrough:()=>g});var g={public:!1,description:"Default config: logs event, passes through unchanged",in:{name:"page view",data:{title:"Getting Started",id:"/docs/getting-started"},id:"ev-1700000600",trigger:"load",entity:"page",action:"view",timestamp:1700000600,source:{type:"browser",platform:"web",url:"https://example.com/"}},out:[]},u={title:"Add processed flag",description:"With addProcessedFlag: true, adds _processed and _processedBy to event.data",in:{name:"product add",data:{name:"Everyday Ruck Snack",price:420},id:"ev-1700000601",trigger:"click",entity:"product",action:"add",timestamp:1700000601,source:{type:"browser",platform:"web",url:"https://example.com/"}},out:[["return",{name:"product add",data:{name:"Everyday Ruck Snack",price:420,_processed:!0,_processedBy:"transformer-demo"},id:"ev-1700000601",trigger:"click",entity:"product",action:"add",timestamp:1700000601,source:{type:"browser",platform:"web",url:"https://example.com/"}}]]};export{i as examples,a as schemas};//# sourceMappingURL=dev.mjs.map
|
package/dist/dev.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/schemas/index.ts","../src/schemas/settings.ts","../src/examples/index.ts","../src/examples/env.ts","../src/examples/step.ts"],"sourcesContent":["import { zodToSchema } from '@walkeros/core/dev';\nimport { SettingsSchema } from './settings';\n\nexport { SettingsSchema, type Settings } from './settings';\nexport const settings = zodToSchema(SettingsSchema);\n","import { z } from '@walkeros/core/dev';\n\n/**\n * Demo transformer settings schema.\n *\n * Mirrors: types.ts Settings\n */\nexport const SettingsSchema = z\n .object({\n name: z\n .string()\n .optional()\n .describe('Custom name for logging prefix. Default: \"transformer-demo\"'),\n fields: z\n .array(z.string())\n .optional()\n .describe(\n 'Dot-notation paths to log from the event. If omitted, logs entire event.',\n ),\n addProcessedFlag: z\n .boolean()\n .optional()\n .describe(\n 'If true, adds _processed and _processedBy flags to event.data',\n ),\n })\n .describe('Demo transformer: logs events and optionally adds processed flag');\n\nexport type Settings = z.infer<typeof SettingsSchema>;\n","export * as env from './env';\nexport * as step from './step';\n","import type { Env } from '../types';\n\n/**\n * Example environment configurations for transformer demo\n */\n\nconst noop = () => {};\n\nexport const init: Env | undefined = {\n log: undefined,\n};\n\nexport const push: Env = {\n log: Object.assign(noop, {}) as Env['log'],\n};\n\n/**\n * Simulation tracking paths\n */\nexport const simulation = ['call:log'];\n","import type { Flow } from '@walkeros/core';\n\n/** Default passthrough
|
|
1
|
+
{"version":3,"sources":["../src/schemas/index.ts","../src/schemas/settings.ts","../src/examples/index.ts","../src/examples/env.ts","../src/examples/step.ts"],"sourcesContent":["import { zodToSchema } from '@walkeros/core/dev';\nimport { SettingsSchema } from './settings';\n\nexport { SettingsSchema, type Settings } from './settings';\nexport const settings = zodToSchema(SettingsSchema);\n","import { z } from '@walkeros/core/dev';\n\n/**\n * Demo transformer settings schema.\n *\n * Mirrors: types.ts Settings\n */\nexport const SettingsSchema = z\n .object({\n name: z\n .string()\n .optional()\n .describe('Custom name for logging prefix. Default: \"transformer-demo\"'),\n fields: z\n .array(z.string())\n .optional()\n .describe(\n 'Dot-notation paths to log from the event. If omitted, logs entire event.',\n ),\n addProcessedFlag: z\n .boolean()\n .optional()\n .describe(\n 'If true, adds _processed and _processedBy flags to event.data',\n ),\n })\n .describe('Demo transformer: logs events and optionally adds processed flag');\n\nexport type Settings = z.infer<typeof SettingsSchema>;\n","export * as env from './env';\nexport * as step from './step';\n","import type { Env } from '../types';\n\n/**\n * Example environment configurations for transformer demo\n */\n\nconst noop = () => {};\n\nexport const init: Env | undefined = {\n log: undefined,\n};\n\nexport const push: Env = {\n log: Object.assign(noop, {}) as Env['log'],\n};\n\n/**\n * Simulation tracking paths\n */\nexport const simulation = ['call:log'];\n","import type { Flow } from '@walkeros/core';\n\n/** Default passthrough - logs the event and returns void (no modification). */\nexport const passthrough: Flow.StepExample = {\n public: false,\n description: 'Default config: logs event, passes through unchanged',\n in: {\n name: 'page view',\n data: { title: 'Getting Started', id: '/docs/getting-started' },\n id: 'ev-1700000600',\n trigger: 'load',\n entity: 'page',\n action: 'view',\n timestamp: 1700000600,\n source: { type: 'browser', platform: 'web', url: 'https://example.com/' },\n },\n out: [],\n};\n\n/** addProcessedFlag enriches the event with _processed metadata. */\nexport const addProcessedFlag: Flow.StepExample = {\n title: 'Add processed flag',\n description:\n 'With addProcessedFlag: true, adds _processed and _processedBy to event.data',\n in: {\n name: 'product add',\n data: { name: 'Everyday Ruck Snack', price: 420 },\n id: 'ev-1700000601',\n trigger: 'click',\n entity: 'product',\n action: 'add',\n timestamp: 1700000601,\n source: { type: 'browser', platform: 'web', url: 'https://example.com/' },\n },\n out: [\n [\n 'return',\n {\n name: 'product add',\n data: {\n name: 'Everyday Ruck Snack',\n price: 420,\n _processed: true,\n _processedBy: 'transformer-demo',\n },\n id: 'ev-1700000601',\n trigger: 'click',\n entity: 'product',\n action: 'add',\n timestamp: 1700000601,\n source: {\n type: 'browser',\n platform: 'web',\n url: 'https://example.com/',\n },\n },\n ],\n ],\n};\n"],"mappings":";;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAAS,mBAAmB;;;ACA5B,SAAS,SAAS;AAOX,IAAM,iBAAiB,EAC3B,OAAO;AAAA,EACN,MAAM,EACH,OAAO,EACP,SAAS,EACT,SAAS,6DAA6D;AAAA,EACzE,QAAQ,EACL,MAAM,EAAE,OAAO,CAAC,EAChB,SAAS,EACT;AAAA,IACC;AAAA,EACF;AAAA,EACF,kBAAkB,EACf,QAAQ,EACR,SAAS,EACT;AAAA,IACC;AAAA,EACF;AACJ,CAAC,EACA,SAAS,kEAAkE;;;ADtBvE,IAAM,WAAW,YAAY,cAAc;;;AEJlD;AAAA;AAAA;AAAA;AAAA;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,IAAM,OAAO,MAAM;AAAC;AAEb,IAAM,OAAwB;AAAA,EACnC,KAAK;AACP;AAEO,IAAM,OAAY;AAAA,EACvB,KAAK,OAAO,OAAO,MAAM,CAAC,CAAC;AAC7B;AAKO,IAAM,aAAa,CAAC,UAAU;;;ACnBrC;AAAA;AAAA;AAAA;AAAA;AAGO,IAAM,cAAgC;AAAA,EAC3C,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,IAAI;AAAA,IACF,MAAM;AAAA,IACN,MAAM,EAAE,OAAO,mBAAmB,IAAI,wBAAwB;AAAA,IAC9D,IAAI;AAAA,IACJ,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,QAAQ,EAAE,MAAM,WAAW,UAAU,OAAO,KAAK,uBAAuB;AAAA,EAC1E;AAAA,EACA,KAAK,CAAC;AACR;AAGO,IAAM,mBAAqC;AAAA,EAChD,OAAO;AAAA,EACP,aACE;AAAA,EACF,IAAI;AAAA,IACF,MAAM;AAAA,IACN,MAAM,EAAE,MAAM,uBAAuB,OAAO,IAAI;AAAA,IAChD,IAAI;AAAA,IACJ,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,QAAQ,EAAE,MAAM,WAAW,UAAU,OAAO,KAAK,uBAAuB;AAAA,EAC1E;AAAA,EACA,KAAK;AAAA,IACH;AAAA,MACE;AAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,OAAO;AAAA,UACP,YAAY;AAAA,UACZ,cAAc;AAAA,QAChB;AAAA,QACA,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,UAAU;AAAA,UACV,KAAK;AAAA,QACP;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
package/dist/index.d.mts
CHANGED
|
@@ -41,7 +41,7 @@ declare namespace env {
|
|
|
41
41
|
export { env_init as init, env_push as push, env_simulation as simulation };
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
/** Default passthrough
|
|
44
|
+
/** Default passthrough - logs the event and returns void (no modification). */
|
|
45
45
|
declare const passthrough: Flow.StepExample;
|
|
46
46
|
/** addProcessedFlag enriches the event with _processed metadata. */
|
|
47
47
|
declare const addProcessedFlag: Flow.StepExample;
|
package/dist/index.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ declare namespace env {
|
|
|
41
41
|
export { env_init as init, env_push as push, env_simulation as simulation };
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
/** Default passthrough
|
|
44
|
+
/** Default passthrough - logs the event and returns void (no modification). */
|
|
45
45
|
declare const passthrough: Flow.StepExample;
|
|
46
46
|
/** addProcessedFlag enriches the event with _processed metadata. */
|
|
47
47
|
declare const addProcessedFlag: Flow.StepExample;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e,t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,
|
|
1
|
+
"use strict";var e,t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,s=(e,r)=>{for(var o in r)t(e,o,{get:r[o],enumerable:!0})},n={};s(n,{TransformerDemo:()=>d,default:()=>y,examples:()=>i,transformerDemo:()=>v}),module.exports=(e=n,((e,s,n,d)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let i of o(s))a.call(e,i)||i===n||t(e,i,{get:()=>s[i],enumerable:!(d=r(s,i))||d.enumerable});return e})(t({},"__esModule",{value:!0}),e));var d={},i={};s(i,{env:()=>c,step:()=>u});var c={};s(c,{init:()=>l,push:()=>p,simulation:()=>g});var l={log:void 0},p={log:Object.assign(()=>{},{})},g=["call:log"],u={};s(u,{addProcessedFlag:()=>f,passthrough:()=>m});var m={public:!1,description:"Default config: logs event, passes through unchanged",in:{name:"page view",data:{title:"Getting Started",id:"/docs/getting-started"},id:"ev-1700000600",trigger:"load",entity:"page",action:"view",timestamp:1700000600,source:{type:"browser",platform:"web",url:"https://example.com/"}},out:[]},f={title:"Add processed flag",description:"With addProcessedFlag: true, adds _processed and _processedBy to event.data",in:{name:"product add",data:{name:"Everyday Ruck Snack",price:420},id:"ev-1700000601",trigger:"click",entity:"product",action:"add",timestamp:1700000601,source:{type:"browser",platform:"web",url:"https://example.com/"}},out:[["return",{name:"product add",data:{name:"Everyday Ruck Snack",price:420,_processed:!0,_processedBy:"transformer-demo"},id:"ev-1700000601",trigger:"click",entity:"product",action:"add",timestamp:1700000601,source:{type:"browser",platform:"web",url:"https://example.com/"}}]]},v=e=>{const{config:t,env:r}=e,o={name:"transformer-demo",...t?.settings};return{type:"demo",config:{...t,settings:o},init(e){const t=r?.log||console.log;e.logger.debug("initialized"),t(`[${o.name}] initialized`)},push(e,t){const a=r?.log||console.log,s=o.fields?function(e,t){const r={};for(const o of t){const t=o.split(".").reduce((e,t)=>e?.[t],e);void 0!==t&&(r[o]=t)}return r}(e,o.fields):e;if(a(`[${o.name}] ${JSON.stringify(s,null,2)}`),t.logger.debug("processed event",{event:e.name}),o.addProcessedFlag)return{event:{...e,data:{...e.data||{},_processed:!0,_processedBy:o.name}}}}}};var y=v;//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/types.ts","../src/examples/index.ts","../src/examples/env.ts","../src/examples/step.ts"],"sourcesContent":["import type { Transformer, WalkerOS } from '@walkeros/core';\nimport type { Types } from './types';\n\nexport * as TransformerDemo from './types';\nexport * as examples from './examples';\n\n/**\n * Demo transformer for walkerOS\n *\n * Logs events using env.log (or console.log fallback) and passes them through.\n * Perfect for testing and demonstrations without external dependencies.\n *\n * Configuration options:\n * - name: Custom name for logging prefix (default: 'transformer-demo')\n * - fields: Array of dot-notation paths to log from the event (default: entire event)\n * - addProcessedFlag: If true, adds a 'processed' flag to the event data\n */\nexport const transformerDemo: Transformer.Init<Types> = (initContext) => {\n const { config, env } = initContext;\n const settings = {\n name: 'transformer-demo',\n ...config?.settings,\n };\n\n return {\n type: 'demo',\n config: { ...config, settings },\n\n init(context: Transformer.Context<Types>) {\n // eslint-disable-next-line no-console\n const log = env?.log || console.log;\n context.logger.debug('initialized');\n log(`[${settings.name}] initialized`);\n },\n\n push(\n event: WalkerOS.DeepPartialEvent,\n context: Transformer.Context<Types>,\n ) {\n // eslint-disable-next-line no-console\n const log = env?.log || console.log;\n\n const output = settings.fields\n ? extractValues(\n event as unknown as Record<string, unknown>,\n settings.fields,\n )\n : event;\n\n log(`[${settings.name}] ${JSON.stringify(output, null, 2)}`);\n context.logger.debug('processed event', {\n event: (event as { name?: string }).name,\n });\n\n // Optionally modify the event\n if (settings.addProcessedFlag) {\n return {\n event: {\n ...event,\n data: {\n ...(event.data || {}),\n _processed: true,\n _processedBy: settings.name,\n },\n } as WalkerOS.DeepPartialEvent,\n };\n }\n\n // Return void for passthrough (event unchanged)\n return;\n },\n };\n};\n\n/**\n * Extract values from object using dot notation paths\n */\nfunction extractValues(\n obj: Record<string, unknown>,\n paths: string[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = {};\n\n for (const path of paths) {\n const value = path\n .split('.')\n .reduce<unknown>(\n (acc, key) => (acc as Record<string, unknown>)?.[key],\n obj,\n );\n if (value !== undefined) {\n result[path] = value;\n }\n }\n\n return result;\n}\n\nexport default transformerDemo;\n","import type { Transformer as CoreTransformer } from '@walkeros/core';\n\nexport interface Settings {\n name?: string;\n /** Fields to log from the event (dot notation paths). If omitted, logs entire event. */\n fields?: string[];\n /** If true, modifies the event by adding a 'processed' flag. */\n addProcessedFlag?: boolean;\n}\n\nexport interface Env extends CoreTransformer.BaseEnv {\n log?: (msg: string) => void;\n}\n\nexport type Types = CoreTransformer.Types<Settings, Env>;\n\nexport type Transformer = CoreTransformer.Instance<Types>;\nexport type Config = CoreTransformer.Config<Types>;\nexport type InitFn = CoreTransformer.InitFn<Types>;\nexport type Fn = CoreTransformer.Fn<Types>;\n","export * as env from './env';\nexport * as step from './step';\n","import type { Env } from '../types';\n\n/**\n * Example environment configurations for transformer demo\n */\n\nconst noop = () => {};\n\nexport const init: Env | undefined = {\n log: undefined,\n};\n\nexport const push: Env = {\n log: Object.assign(noop, {}) as Env['log'],\n};\n\n/**\n * Simulation tracking paths\n */\nexport const simulation = ['call:log'];\n","import type { Flow } from '@walkeros/core';\n\n/** Default passthrough
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/types.ts","../src/examples/index.ts","../src/examples/env.ts","../src/examples/step.ts"],"sourcesContent":["import type { Transformer, WalkerOS } from '@walkeros/core';\nimport type { Types } from './types';\n\nexport * as TransformerDemo from './types';\nexport * as examples from './examples';\n\n/**\n * Demo transformer for walkerOS\n *\n * Logs events using env.log (or console.log fallback) and passes them through.\n * Perfect for testing and demonstrations without external dependencies.\n *\n * Configuration options:\n * - name: Custom name for logging prefix (default: 'transformer-demo')\n * - fields: Array of dot-notation paths to log from the event (default: entire event)\n * - addProcessedFlag: If true, adds a 'processed' flag to the event data\n */\nexport const transformerDemo: Transformer.Init<Types> = (initContext) => {\n const { config, env } = initContext;\n const settings = {\n name: 'transformer-demo',\n ...config?.settings,\n };\n\n return {\n type: 'demo',\n config: { ...config, settings },\n\n init(context: Transformer.Context<Types>) {\n // eslint-disable-next-line no-console\n const log = env?.log || console.log;\n context.logger.debug('initialized');\n log(`[${settings.name}] initialized`);\n },\n\n push(\n event: WalkerOS.DeepPartialEvent,\n context: Transformer.Context<Types>,\n ) {\n // eslint-disable-next-line no-console\n const log = env?.log || console.log;\n\n const output = settings.fields\n ? extractValues(\n event as unknown as Record<string, unknown>,\n settings.fields,\n )\n : event;\n\n log(`[${settings.name}] ${JSON.stringify(output, null, 2)}`);\n context.logger.debug('processed event', {\n event: (event as { name?: string }).name,\n });\n\n // Optionally modify the event\n if (settings.addProcessedFlag) {\n return {\n event: {\n ...event,\n data: {\n ...(event.data || {}),\n _processed: true,\n _processedBy: settings.name,\n },\n } as WalkerOS.DeepPartialEvent,\n };\n }\n\n // Return void for passthrough (event unchanged)\n return;\n },\n };\n};\n\n/**\n * Extract values from object using dot notation paths\n */\nfunction extractValues(\n obj: Record<string, unknown>,\n paths: string[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = {};\n\n for (const path of paths) {\n const value = path\n .split('.')\n .reduce<unknown>(\n (acc, key) => (acc as Record<string, unknown>)?.[key],\n obj,\n );\n if (value !== undefined) {\n result[path] = value;\n }\n }\n\n return result;\n}\n\nexport default transformerDemo;\n","import type { Transformer as CoreTransformer } from '@walkeros/core';\n\nexport interface Settings {\n name?: string;\n /** Fields to log from the event (dot notation paths). If omitted, logs entire event. */\n fields?: string[];\n /** If true, modifies the event by adding a 'processed' flag. */\n addProcessedFlag?: boolean;\n}\n\nexport interface Env extends CoreTransformer.BaseEnv {\n log?: (msg: string) => void;\n}\n\nexport type Types = CoreTransformer.Types<Settings, Env>;\n\nexport type Transformer = CoreTransformer.Instance<Types>;\nexport type Config = CoreTransformer.Config<Types>;\nexport type InitFn = CoreTransformer.InitFn<Types>;\nexport type Fn = CoreTransformer.Fn<Types>;\n","export * as env from './env';\nexport * as step from './step';\n","import type { Env } from '../types';\n\n/**\n * Example environment configurations for transformer demo\n */\n\nconst noop = () => {};\n\nexport const init: Env | undefined = {\n log: undefined,\n};\n\nexport const push: Env = {\n log: Object.assign(noop, {}) as Env['log'],\n};\n\n/**\n * Simulation tracking paths\n */\nexport const simulation = ['call:log'];\n","import type { Flow } from '@walkeros/core';\n\n/** Default passthrough - logs the event and returns void (no modification). */\nexport const passthrough: Flow.StepExample = {\n public: false,\n description: 'Default config: logs event, passes through unchanged',\n in: {\n name: 'page view',\n data: { title: 'Getting Started', id: '/docs/getting-started' },\n id: 'ev-1700000600',\n trigger: 'load',\n entity: 'page',\n action: 'view',\n timestamp: 1700000600,\n source: { type: 'browser', platform: 'web', url: 'https://example.com/' },\n },\n out: [],\n};\n\n/** addProcessedFlag enriches the event with _processed metadata. */\nexport const addProcessedFlag: Flow.StepExample = {\n title: 'Add processed flag',\n description:\n 'With addProcessedFlag: true, adds _processed and _processedBy to event.data',\n in: {\n name: 'product add',\n data: { name: 'Everyday Ruck Snack', price: 420 },\n id: 'ev-1700000601',\n trigger: 'click',\n entity: 'product',\n action: 'add',\n timestamp: 1700000601,\n source: { type: 'browser', platform: 'web', url: 'https://example.com/' },\n },\n out: [\n [\n 'return',\n {\n name: 'product add',\n data: {\n name: 'Everyday Ruck Snack',\n price: 420,\n _processed: true,\n _processedBy: 'transformer-demo',\n },\n id: 'ev-1700000601',\n trigger: 'click',\n entity: 'product',\n action: 'add',\n timestamp: 1700000601,\n source: {\n type: 'browser',\n platform: 'web',\n url: 'https://example.com/',\n },\n },\n ],\n ],\n};\n"],"mappings":"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","names":[]}
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=Object.defineProperty,t=(t,
|
|
1
|
+
var e=Object.defineProperty,t=(t,a)=>{for(var r in a)e(t,r,{get:a[r],enumerable:!0})},a={},r={};t(r,{env:()=>o,step:()=>i});var o={};t(o,{init:()=>s,push:()=>d,simulation:()=>n});var s={log:void 0},d={log:Object.assign(()=>{},{})},n=["call:log"],i={};t(i,{addProcessedFlag:()=>l,passthrough:()=>c});var c={public:!1,description:"Default config: logs event, passes through unchanged",in:{name:"page view",data:{title:"Getting Started",id:"/docs/getting-started"},id:"ev-1700000600",trigger:"load",entity:"page",action:"view",timestamp:1700000600,source:{type:"browser",platform:"web",url:"https://example.com/"}},out:[]},l={title:"Add processed flag",description:"With addProcessedFlag: true, adds _processed and _processedBy to event.data",in:{name:"product add",data:{name:"Everyday Ruck Snack",price:420},id:"ev-1700000601",trigger:"click",entity:"product",action:"add",timestamp:1700000601,source:{type:"browser",platform:"web",url:"https://example.com/"}},out:[["return",{name:"product add",data:{name:"Everyday Ruck Snack",price:420,_processed:!0,_processedBy:"transformer-demo"},id:"ev-1700000601",trigger:"click",entity:"product",action:"add",timestamp:1700000601,source:{type:"browser",platform:"web",url:"https://example.com/"}}]]},p=e=>{const{config:t,env:a}=e,r={name:"transformer-demo",...t?.settings};return{type:"demo",config:{...t,settings:r},init(e){const t=a?.log||console.log;e.logger.debug("initialized"),t(`[${r.name}] initialized`)},push(e,t){const o=a?.log||console.log,s=r.fields?function(e,t){const a={};for(const r of t){const t=r.split(".").reduce((e,t)=>e?.[t],e);void 0!==t&&(a[r]=t)}return a}(e,r.fields):e;if(o(`[${r.name}] ${JSON.stringify(s,null,2)}`),t.logger.debug("processed event",{event:e.name}),r.addProcessedFlag)return{event:{...e,data:{...e.data||{},_processed:!0,_processedBy:r.name}}}}}};var g=p;export{a as TransformerDemo,g as default,r as examples,p as transformerDemo};//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/types.ts","../src/examples/index.ts","../src/examples/env.ts","../src/examples/step.ts","../src/index.ts"],"sourcesContent":["import type { Transformer as CoreTransformer } from '@walkeros/core';\n\nexport interface Settings {\n name?: string;\n /** Fields to log from the event (dot notation paths). If omitted, logs entire event. */\n fields?: string[];\n /** If true, modifies the event by adding a 'processed' flag. */\n addProcessedFlag?: boolean;\n}\n\nexport interface Env extends CoreTransformer.BaseEnv {\n log?: (msg: string) => void;\n}\n\nexport type Types = CoreTransformer.Types<Settings, Env>;\n\nexport type Transformer = CoreTransformer.Instance<Types>;\nexport type Config = CoreTransformer.Config<Types>;\nexport type InitFn = CoreTransformer.InitFn<Types>;\nexport type Fn = CoreTransformer.Fn<Types>;\n","export * as env from './env';\nexport * as step from './step';\n","import type { Env } from '../types';\n\n/**\n * Example environment configurations for transformer demo\n */\n\nconst noop = () => {};\n\nexport const init: Env | undefined = {\n log: undefined,\n};\n\nexport const push: Env = {\n log: Object.assign(noop, {}) as Env['log'],\n};\n\n/**\n * Simulation tracking paths\n */\nexport const simulation = ['call:log'];\n","import type { Flow } from '@walkeros/core';\n\n/** Default passthrough
|
|
1
|
+
{"version":3,"sources":["../src/types.ts","../src/examples/index.ts","../src/examples/env.ts","../src/examples/step.ts","../src/index.ts"],"sourcesContent":["import type { Transformer as CoreTransformer } from '@walkeros/core';\n\nexport interface Settings {\n name?: string;\n /** Fields to log from the event (dot notation paths). If omitted, logs entire event. */\n fields?: string[];\n /** If true, modifies the event by adding a 'processed' flag. */\n addProcessedFlag?: boolean;\n}\n\nexport interface Env extends CoreTransformer.BaseEnv {\n log?: (msg: string) => void;\n}\n\nexport type Types = CoreTransformer.Types<Settings, Env>;\n\nexport type Transformer = CoreTransformer.Instance<Types>;\nexport type Config = CoreTransformer.Config<Types>;\nexport type InitFn = CoreTransformer.InitFn<Types>;\nexport type Fn = CoreTransformer.Fn<Types>;\n","export * as env from './env';\nexport * as step from './step';\n","import type { Env } from '../types';\n\n/**\n * Example environment configurations for transformer demo\n */\n\nconst noop = () => {};\n\nexport const init: Env | undefined = {\n log: undefined,\n};\n\nexport const push: Env = {\n log: Object.assign(noop, {}) as Env['log'],\n};\n\n/**\n * Simulation tracking paths\n */\nexport const simulation = ['call:log'];\n","import type { Flow } from '@walkeros/core';\n\n/** Default passthrough - logs the event and returns void (no modification). */\nexport const passthrough: Flow.StepExample = {\n public: false,\n description: 'Default config: logs event, passes through unchanged',\n in: {\n name: 'page view',\n data: { title: 'Getting Started', id: '/docs/getting-started' },\n id: 'ev-1700000600',\n trigger: 'load',\n entity: 'page',\n action: 'view',\n timestamp: 1700000600,\n source: { type: 'browser', platform: 'web', url: 'https://example.com/' },\n },\n out: [],\n};\n\n/** addProcessedFlag enriches the event with _processed metadata. */\nexport const addProcessedFlag: Flow.StepExample = {\n title: 'Add processed flag',\n description:\n 'With addProcessedFlag: true, adds _processed and _processedBy to event.data',\n in: {\n name: 'product add',\n data: { name: 'Everyday Ruck Snack', price: 420 },\n id: 'ev-1700000601',\n trigger: 'click',\n entity: 'product',\n action: 'add',\n timestamp: 1700000601,\n source: { type: 'browser', platform: 'web', url: 'https://example.com/' },\n },\n out: [\n [\n 'return',\n {\n name: 'product add',\n data: {\n name: 'Everyday Ruck Snack',\n price: 420,\n _processed: true,\n _processedBy: 'transformer-demo',\n },\n id: 'ev-1700000601',\n trigger: 'click',\n entity: 'product',\n action: 'add',\n timestamp: 1700000601,\n source: {\n type: 'browser',\n platform: 'web',\n url: 'https://example.com/',\n },\n },\n ],\n ],\n};\n","import type { Transformer, WalkerOS } from '@walkeros/core';\nimport type { Types } from './types';\n\nexport * as TransformerDemo from './types';\nexport * as examples from './examples';\n\n/**\n * Demo transformer for walkerOS\n *\n * Logs events using env.log (or console.log fallback) and passes them through.\n * Perfect for testing and demonstrations without external dependencies.\n *\n * Configuration options:\n * - name: Custom name for logging prefix (default: 'transformer-demo')\n * - fields: Array of dot-notation paths to log from the event (default: entire event)\n * - addProcessedFlag: If true, adds a 'processed' flag to the event data\n */\nexport const transformerDemo: Transformer.Init<Types> = (initContext) => {\n const { config, env } = initContext;\n const settings = {\n name: 'transformer-demo',\n ...config?.settings,\n };\n\n return {\n type: 'demo',\n config: { ...config, settings },\n\n init(context: Transformer.Context<Types>) {\n // eslint-disable-next-line no-console\n const log = env?.log || console.log;\n context.logger.debug('initialized');\n log(`[${settings.name}] initialized`);\n },\n\n push(\n event: WalkerOS.DeepPartialEvent,\n context: Transformer.Context<Types>,\n ) {\n // eslint-disable-next-line no-console\n const log = env?.log || console.log;\n\n const output = settings.fields\n ? extractValues(\n event as unknown as Record<string, unknown>,\n settings.fields,\n )\n : event;\n\n log(`[${settings.name}] ${JSON.stringify(output, null, 2)}`);\n context.logger.debug('processed event', {\n event: (event as { name?: string }).name,\n });\n\n // Optionally modify the event\n if (settings.addProcessedFlag) {\n return {\n event: {\n ...event,\n data: {\n ...(event.data || {}),\n _processed: true,\n _processedBy: settings.name,\n },\n } as WalkerOS.DeepPartialEvent,\n };\n }\n\n // Return void for passthrough (event unchanged)\n return;\n },\n };\n};\n\n/**\n * Extract values from object using dot notation paths\n */\nfunction extractValues(\n obj: Record<string, unknown>,\n paths: string[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = {};\n\n for (const path of paths) {\n const value = path\n .split('.')\n .reduce<unknown>(\n (acc, key) => (acc as Record<string, unknown>)?.[key],\n obj,\n );\n if (value !== undefined) {\n result[path] = value;\n }\n }\n\n return result;\n}\n\nexport default transformerDemo;\n"],"mappings":"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","names":[]}
|
package/dist/walkerOS.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$meta": {
|
|
3
3
|
"package": "@walkeros/transformer-demo",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "4.0.0-next-1777463920154",
|
|
5
5
|
"type": "transformer",
|
|
6
6
|
"platform": [
|
|
7
7
|
"web",
|
|
@@ -57,20 +57,15 @@
|
|
|
57
57
|
"name": "Everyday Ruck Snack",
|
|
58
58
|
"price": 420
|
|
59
59
|
},
|
|
60
|
-
"id": "1700000601
|
|
60
|
+
"id": "ev-1700000601",
|
|
61
61
|
"trigger": "click",
|
|
62
62
|
"entity": "product",
|
|
63
63
|
"action": "add",
|
|
64
64
|
"timestamp": 1700000601,
|
|
65
|
-
"group": "gr0up",
|
|
66
|
-
"count": 2,
|
|
67
|
-
"version": {
|
|
68
|
-
"tagging": 1
|
|
69
|
-
},
|
|
70
65
|
"source": {
|
|
71
|
-
"type": "
|
|
72
|
-
"
|
|
73
|
-
"
|
|
66
|
+
"type": "browser",
|
|
67
|
+
"platform": "web",
|
|
68
|
+
"url": "https://example.com/"
|
|
74
69
|
}
|
|
75
70
|
},
|
|
76
71
|
"out": [
|
|
@@ -84,20 +79,15 @@
|
|
|
84
79
|
"_processed": true,
|
|
85
80
|
"_processedBy": "transformer-demo"
|
|
86
81
|
},
|
|
87
|
-
"id": "1700000601
|
|
82
|
+
"id": "ev-1700000601",
|
|
88
83
|
"trigger": "click",
|
|
89
84
|
"entity": "product",
|
|
90
85
|
"action": "add",
|
|
91
86
|
"timestamp": 1700000601,
|
|
92
|
-
"group": "gr0up",
|
|
93
|
-
"count": 2,
|
|
94
|
-
"version": {
|
|
95
|
-
"tagging": 1
|
|
96
|
-
},
|
|
97
87
|
"source": {
|
|
98
|
-
"type": "
|
|
99
|
-
"
|
|
100
|
-
"
|
|
88
|
+
"type": "browser",
|
|
89
|
+
"platform": "web",
|
|
90
|
+
"url": "https://example.com/"
|
|
101
91
|
}
|
|
102
92
|
}
|
|
103
93
|
]
|
|
@@ -112,20 +102,15 @@
|
|
|
112
102
|
"title": "Getting Started",
|
|
113
103
|
"id": "/docs/getting-started"
|
|
114
104
|
},
|
|
115
|
-
"id": "1700000600
|
|
105
|
+
"id": "ev-1700000600",
|
|
116
106
|
"trigger": "load",
|
|
117
107
|
"entity": "page",
|
|
118
108
|
"action": "view",
|
|
119
109
|
"timestamp": 1700000600,
|
|
120
|
-
"group": "gr0up",
|
|
121
|
-
"count": 1,
|
|
122
|
-
"version": {
|
|
123
|
-
"tagging": 1
|
|
124
|
-
},
|
|
125
110
|
"source": {
|
|
126
|
-
"type": "
|
|
127
|
-
"
|
|
128
|
-
"
|
|
111
|
+
"type": "browser",
|
|
112
|
+
"platform": "web",
|
|
113
|
+
"url": "https://example.com/"
|
|
129
114
|
}
|
|
130
115
|
},
|
|
131
116
|
"out": []
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@walkeros/transformer-demo",
|
|
3
3
|
"description": "Demo transformer for walkerOS - logs and passes through events",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "4.0.0-next-1777463920154",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"module": "./dist/index.mjs",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"test": "jest"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@walkeros/core": "
|
|
28
|
+
"@walkeros/core": "4.0.0-next-1777463920154"
|
|
29
29
|
},
|
|
30
30
|
"repository": {
|
|
31
31
|
"url": "git+https://github.com/elbwalker/walkerOS.git",
|