@1mill/cloudevents 5.1.0 → 5.1.2

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,2 +1,2 @@
1
- var t;!function(t){t.NUMBER="number",t.STRING="string",t.UNDEFINED="undefined"}(t||(t={}));const e=({deprecated:t=!1,name:e,permitted:i=[],value:n})=>{if(t&&console.warn(`Cloudevent "${e}" is depricated`),i.length>=1&&!i.includes(typeof n)){const t=`Cloudevent "${e}" must be of type ${i.map(t=>t.toUpperCase()).sort().join(" or ")}.`;throw new Error(t)}return n};class i{constructor({actor:i,data:n,datacontenttype:o,dataschema:s,origin:a,source:r,specversion:d,subject:c,type:u,wschannelid:l}){var p,m,v,h;this.data=void 0,this.datacontenttype=void 0,this.dataschema=void 0,this.id=void 0,this.source=void 0,this.specversion=void 0,this.subject=void 0,this.time=void 0,this.type=void 0,this.actor=void 0,this.wschannelid=void 0,this.originid=void 0,this.originsource=void 0,this.origintime=void 0,this.origintype=void 0;const N="ce_"+((t=21)=>crypto.getRandomValues(new Uint8Array(t)).reduce((t,e)=>t+((e&=63)<36?e.toString(36):e<62?(e-26).toString(36).toUpperCase():e>62?"-":"_"),""))(33);this.id=e({name:"id",permitted:[t.STRING],value:N});const g=null!=r?r:((t,e)=>{if("undefined"!=typeof process)return process.env.MILL_CLOUDEVENTS_SOURCE||void 0})();this.source=e({name:"source",permitted:[t.STRING],value:g}),this.type=e({name:"type",permitted:[t.STRING],value:u}),this.specversion=e({name:"specversion",permitted:[t.STRING],value:null!=d?d:"1.0"});const I=(new Date).toISOString();this.time=e({name:"time",permitted:[t.STRING],value:I});const S=void 0===o?JSON.stringify(n):n;this.data=e({name:"data",value:S}),this.datacontenttype=e({name:"datacontenttype",permitted:[t.STRING,t.UNDEFINED],value:this.data?null!=o?o:"application/json":o}),this.dataschema=e({name:"dataschema",permitted:[t.STRING,t.UNDEFINED],value:s}),this.subject=e({name:"subject",permitted:[t.STRING,t.UNDEFINED],value:c}),this.actor=e({name:"actor",permitted:[t.STRING,t.UNDEFINED],value:i}),this.wschannelid=e({name:"wschannelid",permitted:[t.STRING,t.UNDEFINED],value:l});const y=null!=(p=null==a?void 0:a.originid)?p:this.id;this.originid=e({name:"originid",permitted:[t.STRING],value:y});const R=null!=(m=null==a?void 0:a.originsource)?m:this.source;this.originsource=e({name:"originsource",permitted:[t.STRING],value:R});const E=null!=(v=null==a?void 0:a.origintime)?v:this.time;this.origintime=e({name:"origintime",permitted:[t.STRING],value:E});const T=null!=(h=null==a?void 0:a.origintype)?h:this.type;this.origintype=e({name:"origintype",permitted:[t.STRING],value:T})}}export{i as Cloudevent};
1
+ var t;!function(t){t.NUMBER="number",t.STRING="string",t.UNDEFINED="undefined"}(t||(t={}));const e=({deprecated:t=!1,name:e,permitted:i=[],value:n})=>{if(t&&console.warn(`Cloudevent "${e}" is depricated`),i.length>=1&&!i.includes(typeof n)){const t=`Cloudevent "${e}" must be of type ${i.map(t=>t.toUpperCase()).sort().join(" or ")}.`;throw new Error(t)}return n};class i{constructor({actor:i,data:n,datacontenttype:o,dataschema:s,origin:a,source:r,specversion:d,subject:c,type:u,wschannelid:l}){var p,m,v,h;this.data=void 0,this.datacontenttype=void 0,this.dataschema=void 0,this.id=void 0,this.source=void 0,this.specversion=void 0,this.subject=void 0,this.time=void 0,this.type=void 0,this.actor=void 0,this.wschannelid=void 0,this.originid=void 0,this.originsource=void 0,this.origintime=void 0,this.origintype=void 0;const N="ce_"+((t=21)=>crypto.getRandomValues(new Uint8Array(t)).reduce((t,e)=>t+((e&=63)<36?e.toString(36):e<62?(e-26).toString(36).toUpperCase():e>62?"-":"_"),""))(33);this.id=e({name:"id",permitted:[t.STRING],value:N});const g=null!=r?r:(()=>{if("undefined"!=typeof process)return process.env.MILL_CLOUDEVENTS_SOURCE||void 0})();this.source=e({name:"source",permitted:[t.STRING],value:g}),this.type=e({name:"type",permitted:[t.STRING],value:u}),this.specversion=e({name:"specversion",permitted:[t.STRING],value:null!=d?d:"1.0"});const I=(new Date).toISOString();this.time=e({name:"time",permitted:[t.STRING],value:I});const S=void 0===o?JSON.stringify(n):n;this.data=e({name:"data",value:S}),this.datacontenttype=e({name:"datacontenttype",permitted:[t.STRING,t.UNDEFINED],value:this.data?null!=o?o:"application/json":o}),this.dataschema=e({name:"dataschema",permitted:[t.STRING,t.UNDEFINED],value:s}),this.subject=e({name:"subject",permitted:[t.STRING,t.UNDEFINED],value:c}),this.actor=e({name:"actor",permitted:[t.STRING,t.UNDEFINED],value:i}),this.wschannelid=e({name:"wschannelid",permitted:[t.STRING,t.UNDEFINED],value:l});const y=null!=(p=null==a?void 0:a.originid)?p:this.id;this.originid=e({name:"originid",permitted:[t.STRING],value:y});const R=null!=(m=null==a?void 0:a.originsource)?m:this.source;this.originsource=e({name:"originsource",permitted:[t.STRING],value:R});const E=null!=(v=null==a?void 0:a.origintime)?v:this.time;this.origintime=e({name:"origintime",permitted:[t.STRING],value:E});const T=null!=(h=null==a?void 0:a.origintype)?h:this.type;this.origintype=e({name:"origintype",permitted:[t.STRING],value:T})}}export{i as Cloudevent};
2
2
  //# sourceMappingURL=cloudevents.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloudevents.esm.js","sources":["../../src/utils/validateAttribute.ts","../../src/utils/cloudevent.ts","../../node_modules/nanoid/index.browser.js","../../src/utils/fetchNodeEnv.ts"],"sourcesContent":["export enum Permitted {\r\n\tNUMBER = 'number',\r\n\tSTRING = 'string',\r\n\tUNDEFINED = 'undefined',\r\n}\r\n\r\ninterface ValidateAttributeProps {\r\n\tdeprecated?: boolean\r\n\tname: string\r\n\tpermitted?: Permitted[]\r\n\tvalue: any\r\n}\r\n\r\nexport const validateAttribute = ({ deprecated = false, name, permitted = [], value }: ValidateAttributeProps) => {\r\n\tif (deprecated) { console.warn(`Cloudevent \"${name}\" is depricated`) }\r\n\r\n\tif (permitted.length >= 1 && !permitted.includes(typeof value as any)) {\r\n\t\tconst message = `Cloudevent \"${name}\" must be of type ${permitted.map(s => s.toUpperCase()).sort().join(' or ')}.`\r\n\t\tthrow new Error(message)\r\n\t}\r\n\r\n\treturn value\r\n}\r\n","import { Permitted, validateAttribute } from './validateAttribute.js'\r\nimport { fetchNodeEnv } from './fetchNodeEnv.js'\r\nimport { nanoid } from 'nanoid'\r\n\r\nexport interface CloudeventProps {\r\n\t// * Cloudevent v1 props\r\n\tdata?: Cloudevent['data']\r\n\tdatacontenttype?: Cloudevent['datacontenttype']\r\n\tdataschema?: Cloudevent['dataschema']\r\n\tsource?: Cloudevent['source']\r\n\tspecversion?: Cloudevent['specversion']\r\n\tsubject?: Cloudevent['subject']\r\n\ttype: Cloudevent['type']\r\n\r\n\t// * In-house extension props\r\n\tactor?: Cloudevent['actor']\r\n\twschannelid?: Cloudevent['wschannelid']\r\n\r\n\t// * In-house helpers\r\n\torigin?: Cloudevent\r\n}\r\n\r\nexport class Cloudevent {\r\n\t// * Cloudevents v1 fields\r\n\treadonly data?: any\r\n\treadonly datacontenttype?: string\r\n\treadonly dataschema?: string\r\n\treadonly id: string\r\n\treadonly source: string\r\n\treadonly specversion: string\r\n\treadonly subject?: string\r\n\treadonly time: string\r\n\treadonly type: string\r\n\r\n\t// * In-house extensions\r\n\treadonly actor?: string\r\n\treadonly wschannelid?: string\r\n\r\n\t// * In-house origin extensions\r\n\treadonly originid: Cloudevent['id']\r\n\treadonly originsource: Cloudevent['source']\r\n\treadonly origintime: Cloudevent['time']\r\n\treadonly origintype: Cloudevent['type']\r\n\r\n\tconstructor({\r\n\t\tactor,\r\n\t\tdata,\r\n\t\tdatacontenttype,\r\n\t\tdataschema,\r\n\t\torigin,\r\n\t\tsource,\r\n\t\tspecversion,\r\n\t\tsubject,\r\n\t\ttype,\r\n\t\twschannelid,\r\n\t}: CloudeventProps) {\r\n\t\t// *******\r\n\t\t// * Required fields by Cloudevent v1 specification\r\n\t\tconst idValue = 'ce_' + nanoid(33)\r\n\t\tthis.id = validateAttribute({\r\n\t\t\tname: 'id',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: idValue\r\n\t\t})\r\n\r\n\t\tconst sourceValue = source ?? fetchNodeEnv('MILL_CLOUDEVENTS_SOURCE')\r\n\t\tthis.source = validateAttribute({\r\n\t\t\tname: 'source',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: sourceValue\r\n\t\t})\r\n\r\n\t\tthis.type = validateAttribute({\r\n\t\t\tname: 'type',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: type\r\n\t\t})\r\n\r\n\t\tconst specversionValue = specversion ?? '1.0'\r\n\t\tthis.specversion = validateAttribute({\r\n\t\t\tname: 'specversion',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: specversionValue\r\n\t\t})\r\n\r\n\t\tconst timeValue = new Date().toISOString()\r\n\t\tthis.time = validateAttribute({\r\n\t\t\tname: 'time',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: timeValue\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional fields by Cloudevent v1 specification\r\n\t\tconst dataValue = datacontenttype === undefined ? JSON.stringify(data) : data\r\n\t\tthis.data = validateAttribute({\r\n\t\t\tname: 'data',\r\n\t\t\tvalue: dataValue\r\n\t\t})\r\n\r\n\t\tconst datacontenttypeValue = this.data\r\n\t\t\t? datacontenttype ?? 'application/json'\r\n\t\t\t: datacontenttype\r\n\t\tthis.datacontenttype = validateAttribute({\r\n\t\t\tname: 'datacontenttype',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: datacontenttypeValue\r\n\t\t})\r\n\r\n\t\tthis.dataschema = validateAttribute({\r\n\t\t\tname: 'dataschema',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: dataschema\r\n\t\t})\r\n\r\n\t\tthis.subject = validateAttribute({\r\n\t\t\tname: 'subject',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: subject\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional in-house extentions\r\n\t\tthis.actor = validateAttribute({\r\n\t\t\tname: 'actor',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: actor,\r\n\t\t})\r\n\r\n\t\tthis.wschannelid = validateAttribute({\r\n\t\t\tname: 'wschannelid',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: wschannelid,\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Origin in-house extentions\r\n\t\tconst originidValue = origin?.originid ?? this.id\r\n\t\tthis.originid = validateAttribute({\r\n\t\t\tname: 'originid',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originidValue,\r\n\t\t})\r\n\r\n\t\tconst originsourceValue = origin?.originsource ?? this.source\r\n\t\tthis.originsource = validateAttribute({\r\n\t\t\tname: 'originsource',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originsourceValue,\r\n\t\t})\r\n\r\n\t\tconst origintimeValue = origin?.origintime ?? this.time\r\n\t\tthis.origintime = validateAttribute({\r\n\t\t\tname: 'origintime',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintimeValue,\r\n\t\t})\r\n\r\n\t\tconst origintypeValue = origin?.origintype ?? this.type\r\n\t\tthis.origintype = validateAttribute({\r\n\t\t\tname: 'origintype',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintypeValue,\r\n\t\t})\r\n\t\t// *******\r\n\t}\r\n}\r\n","import { urlAlphabet } from './url-alphabet/index.js'\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, defaultSize, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * defaultSize) / alphabet.length)\n return (size = defaultSize) => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size = 21) =>\n customRandom(alphabet, size, random)\nlet nanoid = (size = 21) =>\n crypto.getRandomValues(new Uint8Array(size)).reduce((id, byte) => {\n byte &= 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte > 62) {\n id += '-'\n } else {\n id += '_'\n }\n return id\n }, '')\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","export const fetchNodeEnv = (name: string, fallbackValue?: any) => {\r\n\tif (typeof process === 'undefined') { return }\r\n\treturn process.env[name] || fallbackValue\r\n}\r\n"],"names":["Permitted","validateAttribute","deprecated","name","permitted","value","console","warn","length","includes","message","map","s","toUpperCase","sort","join","Error","Cloudevent","constructor","actor","data","datacontenttype","dataschema","origin","source","specversion","subject","type","wschannelid","_origin$originid","_origin$originsource","_origin$origintime","_origin$origintype","this","id","time","originid","originsource","origintime","origintype","idValue","size","crypto","getRandomValues","Uint8Array","reduce","byte","toString","nanoid","STRING","fallbackValue","process","env","fetchNodeEnv","sourceValue","timeValue","Date","toISOString","dataValue","undefined","JSON","stringify","UNDEFINED","originidValue","originsourceValue","origintimeValue","origintypeValue"],"mappings":"AAAYA,IAAAA,GAAZ,SAAYA,GACXA,EAAA,OAAA,SACAA,EAAA,OAAA,SACAA,EAAA,UAAA,WAHD,CAAA,CAAYA,IAAAA,EAIX,CAJoB,IAaRC,MAAAA,EAAoB,EAAGC,WAAAA,GAAa,EAAOC,OAAMC,UAAAA,EAAY,GAAIC,YAG7E,GAFIH,GAAcI,QAAQC,oBAAoBJ,oBAE1CC,EAAUI,QAAU,IAAMJ,EAAUK,gBAAgBJ,GAAe,CACtE,MAAaK,EAAG,eAAeP,sBAAyBC,EAAUO,IAAIC,GAAKA,EAAEC,eAAeC,OAAOC,KAAK,WACxG,MAAM,IAAAC,MAAUN,EAChB,CAED,UCCYO,MAAAA,EAsBZC,aAAYC,MACXA,EADWC,KAEXA,EAFWC,gBAGXA,EAHWC,WAIXA,EAJWC,OAKXA,EALWC,OAMXA,EANWC,YAOXA,EAPWC,QAQXA,EARWC,KASXA,EATWC,YAUXA,IACiB,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,KA/BTb,UA+BS,EAAAa,KA9BTZ,qBACAC,EAAAA,KAAAA,gBACAY,EAAAA,KAAAA,QACAV,EAAAA,KAAAA,YACAC,EAAAA,KAAAA,wBACAC,aAyBS,EAAAO,KAxBTE,UAwBS,EAAAF,KAvBTN,UAuBS,EAAAM,KApBTd,WAoBS,EAAAc,KAnBTL,iBAGAQ,EAAAA,KAAAA,cACAC,EAAAA,KAAAA,kBACAC,EAAAA,KAAAA,gBACAC,EAAAA,KAAAA,gBAgBR,EAAA,MAAaC,EAAG,MCvCL,EAACC,EAAO,KACnBC,OAAOC,gBAAgB,IAAIC,WAAWH,IAAOI,OAAO,CAACX,EAAIY,IAGrDZ,IAFFY,GAAQ,IACG,GACHA,EAAKC,SAAS,IACXD,EAAO,IACTA,EAAO,IAAIC,SAAS,IAAIlC,cACtBiC,EAAO,GACV,IAEA,KAGP,ID0BqBE,CAAO,IAC/Bf,KAAKC,GAAKjC,EAAkB,CAC3BE,KAAM,KACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAAOmC,IAGR,QAAoBhB,MAAAA,EAAAA,EEjEM,EAACrB,EAAc+C,KAC1C,GAAuB,oBAAnBC,QACJ,OAAOA,QAAQC,IAAR,8BF+DwBC,CE/DHH,EF+DGG,GAC9BpB,KAAKT,OAASvB,EAAkB,CAC/BE,KAAM,SACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAAOiD,IAGRrB,KAAKN,KAAO1B,EAAkB,CAC7BE,KAAM,OACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAAOsB,IAIRM,KAAKR,YAAcxB,EAAkB,CACpCE,KAAM,cACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAJwBoB,MAAAA,EAAAA,EAAe,QAOxC,MAAM8B,GAAY,IAAAC,MAAWC,cAC7BxB,KAAKE,KAAOlC,EAAkB,CAC7BE,KAAM,OACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAAOkD,IAMR,MAAMG,OAAgCC,IAApBtC,EAAgCuC,KAAKC,UAAUzC,GAAQA,EACzEa,KAAKb,KAAOnB,EAAkB,CAC7BE,KAAM,OACNE,MAAOqD,IAMRzB,KAAKZ,gBAAkBpB,EAAkB,CACxCE,KAAM,kBACNC,UAAW,CAACJ,EAAUiD,OAAQjD,EAAU8D,WACxCzD,MAN4B4B,KAAKb,KAAL,MAC1BC,EAAAA,EAAmB,mBACnBA,IAOHY,KAAKX,WAAarB,EAAkB,CACnCE,KAAM,aACNC,UAAW,CAACJ,EAAUiD,OAAQjD,EAAU8D,WACxCzD,MAAOiB,IAGRW,KAAKP,QAAUzB,EAAkB,CAChCE,KAAM,UACNC,UAAW,CAACJ,EAAUiD,OAAQjD,EAAU8D,WACxCzD,MAAOqB,IAMRO,KAAKd,MAAQlB,EAAkB,CAC9BE,KAAM,QACNC,UAAW,CAACJ,EAAUiD,OAAQjD,EAAU8D,WACxCzD,MAAOc,IAGRc,KAAKL,YAAc3B,EAAkB,CACpCE,KAAM,cACNC,UAAW,CAACJ,EAAUiD,OAAQjD,EAAU8D,WACxCzD,MAAOuB,IAMR,MAAmBmC,EAAA,OAAAlC,EAAA,MAAIN,OAAJ,EAAIA,EAAQa,UAAZP,EAAwBI,KAAKC,GAChDD,KAAKG,SAAWnC,EAAkB,CACjCE,KAAM,WACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAAO0D,IAGR,MAAMC,SAAoBzC,EAAAA,MAAAA,OAAAA,EAAAA,EAAQc,gBAAgBJ,KAAKT,OACvDS,KAAKI,aAAepC,EAAkB,CACrCE,KAAM,eACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAAO2D,IAGR,MAAMC,EAAwC,OAAtB1C,EAAAA,MAAAA,OAAAA,EAAAA,EAAQe,YAAcP,EAAAE,KAAKE,KACnDF,KAAKK,WAAarC,EAAkB,CACnCE,KAAM,aACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAAO4D,IAGR,MAAqBC,EAAyB,OAAzBlC,EAAA,MAAGT,OAAH,EAAGA,EAAQgB,YAAcP,EAAAC,KAAKN,KACnDM,KAAKM,WAAatC,EAAkB,CACnCE,KAAM,aACNC,UAAW,CAACJ,EAAUiD,QACtB5C,MAAO6D,GAGR"}
1
+ {"version":3,"file":"cloudevents.esm.js","sources":["../../src/utils/validateAttribute.ts","../../src/utils/cloudevent.ts","../../node_modules/nanoid/index.browser.js","../../src/utils/fetchNodeEnv.ts"],"sourcesContent":["export enum Permitted {\r\n\tNUMBER = 'number',\r\n\tSTRING = 'string',\r\n\tUNDEFINED = 'undefined',\r\n}\r\n\r\ninterface ValidateAttributeProps {\r\n\tdeprecated?: boolean\r\n\tname: string\r\n\tpermitted?: Permitted[]\r\n\tvalue: any\r\n}\r\n\r\nexport const validateAttribute = ({ deprecated = false, name, permitted = [], value }: ValidateAttributeProps) => {\r\n\tif (deprecated) { console.warn(`Cloudevent \"${name}\" is depricated`) }\r\n\r\n\tif (permitted.length >= 1 && !permitted.includes(typeof value as any)) {\r\n\t\tconst message = `Cloudevent \"${name}\" must be of type ${permitted.map(s => s.toUpperCase()).sort().join(' or ')}.`\r\n\t\tthrow new Error(message)\r\n\t}\r\n\r\n\treturn value\r\n}\r\n","import { Permitted, validateAttribute } from './validateAttribute.js'\r\nimport { fetchNodeEnv } from './fetchNodeEnv.js'\r\nimport { nanoid } from 'nanoid'\r\n\r\nexport interface CloudeventProps {\r\n\t// * Cloudevent v1 props\r\n\tdata?: Cloudevent['data']\r\n\tdatacontenttype?: Cloudevent['datacontenttype']\r\n\tdataschema?: Cloudevent['dataschema']\r\n\tsource?: Cloudevent['source']\r\n\tspecversion?: Cloudevent['specversion']\r\n\tsubject?: Cloudevent['subject']\r\n\ttype: Cloudevent['type']\r\n\r\n\t// * In-house extension props\r\n\tactor?: Cloudevent['actor']\r\n\twschannelid?: Cloudevent['wschannelid']\r\n\r\n\t// * In-house helpers\r\n\torigin?: Cloudevent\r\n}\r\n\r\nexport class Cloudevent {\r\n\t// * Cloudevents v1 fields\r\n\treadonly data?: any\r\n\treadonly datacontenttype?: string\r\n\treadonly dataschema?: string\r\n\treadonly id: string\r\n\treadonly source: string\r\n\treadonly specversion: string\r\n\treadonly subject?: string\r\n\treadonly time: string\r\n\treadonly type: string\r\n\r\n\t// * In-house extensions\r\n\treadonly actor?: string\r\n\treadonly wschannelid?: string\r\n\r\n\t// * In-house origin extensions\r\n\treadonly originid: Cloudevent['id']\r\n\treadonly originsource: Cloudevent['source']\r\n\treadonly origintime: Cloudevent['time']\r\n\treadonly origintype: Cloudevent['type']\r\n\r\n\tconstructor({\r\n\t\tactor,\r\n\t\tdata,\r\n\t\tdatacontenttype,\r\n\t\tdataschema,\r\n\t\torigin,\r\n\t\tsource,\r\n\t\tspecversion,\r\n\t\tsubject,\r\n\t\ttype,\r\n\t\twschannelid,\r\n\t}: CloudeventProps) {\r\n\t\t// *******\r\n\t\t// * Required fields by Cloudevent v1 specification\r\n\t\tconst idValue = 'ce_' + nanoid(33)\r\n\t\tthis.id = validateAttribute({\r\n\t\t\tname: 'id',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: idValue\r\n\t\t})\r\n\r\n\t\tconst sourceValue = source ?? fetchNodeEnv('MILL_CLOUDEVENTS_SOURCE')\r\n\t\tthis.source = validateAttribute({\r\n\t\t\tname: 'source',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: sourceValue\r\n\t\t})\r\n\r\n\t\tthis.type = validateAttribute({\r\n\t\t\tname: 'type',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: type\r\n\t\t})\r\n\r\n\t\tconst specversionValue = specversion ?? '1.0'\r\n\t\tthis.specversion = validateAttribute({\r\n\t\t\tname: 'specversion',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: specversionValue\r\n\t\t})\r\n\r\n\t\tconst timeValue = new Date().toISOString()\r\n\t\tthis.time = validateAttribute({\r\n\t\t\tname: 'time',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: timeValue\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional fields by Cloudevent v1 specification\r\n\t\tconst dataValue = datacontenttype === undefined ? JSON.stringify(data) : data\r\n\t\tthis.data = validateAttribute({\r\n\t\t\tname: 'data',\r\n\t\t\tvalue: dataValue\r\n\t\t})\r\n\r\n\t\tconst datacontenttypeValue = this.data\r\n\t\t\t? datacontenttype ?? 'application/json'\r\n\t\t\t: datacontenttype\r\n\t\tthis.datacontenttype = validateAttribute({\r\n\t\t\tname: 'datacontenttype',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: datacontenttypeValue\r\n\t\t})\r\n\r\n\t\tthis.dataschema = validateAttribute({\r\n\t\t\tname: 'dataschema',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: dataschema\r\n\t\t})\r\n\r\n\t\tthis.subject = validateAttribute({\r\n\t\t\tname: 'subject',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: subject\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional in-house extentions\r\n\t\tthis.actor = validateAttribute({\r\n\t\t\tname: 'actor',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: actor,\r\n\t\t})\r\n\r\n\t\tthis.wschannelid = validateAttribute({\r\n\t\t\tname: 'wschannelid',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: wschannelid,\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Origin in-house extentions\r\n\t\tconst originidValue = origin?.originid ?? this.id\r\n\t\tthis.originid = validateAttribute({\r\n\t\t\tname: 'originid',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originidValue,\r\n\t\t})\r\n\r\n\t\tconst originsourceValue = origin?.originsource ?? this.source\r\n\t\tthis.originsource = validateAttribute({\r\n\t\t\tname: 'originsource',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originsourceValue,\r\n\t\t})\r\n\r\n\t\tconst origintimeValue = origin?.origintime ?? this.time\r\n\t\tthis.origintime = validateAttribute({\r\n\t\t\tname: 'origintime',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintimeValue,\r\n\t\t})\r\n\r\n\t\tconst origintypeValue = origin?.origintype ?? this.type\r\n\t\tthis.origintype = validateAttribute({\r\n\t\t\tname: 'origintype',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintypeValue,\r\n\t\t})\r\n\t\t// *******\r\n\t}\r\n}\r\n","import { urlAlphabet } from './url-alphabet/index.js'\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, defaultSize, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * defaultSize) / alphabet.length)\n return (size = defaultSize) => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step | 0\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size = 21) =>\n customRandom(alphabet, size, random)\nlet nanoid = (size = 21) =>\n crypto.getRandomValues(new Uint8Array(size)).reduce((id, byte) => {\n byte &= 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte > 62) {\n id += '-'\n } else {\n id += '_'\n }\n return id\n }, '')\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","export const fetchNodeEnv = (name: string, fallbackValue?: any) => {\r\n\tif (typeof process === 'undefined') { return }\r\n\treturn process.env[name] || fallbackValue\r\n}\r\n"],"names":["Permitted","validateAttribute","deprecated","name","permitted","value","console","warn","length","includes","message","map","s","toUpperCase","sort","join","Error","Cloudevent","constructor","actor","data","datacontenttype","dataschema","origin","source","specversion","subject","type","wschannelid","_origin$originid","_origin$originsource","_origin$origintime","_origin$origintype","this","id","time","originid","originsource","origintime","origintype","idValue","size","crypto","getRandomValues","Uint8Array","reduce","byte","toString","nanoid","STRING","sourceValue","fetchNodeEnv","process","env","timeValue","Date","toISOString","dataValue","undefined","JSON","stringify","UNDEFINED","originidValue","originsourceValue","origintimeValue","origintypeValue"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i((e||self).cloudevents={})}(this,function(e){var i;!function(e){e.NUMBER="number",e.STRING="string",e.UNDEFINED="undefined"}(i||(i={}));var t=function(e){var i=e.deprecated,t=e.name,n=e.permitted,o=void 0===n?[]:n,a=e.value;if(void 0!==i&&i&&console.warn('Cloudevent "'+t+'" is depricated'),o.length>=1&&!o.includes(typeof a)){var r='Cloudevent "'+t+'" must be of type '+o.map(function(e){return e.toUpperCase()}).sort().join(" or ")+".";throw new Error(r)}return a};e.Cloudevent=function(e){var n,o,a,r,d=e.actor,s=e.data,u=e.datacontenttype,v=e.dataschema,l=e.origin,p=e.source,c=e.specversion,m=e.subject,h=e.type,N=e.wschannelid;this.data=void 0,this.datacontenttype=void 0,this.dataschema=void 0,this.id=void 0,this.source=void 0,this.specversion=void 0,this.subject=void 0,this.time=void 0,this.type=void 0,this.actor=void 0,this.wschannelid=void 0,this.originid=void 0,this.originsource=void 0,this.origintime=void 0,this.origintype=void 0;var f="ce_"+((e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((e,i)=>e+((i&=63)<36?i.toString(36):i<62?(i-26).toString(36).toUpperCase():i>62?"-":"_"),""))(33);this.id=t({name:"id",permitted:[i.STRING],value:f});var g=null!=p?p:function(e,i){if("undefined"!=typeof process)return process.env.MILL_CLOUDEVENTS_SOURCE||void 0}();this.source=t({name:"source",permitted:[i.STRING],value:g}),this.type=t({name:"type",permitted:[i.STRING],value:h}),this.specversion=t({name:"specversion",permitted:[i.STRING],value:null!=c?c:"1.0"});var y=(new Date).toISOString();this.time=t({name:"time",permitted:[i.STRING],value:y});var I=void 0===u?JSON.stringify(s):s;this.data=t({name:"data",value:I}),this.datacontenttype=t({name:"datacontenttype",permitted:[i.STRING,i.UNDEFINED],value:this.data?null!=u?u:"application/json":u}),this.dataschema=t({name:"dataschema",permitted:[i.STRING,i.UNDEFINED],value:v}),this.subject=t({name:"subject",permitted:[i.STRING,i.UNDEFINED],value:m}),this.actor=t({name:"actor",permitted:[i.STRING,i.UNDEFINED],value:d}),this.wschannelid=t({name:"wschannelid",permitted:[i.STRING,i.UNDEFINED],value:N});var S=null!=(n=null==l?void 0:l.originid)?n:this.id;this.originid=t({name:"originid",permitted:[i.STRING],value:S});var R=null!=(o=null==l?void 0:l.originsource)?o:this.source;this.originsource=t({name:"originsource",permitted:[i.STRING],value:R});var T=null!=(a=null==l?void 0:l.origintime)?a:this.time;this.origintime=t({name:"origintime",permitted:[i.STRING],value:T});var E=null!=(r=null==l?void 0:l.origintype)?r:this.type;this.origintype=t({name:"origintype",permitted:[i.STRING],value:E})}});
1
+ !function(e,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i((e||self).cloudevents={})}(this,function(e){var i;!function(e){e.NUMBER="number",e.STRING="string",e.UNDEFINED="undefined"}(i||(i={}));var t=function(e){var i=e.deprecated,t=e.name,n=e.permitted,o=void 0===n?[]:n,a=e.value;if(void 0!==i&&i&&console.warn('Cloudevent "'+t+'" is depricated'),o.length>=1&&!o.includes(typeof a)){var r='Cloudevent "'+t+'" must be of type '+o.map(function(e){return e.toUpperCase()}).sort().join(" or ")+".";throw new Error(r)}return a};e.Cloudevent=function(e){var n,o,a,r,d=e.actor,s=e.data,u=e.datacontenttype,v=e.dataschema,l=e.origin,p=e.source,c=e.specversion,m=e.subject,h=e.type,N=e.wschannelid;this.data=void 0,this.datacontenttype=void 0,this.dataschema=void 0,this.id=void 0,this.source=void 0,this.specversion=void 0,this.subject=void 0,this.time=void 0,this.type=void 0,this.actor=void 0,this.wschannelid=void 0,this.originid=void 0,this.originsource=void 0,this.origintime=void 0,this.origintype=void 0;var f="ce_"+((e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((e,i)=>e+((i&=63)<36?i.toString(36):i<62?(i-26).toString(36).toUpperCase():i>62?"-":"_"),""))(33);this.id=t({name:"id",permitted:[i.STRING],value:f});var g=null!=p?p:function(){if("undefined"!=typeof process)return process.env.MILL_CLOUDEVENTS_SOURCE||void 0}();this.source=t({name:"source",permitted:[i.STRING],value:g}),this.type=t({name:"type",permitted:[i.STRING],value:h}),this.specversion=t({name:"specversion",permitted:[i.STRING],value:null!=c?c:"1.0"});var y=(new Date).toISOString();this.time=t({name:"time",permitted:[i.STRING],value:y});var I=void 0===u?JSON.stringify(s):s;this.data=t({name:"data",value:I}),this.datacontenttype=t({name:"datacontenttype",permitted:[i.STRING,i.UNDEFINED],value:this.data?null!=u?u:"application/json":u}),this.dataschema=t({name:"dataschema",permitted:[i.STRING,i.UNDEFINED],value:v}),this.subject=t({name:"subject",permitted:[i.STRING,i.UNDEFINED],value:m}),this.actor=t({name:"actor",permitted:[i.STRING,i.UNDEFINED],value:d}),this.wschannelid=t({name:"wschannelid",permitted:[i.STRING,i.UNDEFINED],value:N});var S=null!=(n=null==l?void 0:l.originid)?n:this.id;this.originid=t({name:"originid",permitted:[i.STRING],value:S});var R=null!=(o=null==l?void 0:l.originsource)?o:this.source;this.originsource=t({name:"originsource",permitted:[i.STRING],value:R});var T=null!=(a=null==l?void 0:l.origintime)?a:this.time;this.origintime=t({name:"origintime",permitted:[i.STRING],value:T});var E=null!=(r=null==l?void 0:l.origintype)?r:this.type;this.origintype=t({name:"origintype",permitted:[i.STRING],value:E})}});
2
2
  //# sourceMappingURL=cloudevents.umd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloudevents.umd.js","sources":["../../src/utils/validateAttribute.ts","../../src/utils/cloudevent.ts","../../node_modules/nanoid/index.browser.js","../../src/utils/fetchNodeEnv.ts"],"sourcesContent":["export enum Permitted {\r\n\tNUMBER = 'number',\r\n\tSTRING = 'string',\r\n\tUNDEFINED = 'undefined',\r\n}\r\n\r\ninterface ValidateAttributeProps {\r\n\tdeprecated?: boolean\r\n\tname: string\r\n\tpermitted?: Permitted[]\r\n\tvalue: any\r\n}\r\n\r\nexport const validateAttribute = ({ deprecated = false, name, permitted = [], value }: ValidateAttributeProps) => {\r\n\tif (deprecated) { console.warn(`Cloudevent \"${name}\" is depricated`) }\r\n\r\n\tif (permitted.length >= 1 && !permitted.includes(typeof value as any)) {\r\n\t\tconst message = `Cloudevent \"${name}\" must be of type ${permitted.map(s => s.toUpperCase()).sort().join(' or ')}.`\r\n\t\tthrow new Error(message)\r\n\t}\r\n\r\n\treturn value\r\n}\r\n","import { Permitted, validateAttribute } from './validateAttribute.js'\r\nimport { fetchNodeEnv } from './fetchNodeEnv.js'\r\nimport { nanoid } from 'nanoid'\r\n\r\nexport interface CloudeventProps {\r\n\t// * Cloudevent v1 props\r\n\tdata?: Cloudevent['data']\r\n\tdatacontenttype?: Cloudevent['datacontenttype']\r\n\tdataschema?: Cloudevent['dataschema']\r\n\tsource?: Cloudevent['source']\r\n\tspecversion?: Cloudevent['specversion']\r\n\tsubject?: Cloudevent['subject']\r\n\ttype: Cloudevent['type']\r\n\r\n\t// * In-house extension props\r\n\tactor?: Cloudevent['actor']\r\n\twschannelid?: Cloudevent['wschannelid']\r\n\r\n\t// * In-house helpers\r\n\torigin?: Cloudevent\r\n}\r\n\r\nexport class Cloudevent {\r\n\t// * Cloudevents v1 fields\r\n\treadonly data?: any\r\n\treadonly datacontenttype?: string\r\n\treadonly dataschema?: string\r\n\treadonly id: string\r\n\treadonly source: string\r\n\treadonly specversion: string\r\n\treadonly subject?: string\r\n\treadonly time: string\r\n\treadonly type: string\r\n\r\n\t// * In-house extensions\r\n\treadonly actor?: string\r\n\treadonly wschannelid?: string\r\n\r\n\t// * In-house origin extensions\r\n\treadonly originid: Cloudevent['id']\r\n\treadonly originsource: Cloudevent['source']\r\n\treadonly origintime: Cloudevent['time']\r\n\treadonly origintype: Cloudevent['type']\r\n\r\n\tconstructor({\r\n\t\tactor,\r\n\t\tdata,\r\n\t\tdatacontenttype,\r\n\t\tdataschema,\r\n\t\torigin,\r\n\t\tsource,\r\n\t\tspecversion,\r\n\t\tsubject,\r\n\t\ttype,\r\n\t\twschannelid,\r\n\t}: CloudeventProps) {\r\n\t\t// *******\r\n\t\t// * Required fields by Cloudevent v1 specification\r\n\t\tconst idValue = 'ce_' + nanoid(33)\r\n\t\tthis.id = validateAttribute({\r\n\t\t\tname: 'id',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: idValue\r\n\t\t})\r\n\r\n\t\tconst sourceValue = source ?? fetchNodeEnv('MILL_CLOUDEVENTS_SOURCE')\r\n\t\tthis.source = validateAttribute({\r\n\t\t\tname: 'source',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: sourceValue\r\n\t\t})\r\n\r\n\t\tthis.type = validateAttribute({\r\n\t\t\tname: 'type',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: type\r\n\t\t})\r\n\r\n\t\tconst specversionValue = specversion ?? '1.0'\r\n\t\tthis.specversion = validateAttribute({\r\n\t\t\tname: 'specversion',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: specversionValue\r\n\t\t})\r\n\r\n\t\tconst timeValue = new Date().toISOString()\r\n\t\tthis.time = validateAttribute({\r\n\t\t\tname: 'time',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: timeValue\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional fields by Cloudevent v1 specification\r\n\t\tconst dataValue = datacontenttype === undefined ? JSON.stringify(data) : data\r\n\t\tthis.data = validateAttribute({\r\n\t\t\tname: 'data',\r\n\t\t\tvalue: dataValue\r\n\t\t})\r\n\r\n\t\tconst datacontenttypeValue = this.data\r\n\t\t\t? datacontenttype ?? 'application/json'\r\n\t\t\t: datacontenttype\r\n\t\tthis.datacontenttype = validateAttribute({\r\n\t\t\tname: 'datacontenttype',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: datacontenttypeValue\r\n\t\t})\r\n\r\n\t\tthis.dataschema = validateAttribute({\r\n\t\t\tname: 'dataschema',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: dataschema\r\n\t\t})\r\n\r\n\t\tthis.subject = validateAttribute({\r\n\t\t\tname: 'subject',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: subject\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional in-house extentions\r\n\t\tthis.actor = validateAttribute({\r\n\t\t\tname: 'actor',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: actor,\r\n\t\t})\r\n\r\n\t\tthis.wschannelid = validateAttribute({\r\n\t\t\tname: 'wschannelid',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: wschannelid,\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Origin in-house extentions\r\n\t\tconst originidValue = origin?.originid ?? this.id\r\n\t\tthis.originid = validateAttribute({\r\n\t\t\tname: 'originid',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originidValue,\r\n\t\t})\r\n\r\n\t\tconst originsourceValue = origin?.originsource ?? this.source\r\n\t\tthis.originsource = validateAttribute({\r\n\t\t\tname: 'originsource',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originsourceValue,\r\n\t\t})\r\n\r\n\t\tconst origintimeValue = origin?.origintime ?? this.time\r\n\t\tthis.origintime = validateAttribute({\r\n\t\t\tname: 'origintime',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintimeValue,\r\n\t\t})\r\n\r\n\t\tconst origintypeValue = origin?.origintype ?? this.type\r\n\t\tthis.origintype = validateAttribute({\r\n\t\t\tname: 'origintype',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintypeValue,\r\n\t\t})\r\n\t\t// *******\r\n\t}\r\n}\r\n","import { urlAlphabet } from './url-alphabet/index.js'\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, defaultSize, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * defaultSize) / alphabet.length)\n return (size = defaultSize) => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size = 21) =>\n customRandom(alphabet, size, random)\nlet nanoid = (size = 21) =>\n crypto.getRandomValues(new Uint8Array(size)).reduce((id, byte) => {\n byte &= 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte > 62) {\n id += '-'\n } else {\n id += '_'\n }\n return id\n }, '')\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","export const fetchNodeEnv = (name: string, fallbackValue?: any) => {\r\n\tif (typeof process === 'undefined') { return }\r\n\treturn process.env[name] || fallbackValue\r\n}\r\n"],"names":["Permitted","validateAttribute","_ref","_ref$deprecated","deprecated","name","_ref$permitted","permitted","value","console","warn","length","includes","map","s","toUpperCase","sort","join","Error","message","actor","data","datacontenttype","dataschema","origin","source","specversion","subject","type","wschannelid","this","id","time","originid","originsource","origintime","origintype","idValue","size","crypto","getRandomValues","Uint8Array","reduce","byte","toString","nanoid","STRING","sourceValue","fallbackValue","process","env","fetchNodeEnv","timeValue","Date","toISOString","dataValue","undefined","JSON","stringify","UNDEFINED","originidValue","_origin$originid","originsourceValue","_origin$originsource","origintimeValue","_origin$origintime","origintypeValue","_origin$origintype"],"mappings":"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"}
1
+ {"version":3,"file":"cloudevents.umd.js","sources":["../../src/utils/validateAttribute.ts","../../src/utils/cloudevent.ts","../../node_modules/nanoid/index.browser.js","../../src/utils/fetchNodeEnv.ts"],"sourcesContent":["export enum Permitted {\r\n\tNUMBER = 'number',\r\n\tSTRING = 'string',\r\n\tUNDEFINED = 'undefined',\r\n}\r\n\r\ninterface ValidateAttributeProps {\r\n\tdeprecated?: boolean\r\n\tname: string\r\n\tpermitted?: Permitted[]\r\n\tvalue: any\r\n}\r\n\r\nexport const validateAttribute = ({ deprecated = false, name, permitted = [], value }: ValidateAttributeProps) => {\r\n\tif (deprecated) { console.warn(`Cloudevent \"${name}\" is depricated`) }\r\n\r\n\tif (permitted.length >= 1 && !permitted.includes(typeof value as any)) {\r\n\t\tconst message = `Cloudevent \"${name}\" must be of type ${permitted.map(s => s.toUpperCase()).sort().join(' or ')}.`\r\n\t\tthrow new Error(message)\r\n\t}\r\n\r\n\treturn value\r\n}\r\n","import { Permitted, validateAttribute } from './validateAttribute.js'\r\nimport { fetchNodeEnv } from './fetchNodeEnv.js'\r\nimport { nanoid } from 'nanoid'\r\n\r\nexport interface CloudeventProps {\r\n\t// * Cloudevent v1 props\r\n\tdata?: Cloudevent['data']\r\n\tdatacontenttype?: Cloudevent['datacontenttype']\r\n\tdataschema?: Cloudevent['dataschema']\r\n\tsource?: Cloudevent['source']\r\n\tspecversion?: Cloudevent['specversion']\r\n\tsubject?: Cloudevent['subject']\r\n\ttype: Cloudevent['type']\r\n\r\n\t// * In-house extension props\r\n\tactor?: Cloudevent['actor']\r\n\twschannelid?: Cloudevent['wschannelid']\r\n\r\n\t// * In-house helpers\r\n\torigin?: Cloudevent\r\n}\r\n\r\nexport class Cloudevent {\r\n\t// * Cloudevents v1 fields\r\n\treadonly data?: any\r\n\treadonly datacontenttype?: string\r\n\treadonly dataschema?: string\r\n\treadonly id: string\r\n\treadonly source: string\r\n\treadonly specversion: string\r\n\treadonly subject?: string\r\n\treadonly time: string\r\n\treadonly type: string\r\n\r\n\t// * In-house extensions\r\n\treadonly actor?: string\r\n\treadonly wschannelid?: string\r\n\r\n\t// * In-house origin extensions\r\n\treadonly originid: Cloudevent['id']\r\n\treadonly originsource: Cloudevent['source']\r\n\treadonly origintime: Cloudevent['time']\r\n\treadonly origintype: Cloudevent['type']\r\n\r\n\tconstructor({\r\n\t\tactor,\r\n\t\tdata,\r\n\t\tdatacontenttype,\r\n\t\tdataschema,\r\n\t\torigin,\r\n\t\tsource,\r\n\t\tspecversion,\r\n\t\tsubject,\r\n\t\ttype,\r\n\t\twschannelid,\r\n\t}: CloudeventProps) {\r\n\t\t// *******\r\n\t\t// * Required fields by Cloudevent v1 specification\r\n\t\tconst idValue = 'ce_' + nanoid(33)\r\n\t\tthis.id = validateAttribute({\r\n\t\t\tname: 'id',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: idValue\r\n\t\t})\r\n\r\n\t\tconst sourceValue = source ?? fetchNodeEnv('MILL_CLOUDEVENTS_SOURCE')\r\n\t\tthis.source = validateAttribute({\r\n\t\t\tname: 'source',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: sourceValue\r\n\t\t})\r\n\r\n\t\tthis.type = validateAttribute({\r\n\t\t\tname: 'type',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: type\r\n\t\t})\r\n\r\n\t\tconst specversionValue = specversion ?? '1.0'\r\n\t\tthis.specversion = validateAttribute({\r\n\t\t\tname: 'specversion',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: specversionValue\r\n\t\t})\r\n\r\n\t\tconst timeValue = new Date().toISOString()\r\n\t\tthis.time = validateAttribute({\r\n\t\t\tname: 'time',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: timeValue\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional fields by Cloudevent v1 specification\r\n\t\tconst dataValue = datacontenttype === undefined ? JSON.stringify(data) : data\r\n\t\tthis.data = validateAttribute({\r\n\t\t\tname: 'data',\r\n\t\t\tvalue: dataValue\r\n\t\t})\r\n\r\n\t\tconst datacontenttypeValue = this.data\r\n\t\t\t? datacontenttype ?? 'application/json'\r\n\t\t\t: datacontenttype\r\n\t\tthis.datacontenttype = validateAttribute({\r\n\t\t\tname: 'datacontenttype',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: datacontenttypeValue\r\n\t\t})\r\n\r\n\t\tthis.dataschema = validateAttribute({\r\n\t\t\tname: 'dataschema',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: dataschema\r\n\t\t})\r\n\r\n\t\tthis.subject = validateAttribute({\r\n\t\t\tname: 'subject',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: subject\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional in-house extentions\r\n\t\tthis.actor = validateAttribute({\r\n\t\t\tname: 'actor',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: actor,\r\n\t\t})\r\n\r\n\t\tthis.wschannelid = validateAttribute({\r\n\t\t\tname: 'wschannelid',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: wschannelid,\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Origin in-house extentions\r\n\t\tconst originidValue = origin?.originid ?? this.id\r\n\t\tthis.originid = validateAttribute({\r\n\t\t\tname: 'originid',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originidValue,\r\n\t\t})\r\n\r\n\t\tconst originsourceValue = origin?.originsource ?? this.source\r\n\t\tthis.originsource = validateAttribute({\r\n\t\t\tname: 'originsource',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originsourceValue,\r\n\t\t})\r\n\r\n\t\tconst origintimeValue = origin?.origintime ?? this.time\r\n\t\tthis.origintime = validateAttribute({\r\n\t\t\tname: 'origintime',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintimeValue,\r\n\t\t})\r\n\r\n\t\tconst origintypeValue = origin?.origintype ?? this.type\r\n\t\tthis.origintype = validateAttribute({\r\n\t\t\tname: 'origintype',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintypeValue,\r\n\t\t})\r\n\t\t// *******\r\n\t}\r\n}\r\n","import { urlAlphabet } from './url-alphabet/index.js'\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, defaultSize, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * defaultSize) / alphabet.length)\n return (size = defaultSize) => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step | 0\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size = 21) =>\n customRandom(alphabet, size, random)\nlet nanoid = (size = 21) =>\n crypto.getRandomValues(new Uint8Array(size)).reduce((id, byte) => {\n byte &= 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte > 62) {\n id += '-'\n } else {\n id += '_'\n }\n return id\n }, '')\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","export const fetchNodeEnv = (name: string, fallbackValue?: any) => {\r\n\tif (typeof process === 'undefined') { return }\r\n\treturn process.env[name] || fallbackValue\r\n}\r\n"],"names":["Permitted","validateAttribute","_ref","_ref$deprecated","deprecated","name","_ref$permitted","permitted","value","console","warn","length","includes","message","map","s","toUpperCase","sort","join","Error","_origin$originid","_origin$originsource","_origin$origintime","_origin$origintype","actor","data","datacontenttype","dataschema","origin","source","specversion","subject","type","wschannelid","this","id","time","originid","originsource","origintime","origintype","idValue","size","crypto","getRandomValues","Uint8Array","reduce","byte","toString","nanoid","STRING","sourceValue","process","env","fetchNodeEnv","timeValue","Date","toISOString","dataValue","undefined","JSON","stringify","UNDEFINED","originidValue","originsourceValue","origintimeValue","origintypeValue"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var e,i=require("nanoid");!function(e){e.NUMBER="number",e.STRING="string",e.UNDEFINED="undefined"}(e||(e={}));var t=function(e){var i=e.deprecated,t=e.name,n=e.permitted,a=void 0===n?[]:n,o=e.value;if(void 0!==i&&i&&console.warn('Cloudevent "'+t+'" is depricated'),a.length>=1&&!a.includes(typeof o)){var r='Cloudevent "'+t+'" must be of type '+a.map(function(e){return e.toUpperCase()}).sort().join(" or ")+".";throw new Error(r)}return o};exports.Cloudevent=function(n){var a,o,r,s,d=n.actor,v=n.data,u=n.datacontenttype,l=n.dataschema,c=n.origin,m=n.source,h=n.specversion,p=n.subject,N=n.type,I=n.wschannelid;this.data=void 0,this.datacontenttype=void 0,this.dataschema=void 0,this.id=void 0,this.source=void 0,this.specversion=void 0,this.subject=void 0,this.time=void 0,this.type=void 0,this.actor=void 0,this.wschannelid=void 0,this.originid=void 0,this.originsource=void 0,this.origintime=void 0,this.origintype=void 0;var g="ce_"+i.nanoid(33);this.id=t({name:"id",permitted:[e.STRING],value:g});var S=null!=m?m:function(e,i){if("undefined"!=typeof process)return process.env.MILL_CLOUDEVENTS_SOURCE||void 0}();this.source=t({name:"source",permitted:[e.STRING],value:S}),this.type=t({name:"type",permitted:[e.STRING],value:N}),this.specversion=t({name:"specversion",permitted:[e.STRING],value:null!=h?h:"1.0"});var y=(new Date).toISOString();this.time=t({name:"time",permitted:[e.STRING],value:y});var E=void 0===u?JSON.stringify(v):v;this.data=t({name:"data",value:E}),this.datacontenttype=t({name:"datacontenttype",permitted:[e.STRING,e.UNDEFINED],value:this.data?null!=u?u:"application/json":u}),this.dataschema=t({name:"dataschema",permitted:[e.STRING,e.UNDEFINED],value:l}),this.subject=t({name:"subject",permitted:[e.STRING,e.UNDEFINED],value:p}),this.actor=t({name:"actor",permitted:[e.STRING,e.UNDEFINED],value:d}),this.wschannelid=t({name:"wschannelid",permitted:[e.STRING,e.UNDEFINED],value:I});var R=null!=(a=null==c?void 0:c.originid)?a:this.id;this.originid=t({name:"originid",permitted:[e.STRING],value:R});var T=null!=(o=null==c?void 0:c.originsource)?o:this.source;this.originsource=t({name:"originsource",permitted:[e.STRING],value:T});var G=null!=(r=null==c?void 0:c.origintime)?r:this.time;this.origintime=t({name:"origintime",permitted:[e.STRING],value:G});var D=null!=(s=null==c?void 0:c.origintype)?s:this.type;this.origintype=t({name:"origintype",permitted:[e.STRING],value:D})};
1
+ var e,i=require("nanoid");!function(e){e.NUMBER="number",e.STRING="string",e.UNDEFINED="undefined"}(e||(e={}));var t=function(e){var i=e.deprecated,t=e.name,n=e.permitted,a=void 0===n?[]:n,o=e.value;if(void 0!==i&&i&&console.warn('Cloudevent "'+t+'" is depricated'),a.length>=1&&!a.includes(typeof o)){var r='Cloudevent "'+t+'" must be of type '+a.map(function(e){return e.toUpperCase()}).sort().join(" or ")+".";throw new Error(r)}return o};exports.Cloudevent=function(n){var a,o,r,s,d=n.actor,v=n.data,u=n.datacontenttype,l=n.dataschema,c=n.origin,m=n.source,h=n.specversion,p=n.subject,N=n.type,I=n.wschannelid;this.data=void 0,this.datacontenttype=void 0,this.dataschema=void 0,this.id=void 0,this.source=void 0,this.specversion=void 0,this.subject=void 0,this.time=void 0,this.type=void 0,this.actor=void 0,this.wschannelid=void 0,this.originid=void 0,this.originsource=void 0,this.origintime=void 0,this.origintype=void 0;var g="ce_"+i.nanoid(33);this.id=t({name:"id",permitted:[e.STRING],value:g});var S=null!=m?m:function(){if("undefined"!=typeof process)return process.env.MILL_CLOUDEVENTS_SOURCE||void 0}();this.source=t({name:"source",permitted:[e.STRING],value:S}),this.type=t({name:"type",permitted:[e.STRING],value:N}),this.specversion=t({name:"specversion",permitted:[e.STRING],value:null!=h?h:"1.0"});var y=(new Date).toISOString();this.time=t({name:"time",permitted:[e.STRING],value:y});var E=void 0===u?JSON.stringify(v):v;this.data=t({name:"data",value:E}),this.datacontenttype=t({name:"datacontenttype",permitted:[e.STRING,e.UNDEFINED],value:this.data?null!=u?u:"application/json":u}),this.dataschema=t({name:"dataschema",permitted:[e.STRING,e.UNDEFINED],value:l}),this.subject=t({name:"subject",permitted:[e.STRING,e.UNDEFINED],value:p}),this.actor=t({name:"actor",permitted:[e.STRING,e.UNDEFINED],value:d}),this.wschannelid=t({name:"wschannelid",permitted:[e.STRING,e.UNDEFINED],value:I});var R=null!=(a=null==c?void 0:c.originid)?a:this.id;this.originid=t({name:"originid",permitted:[e.STRING],value:R});var T=null!=(o=null==c?void 0:c.originsource)?o:this.source;this.originsource=t({name:"originsource",permitted:[e.STRING],value:T});var G=null!=(r=null==c?void 0:c.origintime)?r:this.time;this.origintime=t({name:"origintime",permitted:[e.STRING],value:G});var D=null!=(s=null==c?void 0:c.origintype)?s:this.type;this.origintype=t({name:"origintype",permitted:[e.STRING],value:D})};
2
2
  //# sourceMappingURL=cloudevents.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloudevents.cjs","sources":["../../src/utils/validateAttribute.ts","../../src/utils/cloudevent.ts","../../src/utils/fetchNodeEnv.ts"],"sourcesContent":["export enum Permitted {\r\n\tNUMBER = 'number',\r\n\tSTRING = 'string',\r\n\tUNDEFINED = 'undefined',\r\n}\r\n\r\ninterface ValidateAttributeProps {\r\n\tdeprecated?: boolean\r\n\tname: string\r\n\tpermitted?: Permitted[]\r\n\tvalue: any\r\n}\r\n\r\nexport const validateAttribute = ({ deprecated = false, name, permitted = [], value }: ValidateAttributeProps) => {\r\n\tif (deprecated) { console.warn(`Cloudevent \"${name}\" is depricated`) }\r\n\r\n\tif (permitted.length >= 1 && !permitted.includes(typeof value as any)) {\r\n\t\tconst message = `Cloudevent \"${name}\" must be of type ${permitted.map(s => s.toUpperCase()).sort().join(' or ')}.`\r\n\t\tthrow new Error(message)\r\n\t}\r\n\r\n\treturn value\r\n}\r\n","import { Permitted, validateAttribute } from './validateAttribute.js'\r\nimport { fetchNodeEnv } from './fetchNodeEnv.js'\r\nimport { nanoid } from 'nanoid'\r\n\r\nexport interface CloudeventProps {\r\n\t// * Cloudevent v1 props\r\n\tdata?: Cloudevent['data']\r\n\tdatacontenttype?: Cloudevent['datacontenttype']\r\n\tdataschema?: Cloudevent['dataschema']\r\n\tsource?: Cloudevent['source']\r\n\tspecversion?: Cloudevent['specversion']\r\n\tsubject?: Cloudevent['subject']\r\n\ttype: Cloudevent['type']\r\n\r\n\t// * In-house extension props\r\n\tactor?: Cloudevent['actor']\r\n\twschannelid?: Cloudevent['wschannelid']\r\n\r\n\t// * In-house helpers\r\n\torigin?: Cloudevent\r\n}\r\n\r\nexport class Cloudevent {\r\n\t// * Cloudevents v1 fields\r\n\treadonly data?: any\r\n\treadonly datacontenttype?: string\r\n\treadonly dataschema?: string\r\n\treadonly id: string\r\n\treadonly source: string\r\n\treadonly specversion: string\r\n\treadonly subject?: string\r\n\treadonly time: string\r\n\treadonly type: string\r\n\r\n\t// * In-house extensions\r\n\treadonly actor?: string\r\n\treadonly wschannelid?: string\r\n\r\n\t// * In-house origin extensions\r\n\treadonly originid: Cloudevent['id']\r\n\treadonly originsource: Cloudevent['source']\r\n\treadonly origintime: Cloudevent['time']\r\n\treadonly origintype: Cloudevent['type']\r\n\r\n\tconstructor({\r\n\t\tactor,\r\n\t\tdata,\r\n\t\tdatacontenttype,\r\n\t\tdataschema,\r\n\t\torigin,\r\n\t\tsource,\r\n\t\tspecversion,\r\n\t\tsubject,\r\n\t\ttype,\r\n\t\twschannelid,\r\n\t}: CloudeventProps) {\r\n\t\t// *******\r\n\t\t// * Required fields by Cloudevent v1 specification\r\n\t\tconst idValue = 'ce_' + nanoid(33)\r\n\t\tthis.id = validateAttribute({\r\n\t\t\tname: 'id',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: idValue\r\n\t\t})\r\n\r\n\t\tconst sourceValue = source ?? fetchNodeEnv('MILL_CLOUDEVENTS_SOURCE')\r\n\t\tthis.source = validateAttribute({\r\n\t\t\tname: 'source',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: sourceValue\r\n\t\t})\r\n\r\n\t\tthis.type = validateAttribute({\r\n\t\t\tname: 'type',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: type\r\n\t\t})\r\n\r\n\t\tconst specversionValue = specversion ?? '1.0'\r\n\t\tthis.specversion = validateAttribute({\r\n\t\t\tname: 'specversion',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: specversionValue\r\n\t\t})\r\n\r\n\t\tconst timeValue = new Date().toISOString()\r\n\t\tthis.time = validateAttribute({\r\n\t\t\tname: 'time',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: timeValue\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional fields by Cloudevent v1 specification\r\n\t\tconst dataValue = datacontenttype === undefined ? JSON.stringify(data) : data\r\n\t\tthis.data = validateAttribute({\r\n\t\t\tname: 'data',\r\n\t\t\tvalue: dataValue\r\n\t\t})\r\n\r\n\t\tconst datacontenttypeValue = this.data\r\n\t\t\t? datacontenttype ?? 'application/json'\r\n\t\t\t: datacontenttype\r\n\t\tthis.datacontenttype = validateAttribute({\r\n\t\t\tname: 'datacontenttype',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: datacontenttypeValue\r\n\t\t})\r\n\r\n\t\tthis.dataschema = validateAttribute({\r\n\t\t\tname: 'dataschema',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: dataschema\r\n\t\t})\r\n\r\n\t\tthis.subject = validateAttribute({\r\n\t\t\tname: 'subject',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: subject\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional in-house extentions\r\n\t\tthis.actor = validateAttribute({\r\n\t\t\tname: 'actor',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: actor,\r\n\t\t})\r\n\r\n\t\tthis.wschannelid = validateAttribute({\r\n\t\t\tname: 'wschannelid',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: wschannelid,\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Origin in-house extentions\r\n\t\tconst originidValue = origin?.originid ?? this.id\r\n\t\tthis.originid = validateAttribute({\r\n\t\t\tname: 'originid',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originidValue,\r\n\t\t})\r\n\r\n\t\tconst originsourceValue = origin?.originsource ?? this.source\r\n\t\tthis.originsource = validateAttribute({\r\n\t\t\tname: 'originsource',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originsourceValue,\r\n\t\t})\r\n\r\n\t\tconst origintimeValue = origin?.origintime ?? this.time\r\n\t\tthis.origintime = validateAttribute({\r\n\t\t\tname: 'origintime',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintimeValue,\r\n\t\t})\r\n\r\n\t\tconst origintypeValue = origin?.origintype ?? this.type\r\n\t\tthis.origintype = validateAttribute({\r\n\t\t\tname: 'origintype',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintypeValue,\r\n\t\t})\r\n\t\t// *******\r\n\t}\r\n}\r\n","export const fetchNodeEnv = (name: string, fallbackValue?: any) => {\r\n\tif (typeof process === 'undefined') { return }\r\n\treturn process.env[name] || fallbackValue\r\n}\r\n"],"names":["Permitted","validateAttribute","_ref","_ref$deprecated","deprecated","name","_ref$permitted","permitted","value","console","warn","length","includes","map","s","toUpperCase","sort","join","Error","message","actor","data","datacontenttype","dataschema","origin","source","specversion","subject","type","wschannelid","this","id","time","originid","originsource","origintime","origintype","idValue","nanoid","STRING","sourceValue","fallbackValue","process","env","fetchNodeEnv","timeValue","Date","toISOString","dataValue","undefined","JSON","stringify","UNDEFINED","originidValue","_origin$originid","originsourceValue","_origin$originsource","origintimeValue","_origin$origintime","origintypeValue","_origin$origintype"],"mappings":"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"}
1
+ {"version":3,"file":"cloudevents.cjs","sources":["../../src/utils/validateAttribute.ts","../../src/utils/cloudevent.ts","../../src/utils/fetchNodeEnv.ts"],"sourcesContent":["export enum Permitted {\r\n\tNUMBER = 'number',\r\n\tSTRING = 'string',\r\n\tUNDEFINED = 'undefined',\r\n}\r\n\r\ninterface ValidateAttributeProps {\r\n\tdeprecated?: boolean\r\n\tname: string\r\n\tpermitted?: Permitted[]\r\n\tvalue: any\r\n}\r\n\r\nexport const validateAttribute = ({ deprecated = false, name, permitted = [], value }: ValidateAttributeProps) => {\r\n\tif (deprecated) { console.warn(`Cloudevent \"${name}\" is depricated`) }\r\n\r\n\tif (permitted.length >= 1 && !permitted.includes(typeof value as any)) {\r\n\t\tconst message = `Cloudevent \"${name}\" must be of type ${permitted.map(s => s.toUpperCase()).sort().join(' or ')}.`\r\n\t\tthrow new Error(message)\r\n\t}\r\n\r\n\treturn value\r\n}\r\n","import { Permitted, validateAttribute } from './validateAttribute.js'\r\nimport { fetchNodeEnv } from './fetchNodeEnv.js'\r\nimport { nanoid } from 'nanoid'\r\n\r\nexport interface CloudeventProps {\r\n\t// * Cloudevent v1 props\r\n\tdata?: Cloudevent['data']\r\n\tdatacontenttype?: Cloudevent['datacontenttype']\r\n\tdataschema?: Cloudevent['dataschema']\r\n\tsource?: Cloudevent['source']\r\n\tspecversion?: Cloudevent['specversion']\r\n\tsubject?: Cloudevent['subject']\r\n\ttype: Cloudevent['type']\r\n\r\n\t// * In-house extension props\r\n\tactor?: Cloudevent['actor']\r\n\twschannelid?: Cloudevent['wschannelid']\r\n\r\n\t// * In-house helpers\r\n\torigin?: Cloudevent\r\n}\r\n\r\nexport class Cloudevent {\r\n\t// * Cloudevents v1 fields\r\n\treadonly data?: any\r\n\treadonly datacontenttype?: string\r\n\treadonly dataschema?: string\r\n\treadonly id: string\r\n\treadonly source: string\r\n\treadonly specversion: string\r\n\treadonly subject?: string\r\n\treadonly time: string\r\n\treadonly type: string\r\n\r\n\t// * In-house extensions\r\n\treadonly actor?: string\r\n\treadonly wschannelid?: string\r\n\r\n\t// * In-house origin extensions\r\n\treadonly originid: Cloudevent['id']\r\n\treadonly originsource: Cloudevent['source']\r\n\treadonly origintime: Cloudevent['time']\r\n\treadonly origintype: Cloudevent['type']\r\n\r\n\tconstructor({\r\n\t\tactor,\r\n\t\tdata,\r\n\t\tdatacontenttype,\r\n\t\tdataschema,\r\n\t\torigin,\r\n\t\tsource,\r\n\t\tspecversion,\r\n\t\tsubject,\r\n\t\ttype,\r\n\t\twschannelid,\r\n\t}: CloudeventProps) {\r\n\t\t// *******\r\n\t\t// * Required fields by Cloudevent v1 specification\r\n\t\tconst idValue = 'ce_' + nanoid(33)\r\n\t\tthis.id = validateAttribute({\r\n\t\t\tname: 'id',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: idValue\r\n\t\t})\r\n\r\n\t\tconst sourceValue = source ?? fetchNodeEnv('MILL_CLOUDEVENTS_SOURCE')\r\n\t\tthis.source = validateAttribute({\r\n\t\t\tname: 'source',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: sourceValue\r\n\t\t})\r\n\r\n\t\tthis.type = validateAttribute({\r\n\t\t\tname: 'type',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: type\r\n\t\t})\r\n\r\n\t\tconst specversionValue = specversion ?? '1.0'\r\n\t\tthis.specversion = validateAttribute({\r\n\t\t\tname: 'specversion',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: specversionValue\r\n\t\t})\r\n\r\n\t\tconst timeValue = new Date().toISOString()\r\n\t\tthis.time = validateAttribute({\r\n\t\t\tname: 'time',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: timeValue\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional fields by Cloudevent v1 specification\r\n\t\tconst dataValue = datacontenttype === undefined ? JSON.stringify(data) : data\r\n\t\tthis.data = validateAttribute({\r\n\t\t\tname: 'data',\r\n\t\t\tvalue: dataValue\r\n\t\t})\r\n\r\n\t\tconst datacontenttypeValue = this.data\r\n\t\t\t? datacontenttype ?? 'application/json'\r\n\t\t\t: datacontenttype\r\n\t\tthis.datacontenttype = validateAttribute({\r\n\t\t\tname: 'datacontenttype',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: datacontenttypeValue\r\n\t\t})\r\n\r\n\t\tthis.dataschema = validateAttribute({\r\n\t\t\tname: 'dataschema',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: dataschema\r\n\t\t})\r\n\r\n\t\tthis.subject = validateAttribute({\r\n\t\t\tname: 'subject',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: subject\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional in-house extentions\r\n\t\tthis.actor = validateAttribute({\r\n\t\t\tname: 'actor',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: actor,\r\n\t\t})\r\n\r\n\t\tthis.wschannelid = validateAttribute({\r\n\t\t\tname: 'wschannelid',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: wschannelid,\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Origin in-house extentions\r\n\t\tconst originidValue = origin?.originid ?? this.id\r\n\t\tthis.originid = validateAttribute({\r\n\t\t\tname: 'originid',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originidValue,\r\n\t\t})\r\n\r\n\t\tconst originsourceValue = origin?.originsource ?? this.source\r\n\t\tthis.originsource = validateAttribute({\r\n\t\t\tname: 'originsource',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originsourceValue,\r\n\t\t})\r\n\r\n\t\tconst origintimeValue = origin?.origintime ?? this.time\r\n\t\tthis.origintime = validateAttribute({\r\n\t\t\tname: 'origintime',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintimeValue,\r\n\t\t})\r\n\r\n\t\tconst origintypeValue = origin?.origintype ?? this.type\r\n\t\tthis.origintype = validateAttribute({\r\n\t\t\tname: 'origintype',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintypeValue,\r\n\t\t})\r\n\t\t// *******\r\n\t}\r\n}\r\n","export const fetchNodeEnv = (name: string, fallbackValue?: any) => {\r\n\tif (typeof process === 'undefined') { return }\r\n\treturn process.env[name] || fallbackValue\r\n}\r\n"],"names":["Permitted","validateAttribute","_ref","_ref$deprecated","deprecated","name","_ref$permitted","permitted","value","console","warn","length","includes","message","map","s","toUpperCase","sort","join","Error","_origin$originid","_origin$originsource","_origin$origintime","_origin$origintype","actor","data","datacontenttype","dataschema","origin","source","specversion","subject","type","wschannelid","this","id","time","originid","originsource","origintime","origintype","idValue","nanoid","STRING","sourceValue","process","env","fetchNodeEnv","timeValue","Date","toISOString","dataValue","undefined","JSON","stringify","UNDEFINED","originidValue","originsourceValue","origintimeValue","origintypeValue"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{nanoid as i}from"nanoid";var e;!function(i){i.NUMBER="number",i.STRING="string",i.UNDEFINED="undefined"}(e||(e={}));var t=function(i){var e=i.deprecated,t=i.name,n=i.permitted,a=void 0===n?[]:n,o=i.value;if(void 0!==e&&e&&console.warn('Cloudevent "'+t+'" is depricated'),a.length>=1&&!a.includes(typeof o)){var r='Cloudevent "'+t+'" must be of type '+a.map(function(i){return i.toUpperCase()}).sort().join(" or ")+".";throw new Error(r)}return o},n=function(n){var a,o,r,s,d=n.actor,v=n.data,u=n.datacontenttype,l=n.dataschema,m=n.origin,c=n.source,p=n.specversion,h=n.subject,N=n.type,I=n.wschannelid;this.data=void 0,this.datacontenttype=void 0,this.dataschema=void 0,this.id=void 0,this.source=void 0,this.specversion=void 0,this.subject=void 0,this.time=void 0,this.type=void 0,this.actor=void 0,this.wschannelid=void 0,this.originid=void 0,this.originsource=void 0,this.origintime=void 0,this.origintype=void 0;var g="ce_"+i(33);this.id=t({name:"id",permitted:[e.STRING],value:g});var S=null!=c?c:function(i,e){if("undefined"!=typeof process)return process.env.MILL_CLOUDEVENTS_SOURCE||void 0}();this.source=t({name:"source",permitted:[e.STRING],value:S}),this.type=t({name:"type",permitted:[e.STRING],value:N}),this.specversion=t({name:"specversion",permitted:[e.STRING],value:null!=p?p:"1.0"});var y=(new Date).toISOString();this.time=t({name:"time",permitted:[e.STRING],value:y});var E=void 0===u?JSON.stringify(v):v;this.data=t({name:"data",value:E}),this.datacontenttype=t({name:"datacontenttype",permitted:[e.STRING,e.UNDEFINED],value:this.data?null!=u?u:"application/json":u}),this.dataschema=t({name:"dataschema",permitted:[e.STRING,e.UNDEFINED],value:l}),this.subject=t({name:"subject",permitted:[e.STRING,e.UNDEFINED],value:h}),this.actor=t({name:"actor",permitted:[e.STRING,e.UNDEFINED],value:d}),this.wschannelid=t({name:"wschannelid",permitted:[e.STRING,e.UNDEFINED],value:I});var R=null!=(a=null==m?void 0:m.originid)?a:this.id;this.originid=t({name:"originid",permitted:[e.STRING],value:R});var T=null!=(o=null==m?void 0:m.originsource)?o:this.source;this.originsource=t({name:"originsource",permitted:[e.STRING],value:T});var G=null!=(r=null==m?void 0:m.origintime)?r:this.time;this.origintime=t({name:"origintime",permitted:[e.STRING],value:G});var f=null!=(s=null==m?void 0:m.origintype)?s:this.type;this.origintype=t({name:"origintype",permitted:[e.STRING],value:f})};export{n as Cloudevent};
1
+ import{nanoid as i}from"nanoid";var e;!function(i){i.NUMBER="number",i.STRING="string",i.UNDEFINED="undefined"}(e||(e={}));var t=function(i){var e=i.deprecated,t=i.name,n=i.permitted,a=void 0===n?[]:n,o=i.value;if(void 0!==e&&e&&console.warn('Cloudevent "'+t+'" is depricated'),a.length>=1&&!a.includes(typeof o)){var r='Cloudevent "'+t+'" must be of type '+a.map(function(i){return i.toUpperCase()}).sort().join(" or ")+".";throw new Error(r)}return o},n=function(n){var a,o,r,s,d=n.actor,v=n.data,u=n.datacontenttype,l=n.dataschema,m=n.origin,c=n.source,p=n.specversion,h=n.subject,N=n.type,I=n.wschannelid;this.data=void 0,this.datacontenttype=void 0,this.dataschema=void 0,this.id=void 0,this.source=void 0,this.specversion=void 0,this.subject=void 0,this.time=void 0,this.type=void 0,this.actor=void 0,this.wschannelid=void 0,this.originid=void 0,this.originsource=void 0,this.origintime=void 0,this.origintype=void 0;var g="ce_"+i(33);this.id=t({name:"id",permitted:[e.STRING],value:g});var S=null!=c?c:function(){if("undefined"!=typeof process)return process.env.MILL_CLOUDEVENTS_SOURCE||void 0}();this.source=t({name:"source",permitted:[e.STRING],value:S}),this.type=t({name:"type",permitted:[e.STRING],value:N}),this.specversion=t({name:"specversion",permitted:[e.STRING],value:null!=p?p:"1.0"});var y=(new Date).toISOString();this.time=t({name:"time",permitted:[e.STRING],value:y});var E=void 0===u?JSON.stringify(v):v;this.data=t({name:"data",value:E}),this.datacontenttype=t({name:"datacontenttype",permitted:[e.STRING,e.UNDEFINED],value:this.data?null!=u?u:"application/json":u}),this.dataschema=t({name:"dataschema",permitted:[e.STRING,e.UNDEFINED],value:l}),this.subject=t({name:"subject",permitted:[e.STRING,e.UNDEFINED],value:h}),this.actor=t({name:"actor",permitted:[e.STRING,e.UNDEFINED],value:d}),this.wschannelid=t({name:"wschannelid",permitted:[e.STRING,e.UNDEFINED],value:I});var R=null!=(a=null==m?void 0:m.originid)?a:this.id;this.originid=t({name:"originid",permitted:[e.STRING],value:R});var T=null!=(o=null==m?void 0:m.originsource)?o:this.source;this.originsource=t({name:"originsource",permitted:[e.STRING],value:T});var G=null!=(r=null==m?void 0:m.origintime)?r:this.time;this.origintime=t({name:"origintime",permitted:[e.STRING],value:G});var f=null!=(s=null==m?void 0:m.origintype)?s:this.type;this.origintype=t({name:"origintype",permitted:[e.STRING],value:f})};export{n as Cloudevent};
2
2
  //# sourceMappingURL=cloudevents.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloudevents.esm.js","sources":["../../src/utils/validateAttribute.ts","../../src/utils/cloudevent.ts","../../src/utils/fetchNodeEnv.ts"],"sourcesContent":["export enum Permitted {\r\n\tNUMBER = 'number',\r\n\tSTRING = 'string',\r\n\tUNDEFINED = 'undefined',\r\n}\r\n\r\ninterface ValidateAttributeProps {\r\n\tdeprecated?: boolean\r\n\tname: string\r\n\tpermitted?: Permitted[]\r\n\tvalue: any\r\n}\r\n\r\nexport const validateAttribute = ({ deprecated = false, name, permitted = [], value }: ValidateAttributeProps) => {\r\n\tif (deprecated) { console.warn(`Cloudevent \"${name}\" is depricated`) }\r\n\r\n\tif (permitted.length >= 1 && !permitted.includes(typeof value as any)) {\r\n\t\tconst message = `Cloudevent \"${name}\" must be of type ${permitted.map(s => s.toUpperCase()).sort().join(' or ')}.`\r\n\t\tthrow new Error(message)\r\n\t}\r\n\r\n\treturn value\r\n}\r\n","import { Permitted, validateAttribute } from './validateAttribute.js'\r\nimport { fetchNodeEnv } from './fetchNodeEnv.js'\r\nimport { nanoid } from 'nanoid'\r\n\r\nexport interface CloudeventProps {\r\n\t// * Cloudevent v1 props\r\n\tdata?: Cloudevent['data']\r\n\tdatacontenttype?: Cloudevent['datacontenttype']\r\n\tdataschema?: Cloudevent['dataschema']\r\n\tsource?: Cloudevent['source']\r\n\tspecversion?: Cloudevent['specversion']\r\n\tsubject?: Cloudevent['subject']\r\n\ttype: Cloudevent['type']\r\n\r\n\t// * In-house extension props\r\n\tactor?: Cloudevent['actor']\r\n\twschannelid?: Cloudevent['wschannelid']\r\n\r\n\t// * In-house helpers\r\n\torigin?: Cloudevent\r\n}\r\n\r\nexport class Cloudevent {\r\n\t// * Cloudevents v1 fields\r\n\treadonly data?: any\r\n\treadonly datacontenttype?: string\r\n\treadonly dataschema?: string\r\n\treadonly id: string\r\n\treadonly source: string\r\n\treadonly specversion: string\r\n\treadonly subject?: string\r\n\treadonly time: string\r\n\treadonly type: string\r\n\r\n\t// * In-house extensions\r\n\treadonly actor?: string\r\n\treadonly wschannelid?: string\r\n\r\n\t// * In-house origin extensions\r\n\treadonly originid: Cloudevent['id']\r\n\treadonly originsource: Cloudevent['source']\r\n\treadonly origintime: Cloudevent['time']\r\n\treadonly origintype: Cloudevent['type']\r\n\r\n\tconstructor({\r\n\t\tactor,\r\n\t\tdata,\r\n\t\tdatacontenttype,\r\n\t\tdataschema,\r\n\t\torigin,\r\n\t\tsource,\r\n\t\tspecversion,\r\n\t\tsubject,\r\n\t\ttype,\r\n\t\twschannelid,\r\n\t}: CloudeventProps) {\r\n\t\t// *******\r\n\t\t// * Required fields by Cloudevent v1 specification\r\n\t\tconst idValue = 'ce_' + nanoid(33)\r\n\t\tthis.id = validateAttribute({\r\n\t\t\tname: 'id',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: idValue\r\n\t\t})\r\n\r\n\t\tconst sourceValue = source ?? fetchNodeEnv('MILL_CLOUDEVENTS_SOURCE')\r\n\t\tthis.source = validateAttribute({\r\n\t\t\tname: 'source',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: sourceValue\r\n\t\t})\r\n\r\n\t\tthis.type = validateAttribute({\r\n\t\t\tname: 'type',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: type\r\n\t\t})\r\n\r\n\t\tconst specversionValue = specversion ?? '1.0'\r\n\t\tthis.specversion = validateAttribute({\r\n\t\t\tname: 'specversion',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: specversionValue\r\n\t\t})\r\n\r\n\t\tconst timeValue = new Date().toISOString()\r\n\t\tthis.time = validateAttribute({\r\n\t\t\tname: 'time',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: timeValue\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional fields by Cloudevent v1 specification\r\n\t\tconst dataValue = datacontenttype === undefined ? JSON.stringify(data) : data\r\n\t\tthis.data = validateAttribute({\r\n\t\t\tname: 'data',\r\n\t\t\tvalue: dataValue\r\n\t\t})\r\n\r\n\t\tconst datacontenttypeValue = this.data\r\n\t\t\t? datacontenttype ?? 'application/json'\r\n\t\t\t: datacontenttype\r\n\t\tthis.datacontenttype = validateAttribute({\r\n\t\t\tname: 'datacontenttype',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: datacontenttypeValue\r\n\t\t})\r\n\r\n\t\tthis.dataschema = validateAttribute({\r\n\t\t\tname: 'dataschema',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: dataschema\r\n\t\t})\r\n\r\n\t\tthis.subject = validateAttribute({\r\n\t\t\tname: 'subject',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: subject\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional in-house extentions\r\n\t\tthis.actor = validateAttribute({\r\n\t\t\tname: 'actor',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: actor,\r\n\t\t})\r\n\r\n\t\tthis.wschannelid = validateAttribute({\r\n\t\t\tname: 'wschannelid',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: wschannelid,\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Origin in-house extentions\r\n\t\tconst originidValue = origin?.originid ?? this.id\r\n\t\tthis.originid = validateAttribute({\r\n\t\t\tname: 'originid',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originidValue,\r\n\t\t})\r\n\r\n\t\tconst originsourceValue = origin?.originsource ?? this.source\r\n\t\tthis.originsource = validateAttribute({\r\n\t\t\tname: 'originsource',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originsourceValue,\r\n\t\t})\r\n\r\n\t\tconst origintimeValue = origin?.origintime ?? this.time\r\n\t\tthis.origintime = validateAttribute({\r\n\t\t\tname: 'origintime',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintimeValue,\r\n\t\t})\r\n\r\n\t\tconst origintypeValue = origin?.origintype ?? this.type\r\n\t\tthis.origintype = validateAttribute({\r\n\t\t\tname: 'origintype',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintypeValue,\r\n\t\t})\r\n\t\t// *******\r\n\t}\r\n}\r\n","export const fetchNodeEnv = (name: string, fallbackValue?: any) => {\r\n\tif (typeof process === 'undefined') { return }\r\n\treturn process.env[name] || fallbackValue\r\n}\r\n"],"names":["Permitted","validateAttribute","_ref","_ref$deprecated","deprecated","name","_ref$permitted","permitted","value","console","warn","length","includes","map","s","toUpperCase","sort","join","Error","message","Cloudevent","actor","data","datacontenttype","dataschema","origin","source","specversion","subject","type","wschannelid","this","id","time","originid","originsource","origintime","origintype","idValue","nanoid","STRING","sourceValue","fallbackValue","process","env","fetchNodeEnv","timeValue","Date","toISOString","dataValue","undefined","JSON","stringify","UNDEFINED","originidValue","_origin$originid","originsourceValue","_origin$originsource","origintimeValue","_origin$origintime","origintypeValue","_origin$origintype"],"mappings":"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"}
1
+ {"version":3,"file":"cloudevents.esm.js","sources":["../../src/utils/validateAttribute.ts","../../src/utils/cloudevent.ts","../../src/utils/fetchNodeEnv.ts"],"sourcesContent":["export enum Permitted {\r\n\tNUMBER = 'number',\r\n\tSTRING = 'string',\r\n\tUNDEFINED = 'undefined',\r\n}\r\n\r\ninterface ValidateAttributeProps {\r\n\tdeprecated?: boolean\r\n\tname: string\r\n\tpermitted?: Permitted[]\r\n\tvalue: any\r\n}\r\n\r\nexport const validateAttribute = ({ deprecated = false, name, permitted = [], value }: ValidateAttributeProps) => {\r\n\tif (deprecated) { console.warn(`Cloudevent \"${name}\" is depricated`) }\r\n\r\n\tif (permitted.length >= 1 && !permitted.includes(typeof value as any)) {\r\n\t\tconst message = `Cloudevent \"${name}\" must be of type ${permitted.map(s => s.toUpperCase()).sort().join(' or ')}.`\r\n\t\tthrow new Error(message)\r\n\t}\r\n\r\n\treturn value\r\n}\r\n","import { Permitted, validateAttribute } from './validateAttribute.js'\r\nimport { fetchNodeEnv } from './fetchNodeEnv.js'\r\nimport { nanoid } from 'nanoid'\r\n\r\nexport interface CloudeventProps {\r\n\t// * Cloudevent v1 props\r\n\tdata?: Cloudevent['data']\r\n\tdatacontenttype?: Cloudevent['datacontenttype']\r\n\tdataschema?: Cloudevent['dataschema']\r\n\tsource?: Cloudevent['source']\r\n\tspecversion?: Cloudevent['specversion']\r\n\tsubject?: Cloudevent['subject']\r\n\ttype: Cloudevent['type']\r\n\r\n\t// * In-house extension props\r\n\tactor?: Cloudevent['actor']\r\n\twschannelid?: Cloudevent['wschannelid']\r\n\r\n\t// * In-house helpers\r\n\torigin?: Cloudevent\r\n}\r\n\r\nexport class Cloudevent {\r\n\t// * Cloudevents v1 fields\r\n\treadonly data?: any\r\n\treadonly datacontenttype?: string\r\n\treadonly dataschema?: string\r\n\treadonly id: string\r\n\treadonly source: string\r\n\treadonly specversion: string\r\n\treadonly subject?: string\r\n\treadonly time: string\r\n\treadonly type: string\r\n\r\n\t// * In-house extensions\r\n\treadonly actor?: string\r\n\treadonly wschannelid?: string\r\n\r\n\t// * In-house origin extensions\r\n\treadonly originid: Cloudevent['id']\r\n\treadonly originsource: Cloudevent['source']\r\n\treadonly origintime: Cloudevent['time']\r\n\treadonly origintype: Cloudevent['type']\r\n\r\n\tconstructor({\r\n\t\tactor,\r\n\t\tdata,\r\n\t\tdatacontenttype,\r\n\t\tdataschema,\r\n\t\torigin,\r\n\t\tsource,\r\n\t\tspecversion,\r\n\t\tsubject,\r\n\t\ttype,\r\n\t\twschannelid,\r\n\t}: CloudeventProps) {\r\n\t\t// *******\r\n\t\t// * Required fields by Cloudevent v1 specification\r\n\t\tconst idValue = 'ce_' + nanoid(33)\r\n\t\tthis.id = validateAttribute({\r\n\t\t\tname: 'id',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: idValue\r\n\t\t})\r\n\r\n\t\tconst sourceValue = source ?? fetchNodeEnv('MILL_CLOUDEVENTS_SOURCE')\r\n\t\tthis.source = validateAttribute({\r\n\t\t\tname: 'source',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: sourceValue\r\n\t\t})\r\n\r\n\t\tthis.type = validateAttribute({\r\n\t\t\tname: 'type',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: type\r\n\t\t})\r\n\r\n\t\tconst specversionValue = specversion ?? '1.0'\r\n\t\tthis.specversion = validateAttribute({\r\n\t\t\tname: 'specversion',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: specversionValue\r\n\t\t})\r\n\r\n\t\tconst timeValue = new Date().toISOString()\r\n\t\tthis.time = validateAttribute({\r\n\t\t\tname: 'time',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: timeValue\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional fields by Cloudevent v1 specification\r\n\t\tconst dataValue = datacontenttype === undefined ? JSON.stringify(data) : data\r\n\t\tthis.data = validateAttribute({\r\n\t\t\tname: 'data',\r\n\t\t\tvalue: dataValue\r\n\t\t})\r\n\r\n\t\tconst datacontenttypeValue = this.data\r\n\t\t\t? datacontenttype ?? 'application/json'\r\n\t\t\t: datacontenttype\r\n\t\tthis.datacontenttype = validateAttribute({\r\n\t\t\tname: 'datacontenttype',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: datacontenttypeValue\r\n\t\t})\r\n\r\n\t\tthis.dataschema = validateAttribute({\r\n\t\t\tname: 'dataschema',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: dataschema\r\n\t\t})\r\n\r\n\t\tthis.subject = validateAttribute({\r\n\t\t\tname: 'subject',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: subject\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Optional in-house extentions\r\n\t\tthis.actor = validateAttribute({\r\n\t\t\tname: 'actor',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: actor,\r\n\t\t})\r\n\r\n\t\tthis.wschannelid = validateAttribute({\r\n\t\t\tname: 'wschannelid',\r\n\t\t\tpermitted: [Permitted.STRING, Permitted.UNDEFINED],\r\n\t\t\tvalue: wschannelid,\r\n\t\t})\r\n\t\t// *******\r\n\r\n\t\t// *******\r\n\t\t// * Origin in-house extentions\r\n\t\tconst originidValue = origin?.originid ?? this.id\r\n\t\tthis.originid = validateAttribute({\r\n\t\t\tname: 'originid',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originidValue,\r\n\t\t})\r\n\r\n\t\tconst originsourceValue = origin?.originsource ?? this.source\r\n\t\tthis.originsource = validateAttribute({\r\n\t\t\tname: 'originsource',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: originsourceValue,\r\n\t\t})\r\n\r\n\t\tconst origintimeValue = origin?.origintime ?? this.time\r\n\t\tthis.origintime = validateAttribute({\r\n\t\t\tname: 'origintime',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintimeValue,\r\n\t\t})\r\n\r\n\t\tconst origintypeValue = origin?.origintype ?? this.type\r\n\t\tthis.origintype = validateAttribute({\r\n\t\t\tname: 'origintype',\r\n\t\t\tpermitted: [Permitted.STRING],\r\n\t\t\tvalue: origintypeValue,\r\n\t\t})\r\n\t\t// *******\r\n\t}\r\n}\r\n","export const fetchNodeEnv = (name: string, fallbackValue?: any) => {\r\n\tif (typeof process === 'undefined') { return }\r\n\treturn process.env[name] || fallbackValue\r\n}\r\n"],"names":["Permitted","validateAttribute","_ref","_ref$deprecated","deprecated","name","_ref$permitted","permitted","value","console","warn","length","includes","message","map","s","toUpperCase","sort","join","Error","Cloudevent","_origin$originid","_origin$originsource","_origin$origintime","_origin$origintype","actor","data","datacontenttype","dataschema","origin","source","specversion","subject","type","wschannelid","this","id","time","originid","originsource","origintime","origintype","idValue","nanoid","STRING","sourceValue","process","env","fetchNodeEnv","timeValue","Date","toISOString","dataValue","undefined","JSON","stringify","UNDEFINED","originidValue","originsourceValue","origintimeValue","origintypeValue"],"mappings":"oCAAYA,GAAZ,SAAYA,GACXA,EAAA,OAAA,SACAA,EAAA,OAAA,SACAA,EAAA,UAAA,WACA,CAJD,CAAYA,IAAAA,EAIX,CAAA,IASM,IAAMC,EAAoB,SAAHC,GAAmF,IAAAC,EAAAD,EAA7EE,WAAoBC,EAAIH,EAAJG,KAAIC,EAAAJ,EAAEK,UAAAA,OAAS,IAAAD,EAAG,GAAEA,EAAEE,EAAKN,EAALM,MAG7E,QAHgD,IAAHL,GAAQA,GACnCM,QAAQC,KAAI,eAAgBL,EAAqB,mBAE/DE,EAAUI,QAAU,IAAMJ,EAAUK,gBAAgBJ,GAAe,CACtE,IAAMK,EAAO,eAAkBR,EAAyBE,qBAAAA,EAAUO,IAAI,SAAAC,GAAK,OAAAA,EAAEC,aAAa,GAAEC,OAAOC,KAAK,QAAO,IAC/G,MAAM,IAAIC,MAAMN,EACjB,CAEA,OAAOL,CACR,ECAaY,EAsBZ,SAAAlB,GAWkB,IAAAmB,EAAAC,EAAAC,EAAAC,EAVjBC,EAAKvB,EAALuB,MACAC,EAAIxB,EAAJwB,KACAC,EAAezB,EAAfyB,gBACAC,EAAU1B,EAAV0B,WACAC,EAAM3B,EAAN2B,OACAC,EAAM5B,EAAN4B,OACAC,EAAW7B,EAAX6B,YACAC,EAAO9B,EAAP8B,QACAC,EAAI/B,EAAJ+B,KACAC,EAAWhC,EAAXgC,iBA9BQR,UAAI,EAAAS,KACJR,qBAAe,EAAAQ,KACfP,gBACAQ,EAAAA,KAAAA,QACAN,EAAAA,KAAAA,mBACAC,iBAAW,EAAAI,KACXH,aAAO,EAAAG,KACPE,UACAJ,EAAAA,KAAAA,UAGAR,EAAAA,KAAAA,kBACAS,iBAAW,EAAAC,KAGXG,cACAC,EAAAA,KAAAA,yBACAC,gBAAU,EAAAL,KACVM,gBAAU,EAgBlB,IAAMC,EAAU,MAAQC,EAAO,IAC/BR,KAAKC,GAAKnC,EAAkB,CAC3BI,KAAM,KACNE,UAAW,CAACP,EAAU4C,QACtBpC,MAAOkC,IAGR,IAAMG,EAAoB,MAANf,EAAAA,ECjEM,WAC3B,GAAuB,oBAAZgB,QACX,OAAOA,QAAQC,IAAQ,8BD+DQC,CC9DhC,CD8DgCA,GAC9Bb,KAAKL,OAAS7B,EAAkB,CAC/BI,KAAM,SACNE,UAAW,CAACP,EAAU4C,QACtBpC,MAAOqC,IAGRV,KAAKF,KAAOhC,EAAkB,CAC7BI,KAAM,OACNE,UAAW,CAACP,EAAU4C,QACtBpC,MAAOyB,IAIRE,KAAKJ,YAAc9B,EAAkB,CACpCI,KAAM,cACNE,UAAW,CAACP,EAAU4C,QACtBpC,YAJwBuB,EAAAA,EAAe,QAOxC,IAAMkB,GAAY,IAAIC,MAAOC,cAC7BhB,KAAKE,KAAOpC,EAAkB,CAC7BI,KAAM,OACNE,UAAW,CAACP,EAAU4C,QACtBpC,MAAOyC,IAMR,IAAMG,OAAgCC,IAApB1B,EAAgC2B,KAAKC,UAAU7B,GAAQA,EACzES,KAAKT,KAAOzB,EAAkB,CAC7BI,KAAM,OACNG,MAAO4C,IAMRjB,KAAKR,gBAAkB1B,EAAkB,CACxCI,KAAM,kBACNE,UAAW,CAACP,EAAU4C,OAAQ5C,EAAUwD,WACxChD,MAN4B2B,KAAKT,KAChB,MAAfC,EAAAA,EAAmB,mBACnBA,IAOHQ,KAAKP,WAAa3B,EAAkB,CACnCI,KAAM,aACNE,UAAW,CAACP,EAAU4C,OAAQ5C,EAAUwD,WACxChD,MAAOoB,IAGRO,KAAKH,QAAU/B,EAAkB,CAChCI,KAAM,UACNE,UAAW,CAACP,EAAU4C,OAAQ5C,EAAUwD,WACxChD,MAAOwB,IAMRG,KAAKV,MAAQxB,EAAkB,CAC9BI,KAAM,QACNE,UAAW,CAACP,EAAU4C,OAAQ5C,EAAUwD,WACxChD,MAAOiB,IAGRU,KAAKD,YAAcjC,EAAkB,CACpCI,KAAM,cACNE,UAAW,CAACP,EAAU4C,OAAQ5C,EAAUwD,WACxChD,MAAO0B,IAMR,IAAMuB,EAAiCpC,OAApBA,EAAU,MAANQ,OAAM,EAANA,EAAQS,UAAQjB,EAAIc,KAAKC,GAChDD,KAAKG,SAAWrC,EAAkB,CACjCI,KAAM,WACNE,UAAW,CAACP,EAAU4C,QACtBpC,MAAOiD,IAGR,IAAMC,SAAiBpC,EAAGO,MAAAA,OAAAA,EAAAA,EAAQU,cAAYjB,EAAIa,KAAKL,OACvDK,KAAKI,aAAetC,EAAkB,CACrCI,KAAM,eACNE,UAAW,CAACP,EAAU4C,QACtBpC,MAAOkD,IAGR,IAAMC,EAAoCpC,OAArBA,EAAS,MAANM,OAAM,EAANA,EAAQW,YAAUjB,EAAIY,KAAKE,KACnDF,KAAKK,WAAavC,EAAkB,CACnCI,KAAM,aACNE,UAAW,CAACP,EAAU4C,QACtBpC,MAAOmD,IAGR,IAAMC,EAAoC,OAArBpC,EAAGK,MAAAA,OAAAA,EAAAA,EAAQY,YAAUjB,EAAIW,KAAKF,KACnDE,KAAKM,WAAaxC,EAAkB,CACnCI,KAAM,aACNE,UAAW,CAACP,EAAU4C,QACtBpC,MAAOoD,GAGT"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1mill/cloudevents",
3
- "version": "5.1.0",
3
+ "version": "5.1.2",
4
4
  "description": "Node cloudevents specification and helper",
5
5
  "source": "./src/index.ts",
6
6
  "type": "module",
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};