@aenode/constants 0.0.30 → 0.0.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/constants.mjs CHANGED
@@ -1,3 +1 @@
1
- #!/usr/bin/env node
2
-
3
- console.log('Hello from @aenode/constants');
1
+ import '../dist/main.js';
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export * from './env.js';
1
+ export * from './lib/index.js';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export * from './env.js';
1
+ export * from './lib/index.js';
2
2
 
3
3
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './env.js';\n"],"names":[],"mappings":"AAAA,cAAc,WAAW"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './lib/index.js';\n"],"names":[],"mappings":"AAAA,cAAc,iBAAiB"}
@@ -0,0 +1,25 @@
1
+ export declare enum AppProfile {
2
+ DEVELOPMENT = "DEVELOPMENT",
3
+ TEST = "TEST",
4
+ STAGING = "STAGING",
5
+ PRODUCTION = "PRODUCTION",
6
+ PUBLIC = "PUBLIC",// internet-facing API
7
+ ADMIN = "ADMIN",// back-office API
8
+ SLOW = "SLOW",// long-running requests, larger timeouts
9
+ WORKER = "WORKER",// background jobs / queue consumers
10
+ SCHEDULER = "SCHEDULER",// cron-style jobs only
11
+ MIGRATION = "MIGRATION",// run migrations, then exit
12
+ READONLY = "READONLY",// reads allowed, writes rejected
13
+ MAINTENANCE = "MAINTENANCE"
14
+ }
15
+ export declare enum AuthProfile {
16
+ PUBLIC = "PUBLIC",// no authentication
17
+ AUTHENTICATED = "AUTHENTICATED",// any valid logged-in user
18
+ ROLE_BASED = "ROLE_BASED",// permissions checked per route/role
19
+ ADMIN_ONLY = "ADMIN_ONLY",// only admin users
20
+ ROOT_ONLY = "ROOT_ONLY",// only the root user (ROOT_USERNAME/PASSWORD)
21
+ API_KEY = "API_KEY",// static key for integrations
22
+ INTERNAL = "INTERNAL",// service-to-service, trusted network
23
+ MOCK = "MOCK"
24
+ }
25
+ //# sourceMappingURL=enums.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/lib/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IAEpB,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,UAAU,eAAe;IAGzB,MAAM,WAAW,CAAE,sBAAsB;IACzC,KAAK,UAAU,CAAE,kBAAkB;IACnC,IAAI,SAAS,CAAE,yCAAyC;IACxD,MAAM,WAAW,CAAE,oCAAoC;IACvD,SAAS,cAAc,CAAE,uBAAuB;IAChD,SAAS,cAAc,CAAE,4BAA4B;IAGrD,QAAQ,aAAa,CAAE,iCAAiC;IACxD,WAAW,gBAAgB;CAC5B;AAED,oBAAY,WAAW;IACrB,MAAM,WAAW,CAAE,oBAAoB;IACvC,aAAa,kBAAkB,CAAE,2BAA2B;IAC5D,UAAU,eAAe,CAAE,qCAAqC;IAChE,UAAU,eAAe,CAAE,mBAAmB;IAC9C,SAAS,cAAc,CAAE,8CAA8C;IACvE,OAAO,YAAY,CAAE,8BAA8B;IACnD,QAAQ,aAAa,CAAE,sCAAsC;IAC7D,IAAI,SAAS;CACd"}
@@ -0,0 +1,31 @@
1
+ export var AppProfile = /*#__PURE__*/ function(AppProfile) {
2
+ // Environments
3
+ AppProfile["DEVELOPMENT"] = "DEVELOPMENT";
4
+ AppProfile["TEST"] = "TEST";
5
+ AppProfile["STAGING"] = "STAGING";
6
+ AppProfile["PRODUCTION"] = "PRODUCTION";
7
+ // Roles (what this instance does)
8
+ AppProfile["PUBLIC"] = "PUBLIC";
9
+ AppProfile["ADMIN"] = "ADMIN";
10
+ AppProfile["SLOW"] = "SLOW";
11
+ AppProfile["WORKER"] = "WORKER";
12
+ AppProfile["SCHEDULER"] = "SCHEDULER";
13
+ AppProfile["MIGRATION"] = "MIGRATION";
14
+ // Operating modes
15
+ AppProfile["READONLY"] = "READONLY";
16
+ AppProfile["MAINTENANCE"] = "MAINTENANCE";
17
+ return AppProfile;
18
+ }({});
19
+ export var AuthProfile = /*#__PURE__*/ function(AuthProfile) {
20
+ AuthProfile["PUBLIC"] = "PUBLIC";
21
+ AuthProfile["AUTHENTICATED"] = "AUTHENTICATED";
22
+ AuthProfile["ROLE_BASED"] = "ROLE_BASED";
23
+ AuthProfile["ADMIN_ONLY"] = "ADMIN_ONLY";
24
+ AuthProfile["ROOT_ONLY"] = "ROOT_ONLY";
25
+ AuthProfile["API_KEY"] = "API_KEY";
26
+ AuthProfile["INTERNAL"] = "INTERNAL";
27
+ AuthProfile["MOCK"] = "MOCK";
28
+ return AuthProfile;
29
+ }({});
30
+
31
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/enums.ts"],"sourcesContent":["export enum AppProfile {\n // Environments\n DEVELOPMENT = 'DEVELOPMENT',\n TEST = 'TEST',\n STAGING = 'STAGING',\n PRODUCTION = 'PRODUCTION',\n\n // Roles (what this instance does)\n PUBLIC = 'PUBLIC', // internet-facing API\n ADMIN = 'ADMIN', // back-office API\n SLOW = 'SLOW', // long-running requests, larger timeouts\n WORKER = 'WORKER', // background jobs / queue consumers\n SCHEDULER = 'SCHEDULER', // cron-style jobs only\n MIGRATION = 'MIGRATION', // run migrations, then exit\n\n // Operating modes\n READONLY = 'READONLY', // reads allowed, writes rejected\n MAINTENANCE = 'MAINTENANCE', // return 503 except health checks\n}\n\nexport enum AuthProfile {\n PUBLIC = 'PUBLIC', // no authentication\n AUTHENTICATED = 'AUTHENTICATED', // any valid logged-in user\n ROLE_BASED = 'ROLE_BASED', // permissions checked per route/role\n ADMIN_ONLY = 'ADMIN_ONLY', // only admin users\n ROOT_ONLY = 'ROOT_ONLY', // only the root user (ROOT_USERNAME/PASSWORD)\n API_KEY = 'API_KEY', // static key for integrations\n INTERNAL = 'INTERNAL', // service-to-service, trusted network\n MOCK = 'MOCK', // fake user, dev/test only\n}\n"],"names":["AppProfile","AuthProfile"],"mappings":"AAAA,OAAO,IAAA,AAAKA,oCAAAA;IACV,eAAe;;;;;IAMf,kCAAkC;;;;;;;IAQlC,kBAAkB;;;WAfRA;MAkBX;AAED,OAAO,IAAA,AAAKC,qCAAAA;;;;;;;;;WAAAA;MASX"}
@@ -13,10 +13,25 @@ export declare abstract class BaseEnv {
13
13
  constructor(profile?: string);
14
14
  }
15
15
  export declare class EnvApp extends BaseEnv {
16
+ /**
17
+ * Unique application name
18
+ */
16
19
  static readonly NAME = "NAME";
20
+ /**
21
+ * Rest api port
22
+ */
17
23
  static readonly PORT = "PORT";
24
+ /**
25
+ * Rest api global path prefix such as 'api'
26
+ */
18
27
  static readonly API_PREFIX = "API_PREFIX";
28
+ /**
29
+ * App description
30
+ */
19
31
  static readonly DESCRIPTION = "DESCRIPTION";
32
+ /**
33
+ * Runtime profile such as DEVELOPMENT, PRODUCTION, READONLY
34
+ */
20
35
  static readonly PROFILE = "PROFILE";
21
36
  get NAME(): string;
22
37
  get PORT(): string;
@@ -24,10 +39,25 @@ export declare class EnvApp extends BaseEnv {
24
39
  get DESCRIPTION(): string;
25
40
  }
26
41
  export declare class EnvAuth extends BaseEnv {
42
+ /**
43
+ * JWT SECRET to genreate user authentication tokens
44
+ */
27
45
  static readonly JWT_SECRET = "JWT_SECRET";
46
+ /**
47
+ * Encription secret to encript data
48
+ */
28
49
  static readonly ENCRIPTION_SECRET = "ENCRIPTION_SECRET";
50
+ /**
51
+ * Root user username
52
+ */
29
53
  static readonly ROOT_USERANME = "ROOT_USERANME";
54
+ /**
55
+ * Root user password
56
+ */
30
57
  static readonly ROOT_PASSWORD = "ROOT_PASSWORD";
58
+ /**
59
+ * Authentication profile such as public
60
+ */
31
61
  static readonly AUTH_PROFILE = "AUTH_PROFILE";
32
62
  static readonly ALLOWED_ORIGINS = "ALLOWED_ORIGINS";
33
63
  get JWT_SECRET(): string;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/lib/env.ts"],"names":[],"mappings":"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"}
@@ -31,19 +31,29 @@ export class BaseEnv {
31
31
  }
32
32
  export class EnvApp extends BaseEnv {
33
33
  static{
34
- this.NAME = 'NAME';
34
+ /**
35
+ * Unique application name
36
+ */ this.NAME = 'NAME';
35
37
  }
36
38
  static{
37
- this.PORT = 'PORT';
39
+ /**
40
+ * Rest api port
41
+ */ this.PORT = 'PORT';
38
42
  }
39
43
  static{
40
- this.API_PREFIX = 'API_PREFIX';
44
+ /**
45
+ * Rest api global path prefix such as 'api'
46
+ */ this.API_PREFIX = 'API_PREFIX';
41
47
  }
42
48
  static{
43
- this.DESCRIPTION = 'DESCRIPTION';
49
+ /**
50
+ * App description
51
+ */ this.DESCRIPTION = 'DESCRIPTION';
44
52
  }
45
53
  static{
46
- this.PROFILE = 'PROFILE';
54
+ /**
55
+ * Runtime profile such as DEVELOPMENT, PRODUCTION, READONLY
56
+ */ this.PROFILE = 'PROFILE';
47
57
  }
48
58
  get NAME() {
49
59
  return this.prep(EnvApp.NAME);
@@ -60,19 +70,29 @@ export class EnvApp extends BaseEnv {
60
70
  }
61
71
  export class EnvAuth extends BaseEnv {
62
72
  static{
63
- this.JWT_SECRET = 'JWT_SECRET';
73
+ /**
74
+ * JWT SECRET to genreate user authentication tokens
75
+ */ this.JWT_SECRET = 'JWT_SECRET';
64
76
  }
65
77
  static{
66
- this.ENCRIPTION_SECRET = 'ENCRIPTION_SECRET';
78
+ /**
79
+ * Encription secret to encript data
80
+ */ this.ENCRIPTION_SECRET = 'ENCRIPTION_SECRET';
67
81
  }
68
82
  static{
69
- this.ROOT_USERANME = 'ROOT_USERANME';
83
+ /**
84
+ * Root user username
85
+ */ this.ROOT_USERANME = 'ROOT_USERANME';
70
86
  }
71
87
  static{
72
- this.ROOT_PASSWORD = 'ROOT_PASSWORD';
88
+ /**
89
+ * Root user password
90
+ */ this.ROOT_PASSWORD = 'ROOT_PASSWORD';
73
91
  }
74
92
  static{
75
- this.AUTH_PROFILE = 'AUTH_PROFILE';
93
+ /**
94
+ * Authentication profile such as public
95
+ */ this.AUTH_PROFILE = 'AUTH_PROFILE';
76
96
  }
77
97
  static{
78
98
  this.ALLOWED_ORIGINS = 'ALLOWED_ORIGINS';
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/env.ts"],"sourcesContent":["export class Duration {\n static readonly SECOND = 1000;\n static readonly SECONDS_5 = this.SECOND * 5;\n static readonly SECONDS_10 = this.SECOND * 10;\n static readonly SECONDS_20 = this.SECOND * 20;\n static readonly MINUTE = this.SECOND * 60;\n static readonly MINUTES_5 = this.MINUTE * 5;\n}\n\nexport abstract class BaseEnv {\n __profile?: string;\n\n protected get profile() {\n return this.__profile ? `${this.__profile}_` : '';\n }\n\n protected prep(key: string) {\n return `${this.profile}${key}`;\n }\n\n constructor(profile?: string) {\n this.__profile = profile;\n }\n}\n\nexport class EnvApp extends BaseEnv {\n /**\n * Unique application name\n */\n static readonly NAME = 'NAME';\n\n /**\n * Rest api port\n */\n static readonly PORT = 'PORT';\n\n /**\n * Rest api global path prefix such as 'api'\n */\n static readonly API_PREFIX = 'API_PREFIX';\n\n /**\n * App description\n */\n static readonly DESCRIPTION = 'DESCRIPTION';\n\n /**\n * Runtime profile such as DEVELOPMENT, PRODUCTION, READONLY\n */\n static readonly PROFILE = 'PROFILE';\n\n get NAME() {\n return this.prep(EnvApp.NAME);\n }\n get PORT() {\n return this.prep(EnvApp.PORT);\n }\n get API_PREFIX() {\n return this.prep(EnvApp.API_PREFIX);\n }\n get DESCRIPTION() {\n return this.prep(EnvApp.DESCRIPTION);\n }\n}\n\nexport class EnvAuth extends BaseEnv {\n /**\n * JWT SECRET to genreate user authentication tokens\n */\n static readonly JWT_SECRET = 'JWT_SECRET';\n\n /**\n * Encription secret to encript data\n */\n static readonly ENCRIPTION_SECRET = 'ENCRIPTION_SECRET';\n\n /**\n * Root user username\n */\n static readonly ROOT_USERANME = 'ROOT_USERANME';\n\n /**\n * Root user password\n */\n static readonly ROOT_PASSWORD = 'ROOT_PASSWORD';\n\n /**\n * Authentication profile such as public\n */\n static readonly AUTH_PROFILE = 'AUTH_PROFILE';\n\n static readonly ALLOWED_ORIGINS = 'ALLOWED_ORIGINS';\n\n get JWT_SECRET() {\n return this.prep(EnvAuth.JWT_SECRET);\n }\n\n get ENCRIPTION_SECRET() {\n return this.prep(EnvAuth.ENCRIPTION_SECRET);\n }\n\n get ROOT_USERANME() {\n return this.prep(EnvAuth.ROOT_USERANME);\n }\n\n get ROOT_PASSWORD() {\n return this.prep(EnvAuth.ROOT_PASSWORD);\n }\n\n get AUTH_PROFILE() {\n return this.prep(EnvAuth.AUTH_PROFILE);\n }\n\n get ALLOWED_ORIGINS() {\n return this.prep(EnvAuth.ALLOWED_ORIGINS);\n }\n}\n\nexport class EnvPg extends BaseEnv {\n /**\n * The maximum number of clients/connections allowed in this pool.\tDefault is usually 10. Don't set this higher than your PostgreSQL server's max_connections limit.\n */\n static readonly MAX = 'MAX';\n\n /**\n * How long (in milliseconds) a request will wait to acquire an available client from the pool before throwing a timeout error.\tDefault is 0 (wait indefinitely). In production, set this (e.g., 5000 ms) to prevent requests from hanging indefinitely during high traffic spikes.\n */\n static readonly CONNECTION_TIMEOUT_MILLIS = 'CONNECTION_TIMEOUT_MILLIS';\n\n /**\n * How long (in milliseconds) a connection can sit unused in the pool before being closed and discarded.\tDefault is usually 10000 (10 seconds). Keeps connection counts low during quiet periods.\n */\n static readonly IDLE_TIMEOUT_MILLIS = 'IDLE_TIMEOUT_MILLIS';\n\n /**\n * The maximum number of times a single connection can be checked out and reused before the pool closes and replaces it.\tDefault is 0 (unlimited). Useful to set (e.g., 7500) to mitigate subtle memory leaks or clean up stale session-level state in long-lived node processes.\n */\n static readonly MAX_USES = 'MAX_USES';\n\n /**\n * Aborts any individual SQL statement that takes longer than the specified number of milliseconds.\tYour primary circuit breaker. Prevents runaway, un-indexed, or slow queries from bogging down your database. 5000 miliseconds is ideal\n */\n static readonly STATEMENT_TIMEOUT = 'STATEMENT_TIMEOUT';\n\n /**\n * Node-side timeout for a query to complete before the driver rejects the Promise.\tActs as a client-side backup if the network connection drops while waiting for Postgres to return results.\n */\n static readonly QUERY_TIMEOUT = 'QUERY_TIMEOUT';\n\n /**\n * Aborts any statement if it waits longer than this value (in ms) to acquire an explicit or implicit table/row lock.\tEssential for high-concurrency DBs. Stops long schema migrations or transactions from creating massive lock queues (blocking reads/writes).\n */\n static readonly LOCK_TIMEOUT = 'LOCK_TIMEOUT';\n\n static readonly DEFAULT_MAX = 10;\n static readonly DEFAULT_CONNECTION_TIMEOUT_MILLIS = Duration.SECONDS_5;\n static readonly DEFAULT_IDLE_TIMEOUT_MILLIS = Duration.SECONDS_10;\n static readonly DEFAULT_MAX_USES = 7500;\n static readonly DEFAULT_STATEMENT_TIMEOUT = Duration.SECONDS_5;\n static readonly DEFAULT_QUERY_TIMEOUT = Duration.SECONDS_10;\n static readonly DEFAULT_LOCK_TIMEOUT = Duration.SECONDS_10;\n\n get MAX() {\n return this.prep(EnvPg.MAX);\n }\n\n get CONNECTION_TIMEOUT_MILLIS() {\n return this.prep(EnvPg.CONNECTION_TIMEOUT_MILLIS);\n }\n\n get IDLE_TIMEOUT_MILLIS() {\n return this.prep(EnvPg.IDLE_TIMEOUT_MILLIS);\n }\n\n get MAX_USES() {\n return this.prep(EnvPg.MAX_USES);\n }\n\n get STATEMENT_TIMEOUT() {\n return this.prep(EnvPg.STATEMENT_TIMEOUT);\n }\n\n get QUERY_TIMEOUT() {\n return this.prep(EnvPg.QUERY_TIMEOUT);\n }\n\n get LOCK_TIMEOUT() {\n return this.prep(EnvPg.LOCK_TIMEOUT);\n }\n}\n\nexport class EnvDB extends BaseEnv {\n static readonly DATABASE_USERNAME = 'DATABASE_USERNAME';\n static readonly DATABASE_PASSWORD = 'DATABASE_PASSWORD';\n static readonly DATABASE_URL = 'DATABASE_URL';\n static readonly DATABASE_SCHEMA = 'DATABASE_SCHEMA';\n static readonly PG = EnvPg;\n\n get DATABASE_USERNAME() {\n return this.prep(EnvDB.DATABASE_USERNAME);\n }\n\n get DATABASE_PASSWORD() {\n return this.prep(EnvDB.DATABASE_PASSWORD);\n }\n\n get DATABASE_SCHEMA() {\n return this.prep(EnvDB.DATABASE_SCHEMA);\n }\n\n get DATABASE_URL() {\n return this.prep(EnvDB.DATABASE_URL);\n }\n\n get PG() {\n return new EnvPg(this.profile);\n }\n}\n\n/**\n * Environment vriable keys\n */\nexport class Env extends BaseEnv {\n static readonly DEFAULT = 'default';\n static readonly APP = EnvApp;\n static readonly DB = EnvDB;\n static readonly AUTH = EnvAuth;\n\n get APP() {\n return new EnvApp(this.profile);\n }\n\n get DB() {\n return new EnvDB(this.profile);\n }\n\n get AUTH() {\n return new EnvAuth(this.profile);\n }\n}\n"],"names":["Duration","SECOND","SECONDS_5","SECONDS_10","SECONDS_20","MINUTE","MINUTES_5","BaseEnv","profile","__profile","prep","key","EnvApp","NAME","PORT","API_PREFIX","DESCRIPTION","PROFILE","EnvAuth","JWT_SECRET","ENCRIPTION_SECRET","ROOT_USERANME","ROOT_PASSWORD","AUTH_PROFILE","ALLOWED_ORIGINS","EnvPg","MAX","CONNECTION_TIMEOUT_MILLIS","IDLE_TIMEOUT_MILLIS","MAX_USES","STATEMENT_TIMEOUT","QUERY_TIMEOUT","LOCK_TIMEOUT","DEFAULT_MAX","DEFAULT_CONNECTION_TIMEOUT_MILLIS","DEFAULT_IDLE_TIMEOUT_MILLIS","DEFAULT_MAX_USES","DEFAULT_STATEMENT_TIMEOUT","DEFAULT_QUERY_TIMEOUT","DEFAULT_LOCK_TIMEOUT","EnvDB","DATABASE_USERNAME","DATABASE_PASSWORD","DATABASE_URL","DATABASE_SCHEMA","PG","Env","DEFAULT","APP","DB","AUTH"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './enums.js';
2
+ export * from './env.js';
3
+ export * from './metadata.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC"}
@@ -0,0 +1,6 @@
1
+ // @index(['./**/*.ts', '!./**/*.spec.ts','!./**/index.ts', '!./**/_*.ts','!./**/main.ts', '!./**/generated/**'], f => `export * from '${f.path}.js'`)
2
+ export * from './enums.js';
3
+ export * from './env.js';
4
+ export * from './metadata.js';
5
+
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/index.ts"],"sourcesContent":["// @index(['./**/*.ts', '!./**/*.spec.ts','!./**/index.ts', '!./**/_*.ts','!./**/main.ts', '!./**/generated/**'], f => `export * from '${f.path}.js'`)\nexport * from './enums.js';\nexport * from './env.js';\nexport * from './metadata.js';\n"],"names":[],"mappings":"AAAA,sJAAsJ;AACtJ,cAAc,aAAa;AAC3B,cAAc,WAAW;AACzB,cAAc,gBAAgB"}
@@ -0,0 +1,5 @@
1
+ export declare enum MetadataToken {
2
+ PUBLIC = "PUBLIC",
3
+ ADMIN = "ADMIN"
4
+ }
5
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/lib/metadata.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACvB,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB"}
@@ -0,0 +1,7 @@
1
+ export var MetadataToken = /*#__PURE__*/ function(MetadataToken) {
2
+ MetadataToken["PUBLIC"] = "PUBLIC";
3
+ MetadataToken["ADMIN"] = "ADMIN";
4
+ return MetadataToken;
5
+ }({});
6
+
7
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/metadata.ts"],"sourcesContent":["export enum MetadataToken {\n PUBLIC = 'PUBLIC',\n ADMIN = 'ADMIN',\n}\n"],"names":["MetadataToken"],"mappings":"AAAA,OAAO,IAAA,AAAKA,uCAAAA;;;WAAAA;MAGX"}
package/dist/main.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":""}
package/dist/main.js ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env node
2
+ console.log('Hello from @aenode/constants');
3
+
4
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/main.ts"],"sourcesContent":["#!/usr/bin/env node\n\nconsole.log('Hello from @aenode/constants');\n"],"names":["console","log"],"mappings":";AAEAA,QAAQC,GAAG,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@aenode/constants",
3
- "version": "0.0.30",
3
+ "version": "0.0.36",
4
4
  "description": "Common environment keys and constants",
5
5
  "author": {
6
6
  "name": "Ahmet Emrebas",
7
- "email": "aenode+aenode@-constantsproton.me",
7
+ "email": "aenode+aenode-constants@proton.me",
8
8
  "url": "https://aenode.github.io/#profile"
9
9
  },
10
10
  "bin": {
@@ -47,8 +47,9 @@
47
47
  ],
48
48
  "nx": {
49
49
  "sourceRoot": "libs/constants/src",
50
+ "projectType": "library",
50
51
  "tags": [
51
- "lib:common"
52
+ "lib:shared"
52
53
  ],
53
54
  "targets": {
54
55
  "build": {},
package/dist/env.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"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"}
package/dist/env.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/env.ts"],"sourcesContent":["export class Duration {\n static readonly SECOND = 1000;\n static readonly SECONDS_5 = this.SECOND * 5;\n static readonly SECONDS_10 = this.SECOND * 10;\n static readonly SECONDS_20 = this.SECOND * 20;\n static readonly MINUTE = this.SECOND * 60;\n static readonly MINUTES_5 = this.MINUTE * 5;\n}\n\nexport abstract class BaseEnv {\n __profile?: string;\n\n protected get profile() {\n return this.__profile ? `${this.__profile}_` : '';\n }\n\n protected prep(key: string) {\n return `${this.profile}${key}`;\n }\n\n constructor(profile?: string) {\n this.__profile = profile;\n }\n}\n\nexport class EnvApp extends BaseEnv {\n static readonly NAME = 'NAME';\n static readonly PORT = 'PORT';\n static readonly API_PREFIX = 'API_PREFIX';\n static readonly DESCRIPTION = 'DESCRIPTION';\n static readonly PROFILE = 'PROFILE';\n\n get NAME() {\n return this.prep(EnvApp.NAME);\n }\n get PORT() {\n return this.prep(EnvApp.PORT);\n }\n get API_PREFIX() {\n return this.prep(EnvApp.API_PREFIX);\n }\n get DESCRIPTION() {\n return this.prep(EnvApp.DESCRIPTION);\n }\n}\n\nexport class EnvAuth extends BaseEnv {\n static readonly JWT_SECRET = 'JWT_SECRET';\n static readonly ENCRIPTION_SECRET = 'ENCRIPTION_SECRET';\n static readonly ROOT_USERANME = 'ROOT_USERANME';\n static readonly ROOT_PASSWORD = 'ROOT_PASSWORD';\n static readonly AUTH_PROFILE = 'AUTH_PROFILE';\n static readonly ALLOWED_ORIGINS = 'ALLOWED_ORIGINS';\n\n get JWT_SECRET() {\n return this.prep(EnvAuth.JWT_SECRET);\n }\n\n get ENCRIPTION_SECRET() {\n return this.prep(EnvAuth.ENCRIPTION_SECRET);\n }\n\n get ROOT_USERANME() {\n return this.prep(EnvAuth.ROOT_USERANME);\n }\n\n get ROOT_PASSWORD() {\n return this.prep(EnvAuth.ROOT_PASSWORD);\n }\n\n get AUTH_PROFILE() {\n return this.prep(EnvAuth.AUTH_PROFILE);\n }\n\n get ALLOWED_ORIGINS() {\n return this.prep(EnvAuth.ALLOWED_ORIGINS);\n }\n}\n\nexport class EnvPg extends BaseEnv {\n /**\n * The maximum number of clients/connections allowed in this pool.\tDefault is usually 10. Don't set this higher than your PostgreSQL server's max_connections limit.\n */\n static readonly MAX = 'MAX';\n\n /**\n * How long (in milliseconds) a request will wait to acquire an available client from the pool before throwing a timeout error.\tDefault is 0 (wait indefinitely). In production, set this (e.g., 5000 ms) to prevent requests from hanging indefinitely during high traffic spikes.\n */\n static readonly CONNECTION_TIMEOUT_MILLIS = 'CONNECTION_TIMEOUT_MILLIS';\n\n /**\n * How long (in milliseconds) a connection can sit unused in the pool before being closed and discarded.\tDefault is usually 10000 (10 seconds). Keeps connection counts low during quiet periods.\n */\n static readonly IDLE_TIMEOUT_MILLIS = 'IDLE_TIMEOUT_MILLIS';\n\n /**\n * The maximum number of times a single connection can be checked out and reused before the pool closes and replaces it.\tDefault is 0 (unlimited). Useful to set (e.g., 7500) to mitigate subtle memory leaks or clean up stale session-level state in long-lived node processes.\n */\n static readonly MAX_USES = 'MAX_USES';\n\n /**\n * Aborts any individual SQL statement that takes longer than the specified number of milliseconds.\tYour primary circuit breaker. Prevents runaway, un-indexed, or slow queries from bogging down your database. 5000 miliseconds is ideal\n */\n static readonly STATEMENT_TIMEOUT = 'STATEMENT_TIMEOUT';\n\n /**\n * Node-side timeout for a query to complete before the driver rejects the Promise.\tActs as a client-side backup if the network connection drops while waiting for Postgres to return results.\n */\n static readonly QUERY_TIMEOUT = 'QUERY_TIMEOUT';\n\n /**\n * Aborts any statement if it waits longer than this value (in ms) to acquire an explicit or implicit table/row lock.\tEssential for high-concurrency DBs. Stops long schema migrations or transactions from creating massive lock queues (blocking reads/writes).\n */\n static readonly LOCK_TIMEOUT = 'LOCK_TIMEOUT';\n\n static readonly DEFAULT_MAX = 10;\n static readonly DEFAULT_CONNECTION_TIMEOUT_MILLIS = Duration.SECONDS_5;\n static readonly DEFAULT_IDLE_TIMEOUT_MILLIS = Duration.SECONDS_10;\n static readonly DEFAULT_MAX_USES = 7500;\n static readonly DEFAULT_STATEMENT_TIMEOUT = Duration.SECONDS_5;\n static readonly DEFAULT_QUERY_TIMEOUT = Duration.SECONDS_10;\n static readonly DEFAULT_LOCK_TIMEOUT = Duration.SECONDS_10;\n\n get MAX() {\n return this.prep(EnvPg.MAX);\n }\n\n get CONNECTION_TIMEOUT_MILLIS() {\n return this.prep(EnvPg.CONNECTION_TIMEOUT_MILLIS);\n }\n\n get IDLE_TIMEOUT_MILLIS() {\n return this.prep(EnvPg.IDLE_TIMEOUT_MILLIS);\n }\n\n get MAX_USES() {\n return this.prep(EnvPg.MAX_USES);\n }\n\n get STATEMENT_TIMEOUT() {\n return this.prep(EnvPg.STATEMENT_TIMEOUT);\n }\n\n get QUERY_TIMEOUT() {\n return this.prep(EnvPg.QUERY_TIMEOUT);\n }\n\n get LOCK_TIMEOUT() {\n return this.prep(EnvPg.LOCK_TIMEOUT);\n }\n}\n\nexport class EnvDB extends BaseEnv {\n static readonly DATABASE_USERNAME = 'DATABASE_USERNAME';\n static readonly DATABASE_PASSWORD = 'DATABASE_PASSWORD';\n static readonly DATABASE_URL = 'DATABASE_URL';\n static readonly DATABASE_SCHEMA = 'DATABASE_SCHEMA';\n static readonly PG = EnvPg;\n\n get DATABASE_USERNAME() {\n return this.prep(EnvDB.DATABASE_USERNAME);\n }\n\n get DATABASE_PASSWORD() {\n return this.prep(EnvDB.DATABASE_PASSWORD);\n }\n\n get DATABASE_SCHEMA() {\n return this.prep(EnvDB.DATABASE_SCHEMA);\n }\n\n get DATABASE_URL() {\n return this.prep(EnvDB.DATABASE_URL);\n }\n\n get PG() {\n return new EnvPg(this.profile);\n }\n}\n\n/**\n * Environment vriable keys\n */\nexport class Env extends BaseEnv {\n static readonly DEFAULT = 'default';\n static readonly APP = EnvApp;\n static readonly DB = EnvDB;\n static readonly AUTH = EnvAuth;\n\n get APP() {\n return new EnvApp(this.profile);\n }\n\n get DB() {\n return new EnvDB(this.profile);\n }\n\n get AUTH() {\n return new EnvAuth(this.profile);\n }\n}\n"],"names":["Duration","SECOND","SECONDS_5","SECONDS_10","SECONDS_20","MINUTE","MINUTES_5","BaseEnv","profile","__profile","prep","key","EnvApp","NAME","PORT","API_PREFIX","DESCRIPTION","PROFILE","EnvAuth","JWT_SECRET","ENCRIPTION_SECRET","ROOT_USERANME","ROOT_PASSWORD","AUTH_PROFILE","ALLOWED_ORIGINS","EnvPg","MAX","CONNECTION_TIMEOUT_MILLIS","IDLE_TIMEOUT_MILLIS","MAX_USES","STATEMENT_TIMEOUT","QUERY_TIMEOUT","LOCK_TIMEOUT","DEFAULT_MAX","DEFAULT_CONNECTION_TIMEOUT_MILLIS","DEFAULT_IDLE_TIMEOUT_MILLIS","DEFAULT_MAX_USES","DEFAULT_STATEMENT_TIMEOUT","DEFAULT_QUERY_TIMEOUT","DEFAULT_LOCK_TIMEOUT","EnvDB","DATABASE_USERNAME","DATABASE_PASSWORD","DATABASE_URL","DATABASE_SCHEMA","PG","Env","DEFAULT","APP","DB","AUTH"],"mappings":"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"}