@gitsense/gscb-git-tools 0.1.0 → 0.2.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.
Files changed (75) hide show
  1. package/package.json +1 -1
  2. package/dist/cjs/common/logger.js +0 -97
  3. package/dist/cjs/common/logger.js.map +0 -1
  4. package/dist/cjs/common/metadata-manager.js +0 -196
  5. package/dist/cjs/common/metadata-manager.js.map +0 -1
  6. package/dist/cjs/importer/chat-manager/chat-creator.js +0 -90
  7. package/dist/cjs/importer/chat-manager/chat-creator.js.map +0 -1
  8. package/dist/cjs/importer/chat-manager/chat-manager.js +0 -179
  9. package/dist/cjs/importer/chat-manager/chat-manager.js.map +0 -1
  10. package/dist/cjs/importer/chat-manager/constants.js +0 -66
  11. package/dist/cjs/importer/chat-manager/constants.js.map +0 -1
  12. package/dist/cjs/importer/chat-manager/group-manager.js +0 -56
  13. package/dist/cjs/importer/chat-manager/group-manager.js.map +0 -1
  14. package/dist/cjs/importer/chat-manager/hierarchy-manager.js +0 -115
  15. package/dist/cjs/importer/chat-manager/hierarchy-manager.js.map +0 -1
  16. package/dist/cjs/importer/chat-manager/message-manager.js +0 -189
  17. package/dist/cjs/importer/chat-manager/message-manager.js.map +0 -1
  18. package/dist/cjs/importer/constants.js +0 -30
  19. package/dist/cjs/importer/constants.js.map +0 -1
  20. package/dist/cjs/importer/core/directory-processor.js +0 -343
  21. package/dist/cjs/importer/core/directory-processor.js.map +0 -1
  22. package/dist/cjs/importer/core/error-handler.js +0 -64
  23. package/dist/cjs/importer/core/error-handler.js.map +0 -1
  24. package/dist/cjs/importer/core/import-processor.js +0 -167
  25. package/dist/cjs/importer/core/import-processor.js.map +0 -1
  26. package/dist/cjs/importer/core/importer.js +0 -135
  27. package/dist/cjs/importer/core/importer.js.map +0 -1
  28. package/dist/cjs/importer/core/utils.js +0 -66
  29. package/dist/cjs/importer/core/utils.js.map +0 -1
  30. package/dist/cjs/importer/file-processor.js +0 -199
  31. package/dist/cjs/importer/file-processor.js.map +0 -1
  32. package/dist/cjs/importer/language-utils.js +0 -286
  33. package/dist/cjs/importer/language-utils.js.map +0 -1
  34. package/dist/cjs/importer/tree-processor.js +0 -119
  35. package/dist/cjs/importer/tree-processor.js.map +0 -1
  36. package/dist/cjs/index.js +0 -12
  37. package/dist/cjs/index.js.map +0 -1
  38. package/dist/cjs/package.json +0 -3
  39. package/dist/esm/common/logger.js +0 -95
  40. package/dist/esm/common/logger.js.map +0 -1
  41. package/dist/esm/common/metadata-manager.js +0 -194
  42. package/dist/esm/common/metadata-manager.js.map +0 -1
  43. package/dist/esm/importer/chat-manager/chat-creator.js +0 -88
  44. package/dist/esm/importer/chat-manager/chat-creator.js.map +0 -1
  45. package/dist/esm/importer/chat-manager/chat-manager.js +0 -177
  46. package/dist/esm/importer/chat-manager/chat-manager.js.map +0 -1
  47. package/dist/esm/importer/chat-manager/constants.js +0 -48
  48. package/dist/esm/importer/chat-manager/constants.js.map +0 -1
  49. package/dist/esm/importer/chat-manager/group-manager.js +0 -54
  50. package/dist/esm/importer/chat-manager/group-manager.js.map +0 -1
  51. package/dist/esm/importer/chat-manager/hierarchy-manager.js +0 -113
  52. package/dist/esm/importer/chat-manager/hierarchy-manager.js.map +0 -1
  53. package/dist/esm/importer/chat-manager/message-manager.js +0 -187
  54. package/dist/esm/importer/chat-manager/message-manager.js.map +0 -1
  55. package/dist/esm/importer/constants.js +0 -28
  56. package/dist/esm/importer/constants.js.map +0 -1
  57. package/dist/esm/importer/core/directory-processor.js +0 -337
  58. package/dist/esm/importer/core/directory-processor.js.map +0 -1
  59. package/dist/esm/importer/core/error-handler.js +0 -62
  60. package/dist/esm/importer/core/error-handler.js.map +0 -1
  61. package/dist/esm/importer/core/import-processor.js +0 -165
  62. package/dist/esm/importer/core/import-processor.js.map +0 -1
  63. package/dist/esm/importer/core/importer.js +0 -133
  64. package/dist/esm/importer/core/importer.js.map +0 -1
  65. package/dist/esm/importer/core/utils.js +0 -64
  66. package/dist/esm/importer/core/utils.js.map +0 -1
  67. package/dist/esm/importer/file-processor.js +0 -193
  68. package/dist/esm/importer/file-processor.js.map +0 -1
  69. package/dist/esm/importer/language-utils.js +0 -279
  70. package/dist/esm/importer/language-utils.js.map +0 -1
  71. package/dist/esm/importer/tree-processor.js +0 -113
  72. package/dist/esm/importer/tree-processor.js.map +0 -1
  73. package/dist/esm/index.js +0 -4
  74. package/dist/esm/index.js.map +0 -1
  75. package/dist/index.d.ts +0 -215
@@ -1,56 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * Component: Group Manager
5
- * Block-UUID: 1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d
6
- * Parent-UUID: N/A
7
- * Version: 1.0.0
8
- * Purpose: Handles group creation and updates
9
- * Language: TypeScript
10
- * Created-at: 2025-03-15T02:09:59.275Z
11
- * Authors: together.ai - DeepSeek v3 (v1.0.0)
12
- */
13
- class GroupManager {
14
- dbClient;
15
- gitRepo;
16
- logger;
17
- constructor(dbClient, gitRepo, logger) {
18
- this.dbClient = dbClient;
19
- this.gitRepo = gitRepo;
20
- this.logger = logger;
21
- }
22
- /**
23
- * Creates or updates a group. Full name example "facebook/react".
24
- */
25
- async createOrUpdateGroup(type, fullName) {
26
- try {
27
- const existingGroup = await this.dbClient.getGroupByName(fullName);
28
- if (existingGroup) {
29
- return existingGroup.id;
30
- }
31
- const meta = this.gitRepo ? await this.gitRepo.getInfo() : null;
32
- return await this.dbClient.createGroup({
33
- type,
34
- name: fullName,
35
- meta
36
- });
37
- }
38
- catch (error) {
39
- throw new Error(`Failed to create or update group '${fullName}': ${error instanceof Error ? error.message : String(error)}`);
40
- }
41
- }
42
- /**
43
- * Retrieves a group by its full name.
44
- */
45
- async getGroupByFullName(fullName) {
46
- try {
47
- return await this.dbClient.getGroupByName(fullName) || null;
48
- }
49
- catch (error) {
50
- throw new Error(`Failed to retrieve group '${fullName}': ${error instanceof Error ? error.message : String(error)}`);
51
- }
52
- }
53
- }
54
-
55
- exports.GroupManager = GroupManager;
56
- //# sourceMappingURL=group-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"group-manager.js","sources":["../../../../src/importer/chat-manager/group-manager.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;;;;;AASG;MAOU,YAAY,CAAA;AAEA,IAAA,QAAA;AACA,IAAA,OAAA;AACA,IAAA,MAAA;AAHrB,IAAA,WAAA,CACqB,QAAwB,EACxB,OAAmB,EACnB,MAAc,EAAA;QAFd,IAAQ,CAAA,QAAA,GAAR,QAAQ;QACR,IAAO,CAAA,OAAA,GAAP,OAAO;QACP,IAAM,CAAA,MAAA,GAAN,MAAM;;AAG3B;;AAEG;AACH,IAAA,MAAM,mBAAmB,CAAC,IAAe,EAAE,QAAgB,EAAA;AACvD,QAAA,IAAI;YACA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC;YAElE,IAAI,aAAa,EAAE;gBACf,OAAO,aAAa,CAAC,EAAG;;AAG5B,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI;AAE/D,YAAA,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACnC,IAAI;AACJ,gBAAA,IAAI,EAAE,QAAQ;gBACd;AACH,aAAA,CAAC;;QACJ,OAAO,KAAK,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,CAAqC,kCAAA,EAAA,QAAQ,MAAM,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAE,CAAA,CAAC;;;AAIpI;;AAEG;IACH,MAAM,kBAAkB,CAAC,QAAgB,EAAA;AACrC,QAAA,IAAI;YACA,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI;;QAC7D,OAAO,KAAK,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,CAA6B,0BAAA,EAAA,QAAQ,MAAM,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAE,CAAA,CAAC;;;AAG/H;;;;"}
@@ -1,115 +0,0 @@
1
- 'use strict';
2
-
3
- var constants = require('./constants.js');
4
-
5
- /**
6
- * Component: Hierarchy Manager
7
- * Block-UUID: 4d5e6f7a-8b9c-0d1e-2f3a-4b5c6d7e8f9a
8
- * Parent-UUID: N/A
9
- * Version: 1.0.0
10
- * Purpose: Handles chat hierarchy setup and management
11
- * Language: TypeScript
12
- * Created-at: 2025-03-15T02:12:20.075Z
13
- * Authors: together.ai - DeepSeek v3 (v1.0.0)
14
- */
15
- class HierarchyManager {
16
- dbClient;
17
- gitRepo;
18
- chatCreator;
19
- groupManager;
20
- logger;
21
- constructor(dbClient, gitRepo, chatCreator, groupManager, logger) {
22
- this.dbClient = dbClient;
23
- this.gitRepo = gitRepo;
24
- this.chatCreator = chatCreator;
25
- this.groupManager = groupManager;
26
- this.logger = logger;
27
- }
28
- /**
29
- * Sets up the chat hierarchy for the repository.
30
- * Creates or updates groups and chats for `git-repos`, `git-repo-owner`, `git-repo`, and `git-ref`.
31
- * Returns the ID of the `git-ref` chat.
32
- */
33
- async setupChatHierarchy(repoOwner, repoName, ref, refType) {
34
- try {
35
- // Step 1: Create or update groups
36
- const reposGroupId = await this.groupManager.createOrUpdateGroup(constants.GROUP_TYPE_GIT_REPOS, constants.GROUP_TYPE_GIT_REPOS);
37
- const repoOwnerGroupId = await this.groupManager.createOrUpdateGroup(constants.GROUP_TYPE_GIT_REPO_OWNER, repoOwner);
38
- const repoGroupId = await this.groupManager.createOrUpdateGroup(constants.GROUP_TYPE_GIT_REPO, `${repoOwner}/${repoName}`);
39
- // Step 2: Create or update chats
40
- const reposChatId = await this.createOrUpdateReposChat(reposGroupId);
41
- const repoOwnerChatId = await this.createOrUpdateRepoOwnerChat(reposChatId, repoOwnerGroupId, repoOwner);
42
- const repoChatId = await this.createOrUpdateRepoChat(repoOwnerChatId, repoGroupId, repoOwner, repoName);
43
- const refChatId = await this.createOrUpdateRefChat(repoChatId, repoGroupId, ref, refType);
44
- return { refChatId, repoGroupId };
45
- }
46
- catch (error) {
47
- throw new Error(`Failed to setup chat hierarchy: ${error instanceof Error ? error.message : String(error)}`);
48
- }
49
- }
50
- /**
51
- * Creates or updates the `git-repos` chat.
52
- */
53
- async createOrUpdateReposChat(groupId) {
54
- const existingChat = await this.dbClient.getChatByTypeAndName(constants.CHAT_TYPE_GIT_REPOS, constants.CHAT_NAME_GIT_REPOS, groupId);
55
- if (existingChat) {
56
- return existingChat.id;
57
- }
58
- const meta = {
59
- type: constants.CHAT_TYPE_GIT_REPOS
60
- };
61
- return await this.chatCreator.createChat(constants.CHAT_TYPE_GIT_REPOS, constants.CHAT_NAME_GIT_REPOS, 0, groupId, meta);
62
- }
63
- /**
64
- * Creates or updates the `git-repo-owner` chat.
65
- */
66
- async createOrUpdateRepoOwnerChat(parentId, groupId, repoOwner) {
67
- const chatName = constants.CHAT_NAME_GIT_REPO_OWNER(repoOwner);
68
- const existingChat = await this.dbClient.getChatByTypeAndName(constants.CHAT_TYPE_GIT_REPO_OWNER, chatName, groupId);
69
- const meta = {
70
- type: constants.CHAT_TYPE_GIT_REPO_OWNER,
71
- owner: repoOwner
72
- };
73
- if (existingChat) {
74
- return existingChat.id;
75
- }
76
- return await this.chatCreator.createChat(constants.CHAT_TYPE_GIT_REPO_OWNER, chatName, parentId, groupId, meta, '', -1);
77
- }
78
- /**
79
- * Creates or updates the `git-repo` chat.
80
- */
81
- async createOrUpdateRepoChat(parentId, groupId, repoOwner, repoName) {
82
- const chatName = repoName;
83
- const existingChat = await this.dbClient.getChatByTypeAndName(constants.CHAT_TYPE_GIT_REPO, chatName, groupId);
84
- const repo = await this.gitRepo.getInfo();
85
- const meta = {
86
- type: constants.CHAT_TYPE_GIT_REPO,
87
- owner: repoOwner,
88
- name: repoName,
89
- path: repo.path
90
- };
91
- if (existingChat) {
92
- return existingChat.id;
93
- }
94
- return await this.chatCreator.createChat(constants.CHAT_TYPE_GIT_REPO, chatName, parentId, groupId, meta);
95
- }
96
- /**
97
- * Creates or updates the `git-branch`, `git-commit`, or `git-tag` chat.
98
- */
99
- async createOrUpdateRefChat(parentId, groupId, name, type) {
100
- const chatType = type.match(/(commit|branch|tag)/) ? constants.CHAT_TYPE_GIT_REF : null;
101
- if (!chatType) {
102
- throw new Error(`No chat type associated with ref type ${type}`);
103
- }
104
- const chatName = constants.CHAT_NAME_GIT_REF(name);
105
- const existingChat = await this.dbClient.getChatByTypeAndName(chatType, chatName, groupId);
106
- if (existingChat) {
107
- return existingChat.id;
108
- }
109
- const meta = { type, name, status: '' };
110
- return await this.chatCreator.createChat(chatType, chatName, parentId, groupId, meta);
111
- }
112
- }
113
-
114
- exports.HierarchyManager = HierarchyManager;
115
- //# sourceMappingURL=hierarchy-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hierarchy-manager.js","sources":["../../../../src/importer/chat-manager/hierarchy-manager.ts"],"sourcesContent":[null],"names":["GROUP_TYPE_GIT_REPOS","GROUP_TYPE_GIT_REPO_OWNER","GROUP_TYPE_GIT_REPO","CHAT_TYPE_GIT_REPOS","CHAT_NAME_GIT_REPOS","CHAT_NAME_GIT_REPO_OWNER","CHAT_TYPE_GIT_REPO_OWNER","CHAT_TYPE_GIT_REPO","CHAT_TYPE_GIT_REF","CHAT_NAME_GIT_REF"],"mappings":"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"}
@@ -1,189 +0,0 @@
1
- 'use strict';
2
-
3
- var constants = require('./constants.js');
4
-
5
- /**
6
- * Component: Message Manager
7
- * Block-UUID: 9b8c7d6e-5f4a-3b2c-1d0e-9f8e7d6c5b4a
8
- * Parent-UUID: N/A
9
- * Version: 1.1.0
10
- * Purpose: Handles message creation, retrieval, and updates, including markdown table generation
11
- * Language: TypeScript
12
- * Created-at: 2025-03-15T02:07:30.618Z
13
- * Updated-at: 2025-03-16T02:16:32.958Z
14
- * Authors: together.ai - DeepSeek v3 (v1.0.0), OpenRouter - DeepSeek v3 (v1.1.0)
15
- */
16
- class MessageManager {
17
- dbClient;
18
- logger;
19
- constructor(dbClient, logger) {
20
- this.dbClient = dbClient;
21
- this.logger = logger;
22
- }
23
- /**
24
- * Creates a system message for a chat.
25
- */
26
- async createSystemMessage(chatId) {
27
- try {
28
- return await this.dbClient.createMessage({
29
- type: constants.MESSAGE_TYPE_REGULAR,
30
- visibility: constants.CHAT_VISIBILITY_PUBLIC,
31
- chatId,
32
- parentId: 0,
33
- level: 0,
34
- role: 'system',
35
- message: '',
36
- priority: 0
37
- });
38
- }
39
- catch (error) {
40
- throw new Error(`Failed to create system message for chat ${chatId}: ${error instanceof Error ? error.message : String(error)}`);
41
- }
42
- }
43
- ///**
44
- // * Creates a tiny-overview message for a chat.
45
- // */
46
- //async createTinyOverviewMessage(chatId: number, parentId: number): Promise<number> {
47
- // try {
48
- // return await this.dbClient.createMessage({
49
- // type: MESSAGE_TYPE_TINY_OVERVIEW,
50
- // visibility: CHAT_VISIBILITY_PUBLIC,
51
- // chatId,
52
- // parentId,
53
- // level: 1,
54
- // role: 'assistant',
55
- // message: '',
56
- // priority: 0,
57
- // model: DEFAULT_MODEL,
58
- // temperature: DEFAULT_TEMPERATURE
59
- // });
60
- // } catch (error) {
61
- // throw new Error(`Failed to create tiny overview message for chat ${chatId}: ${error instanceof Error ? error.message : String(error)}`);
62
- // }
63
- //}
64
- ///**
65
- // * Creates a short-overview message for a chat.
66
- // */
67
- //async createShortOverviewMessage(chatId: number, parentId: number): Promise<number> {
68
- // try {
69
- // return await this.dbClient.createMessage({
70
- // type: MESSAGE_TYPE_SHORT_OVERVIEW,
71
- // visibility: CHAT_VISIBILITY_PUBLIC,
72
- // chatId,
73
- // parentId,
74
- // level: 2,
75
- // role: 'assistant',
76
- // message: '',
77
- // priority: 0,
78
- // model: DEFAULT_MODEL,
79
- // temperature: DEFAULT_TEMPERATURE
80
- // });
81
- // } catch (error) {
82
- // throw new Error(`Failed to create short overview message for chat ${chatId}: ${error instanceof Error ? error.message : String(error)}`);
83
- // }
84
- //}
85
- ///**
86
- // * Creates a long-overview message for a chat.
87
- // */
88
- //async createLongOverviewMessage(chatId: number, parentId: number): Promise<number> {
89
- // try {
90
- // return await this.dbClient.createMessage({
91
- // type: MESSAGE_TYPE_LONG_OVERVIEW,
92
- // visibility: CHAT_VISIBILITY_PUBLIC,
93
- // chatId,
94
- // parentId,
95
- // level: 3,
96
- // role: 'assistant',
97
- // message: '',
98
- // priority: 0,
99
- // model: DEFAULT_MODEL,
100
- // temperature: DEFAULT_TEMPERATURE
101
- // });
102
- // } catch (error) {
103
- // throw new Error(`Failed to create short overview message for chat ${chatId}: ${error instanceof Error ? error.message : String(error)}`);
104
- // }
105
- //}
106
- /**
107
- * Creates the main message for a chat.
108
- */
109
- async createMainMessage(chatId, parentId, chatType, message) {
110
- if (!message) {
111
- message = '';
112
- }
113
- return await this.dbClient.createMessage({
114
- type: chatType,
115
- visibility: constants.CHAT_VISIBILITY_PUBLIC,
116
- chatId,
117
- parentId,
118
- level: 2,
119
- role: 'assistant',
120
- message,
121
- priority: 0,
122
- sample: 1,
123
- model: constants.DEFAULT_MODEL,
124
- temperature: constants.DEFAULT_TEMPERATURE
125
- });
126
- }
127
- /**
128
- * Creates the main message for a chat.
129
- */
130
- async createChatMetaMessage(chatId, parentId) {
131
- return await this.dbClient.createMessage({
132
- type: constants.MESSAGE_TYPE_CHAT_META,
133
- visibility: constants.CHAT_VISIBILITY_PUBLIC,
134
- chatId,
135
- parentId,
136
- level: 2,
137
- role: 'assistant',
138
- message: '',
139
- priority: 0,
140
- sample: 1,
141
- model: constants.DEFAULT_MODEL,
142
- temperature: constants.DEFAULT_TEMPERATURE,
143
- });
144
- }
145
- /**
146
- * Retrieves a message by its ID.
147
- */
148
- async getMessageById(messageId) {
149
- try {
150
- const message = await this.dbClient.getMessageById(messageId);
151
- if (!message) {
152
- throw new Error(`Message with ID ${messageId} not found`);
153
- }
154
- return message;
155
- }
156
- catch (error) {
157
- throw new Error(`Failed to retrieve message ${messageId}: ${error instanceof Error ? error.message : String(error)}`);
158
- }
159
- }
160
- /**
161
- * Retrieves a message by chat ID and type.
162
- */
163
- async getMessageByChatIdAndType(chatId, type) {
164
- try {
165
- const messages = await this.dbClient.getMessagesByChatIdAndType(chatId, type);
166
- if (messages.length === 0) {
167
- throw new Error(`No message of type '${type}' found for chat ${chatId}`);
168
- }
169
- return messages[0];
170
- }
171
- catch (error) {
172
- throw new Error(`Failed to retrieve message for chat ${chatId}: ${error instanceof Error ? error.message : String(error)}`);
173
- }
174
- }
175
- /**
176
- * Updates a message with new content.
177
- */
178
- async updateMessage(messageId, updates) {
179
- try {
180
- await this.dbClient.updateMessage(messageId, updates);
181
- }
182
- catch (error) {
183
- throw new Error(`Failed to update message ${messageId}: ${error instanceof Error ? error.message : String(error)}`);
184
- }
185
- }
186
- }
187
-
188
- exports.MessageManager = MessageManager;
189
- //# sourceMappingURL=message-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"message-manager.js","sources":["../../../../src/importer/chat-manager/message-manager.ts"],"sourcesContent":[null],"names":["MESSAGE_TYPE_REGULAR","CHAT_VISIBILITY_PUBLIC","DEFAULT_MODEL","DEFAULT_TEMPERATURE","MESSAGE_TYPE_CHAT_META"],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * Component: Constants
5
- * Block-UUID: 4c2d1e0f-1a3b-4c5d-6e7f-8a9b0c1d2e3f
6
- * Parent-UUID: N/A
7
- * Version: 2.0.0
8
- * Description: Update this to provide a proper file description
9
- * Language: TypeScript
10
- * Created-at: 2025-02-22T07:25:50.819Z
11
- * Authors: OpenRouter - DeepSeek v3 (v1.0.0), Claude 3.5 Sonnet (v2.0.0)
12
- */
13
- const DEFAULT_OPTIONS = {
14
- maxFileSize: 256 * 1024, // 256KB
15
- skipPatterns: [
16
- /\.min\.(js|css)$/,
17
- /\.log$/,
18
- /\.map$/,
19
- /\.bundle\./,
20
- /dist\//,
21
- /build\//,
22
- /vendor\//,
23
- /node_modules\//
24
- ],
25
- verbose: false,
26
- skipBinaryFiles: true
27
- };
28
-
29
- exports.DEFAULT_OPTIONS = DEFAULT_OPTIONS;
30
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sources":["../../../src/importer/constants.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;;;;;AASG;AAIU,MAAA,eAAe,GAAG;AAC3B,IAAA,WAAW,EAAE,GAAG,GAAG,IAAI;AACvB,IAAA,YAAY,EAAE;QACV,kBAAkB;QAClB,QAAQ;QACR,QAAQ;QACR,YAAY;QACZ,QAAQ;QACR,SAAS;QACT,UAAU;QACV;AACH,KAAA;AACD,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,eAAe,EAAE;;;;;"}