@odg/config 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,159 @@
1
+ <h1 align="center">
2
+ <a href="https://github.com/ODGodinho">
3
+ <img
4
+ src="https://raw.githubusercontent.com/ODGodinho/Stanley-TheTemplate/main/public/images/Stanley.jpg"
5
+ alt="Stanley Imagem" width="500"
6
+ />
7
+ </a>
8
+ <br />
9
+ Stanley The Template For Typescript By Dragons Gamers
10
+ <br />
11
+ </h1>
12
+
13
+ <h4 align="center">Template Stanley for Typescript projects and packages ๐Ÿ“ฆ!</h4>
14
+
15
+ <p align="center">
16
+
17
+ [![codecov](https://codecov.io/gh/ODGodinho/Stanley-TheTemplate-Typescript/branch/main/graph/badge.svg?token=HNBNLLPZ3J)](https://codecov.io/gh/ODGodinho/Stanley-TheTemplate-Typescript)
18
+ [![Stargazers](https://img.shields.io/github/stars/ODGodinho/Stanley-TheTemplate-Typescript?color=F430A4)](https://github.com/ODGodinho/Stanley-TheTemplate-Typescript/stargazers)
19
+ [![Made by ODGodinho](https://img.shields.io/badge/made%20by-ODGodinho-%2304A361)](https://www.linkedin.com/in/victor-alves-odgodinho/)
20
+ [![Forks](https://img.shields.io/github/forks/ODGodinho/Stanley-TheTemplate-Typescript?color=CD4D34)](https://github.com/ODGodinho/Stanley-TheTemplate-Typescript/network/members)
21
+ ![Repository size](https://img.shields.io/github/repo-size/ODGodinho/Stanley-TheTemplate-Typescript)
22
+ [![GitHub last commit](https://img.shields.io/github/last-commit/ODGodinho/Stanley-TheTemplate-Typescript)](https://github.com/ODGodinho/Stanley-TheTemplate-Typescript/commits/master)
23
+ [![License](https://img.shields.io/badge/license-MIT-brightgreen)](https://opensource.org/licenses/MIT)
24
+ [![StyleCI](https://github.styleci.io/repos/562306382/shield?branch=main)](https://github.styleci.io/repos/562306382?branch=main)
25
+
26
+ </p>
27
+
28
+ # Table of Contents
29
+
30
+ - [๐ŸŽ‡ Benefits](#-benefits)
31
+ - [๐Ÿ“— Libraries](#-libraries)
32
+ - [๐Ÿ“ Dependencies](#-dependencies)
33
+ - [โฉ Get Started](#-get-started)
34
+ - [๐Ÿ”˜ Use Template](#-use-template)
35
+ - [๐Ÿ”‘ Configure Github Secrets](#-configure-github-secrets)
36
+ - [๐Ÿ™ˆ Create Github Token](#-create-github-token)
37
+ - [๐Ÿ€ Code Coverage](#-code-coverage)
38
+ - [๐Ÿ“ฆ Create NPM Token](#-create-npm-token)
39
+ - [๐Ÿ” Create project Environment](#-create-project-environment)
40
+ - [๐Ÿ’ป Prepare to develop](#-prepare-to-develop)
41
+ - [๐Ÿ“ Start Project](#-start-project)
42
+ - [๐Ÿ“จ Build and Run](#-build-and-run)
43
+ - [๐Ÿงช Teste Code](#-teste-code)
44
+
45
+ ---
46
+
47
+ ## ๐ŸŽ‡ Benefits
48
+
49
+ - ๐Ÿš€ Speed start new project or package using typescript
50
+ - ๐Ÿšจ Over 800 rules for pattern, possible errors and errors in Linter
51
+ - ๐ŸŽ‡ Code quality guaranteed
52
+ - ๐Ÿ“ข AutoReview when opening a pull-request/merge
53
+ ![AutoReview Comment example](https://user-images.githubusercontent.com/3797062/97085944-87233a80-165b-11eb-94a8-0a47d5e24905.png)
54
+ - ๐Ÿงช Automatic Test when opening pull-request/merge
55
+ - ๐Ÿ“ˆ Automatic Code Coverage when opening pull-request/merge
56
+ ![Code Coverage example](https://app.codecov.io/static/media/codecov-report.eeef5dba5ea18b5ed6a4.png)
57
+ - ๐Ÿ“ฆ Automatic Package and release generate on merge
58
+ - ๐Ÿช Run Lint/Test command pre-commit execute
59
+
60
+ ## ๐Ÿ“— Libraries
61
+
62
+ - [Node.js 18](https://nodejs.org/?n=dragonsgamers)
63
+ - [Typescript](https://www.typescriptlang.org/?n=dragonsgamers)
64
+ - [Eslint](https://eslint.org/?n=dragonsgamers)
65
+ - [ODG-Linter-JS](https://github.com/ODGodinho/ODG-Linter-Js?n=dragonsgamers)
66
+ - [EditorConfig](https://editorconfig.org/?n=dragonsgamers)
67
+ - [ReviewDog](https://github.com/reviewdog/action-eslint)
68
+
69
+ ## ๐Ÿ“ Dependencies
70
+
71
+ - [Node.js](https://nodejs.org) 18 or later
72
+ - [Yarn](https://yarnpkg.com/) Optional/Recommended
73
+ - [ODG TsConfig](https://github.com/ODGodinho/tsconfig) Last Version
74
+
75
+ ## โฉ Get Started
76
+
77
+ ---
78
+
79
+ ### ๐Ÿ”˜ Use Template
80
+
81
+ Click in use this template button and clone your template project
82
+
83
+ ![Use Template](https://raw.githubusercontent.com/ODGodinho/Stanley-TheTemplate/main/public/images/UseTemplate.png)
84
+
85
+ ### ๐Ÿ”‘ Configure Github Secrets
86
+
87
+ #### ๐Ÿ™ˆ Create Github Token
88
+
89
+ Before create new GITHUB_TOKEN in
90
+
91
+ - <https://docs.github.com/en/enterprise-server@3.4/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token>
92
+
93
+ #### ๐Ÿ€ Code Coverage
94
+
95
+ Add Code Coverage support in your project
96
+
97
+ 1. Install CodeCov in your account <https://github.com/apps/codecov>
98
+ 2. Enter In <https://app.codecov.io/gh/+> and search your repository
99
+ 3. Click `setup repo`
100
+ 4. Copy CODECOV_TOKEN and create a secret called CODECOV_TOKEN
101
+
102
+ #### ๐Ÿ“ฆ Create NPM Token
103
+
104
+ if you want to generate packages create a secret called IS_PACKAGE = true AND create new NPM_TOKEN in
105
+
106
+ - <https://docs.npmjs.com/creating-and-viewing-access-tokens>
107
+
108
+ #### ๐Ÿ” Create project Environment
109
+
110
+ - On GitHub.com, navigate to the main page of the repository.
111
+ - Under your repository name, click `โš™๏ธ Settings`.
112
+ ![Github Setting images example](https://docs.github.com/assets/cb-27528/images/help/repository/repo-actions-settings.png)
113
+ - In the "Security" section of the sidebar, select `โœณ๏ธ Secrets`, then click Actions.
114
+ - Click New repository secret.
115
+ - Type a name with: **GH_TOKEN**
116
+ - Enter with your access secret token `ghp_Dsfde....`
117
+ - Click Add secret.
118
+ - If you are going to publish package:
119
+ - secrets:
120
+ - create **NPM_TOKEN** = `npm_szxw......`
121
+ - create **CODECOV_TOKEN** = `00000000-0000-0000-0000-000000000000`
122
+ - variables:
123
+ - create **IS_PACKAGE** = `true`
124
+
125
+ ### ๐Ÿ’ป Prepare To Develop
126
+
127
+ Copy `.env.example` to `.env` and add the values according to your needs.
128
+
129
+ ### ๐Ÿ“ Start Project
130
+
131
+ First install dependencies with the following command
132
+
133
+ ```bash
134
+ yarn install
135
+ # or
136
+ npm install
137
+ ```
138
+
139
+ ## ๐Ÿ“จ Build and Run
140
+
141
+ To build the project, you can use the following command
142
+
143
+ > if you change files, you need to run `yarn build` and `yarn start` again
144
+
145
+ ```bash
146
+ yarn build && yarn start
147
+ # or
148
+ yarn dev
149
+ ```
150
+
151
+ ## ๐Ÿงช Teste Code
152
+
153
+ To Test execute this command
154
+
155
+ ```bash
156
+ yarn test
157
+ # or
158
+ yarn test:watch
159
+ ```
@@ -0,0 +1 @@
1
+ export * from "./interfaces";
package/dist/index.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./interfaces"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Configuration of my application
3
+ *
4
+ * @template {Record<string, unknown>} ConfigTypes my Configs types
5
+ */
6
+ export interface ConfigInterface<ConfigTypes = Record<string, unknown>> {
7
+ /**
8
+ * Check if exist current config
9
+ *
10
+ * @param {keyof ConfigTypes} $key Config key
11
+ * @returns {Promise<boolean>}
12
+ */
13
+ has($key: keyof ConfigTypes): Promise<boolean>;
14
+ /**
15
+ * Get config by name
16
+ *
17
+ * @template {keyof ConfigTypes} Config Config Name
18
+ * @param {Config} $key Config key
19
+ * @param {() => Promise<ConfigTypes[Config]>} $default Default config value
20
+ * @returns {Promise<ConfigTypes[Config]>}
21
+ */
22
+ get<Config extends keyof ConfigTypes>($key: Config, $default?: () => Promise<ConfigTypes[Config]>): Promise<ConfigTypes[Config]>;
23
+ /**
24
+ * Get all Configs in JSON
25
+ *
26
+ * @returns {Promise<ConfigTypes>}
27
+ */
28
+ all(): Promise<ConfigTypes>;
29
+ /**
30
+ * Set Config Value in run time execution only
31
+ *
32
+ * @template {keyof ConfigTypes} Config Configs keys
33
+ * @param {Config} $key Config key name
34
+ * @param {ConfigTypes[Config]} $value New value for config
35
+ * @returns {Promise<ConfigInterface<ConfigTypes>>}
36
+ */
37
+ set<Config extends keyof ConfigTypes>($key: Config, $value: ConfigTypes[Config]): Promise<ConfigInterface<ConfigTypes>>;
38
+ /**
39
+ * Load all config from memory and prepare class to use
40
+ *
41
+ * @returns {Promise<void>}
42
+ */
43
+ init(): Promise<void>;
44
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ConfigInterface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigInterface.js","sourceRoot":"","sources":["../../src/interfaces/ConfigInterface.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export * from "./ConfigInterface";
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./ConfigInterface"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC"}
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.esnext.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/interfaces/ConfigInterface.ts","../src/interfaces/index.ts","../src/index.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"2ac9cdcfb8f8875c18d14ec5796a8b029c426f73ad6dc3ffb580c228b58d1c44","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","impliedFormat":1},{"version":"bed7b7ba0eb5a160b69af72814b4dde371968e40b6c5e73d3a9f7bee407d158c","impliedFormat":1},{"version":"0075fa5ceda385bcdf3488e37786b5a33be730e8bc4aa3cf1e78c63891752ce8","affectsGlobalScope":true,"impliedFormat":1},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true,"impliedFormat":1},{"version":"09226e53d1cfda217317074a97724da3e71e2c545e18774484b61562afc53cd2","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b41361862022eb72fcc8a7f34680ac842aca802cf4bc1f915e8c620c9ce4331","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true,"impliedFormat":1},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true,"impliedFormat":1},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true,"impliedFormat":1},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"709efdae0cb5df5f49376cde61daacc95cdd44ae4671da13a540da5088bf3f30","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc496ef4377553e461efcf7cc5a5a57cf59f9962aea06b5e722d54a36bf66ea1","affectsGlobalScope":true,"impliedFormat":1},{"version":"038a2f66a34ee7a9c2fbc3584c8ab43dff2995f8c68e3f566f4c300d2175e31e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c92f2c27b06c1a41b88f6db8299205aee52c2a2943f7ed29bd585977f254e8","affectsGlobalScope":true,"impliedFormat":1},{"version":"930b0e15811f84e203d3c23508674d5ded88266df4b10abee7b31b2ac77632d2","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"b9ea5778ff8b50d7c04c9890170db34c26a5358cccba36844fe319f50a43a61a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true,"impliedFormat":1},{"version":"65be38e881453e16f128a12a8d36f8b012aa279381bf3d4dc4332a4905ceec83","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true,"impliedFormat":1},{"version":"e1913f656c156a9e4245aa111fbb436d357d9e1fe0379b9a802da7fe3f03d736","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f35a831e4f0fe3b3697f4a0fe0e3caa7624c92b78afbecaf142c0f93abfaf379","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"ae04ba79770e10568decd9924bb352e7bbfca7b02f2188d63c8ce9d653c8d11d","signature":"b6f2a1878c86f9ca9fa83aee1180eb8311a80253095bb908321ef59b53150686","impliedFormat":1},{"version":"e4f7ef599b20ba0a0534160b93db415981d7bff2c76827e7aa7fae3a383d5b5b","impliedFormat":1},{"version":"8a542f3210923ead239e7ddb551ca2382ad2a4fbb9354ac4fc939d6aaea5c18f","impliedFormat":1},{"version":"587f13f1e8157bd8cec0adda0de4ef558bb8573daa9d518d1e2af38e87ecc91f","impliedFormat":1},{"version":"a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a","impliedFormat":1},{"version":"d32f90e6cf32e99c86009b5f79fa50bc750fe54e17137d9bb029c377a2822ee2","affectsGlobalScope":true,"impliedFormat":1},{"version":"33536b5951667cd5a54b4bea28d3d52aaca1844448258f1281d3843b89ac5895","impliedFormat":1},{"version":"c81c51f43e343b6d89114b17341fb9d381c4ccbb25e0ee77532376052c801ba7","affectsGlobalScope":true,"impliedFormat":1},{"version":"3dd49afd822c82b63b3905a13e22240f34cf367aea4f4dd0e6564f4bddcb8370","impliedFormat":1},{"version":"57135ce61976a8b1dadd01bb412406d1805b90db6e8ecb726d0d78e0b5f76050","impliedFormat":1},{"version":"49479e21a040c0177d1b1bc05a124c0383df7a08a0726ad4d9457619642e875a","affectsGlobalScope":true,"impliedFormat":1},{"version":"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","impliedFormat":1},{"version":"f302f3a47d7758f67f2afc753b9375d6504dde05d2e6ecdb1df50abbb131fc89","impliedFormat":1},{"version":"93db4c949a785a3dbef7f5e08523be538e468c580dd276178b818e761b3b68cd","impliedFormat":1},{"version":"5b1c0a23f464f894e7c2b2b6c56df7b9afa60ed48c5345f8618d389a636b2108","impliedFormat":1},{"version":"be2b092f2765222757c6441b86c53a5ea8dfed47bbc43eab4c5fe37942c866b3","impliedFormat":1},{"version":"8e6b05abc98adba15e1ac78e137c64576c74002e301d682e66feb77a23907ab8","impliedFormat":1},{"version":"1ca735bb3d407b2af4fbee7665f3a0a83be52168c728cc209755060ba7ed67bd","impliedFormat":1},{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true,"impliedFormat":1},{"version":"6e335a70826a634c5a1a1fa36a2dacbf3712ef2be7a517540ae1de8a1e8ea4f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3f3fc5a0de590ceb4aa0b5d2de20afd0ac6af1b0426c0a67f847fe16bdc5d21","impliedFormat":1},{"version":"df8529626079d6f9d5d3cd7b6fb7db9cda5a3118d383d8cd46c52aadb59593e7","impliedFormat":1},{"version":"1b0856424524be4d18e41b31506c9640c4786ee68fd9658abdbf27c856f70125","impliedFormat":1},{"version":"3122a3f1136508a27a229e0e4e2848299028300ffa11d0cdfe99df90c492fe20","impliedFormat":1},{"version":"42b40e40f2a358cda332456214fad311e1806a6abf3cebaaac72496e07556642","impliedFormat":1},{"version":"ad8848c289c0b633452e58179f46edccd14b5a0fe90ebce411f79ff040b803e0","impliedFormat":1},{"version":"b748ed8ff77f2c330857f01f385e52f708448b6ff6424415ab0de749fd7bc664","affectsGlobalScope":true,"impliedFormat":1},{"version":"fe6dba0e8c69f2b244e3da38e53dd2cc9e51b2543e647e805396af73006613f7","impliedFormat":1},{"version":"5e2b91328a540a0933ab5c2203f4358918e6f0fe7505d22840a891a6117735f1","impliedFormat":1},{"version":"3abc3512fa04aa0230f59ea1019311fd8667bd935d28306311dccc8b17e79d5d","impliedFormat":1},{"version":"5810080a0da989a944d3b691b7b479a4a13c75947fb538abb8070710baa5ccee","affectsGlobalScope":true,"impliedFormat":1},{"version":"72f4a812489dee501c41a085f174e1a843aa78e93dd2af0a6f9ed89f796565c8","affectsGlobalScope":true,"impliedFormat":1},{"version":"1349077576abb41f0e9c78ec30762ff75b710208aff77f5fdcc6a8c8ce6289dd","impliedFormat":1},{"version":"e2ce82603102b5c0563f59fb40314cc1ff95a4d521a66ad14146e130ea80d89c","impliedFormat":1},{"version":"a3e0395220255a350aa9c6d56f882bfcb5b85c19fddf5419ec822cf22246a26d","impliedFormat":1},{"version":"c27b01e8ddff5cd280711af5e13aecd9a3228d1c256ea797dd64f8fdec5f7df5","impliedFormat":1},{"version":"898840e876dfd21843db9f2aa6ae38ba2eab550eb780ff62b894b9fbfebfae6b","impliedFormat":1},{"version":"8904e5b670bbfc712dda607853de9227206e7dad93ac97109fe30875c5f12b78","impliedFormat":1},{"version":"1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","impliedFormat":1},{"version":"785e5be57d4f20f290a20e7b0c6263f6c57fd6e51283050756cef07d6d651c68","impliedFormat":1},{"version":"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","impliedFormat":1},{"version":"164deb2409ac5f4da3cd139dbcee7f7d66753d90363a4d7e2db8d8874f272270","impliedFormat":1},{"version":"a54ee34c2cc03ec4bbf0c9b10a08b9f909a21b3314f90a743de7b12b85867cef","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a985c7d30aea82342d5017730b546bb2b734fe37a2684ca55d4734deb019d58","affectsGlobalScope":true,"impliedFormat":1},{"version":"ad08154d9602429522cac965a715fde27d421d69b24756c5d291877dda75353e","impliedFormat":1},{"version":"5bc85813bfcb6907cc3a960fec8734a29d7884e0e372515147720c5991b8bc22","impliedFormat":1},{"version":"812b25f798033c202baedf386a1ccc41f9191b122f089bffd10fdccce99fba11","impliedFormat":1},{"version":"993325544790073f77e945bee046d53988c0bc3ac5695c9cf8098166feb82661","impliedFormat":1},{"version":"4d06f3abc2a6aae86f1be39e397372f74fb6e7964f594d645926b4a3419cc15d","affectsGlobalScope":true,"impliedFormat":1},{"version":"0e08c360c9b5961ecb0537b703e253842b3ded53151ee07024148219b61a8baf","affectsGlobalScope":true,"impliedFormat":1},{"version":"2ce2210032ccaff7710e2abf6a722e62c54960458e73e356b6a365c93ab6ca66","impliedFormat":1},{"version":"5ba5b760345053acdf5beb1a9048ff43a51373f3d87849963779c1711ea7cbcc","impliedFormat":1},{"version":"16a3080e885ed52d4017c902227a8d0d8daf723d062bec9e45627c6fdcd6699b","impliedFormat":1},{"version":"d19e76b1210879a533e64d687e7c4aa605c7fecaa554fbb6b319d9ae9d0f5164","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ca6858a0cbcd74d7db72d7b14c5360a928d1d16748a55ecfa6bfaff8b83071b","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"13e851ee5f3dad116583e14e9d3f4aaf231194bbb6f4b969dc7446ae98a3fa73","impliedFormat":1}],"root":[[65,67]],"options":{"alwaysStrict":true,"declaration":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":100,"newLine":1,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","preserveConstEnums":true,"removeComments":false,"sourceMap":true,"strict":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":9},"fileIdsList":[[68,114],[71,114],[72,77,105,114],[73,84,85,92,102,113,114],[73,74,84,92,114],[75,114],[76,77,85,93,114],[77,102,110,114],[78,80,84,92,114],[79,114],[80,81,114],[84,114],[82,84,114],[84,85,86,102,113,114],[84,85,86,99,102,105,114],[114,118],[114],[80,84,87,92,102,113,114],[84,85,87,88,92,102,110,113,114],[87,89,102,110,113,114],[68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120],[84,90,114],[91,113,114,118],[80,84,92,102,114],[93,114],[94,114],[71,95,114],[96,112,114,118],[97,114],[98,114],[84,99,100,114],[99,101,114,116],[72,84,102,103,104,105,114],[72,102,104,114],[102,103,114],[105,114],[106,114],[71,102,114],[84,108,109,114],[108,109,114],[77,92,102,110,114],[111,114],[92,112,114],[72,87,98,113,114],[77,114],[102,114,115],[91,114,116],[114,117],[72,77,84,86,95,102,113,114,116,118],[102,114,119],[66,114],[65,114]],"referencedMap":[[68,1],[69,1],[71,2],[72,3],[73,4],[74,5],[75,6],[76,7],[77,8],[78,9],[79,10],[80,11],[81,11],[83,12],[82,13],[84,12],[85,14],[86,15],[70,16],[120,17],[87,18],[88,19],[89,20],[121,21],[90,22],[91,23],[92,24],[93,25],[94,26],[95,27],[96,28],[97,29],[98,30],[99,31],[100,31],[101,32],[102,33],[104,34],[103,35],[105,36],[106,37],[107,38],[108,39],[109,40],[110,41],[111,42],[112,43],[113,44],[114,45],[115,46],[116,47],[117,48],[118,49],[119,50],[63,17],[64,17],[12,17],[14,17],[13,17],[2,17],[15,17],[16,17],[17,17],[18,17],[19,17],[20,17],[21,17],[22,17],[3,17],[4,17],[23,17],[27,17],[24,17],[25,17],[26,17],[28,17],[29,17],[30,17],[5,17],[31,17],[32,17],[33,17],[34,17],[6,17],[38,17],[35,17],[36,17],[37,17],[39,17],[7,17],[40,17],[45,17],[46,17],[41,17],[42,17],[43,17],[44,17],[8,17],[50,17],[47,17],[48,17],[49,17],[51,17],[9,17],[52,17],[53,17],[54,17],[57,17],[55,17],[56,17],[58,17],[59,17],[10,17],[1,17],[11,17],[62,17],[61,17],[60,17],[67,51],[65,17],[66,52]],"exportedModulesMap":[[68,1],[69,1],[71,2],[72,3],[73,4],[74,5],[75,6],[76,7],[77,8],[78,9],[79,10],[80,11],[81,11],[83,12],[82,13],[84,12],[85,14],[86,15],[70,16],[120,17],[87,18],[88,19],[89,20],[121,21],[90,22],[91,23],[92,24],[93,25],[94,26],[95,27],[96,28],[97,29],[98,30],[99,31],[100,31],[101,32],[102,33],[104,34],[103,35],[105,36],[106,37],[107,38],[108,39],[109,40],[110,41],[111,42],[112,43],[113,44],[114,45],[115,46],[116,47],[117,48],[118,49],[119,50],[63,17],[64,17],[12,17],[14,17],[13,17],[2,17],[15,17],[16,17],[17,17],[18,17],[19,17],[20,17],[21,17],[22,17],[3,17],[4,17],[23,17],[27,17],[24,17],[25,17],[26,17],[28,17],[29,17],[30,17],[5,17],[31,17],[32,17],[33,17],[34,17],[6,17],[38,17],[35,17],[36,17],[37,17],[39,17],[7,17],[40,17],[45,17],[46,17],[41,17],[42,17],[43,17],[44,17],[8,17],[50,17],[47,17],[48,17],[49,17],[51,17],[9,17],[52,17],[53,17],[54,17],[57,17],[55,17],[56,17],[58,17],[59,17],[10,17],[1,17],[11,17],[62,17],[61,17],[60,17],[67,51],[66,52]],"semanticDiagnosticsPerFile":[68,69,71,72,73,74,75,76,77,78,79,80,81,83,82,84,85,86,70,120,87,88,89,121,90,91,92,93,94,95,96,97,98,99,100,101,102,104,103,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,63,64,12,14,13,2,15,16,17,18,19,20,21,22,3,4,23,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,59,10,1,11,62,61,60,67,65,66]},"version":"5.2.2"}
package/package.json ADDED
@@ -0,0 +1,71 @@
1
+ {
2
+ "name": "@odg/config",
3
+ "version": "1.0.0",
4
+ "description": "Config interface abstraction",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "homepage": "https://github.com/ODGodinho/Stanley-TheTemplate-Typescript",
8
+ "scripts": {
9
+ "build": "rimraf dist/ && tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json",
10
+ "build:watch": "npm run build && (concurrently \"tsc --project ./tsconfig.build.json -w\" \"tsc-alias -p tsconfig.build.json -w\")",
11
+ "start": "node ./dist/index.js",
12
+ "lint": "eslint --ext .js,.jsx,.ts,.tsx,.json,.jsonc,.json5,.yml,.yaml,.xml,.txt,.svg,.properties,.gradle,.java,.cpp,.c,.cs,.html,.css,.groovy,.gitignore,.npmignore,.toml,.env,.example,.sample,.ini,.php,.bat,.powershell,.ps1,.sh,.bash,.eslintrc",
13
+ "lint:fix": "eslint --ext .js,.jsx,.ts,.tsx,.json,.jsonc,.json5,.yml,.yaml,.xml,.txt,.svg,.properties,.gradle,.java,.cpp,.c,.cs,.html,.css,.groovy,.gitignore,.npmignore,.toml,.env,.example,.sample,.ini,.php,.bat,.powershell,.ps1,.sh,.bash,.eslintrc --fix",
14
+ "prepare": "husky install",
15
+ "test": "vitest run",
16
+ "test:ci": "vitest run --passWithNoTests",
17
+ "test:watch": "vitest --watch"
18
+ },
19
+ "publishConfig": {
20
+ "access": "public"
21
+ },
22
+ "lint-staged": {
23
+ "*": [
24
+ "npm run lint:fix"
25
+ ]
26
+ },
27
+ "release": {
28
+ "branches": [
29
+ "+([0-9])?(.{+([0-9]),x}).x",
30
+ "main",
31
+ "master",
32
+ "next",
33
+ "next-major",
34
+ {
35
+ "name": "beta",
36
+ "prerelease": true
37
+ },
38
+ {
39
+ "name": "alpha",
40
+ "prerelease": true
41
+ }
42
+ ],
43
+ "plugins": [
44
+ "@semantic-release/commit-analyzer",
45
+ "@semantic-release/release-notes-generator",
46
+ "@semantic-release/npm",
47
+ "@semantic-release/github"
48
+ ]
49
+ },
50
+ "files": [
51
+ "./dist/",
52
+ "./README.md"
53
+ ],
54
+ "author": "Dragons Gamers <https://www.linkedin.com/in/victor-alves-odgodinho>",
55
+ "license": "MIT",
56
+ "devDependencies": {
57
+ "@odg/eslint-config": "*",
58
+ "@odg/tsconfig": "*",
59
+ "@types/node": "^20.5.7",
60
+ "@vitest/coverage-v8": "^0.34.3",
61
+ "concurrently": "^8.2.0",
62
+ "eslint": "*",
63
+ "husky": "^8.0.3",
64
+ "lint-staged": "^14.0.1",
65
+ "rimraf": "^5.0.1",
66
+ "tsc-alias": "^1.8.7",
67
+ "typescript": "^5.1.6",
68
+ "vite-tsconfig-paths": "^4.2.0",
69
+ "vitest": "^0.34.3"
70
+ }
71
+ }