UNPKG

@dtu-olp-2024/kafka-nocobase

Version:

A NocoBase plugin for Apache Kafka integration, supporting message publishing, topic management, and event-driven workflows. Built for the DTU GreenHope project.

1 lines 7.11 kB
(function(){var e={437:function(e,t,n){const o=n(147);const r=n(17);const s=n(37);const i=n(113);const c=n(968);const a=c.version;const l=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;function parse(e){const t={};let n=e.toString();n=n.replace(/\r\n?/gm,"\n");let o;while((o=l.exec(n))!=null){const e=o[1];let n=o[2]||"";n=n.trim();const r=n[0];n=n.replace(/^(['"`])([\s\S]*)\1$/gm,"$2");if(r==='"'){n=n.replace(/\\n/g,"\n");n=n.replace(/\\r/g,"\r")}t[e]=n}return t}function _parseVault(e){const t=_vaultPath(e);const n=p.configDotenv({path:t});if(!n.parsed){const e=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);e.code="MISSING_DATA";throw e}const o=_dotenvKey(e).split(",");const r=o.length;let s;for(let e=0;e<r;e++){try{const t=o[e].trim();const r=_instructions(n,t);s=p.decrypt(r.ciphertext,r.key);break}catch(t){if(e+1>=r){throw t}}}return p.parse(s)}function _log(e){console.log(`[dotenv@${a}][INFO] ${e}`)}function _warn(e){console.log(`[dotenv@${a}][WARN] ${e}`)}function _debug(e){console.log(`[dotenv@${a}][DEBUG] ${e}`)}function _dotenvKey(e){if(e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0){return e.DOTENV_KEY}if(process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0){return process.env.DOTENV_KEY}return""}function _instructions(e,t){let n;try{n=new URL(t)}catch(e){if(e.code==="ERR_INVALID_URL"){const e=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");e.code="INVALID_DOTENV_KEY";throw e}throw e}const o=n.password;if(!o){const e=new Error("INVALID_DOTENV_KEY: Missing key part");e.code="INVALID_DOTENV_KEY";throw e}const r=n.searchParams.get("environment");if(!r){const e=new Error("INVALID_DOTENV_KEY: Missing environment part");e.code="INVALID_DOTENV_KEY";throw e}const s=`DOTENV_VAULT_${r.toUpperCase()}`;const i=e.parsed[s];if(!i){const e=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${s} in your .env.vault file.`);e.code="NOT_FOUND_DOTENV_ENVIRONMENT";throw e}return{ciphertext:i,key:o}}function _vaultPath(e){let t=null;if(e&&e.path&&e.path.length>0){if(Array.isArray(e.path)){for(const n of e.path){if(o.existsSync(n)){t=n.endsWith(".vault")?n:`${n}.vault`}}}else{t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`}}else{t=r.resolve(process.cwd(),".env.vault")}if(o.existsSync(t)){return t}return null}function _resolveHome(e){return e[0]==="~"?r.join(s.homedir(),e.slice(1)):e}function _configVault(e){_log("Loading env from encrypted .env.vault");const t=p._parseVault(e);let n=process.env;if(e&&e.processEnv!=null){n=e.processEnv}p.populate(n,t,e);return{parsed:t}}function configDotenv(e){const t=r.resolve(process.cwd(),".env");let n="utf8";const s=Boolean(e&&e.debug);if(e&&e.encoding){n=e.encoding}else{if(s){_debug("No encoding is specified. UTF-8 is used by default")}}let i=[t];if(e&&e.path){if(!Array.isArray(e.path)){i=[_resolveHome(e.path)]}else{i=[];for(const t of e.path){i.push(_resolveHome(t))}}}let c;const a={};for(const t of i){try{const r=p.parse(o.readFileSync(t,{encoding:n}));p.populate(a,r,e)}catch(e){if(s){_debug(`Failed to load ${t} ${e.message}`)}c=e}}let l=process.env;if(e&&e.processEnv!=null){l=e.processEnv}p.populate(l,a,e);if(c){return{parsed:a,error:c}}else{return{parsed:a}}}function config(e){if(_dotenvKey(e).length===0){return p.configDotenv(e)}const t=_vaultPath(e);if(!t){_warn(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`);return p.configDotenv(e)}return p._configVault(e)}function decrypt(e,t){const n=Buffer.from(t.slice(-64),"hex");let o=Buffer.from(e,"base64");const r=o.subarray(0,12);const s=o.subarray(-16);o=o.subarray(12,-16);try{const e=i.createDecipheriv("aes-256-gcm",n,r);e.setAuthTag(s);return`${e.update(o)}${e.final()}`}catch(e){const t=e instanceof RangeError;const n=e.message==="Invalid key length";const o=e.message==="Unsupported state or unable to authenticate data";if(t||n){const e=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");e.code="INVALID_DOTENV_KEY";throw e}else if(o){const e=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");e.code="DECRYPTION_FAILED";throw e}else{throw e}}}function populate(e,t,n={}){const o=Boolean(n&&n.debug);const r=Boolean(n&&n.override);if(typeof t!=="object"){const e=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");e.code="OBJECT_REQUIRED";throw e}for(const n of Object.keys(t)){if(Object.prototype.hasOwnProperty.call(e,n)){if(r===true){e[n]=t[n]}if(o){if(r===true){_debug(`"${n}" is already defined and WAS overwritten`)}else{_debug(`"${n}" is already defined and was NOT overwritten`)}}}else{e[n]=t[n]}}}const p={configDotenv:configDotenv,_configVault:_configVault,_parseVault:_parseVault,config:config,decrypt:decrypt,parse:parse,populate:populate};e.exports.configDotenv=p.configDotenv;e.exports._configVault=p._configVault;e.exports._parseVault=p._parseVault;e.exports.config=p.config;e.exports.decrypt=p.decrypt;e.exports.parse=p.parse;e.exports.populate=p.populate;e.exports=p},113:function(e){"use strict";e.exports=require("crypto")},147:function(e){"use strict";e.exports=require("fs")},37:function(e){"use strict";e.exports=require("os")},17:function(e){"use strict";e.exports=require("path")},968:function(e){"use strict";e.exports=JSON.parse('{"name":"dotenv","version":"16.4.7","description":"Loads environment variables from .env file","main":"lib/main.js","types":"lib/main.d.ts","exports":{".":{"types":"./lib/main.d.ts","require":"./lib/main.js","default":"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},"scripts":{"dts-check":"tsc --project tests/types/tsconfig.json","lint":"standard","pretest":"npm run lint && npm run dts-check","test":"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=lcov","prerelease":"npm test","release":"standard-version"},"repository":{"type":"git","url":"git://github.com/motdotla/dotenv.git"},"funding":"https://dotenvx.com","keywords":["dotenv","env",".env","environment","variables","config","settings"],"readmeFilename":"README.md","license":"BSD-2-Clause","devDependencies":{"@types/node":"^18.11.3","decache":"^4.6.2","sinon":"^14.0.1","standard":"^17.0.0","standard-version":"^9.5.0","tap":"^19.2.0","typescript":"^4.8.4"},"engines":{"node":">=12"},"browser":{"fs":false}}')}};var t={};function __nccwpck_require__(n){var o=t[n];if(o!==undefined){return o.exports}var r=t[n]={exports:{}};var s=true;try{e[n](r,r.exports,__nccwpck_require__);s=false}finally{if(s)delete t[n]}return r.exports}if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var n=__nccwpck_require__(437);module.exports=n})();