nodeconfigloder 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/LICENSE +21 -0
- package/README.md +504 -0
- package/dist/configloder.bundle.js +8053 -0
- package/dist/conftool.bundle.js +11645 -0
- package/dist/finddifferences.bundle.js +396 -0
- package/dist/serializer.bundle.js +4248 -0
- package/dist/src/configloder/ConfigLoder.d.ts +92 -0
- package/dist/src/configloder/ConfigLoder.d.ts.map +1 -0
- package/dist/src/configloder/FindDifferences.d.ts +152 -0
- package/dist/src/configloder/FindDifferences.d.ts.map +1 -0
- package/dist/src/configloder/Serializer.d.ts +108 -0
- package/dist/src/configloder/Serializer.d.ts.map +1 -0
- package/dist/src/tools/index.d.ts +2 -0
- package/dist/src/tools/index.d.ts.map +1 -0
- package/dist/test/unit/configloder/ConfigLoder.test.d.ts +11 -0
- package/dist/test/unit/configloder/ConfigLoder.test.d.ts.map +1 -0
- package/dist/test/unit/configloder/FindDifferences.test.d.ts +11 -0
- package/dist/test/unit/configloder/FindDifferences.test.d.ts.map +1 -0
- package/dist/test/unit/configloder/Serializer.test.d.ts +11 -0
- package/dist/test/unit/configloder/Serializer.test.d.ts.map +1 -0
- package/package.json +69 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 処理名: 設定ファイル読み込み・書き込みライブラリ
|
|
3
|
+
*
|
|
4
|
+
* 処理概要:
|
|
5
|
+
* JSON/YAML形式の設定ファイルを読み込み・書き込みするためのクラス。
|
|
6
|
+
* 同期処理で設定ファイルを管理し、フォーマット変換機能を提供する
|
|
7
|
+
*
|
|
8
|
+
* 実装理由:
|
|
9
|
+
* アプリケーション起動時に設定ファイルを即座に読み込む必要があり、
|
|
10
|
+
* JSON/YAMLの双方に対応する必要があるため
|
|
11
|
+
*/
|
|
12
|
+
export declare class ConfigLoder {
|
|
13
|
+
private debug;
|
|
14
|
+
/**
|
|
15
|
+
* 処理名: コンストラクタ
|
|
16
|
+
*
|
|
17
|
+
* 処理概要:
|
|
18
|
+
* ConfigLoderインスタンスを初期化する
|
|
19
|
+
*
|
|
20
|
+
* 実装理由:
|
|
21
|
+
* デバッグフラグを設定し、詳細なログ出力をコントロールするため
|
|
22
|
+
* @param {boolean} [debug] デバッグモード(省略可能、デフォルト: false)
|
|
23
|
+
*/
|
|
24
|
+
constructor(debug?: boolean);
|
|
25
|
+
/**
|
|
26
|
+
* 処理名: リスト形式の設定ファイル読み込み
|
|
27
|
+
*
|
|
28
|
+
* 処理概要:
|
|
29
|
+
* 改行区切りのテキストファイルを読み込み、配列に変換して返す
|
|
30
|
+
*
|
|
31
|
+
* 実装理由:
|
|
32
|
+
* シンプルなリスト形式の設定を効率的に読み込むため
|
|
33
|
+
* @param {string} filepath ファイルパス
|
|
34
|
+
* @returns {string[]} 行単位に分割された文字列配列
|
|
35
|
+
* @throws {Error} ファイルが存在しないか読み込みに失敗した場合
|
|
36
|
+
*/
|
|
37
|
+
readListSync(filepath: string): string[];
|
|
38
|
+
/**
|
|
39
|
+
* 処理名: 設定ファイル読み込み
|
|
40
|
+
*
|
|
41
|
+
* 処理概要:
|
|
42
|
+
* JSON/YAML形式の設定ファイルを読み込み、JSON文字列として返す。
|
|
43
|
+
* YAMLは自動的にJSONに変換される
|
|
44
|
+
*
|
|
45
|
+
* 実装理由:
|
|
46
|
+
* 複数のフォーマットに対応しながら、内部的にはJSONで統一处理するため
|
|
47
|
+
* @param {string} filepath ファイルパス
|
|
48
|
+
* @returns {string} JSON形式の文字列
|
|
49
|
+
* @throws {Error} ファイルが存在しないか読み込みに失敗した場合
|
|
50
|
+
*/
|
|
51
|
+
readConfigSync(filepath: string): string;
|
|
52
|
+
/**
|
|
53
|
+
* 処理名: YAML形式への変換
|
|
54
|
+
*
|
|
55
|
+
* 処理概要:
|
|
56
|
+
* JavaScriptオブジェクトをYAML形式のテキストに変換する
|
|
57
|
+
*
|
|
58
|
+
* 実装理由:
|
|
59
|
+
* 設定ファイルの人間が読みやすいYAML形式での出力を実現するため
|
|
60
|
+
* @param {unknown} json 変換元のオブジェクト
|
|
61
|
+
* @returns {string} YAML形式の文字列
|
|
62
|
+
*/
|
|
63
|
+
toYamlText(json: unknown): string;
|
|
64
|
+
/**
|
|
65
|
+
* 処理名: JSON形式への変換
|
|
66
|
+
*
|
|
67
|
+
* 処理概要:
|
|
68
|
+
* JavaScriptオブジェクトをフォーマット済みのJSON文字列に変換する
|
|
69
|
+
*
|
|
70
|
+
* 実装理由:
|
|
71
|
+
* 設定ファイルのJSON形式での出力を提供するため
|
|
72
|
+
* @param {unknown} json 変換元のオブジェクト
|
|
73
|
+
* @returns {string} フォーマット済みJSON文字列
|
|
74
|
+
*/
|
|
75
|
+
toJsonText(json: unknown): string;
|
|
76
|
+
/**
|
|
77
|
+
* 処理名: 設定ファイル書き込み
|
|
78
|
+
*
|
|
79
|
+
* 処理概要:
|
|
80
|
+
* 設定データをJSONまたはYAML形式で指定されたパスに書き込む。
|
|
81
|
+
* ファイル拡張子から自動的にフォーマットを判定
|
|
82
|
+
*
|
|
83
|
+
* 実装理由:
|
|
84
|
+
* 変更された設定を指定フォーマットで永続化するため
|
|
85
|
+
* @param {string} filepath ファイルパス
|
|
86
|
+
* @param {unknown} data 書き込むデータ
|
|
87
|
+
* @throws {Error} 書き込みに失敗した場合
|
|
88
|
+
*/
|
|
89
|
+
writeConfigSync(filepath: string, data: unknown): void;
|
|
90
|
+
}
|
|
91
|
+
export default ConfigLoder;
|
|
92
|
+
//# sourceMappingURL=ConfigLoder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigLoder.d.ts","sourceRoot":"","sources":["../../../src/configloder/ConfigLoder.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;GAUG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAU;IAEvB;;;;;;;;;OASG;gBACS,KAAK,CAAC,EAAE,OAAO;IAI3B;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE;IAYxC;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAexC;;;;;;;;;;OAUG;IACH,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM;IAIjC;;;;;;;;;;OAUG;IACH,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM;IAIjC;;;;;;;;;;;;OAYG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;CAYvD;AAED,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { EventEmitter } from 'events';
|
|
3
|
+
/**
|
|
4
|
+
* ハッシュツリーのノード型
|
|
5
|
+
*/
|
|
6
|
+
interface HashTreeNode {
|
|
7
|
+
__hash: string;
|
|
8
|
+
[key: string]: unknown;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 処理名: 差分検出エンジン
|
|
12
|
+
*
|
|
13
|
+
* 処理概要:
|
|
14
|
+
* ハッシュツリーを使用して2つのJSON構造の差分を効率的に検出する。
|
|
15
|
+
* EventEmitterを継承し、差分を'difference'イベントで通知
|
|
16
|
+
*
|
|
17
|
+
* 実装理由:
|
|
18
|
+
* 大規模な設定ファイルの変更検出において、全体比較ではなく
|
|
19
|
+
* ハッシュツリーの活用で計算量を最小化するため
|
|
20
|
+
*/
|
|
21
|
+
export declare class FindDifferences extends EventEmitter {
|
|
22
|
+
private previousHashTree;
|
|
23
|
+
/**
|
|
24
|
+
* 処理名: コンストラクタ
|
|
25
|
+
*
|
|
26
|
+
* 処理概要:
|
|
27
|
+
* FindDifferencesインスタンスを初期化し、前回のハッシュツリーを空の状態で保持
|
|
28
|
+
*
|
|
29
|
+
* 実装理由:
|
|
30
|
+
* EventEmitterの初期化と、差分検出のための状態を保持するため
|
|
31
|
+
*/
|
|
32
|
+
constructor();
|
|
33
|
+
/**
|
|
34
|
+
* 処理名: ハッシュ値計算
|
|
35
|
+
*
|
|
36
|
+
* 処理概要:
|
|
37
|
+
* 与えられた値のSHA256ハッシュを計算する
|
|
38
|
+
*
|
|
39
|
+
* 実装理由:
|
|
40
|
+
* オブジェクトの内容をコンパクトに表現し、変更検出の基盤とするため
|
|
41
|
+
* @param {string} value ハッシュ対象の値
|
|
42
|
+
* @returns {string} ハッシュ文字列
|
|
43
|
+
* @private
|
|
44
|
+
*/
|
|
45
|
+
private calculateHash;
|
|
46
|
+
/**
|
|
47
|
+
* 処理名: ハッシュツリー構築
|
|
48
|
+
*
|
|
49
|
+
* 処理概要:
|
|
50
|
+
* JSONデータから再帰的にハッシュツリーを構築する。
|
|
51
|
+
* 各ノードには__hashキーで当該ノード以下の変更を示すハッシュを保持
|
|
52
|
+
*
|
|
53
|
+
* 実装理由:
|
|
54
|
+
* 差分検出時に__hashの比較だけで下層の探索を短縮するため
|
|
55
|
+
* @param {unknown} data 構築対象のデータ
|
|
56
|
+
* @returns {HashTreeNode} ハッシュツリー
|
|
57
|
+
* @private
|
|
58
|
+
*/
|
|
59
|
+
private buildHashTree;
|
|
60
|
+
/**
|
|
61
|
+
* 処理名: 削除・更新キーの処理
|
|
62
|
+
* @param {HashTreeNode} hashTree ハッシュツリー
|
|
63
|
+
* @param {Record<string, unknown>} jsonData JSON データ
|
|
64
|
+
* @param {string} path パス
|
|
65
|
+
* @returns {void}
|
|
66
|
+
* @private
|
|
67
|
+
*/
|
|
68
|
+
private processExistingKeys;
|
|
69
|
+
/**
|
|
70
|
+
* 処理名: キー値の処理
|
|
71
|
+
* @param {HashTreeNode} hashTree ハッシュツリー
|
|
72
|
+
* @param {Record<string, unknown>} jsonData JSON データ
|
|
73
|
+
* @param {string} key キー
|
|
74
|
+
* @param {string} currentPath 現在のパス
|
|
75
|
+
* @returns {void}
|
|
76
|
+
* @private
|
|
77
|
+
*/
|
|
78
|
+
private processKeyValue;
|
|
79
|
+
/**
|
|
80
|
+
* 処理名: オブジェクト値の処理
|
|
81
|
+
* @param {HashTreeNode} hashTree ハッシュツリー
|
|
82
|
+
* @param {Record<string, unknown>} jsonValue JSON 値
|
|
83
|
+
* @param {string} key キー
|
|
84
|
+
* @param {string} currentPath 現在のパス
|
|
85
|
+
* @returns {void}
|
|
86
|
+
* @private
|
|
87
|
+
*/
|
|
88
|
+
private processObjectValue;
|
|
89
|
+
/**
|
|
90
|
+
* 処理名: プリミティブ値の処理
|
|
91
|
+
* @param {HashTreeNode} hashTree ハッシュツリー
|
|
92
|
+
* @param {unknown} jsonValue JSON 値
|
|
93
|
+
* @param {string} key キー
|
|
94
|
+
* @param {string} currentPath 現在のパス
|
|
95
|
+
* @returns {void}
|
|
96
|
+
* @private
|
|
97
|
+
*/
|
|
98
|
+
private processPrimitiveValue;
|
|
99
|
+
/**
|
|
100
|
+
* 処理名: 追加されたキーの処理
|
|
101
|
+
* @param {HashTreeNode} hashTree ハッシュツリー
|
|
102
|
+
* @param {Record<string, unknown>} jsonData JSON データ
|
|
103
|
+
* @param {string} path パス
|
|
104
|
+
* @returns {void}
|
|
105
|
+
* @private
|
|
106
|
+
*/
|
|
107
|
+
private processAddedKeys;
|
|
108
|
+
/**
|
|
109
|
+
* 処理名: 差分検出と更新
|
|
110
|
+
*
|
|
111
|
+
* 処理概要:
|
|
112
|
+
* 前回のハッシュツリーと新しいJSONデータを比較し、
|
|
113
|
+
* 追加・削除・更新されたパスを'difference'イベントで通知
|
|
114
|
+
*
|
|
115
|
+
* 実装理由:
|
|
116
|
+
* ハッシュ値の比較で不要な再帰を避け、変更箇所のみを検出するため
|
|
117
|
+
* @param {HashTreeNode} hashTree ハッシュツリー
|
|
118
|
+
* @param {unknown} jsonData JSON データ
|
|
119
|
+
* @param {string} path パス
|
|
120
|
+
* @returns {void}
|
|
121
|
+
* @private
|
|
122
|
+
*/
|
|
123
|
+
private findDifferencesAndUpdate;
|
|
124
|
+
/**
|
|
125
|
+
* 処理名: ハッシュツリー初期化
|
|
126
|
+
*
|
|
127
|
+
* 処理概要:
|
|
128
|
+
* 初回読み込み時にハッシュツリーを構築し、前回状態として保持
|
|
129
|
+
*
|
|
130
|
+
* 実装理由:
|
|
131
|
+
* 次回の差分検出の基準となるベースラインを作成するため
|
|
132
|
+
* @param {unknown} jsonData 初回のJSONデータ
|
|
133
|
+
* @returns {HashTreeNode} 構築されたハッシュツリー
|
|
134
|
+
*/
|
|
135
|
+
initialize(jsonData: unknown): HashTreeNode;
|
|
136
|
+
/**
|
|
137
|
+
* 処理名: 差分検出
|
|
138
|
+
*
|
|
139
|
+
* 処理概要:
|
|
140
|
+
* 新しいJSONデータと前回のハッシュツリーを比較し、
|
|
141
|
+
* 差分を検出して'difference'イベントで通知。
|
|
142
|
+
* 内部的にハッシュツリーを更新して次回検出に備える
|
|
143
|
+
*
|
|
144
|
+
* 実装理由:
|
|
145
|
+
* ファイル監視やリアルタイム変更検出のため、継続的に差分を検出するため
|
|
146
|
+
* @param {unknown} jsonData 新しいJSONデータ
|
|
147
|
+
* @returns {HashTreeNode} 更新上のハッシュツリー
|
|
148
|
+
*/
|
|
149
|
+
detectChanges(jsonData: unknown): HashTreeNode;
|
|
150
|
+
}
|
|
151
|
+
export default FindDifferences;
|
|
152
|
+
//# sourceMappingURL=FindDifferences.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FindDifferences.d.ts","sourceRoot":"","sources":["../../../src/configloder/FindDifferences.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC;;GAEG;AACH,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAUD;;;;;;;;;;GAUG;AACH,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,OAAO,CAAC,gBAAgB,CAAe;IAEvC;;;;;;;;OAQG;;IAMH;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,aAAa;IAIrB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,aAAa;IAyCrB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAqB3B;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAcvB;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IA2B1B;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAqBxB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,wBAAwB;IAsBhC;;;;;;;;;;OAUG;IACH,UAAU,CAAC,QAAQ,EAAE,OAAO,GAAG,YAAY;IAI3C;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,QAAQ,EAAE,OAAO,GAAG,YAAY;CAI/C;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/**
|
|
4
|
+
* 処理名: 設定値のシリアライズ・暗号化ライブラリ
|
|
5
|
+
*
|
|
6
|
+
* 処理概要:
|
|
7
|
+
* JavaScriptの設定オブジェクトをシリアライズ・デシリアライズする。
|
|
8
|
+
* 正規表現、Buffer、環境変数、シークレット情報の特殊なハンドリングをサポート
|
|
9
|
+
*
|
|
10
|
+
* 実装理由:
|
|
11
|
+
* 複雑な設定オブジェクト(正規表現、バイナリデータ、暗号情報)を
|
|
12
|
+
* JSON形式で安全に保存・復元するため
|
|
13
|
+
*/
|
|
14
|
+
export declare class Serializer {
|
|
15
|
+
private crypto;
|
|
16
|
+
private debug;
|
|
17
|
+
/**
|
|
18
|
+
* 処理名: コンストラクタ
|
|
19
|
+
*
|
|
20
|
+
* 処理概要:
|
|
21
|
+
* Serializerインスタンスを初期化し、暗号化キーとデバッグフラグを設定
|
|
22
|
+
* 実装理由:
|
|
23
|
+
* 暗号化・複号化処理で使用する秘密鍵を保持するため
|
|
24
|
+
* @param {Buffer} cryptokey 暗号化用の秘密鍵
|
|
25
|
+
* @param {boolean} [debug] デバッグモード
|
|
26
|
+
*/
|
|
27
|
+
constructor(cryptokey: Buffer, debug?: boolean);
|
|
28
|
+
/**
|
|
29
|
+
* 処理名: 暗号化キー生成
|
|
30
|
+
* 処理概要:
|
|
31
|
+
* パスワードから暗号化キーを生成する。
|
|
32
|
+
* パスワードが指定されない場合はランダムに生成
|
|
33
|
+
*
|
|
34
|
+
* 実装理由:
|
|
35
|
+
* 安全な暗号化キー生成のためにscrypt関数を使用
|
|
36
|
+
* @param {string} [password] 暗号化パスワード
|
|
37
|
+
* @returns {Buffer} 32バイトの暗号化キー
|
|
38
|
+
*/
|
|
39
|
+
static generatekey(password?: string): Buffer;
|
|
40
|
+
/**
|
|
41
|
+
* 処理名: RegExp デシリアライズ処理
|
|
42
|
+
* @param {unknown} value 値
|
|
43
|
+
* @returns {unknown} 処理済み値
|
|
44
|
+
* @private
|
|
45
|
+
*/
|
|
46
|
+
private deserializeRegExp;
|
|
47
|
+
/**
|
|
48
|
+
* 処理名: Buffer デシリアライズ処理
|
|
49
|
+
* @param {unknown} value 値
|
|
50
|
+
* @returns {unknown} 処理済み値
|
|
51
|
+
* @private
|
|
52
|
+
*/
|
|
53
|
+
private deserializeBuffer;
|
|
54
|
+
/**
|
|
55
|
+
* 処理名: Secret デシリアライズ処理
|
|
56
|
+
* @param {unknown} value 値
|
|
57
|
+
* @returns {unknown} 処理済み値
|
|
58
|
+
* @private
|
|
59
|
+
*/
|
|
60
|
+
private deserializeSecret;
|
|
61
|
+
/**
|
|
62
|
+
* 処理名: Env デシリアライズ処理
|
|
63
|
+
* @param {unknown} value 値
|
|
64
|
+
* @returns {unknown} 処理済み値
|
|
65
|
+
* @private
|
|
66
|
+
*/
|
|
67
|
+
private deserializeEnv;
|
|
68
|
+
/**
|
|
69
|
+
* 処理名: リバイバー関数
|
|
70
|
+
* @param {string} _key キー名
|
|
71
|
+
* @param {unknown} value 値
|
|
72
|
+
* @returns {unknown} 処理済み値
|
|
73
|
+
* @private
|
|
74
|
+
*/
|
|
75
|
+
private reviver;
|
|
76
|
+
/**
|
|
77
|
+
* 処理名: JSON文字列のデシリアライズ
|
|
78
|
+
*
|
|
79
|
+
* 処理概要:
|
|
80
|
+
* JSON文字列を復元し、特殊なtype値を持つオブジェクトを
|
|
81
|
+
* 適切なJavaScriptオブジェクトに変換する
|
|
82
|
+
*
|
|
83
|
+
* 実装理由:
|
|
84
|
+
* 保存されたシリアライズデータから元の正規表現、Buffer、Secret等を
|
|
85
|
+
* 復元するため
|
|
86
|
+
* @param {string} json JSON文字列
|
|
87
|
+
* @returns {unknown} デシリアライズされたオブジェクト
|
|
88
|
+
* @throws {Error} デシリアライズに失敗した場合
|
|
89
|
+
*/
|
|
90
|
+
deserializeObject(json: string): unknown;
|
|
91
|
+
/**
|
|
92
|
+
* 処理名: JavaScriptコードのシリアライズ
|
|
93
|
+
*
|
|
94
|
+
* 処理概要:
|
|
95
|
+
* JavaScriptコード文字列を実行し、正規表現・Buffer・環境変数・Secret等の
|
|
96
|
+
* 特殊なオブジェクトを適切にシリアライズ可能な形式に変換
|
|
97
|
+
*
|
|
98
|
+
* 実装理由:
|
|
99
|
+
* module.exportsで定義された設定オブジェクトに対し、
|
|
100
|
+
* カスタムtoJSONメソッドを動的に追加してシリアライズ処理を統一するため
|
|
101
|
+
* @param {string} jsCode JavaScriptのコード文字列
|
|
102
|
+
* @returns {unknown} シリアライズされた設定オブジェクト
|
|
103
|
+
* @throws {Error} コード実行に失敗した場合
|
|
104
|
+
*/
|
|
105
|
+
serializeObject(jsCode: string): unknown;
|
|
106
|
+
}
|
|
107
|
+
export default Serializer;
|
|
108
|
+
//# sourceMappingURL=Serializer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Serializer.d.ts","sourceRoot":"","sources":["../../../src/configloder/Serializer.ts"],"names":[],"mappings":";;AAMA;;;;;;;;;;GAUG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAIZ;IACF,OAAO,CAAC,KAAK,CAAU;IAEvB;;;;;;;;;OASG;gBACS,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;IAS9C;;;;;;;;;;OAUG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAO7C;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAazB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAQtB;;;;;;OAMG;IACH,OAAO,CAAC,OAAO;IAyBf;;;;;;;;;;;;;OAaG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQxC;;;;;;;;;;;;;OAaG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;CA+CzC;AAED,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigLoder.test.d.ts","sourceRoot":"","sources":["../../../../test/unit/configloder/ConfigLoder.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FindDifferences.test.d.ts","sourceRoot":"","sources":["../../../../test/unit/configloder/FindDifferences.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Serializer.test.d.ts","sourceRoot":"","sources":["../../../../test/unit/configloder/Serializer.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
package/package.json
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "nodeconfigloder",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Flexible configuration file loader with support for multiple formats including JSON, YAML, and JavaScript",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"config",
|
|
7
|
+
"configuration",
|
|
8
|
+
"loader",
|
|
9
|
+
"json",
|
|
10
|
+
"yaml",
|
|
11
|
+
"cli"
|
|
12
|
+
],
|
|
13
|
+
"main": "dist/configloder.bundle.js",
|
|
14
|
+
"files": [
|
|
15
|
+
"dist",
|
|
16
|
+
"package.json",
|
|
17
|
+
"README.md",
|
|
18
|
+
"LICENSE"
|
|
19
|
+
],
|
|
20
|
+
"bin": {
|
|
21
|
+
"configtool": "dist/conftool.bundle.js"
|
|
22
|
+
},
|
|
23
|
+
"scripts": {
|
|
24
|
+
"test": "jest --config jest.unit.config.js",
|
|
25
|
+
"build": "cross-env NODE_ENV=test webpack",
|
|
26
|
+
"test:ci": "jest --config jest.unit.config.js --coverage",
|
|
27
|
+
"lint": "eslint .",
|
|
28
|
+
"docs": "typedoc --config typedoc.js",
|
|
29
|
+
"depcruise": "depcruise src --config .dependency-cruiser.js"
|
|
30
|
+
},
|
|
31
|
+
"repository": {
|
|
32
|
+
"type": "git",
|
|
33
|
+
"url": "git+https://github.com/nojaja/NodeConfigLoder.git"
|
|
34
|
+
},
|
|
35
|
+
"author": "nojaja <free.riccia@gmail.com> (https://github.com/nojaja)",
|
|
36
|
+
"license": "MIT",
|
|
37
|
+
"bugs": {
|
|
38
|
+
"url": "https://github.com/nojaja/NodeConfigLoder/issues"
|
|
39
|
+
},
|
|
40
|
+
"homepage": "https://github.com/nojaja/NodeConfigLoder#readme",
|
|
41
|
+
"devDependencies": {
|
|
42
|
+
"@babel/preset-env": "^7.23.0",
|
|
43
|
+
"@eslint/js": "^8.54.0",
|
|
44
|
+
"@nojaja/pathutil": "^1.0.3",
|
|
45
|
+
"@types/jest": "^29.5.8",
|
|
46
|
+
"@types/js-yaml": "^4.0.9",
|
|
47
|
+
"@types/node": "^20.10.6",
|
|
48
|
+
"@types/source-map-support": "^0.5.10",
|
|
49
|
+
"@typescript-eslint/eslint-plugin": "^6.17.0",
|
|
50
|
+
"@typescript-eslint/parser": "^6.17.0",
|
|
51
|
+
"babel-jest": "^29.7.0",
|
|
52
|
+
"commander": "^8.3.0",
|
|
53
|
+
"cross-env": "^7.0.3",
|
|
54
|
+
"dependency-cruiser": "^17.3.5",
|
|
55
|
+
"eslint": "^8.54.0",
|
|
56
|
+
"eslint-plugin-jsdoc": "^46.9.1",
|
|
57
|
+
"eslint-plugin-sonarjs": "^0.23.0",
|
|
58
|
+
"jest": "^29.7.0",
|
|
59
|
+
"js-yaml": "^4.1.0",
|
|
60
|
+
"log4js": "^6.9.1",
|
|
61
|
+
"object-path": "^0.11.8",
|
|
62
|
+
"ts-jest": "^29.1.1",
|
|
63
|
+
"ts-loader": "^9.5.1",
|
|
64
|
+
"typedoc": "^0.25.4",
|
|
65
|
+
"typescript": "5.3.3",
|
|
66
|
+
"webpack": "^5.74.0",
|
|
67
|
+
"webpack-cli": "^4.10.0"
|
|
68
|
+
}
|
|
69
|
+
}
|