sphereai-cli 1.0.18 → 1.0.20
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/.env +12 -12
- package/README.md +282 -282
- package/dist/commands/execute.d.ts.map +1 -1
- package/dist/commands/execute.js +17 -20
- package/dist/commands/execute.js.map +1 -1
- package/dist/index.js +45 -45
- package/package.json +1 -1
- package/dist/commands/language.d.ts +0 -3
- package/dist/commands/language.d.ts.map +0 -1
- package/dist/commands/language.js +0 -55
- package/dist/commands/language.js.map +0 -1
- package/dist/commands/models.d.ts +0 -3
- package/dist/commands/models.d.ts.map +0 -1
- package/dist/commands/models.js +0 -70
- package/dist/commands/models.js.map +0 -1
- package/dist/i18n/index.d.ts +0 -11
- package/dist/i18n/index.d.ts.map +0 -1
- package/dist/i18n/index.js +0 -26
- package/dist/i18n/index.js.map +0 -1
- package/dist/i18n/translations/en.d.ts +0 -93
- package/dist/i18n/translations/en.d.ts.map +0 -1
- package/dist/i18n/translations/en.js +0 -105
- package/dist/i18n/translations/en.js.map +0 -1
- package/dist/i18n/translations/pt.d.ts +0 -93
- package/dist/i18n/translations/pt.d.ts.map +0 -1
- package/dist/i18n/translations/pt.js +0 -105
- package/dist/i18n/translations/pt.js.map +0 -1
- package/dist/utils/file-walker.d.ts +0 -31
- package/dist/utils/file-walker.d.ts.map +0 -1
- package/dist/utils/file-walker.js +0 -118
- package/dist/utils/file-walker.js.map +0 -1
- package/dist/utils/ignore-parser.d.ts +0 -21
- package/dist/utils/ignore-parser.d.ts.map +0 -1
- package/dist/utils/ignore-parser.js +0 -170
- package/dist/utils/ignore-parser.js.map +0 -1
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.pt = void 0;
|
|
4
|
-
exports.pt = {
|
|
5
|
-
// General
|
|
6
|
-
notAuthenticated: 'Nao autenticado. Por favor execute: sphereai auth login <key>',
|
|
7
|
-
operationCancelled: 'Operacao cancelada',
|
|
8
|
-
// Auth commands
|
|
9
|
-
auth: {
|
|
10
|
-
loginSuccess: 'Autenticado com sucesso!',
|
|
11
|
-
loginFailed: 'Falha na autenticacao',
|
|
12
|
-
logoutSuccess: 'Logout realizado com sucesso',
|
|
13
|
-
tokenSet: 'Token definido com sucesso',
|
|
14
|
-
tokenRequired: 'Token e obrigatorio',
|
|
15
|
-
keyRequired: 'UserChannelKey e obrigatorio',
|
|
16
|
-
invalidKey: 'UserChannelKey invalido',
|
|
17
|
-
currentUser: 'Usuario atual:',
|
|
18
|
-
notLoggedIn: 'Nao esta logado',
|
|
19
|
-
configPath: 'Arquivo de configuracao:',
|
|
20
|
-
currentConfig: 'Configuracao atual:',
|
|
21
|
-
},
|
|
22
|
-
// Prompts commands
|
|
23
|
-
prompts: {
|
|
24
|
-
fetchingPrompts: 'Buscando prompts...',
|
|
25
|
-
fetchingPrompt: 'Buscando detalhes do prompt...',
|
|
26
|
-
noPromptsFound: 'Nenhum prompt encontrado',
|
|
27
|
-
promptNotFound: 'Prompt nao encontrado',
|
|
28
|
-
pagination: 'Pagina {page} de {totalPages} (Total: {total} prompts)',
|
|
29
|
-
},
|
|
30
|
-
// Files commands
|
|
31
|
-
files: {
|
|
32
|
-
addingFiles: 'Adicionando arquivos...',
|
|
33
|
-
filesAdded: '{count} arquivo(s) adicionado(s) ao rastreamento',
|
|
34
|
-
noFilesAdded: 'Nenhum arquivo foi adicionado',
|
|
35
|
-
fileNotFound: 'Arquivo nao encontrado: {path}',
|
|
36
|
-
trackedFiles: 'Arquivos rastreados:',
|
|
37
|
-
noTrackedFiles: 'Nenhum arquivo esta sendo rastreado',
|
|
38
|
-
filesCleared: 'Todos os arquivos rastreados foram removidos',
|
|
39
|
-
fileRemoved: '{path} removido do rastreamento',
|
|
40
|
-
fileNotTracked: 'Arquivo nao esta sendo rastreado: {path}',
|
|
41
|
-
confirmClear: 'Tem certeza que deseja limpar todos os arquivos rastreados?',
|
|
42
|
-
status: 'Status',
|
|
43
|
-
exists: 'Existe',
|
|
44
|
-
missing: 'Ausente',
|
|
45
|
-
ignored: 'Ignorado',
|
|
46
|
-
ignoredFiles: 'Padroes ignorados atualmente:',
|
|
47
|
-
},
|
|
48
|
-
// Execute commands
|
|
49
|
-
execute: {
|
|
50
|
-
executing: 'Executando comando...',
|
|
51
|
-
noPromptId: 'ID do prompt e obrigatorio',
|
|
52
|
-
noFilesTracked: 'Nenhum arquivo esta sendo rastreado. Use "sphereai files add" primeiro.',
|
|
53
|
-
executionComplete: 'Execucao concluida',
|
|
54
|
-
executionFailed: 'Falha na execucao',
|
|
55
|
-
},
|
|
56
|
-
// Debug commands
|
|
57
|
-
debug: {
|
|
58
|
-
enabled: 'Modo debug ativado',
|
|
59
|
-
disabled: 'Modo debug desativado',
|
|
60
|
-
status: 'Modo debug esta atualmente: {status}',
|
|
61
|
-
on: 'LIGADO',
|
|
62
|
-
off: 'DESLIGADO',
|
|
63
|
-
},
|
|
64
|
-
// Language commands
|
|
65
|
-
language: {
|
|
66
|
-
current: 'Idioma atual: {language}',
|
|
67
|
-
changed: 'Idioma alterado para: {language}',
|
|
68
|
-
invalid: 'Idioma invalido. Opcoes disponiveis: en, pt',
|
|
69
|
-
available: 'Idiomas disponiveis:',
|
|
70
|
-
english: 'Ingles',
|
|
71
|
-
portuguese: 'Portugues',
|
|
72
|
-
},
|
|
73
|
-
// Errors
|
|
74
|
-
errors: {
|
|
75
|
-
unknown: 'Ocorreu um erro desconhecido',
|
|
76
|
-
network: 'Erro de rede. Verifique sua conexao.',
|
|
77
|
-
unauthorized: 'Nao autorizado. Por favor, faca login novamente.',
|
|
78
|
-
forbidden: 'Acesso negado',
|
|
79
|
-
notFound: 'Recurso nao encontrado',
|
|
80
|
-
serverError: 'Erro no servidor. Tente novamente mais tarde.',
|
|
81
|
-
timeout: 'Tempo limite da requisicao. Tente novamente.',
|
|
82
|
-
},
|
|
83
|
-
// Table headers
|
|
84
|
-
table: {
|
|
85
|
-
field: 'Campo',
|
|
86
|
-
value: 'Valor',
|
|
87
|
-
id: 'ID',
|
|
88
|
-
name: 'Nome',
|
|
89
|
-
email: 'Email',
|
|
90
|
-
role: 'Funcao',
|
|
91
|
-
customerId: 'ID do Cliente',
|
|
92
|
-
customerName: 'Nome do Cliente',
|
|
93
|
-
active: 'Ativo',
|
|
94
|
-
createdAt: 'Criado em',
|
|
95
|
-
updatedAt: 'Atualizado em',
|
|
96
|
-
path: 'Caminho',
|
|
97
|
-
size: 'Tamanho',
|
|
98
|
-
addedAt: 'Adicionado em',
|
|
99
|
-
temperature: 'Temperatura',
|
|
100
|
-
shortDescription: 'Descricao Curta',
|
|
101
|
-
yes: 'Sim',
|
|
102
|
-
no: 'Nao',
|
|
103
|
-
},
|
|
104
|
-
};
|
|
105
|
-
//# sourceMappingURL=pt.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pt.js","sourceRoot":"","sources":["../../../src/i18n/translations/pt.ts"],"names":[],"mappings":";;;AAAa,QAAA,EAAE,GAAG;IAChB,UAAU;IACV,gBAAgB,EAAE,+DAA+D;IACjF,kBAAkB,EAAE,oBAAoB;IAExC,gBAAgB;IAChB,IAAI,EAAE;QACJ,YAAY,EAAE,0BAA0B;QACxC,WAAW,EAAE,uBAAuB;QACpC,aAAa,EAAE,8BAA8B;QAC7C,QAAQ,EAAE,4BAA4B;QACtC,aAAa,EAAE,qBAAqB;QACpC,WAAW,EAAE,8BAA8B;QAC3C,UAAU,EAAE,yBAAyB;QACrC,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,iBAAiB;QAC9B,UAAU,EAAE,0BAA0B;QACtC,aAAa,EAAE,qBAAqB;KACrC;IAED,mBAAmB;IACnB,OAAO,EAAE;QACP,eAAe,EAAE,qBAAqB;QACtC,cAAc,EAAE,gCAAgC;QAChD,cAAc,EAAE,0BAA0B;QAC1C,cAAc,EAAE,uBAAuB;QACvC,UAAU,EAAE,wDAAwD;KACrE;IAED,iBAAiB;IACjB,KAAK,EAAE;QACL,WAAW,EAAE,yBAAyB;QACtC,UAAU,EAAE,kDAAkD;QAC9D,YAAY,EAAE,+BAA+B;QAC7C,YAAY,EAAE,gCAAgC;QAC9C,YAAY,EAAE,sBAAsB;QACpC,cAAc,EAAE,qCAAqC;QACrD,YAAY,EAAE,8CAA8C;QAC5D,WAAW,EAAE,iCAAiC;QAC9C,cAAc,EAAE,0CAA0C;QAC1D,YAAY,EAAE,6DAA6D;QAC3E,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,UAAU;QACnB,YAAY,EAAE,+BAA+B;KAC9C;IAED,mBAAmB;IACnB,OAAO,EAAE;QACP,SAAS,EAAE,uBAAuB;QAClC,UAAU,EAAE,4BAA4B;QACxC,cAAc,EAAE,yEAAyE;QACzF,iBAAiB,EAAE,oBAAoB;QACvC,eAAe,EAAE,mBAAmB;KACrC;IAED,iBAAiB;IACjB,KAAK,EAAE;QACL,OAAO,EAAE,oBAAoB;QAC7B,QAAQ,EAAE,uBAAuB;QACjC,MAAM,EAAE,sCAAsC;QAC9C,EAAE,EAAE,QAAQ;QACZ,GAAG,EAAE,WAAW;KACjB;IAED,oBAAoB;IACpB,QAAQ,EAAE;QACR,OAAO,EAAE,0BAA0B;QACnC,OAAO,EAAE,kCAAkC;QAC3C,OAAO,EAAE,6CAA6C;QACtD,SAAS,EAAE,sBAAsB;QACjC,OAAO,EAAE,QAAQ;QACjB,UAAU,EAAE,WAAW;KACxB;IAED,SAAS;IACT,MAAM,EAAE;QACN,OAAO,EAAE,8BAA8B;QACvC,OAAO,EAAE,sCAAsC;QAC/C,YAAY,EAAE,kDAAkD;QAChE,SAAS,EAAE,eAAe;QAC1B,QAAQ,EAAE,wBAAwB;QAClC,WAAW,EAAE,+CAA+C;QAC5D,OAAO,EAAE,8CAA8C;KACxD;IAED,gBAAgB;IAChB,KAAK,EAAE;QACL,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,OAAO;QACd,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,eAAe;QAC3B,YAAY,EAAE,iBAAiB;QAC/B,MAAM,EAAE,OAAO;QACf,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,eAAe;QAC1B,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,eAAe;QACxB,WAAW,EAAE,aAAa;QAC1B,gBAAgB,EAAE,iBAAiB;QACnC,GAAG,EAAE,KAAK;QACV,EAAE,EAAE,KAAK;KACV;CACF,CAAC"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
export interface FileWalkerOptions {
|
|
2
|
-
ignoreFilePath?: string;
|
|
3
|
-
includeDotFiles?: boolean;
|
|
4
|
-
maxDepth?: number;
|
|
5
|
-
}
|
|
6
|
-
export declare class FileWalker {
|
|
7
|
-
private ignoreParser;
|
|
8
|
-
private options;
|
|
9
|
-
constructor(options?: FileWalkerOptions);
|
|
10
|
-
/**
|
|
11
|
-
* Walk through a directory and return all non-ignored files
|
|
12
|
-
*/
|
|
13
|
-
walk(dir: string): string[];
|
|
14
|
-
/**
|
|
15
|
-
* Recursively walk through directories
|
|
16
|
-
*/
|
|
17
|
-
private walkRecursive;
|
|
18
|
-
/**
|
|
19
|
-
* Filter a list of file paths based on ignore patterns
|
|
20
|
-
*/
|
|
21
|
-
filterFiles(files: string[], baseDir?: string): string[];
|
|
22
|
-
/**
|
|
23
|
-
* Check if a specific file should be ignored
|
|
24
|
-
*/
|
|
25
|
-
shouldIgnore(filePath: string): boolean;
|
|
26
|
-
/**
|
|
27
|
-
* Get the ignore patterns (for debugging)
|
|
28
|
-
*/
|
|
29
|
-
getIgnorePatterns(): any;
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=file-walker.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file-walker.d.ts","sourceRoot":"","sources":["../../src/utils/file-walker.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAA8B;gBAEjC,OAAO,GAAE,iBAAsB;IAc3C;;OAEG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAM3B;;OAEG;IACH,OAAO,CAAC,aAAa;IAmCrB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAOxD;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIvC;;OAEG;IACH,iBAAiB;CAGlB"}
|
|
@@ -1,118 +0,0 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.FileWalker = void 0;
|
|
37
|
-
const fs = __importStar(require("fs"));
|
|
38
|
-
const path = __importStar(require("path"));
|
|
39
|
-
const ignore_parser_1 = require("./ignore-parser");
|
|
40
|
-
class FileWalker {
|
|
41
|
-
constructor(options = {}) {
|
|
42
|
-
this.ignoreParser = new ignore_parser_1.IgnoreParser();
|
|
43
|
-
this.options = {
|
|
44
|
-
ignoreFilePath: options.ignoreFilePath || '.sphereignore',
|
|
45
|
-
includeDotFiles: options.includeDotFiles ?? false,
|
|
46
|
-
maxDepth: options.maxDepth ?? Infinity
|
|
47
|
-
};
|
|
48
|
-
// Load ignore patterns if file exists
|
|
49
|
-
if (this.options.ignoreFilePath && fs.existsSync(this.options.ignoreFilePath)) {
|
|
50
|
-
this.ignoreParser.parseFile(this.options.ignoreFilePath);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Walk through a directory and return all non-ignored files
|
|
55
|
-
*/
|
|
56
|
-
walk(dir) {
|
|
57
|
-
const files = [];
|
|
58
|
-
this.walkRecursive(dir, dir, files, 0);
|
|
59
|
-
return files;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Recursively walk through directories
|
|
63
|
-
*/
|
|
64
|
-
walkRecursive(baseDir, currentDir, files, depth) {
|
|
65
|
-
if (depth > this.options.maxDepth) {
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
let entries;
|
|
69
|
-
try {
|
|
70
|
-
entries = fs.readdirSync(currentDir, { withFileTypes: true });
|
|
71
|
-
}
|
|
72
|
-
catch (error) {
|
|
73
|
-
// Skip directories we can't read
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
for (const entry of entries) {
|
|
77
|
-
const fullPath = path.join(currentDir, entry.name);
|
|
78
|
-
const relativePath = path.relative(baseDir, fullPath);
|
|
79
|
-
// Skip dot files/directories if not included
|
|
80
|
-
if (!this.options.includeDotFiles && entry.name.startsWith('.')) {
|
|
81
|
-
continue;
|
|
82
|
-
}
|
|
83
|
-
// Check if this path should be ignored
|
|
84
|
-
if (this.ignoreParser.shouldIgnore(relativePath)) {
|
|
85
|
-
continue;
|
|
86
|
-
}
|
|
87
|
-
if (entry.isDirectory()) {
|
|
88
|
-
this.walkRecursive(baseDir, fullPath, files, depth + 1);
|
|
89
|
-
}
|
|
90
|
-
else if (entry.isFile()) {
|
|
91
|
-
files.push(fullPath);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Filter a list of file paths based on ignore patterns
|
|
97
|
-
*/
|
|
98
|
-
filterFiles(files, baseDir) {
|
|
99
|
-
return files.filter(file => {
|
|
100
|
-
const relativePath = baseDir ? path.relative(baseDir, file) : file;
|
|
101
|
-
return !this.ignoreParser.shouldIgnore(relativePath);
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Check if a specific file should be ignored
|
|
106
|
-
*/
|
|
107
|
-
shouldIgnore(filePath) {
|
|
108
|
-
return this.ignoreParser.shouldIgnore(filePath);
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Get the ignore patterns (for debugging)
|
|
112
|
-
*/
|
|
113
|
-
getIgnorePatterns() {
|
|
114
|
-
return this.ignoreParser.getPatterns();
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
exports.FileWalker = FileWalker;
|
|
118
|
-
//# sourceMappingURL=file-walker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file-walker.js","sourceRoot":"","sources":["../../src/utils/file-walker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAC7B,mDAA+C;AAQ/C,MAAa,UAAU;IAIrB,YAAY,UAA6B,EAAE;QACzC,IAAI,CAAC,YAAY,GAAG,IAAI,4BAAY,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG;YACb,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,eAAe;YACzD,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,KAAK;YACjD,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,QAAQ;SACvC,CAAC;QAEF,sCAAsC;QACtC,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAC9E,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,GAAW;QACd,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,OAAe,EAAE,UAAkB,EAAE,KAAe,EAAE,KAAa;QACvF,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,IAAI,OAAoB,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iCAAiC;YACjC,OAAO;QACT,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEtD,6CAA6C;YAC7C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChE,SAAS;YACX,CAAC;YAED,uCAAuC;YACvC,IAAI,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjD,SAAS;YACX,CAAC;YAED,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAC1D,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC1B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAe,EAAE,OAAgB;QAC3C,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACzB,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,QAAgB;QAC3B,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;CACF;AAxFD,gCAwFC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export interface IgnorePattern {
|
|
2
|
-
pattern: string;
|
|
3
|
-
isNegation: boolean;
|
|
4
|
-
isDirectory: boolean;
|
|
5
|
-
}
|
|
6
|
-
export declare class IgnoreParser {
|
|
7
|
-
private patterns;
|
|
8
|
-
/**
|
|
9
|
-
* Parse a .sphereignore file and extract patterns
|
|
10
|
-
* Supports:
|
|
11
|
-
* - File extensions (*.log, *.tmp)
|
|
12
|
-
* - Specific file names (config.local.json)
|
|
13
|
-
* - Directory patterns (node_modules/, dist/)
|
|
14
|
-
* - Negation patterns (!important.log)
|
|
15
|
-
* - Comments (# this is a comment)
|
|
16
|
-
* - Wildcards (src/**/ (): any;
|
|
17
|
-
test: any;
|
|
18
|
-
ts: any;
|
|
19
|
-
(): any;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=ignore-parser.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ignore-parser.d.ts","sourceRoot":"","sources":["../../src/utils/ignore-parser.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAuB;IAEvC;;;;;;;;2BAQuB,CAAC;IAAC,IAAI,MAAA;IAAC,EAAE,MAAA;IAC9B;CAAA"}
|
|
@@ -1,170 +0,0 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.IgnoreParser = void 0;
|
|
37
|
-
const fs = __importStar(require("fs"));
|
|
38
|
-
const path = __importStar(require("path"));
|
|
39
|
-
class IgnoreParser {
|
|
40
|
-
constructor() {
|
|
41
|
-
this.patterns = [];
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Parse a .sphereignore file and extract patterns
|
|
45
|
-
* Supports:
|
|
46
|
-
* - File extensions (*.log, *.tmp)
|
|
47
|
-
* - Specific file names (config.local.json)
|
|
48
|
-
* - Directory patterns (node_modules/, dist/)
|
|
49
|
-
* - Negation patterns (!important.log)
|
|
50
|
-
* - Comments (# this is a comment)
|
|
51
|
-
* - Wildcards (src/**/ *() { }
|
|
52
|
-
*() { }
|
|
53
|
-
}
|
|
54
|
-
exports.IgnoreParser = IgnoreParser;
|
|
55
|
-
/;
|
|
56
|
-
parseFile(ignoreFilePath, string);
|
|
57
|
-
void {
|
|
58
|
-
if(, fs) { }, : .existsSync(ignoreFilePath)
|
|
59
|
-
};
|
|
60
|
-
{
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
const content = fs.readFileSync(ignoreFilePath, 'utf-8');
|
|
64
|
-
const lines = content.split(/\r?\n/);
|
|
65
|
-
for (const line of lines) {
|
|
66
|
-
const trimmed = line.trim();
|
|
67
|
-
// Skip empty lines and comments
|
|
68
|
-
if (!trimmed || trimmed.startsWith('#')) {
|
|
69
|
-
continue;
|
|
70
|
-
}
|
|
71
|
-
const pattern = this.parsePattern(trimmed);
|
|
72
|
-
this.patterns.push(pattern);
|
|
73
|
-
}
|
|
74
|
-
parsePattern(line, string);
|
|
75
|
-
IgnorePattern;
|
|
76
|
-
{
|
|
77
|
-
let pattern = line;
|
|
78
|
-
let isNegation = false;
|
|
79
|
-
// Check for negation pattern
|
|
80
|
-
if (pattern.startsWith('!')) {
|
|
81
|
-
isNegation = true;
|
|
82
|
-
pattern = pattern.substring(1);
|
|
83
|
-
}
|
|
84
|
-
// Check if it's a directory pattern
|
|
85
|
-
const isDirectory = pattern.endsWith('/');
|
|
86
|
-
if (isDirectory) {
|
|
87
|
-
pattern = pattern.slice(0, -1);
|
|
88
|
-
}
|
|
89
|
-
return {
|
|
90
|
-
pattern: pattern,
|
|
91
|
-
isNegation,
|
|
92
|
-
isDirectory
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Check if a file path should be ignored
|
|
97
|
-
*/
|
|
98
|
-
shouldIgnore(filePath, string);
|
|
99
|
-
boolean;
|
|
100
|
-
{
|
|
101
|
-
const normalizedPath = filePath.replace(/\\/g, '/');
|
|
102
|
-
let ignored = false;
|
|
103
|
-
for (const { pattern, isNegation, isDirectory } of this.patterns) {
|
|
104
|
-
const matches = this.matchPattern(normalizedPath, pattern, isDirectory);
|
|
105
|
-
if (matches) {
|
|
106
|
-
ignored = !isNegation;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
return ignored;
|
|
110
|
-
}
|
|
111
|
-
matchPattern(filePath, string, pattern, string, isDirectory, boolean);
|
|
112
|
-
boolean;
|
|
113
|
-
{
|
|
114
|
-
const fileName = path.basename(filePath);
|
|
115
|
-
const normalizedPattern = pattern.replace(/\\/g, '/');
|
|
116
|
-
// If it's a directory pattern, check if path contains the directory
|
|
117
|
-
if (isDirectory) {
|
|
118
|
-
return filePath.includes(normalizedPattern + '/') ||
|
|
119
|
-
filePath.startsWith(normalizedPattern + '/');
|
|
120
|
-
}
|
|
121
|
-
// Handle extension patterns (*.log, *.tmp)
|
|
122
|
-
if (normalizedPattern.startsWith('*.')) {
|
|
123
|
-
const extension = normalizedPattern.substring(1); // includes the dot
|
|
124
|
-
return fileName.endsWith(extension);
|
|
125
|
-
}
|
|
126
|
-
// Handle wildcards with path segments (src/**/*.test.ts)
|
|
127
|
-
if (normalizedPattern.includes('**')) {
|
|
128
|
-
const regexPattern = this.convertGlobToRegex(normalizedPattern);
|
|
129
|
-
return regexPattern.test(filePath);
|
|
130
|
-
}
|
|
131
|
-
// Handle simple wildcards (*.log, test-*.js)
|
|
132
|
-
if (normalizedPattern.includes('*')) {
|
|
133
|
-
const regexPattern = this.convertSimpleWildcardToRegex(normalizedPattern);
|
|
134
|
-
return regexPattern.test(fileName);
|
|
135
|
-
}
|
|
136
|
-
// Exact match for file name or path
|
|
137
|
-
return fileName === normalizedPattern || filePath === normalizedPattern ||
|
|
138
|
-
filePath.endsWith('/' + normalizedPattern);
|
|
139
|
-
}
|
|
140
|
-
convertGlobToRegex(pattern, string);
|
|
141
|
-
RegExp;
|
|
142
|
-
{
|
|
143
|
-
let regexStr = pattern
|
|
144
|
-
.replace(/\./g, '\\.')
|
|
145
|
-
.replace(/\*\*/g, '___DOUBLE_STAR___')
|
|
146
|
-
.replace(/\*/g, '[^/]*')
|
|
147
|
-
.replace(/___DOUBLE_STAR___/g, '.*')
|
|
148
|
-
.replace(/\?/g, '.');
|
|
149
|
-
// Anchor the pattern
|
|
150
|
-
regexStr = '^' + regexStr + '$';
|
|
151
|
-
return new RegExp(regexStr);
|
|
152
|
-
}
|
|
153
|
-
convertSimpleWildcardToRegex(pattern, string);
|
|
154
|
-
RegExp;
|
|
155
|
-
{
|
|
156
|
-
const regexStr = pattern
|
|
157
|
-
.replace(/\./g, '\\.')
|
|
158
|
-
.replace(/\*/g, '.*')
|
|
159
|
-
.replace(/\?/g, '.');
|
|
160
|
-
return new RegExp('^' + regexStr + '$');
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Get all patterns (for debugging)
|
|
164
|
-
*/
|
|
165
|
-
getPatterns();
|
|
166
|
-
IgnorePattern[];
|
|
167
|
-
{
|
|
168
|
-
return this.patterns;
|
|
169
|
-
}
|
|
170
|
-
//# sourceMappingURL=ignore-parser.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ignore-parser.js","sourceRoot":"","sources":["../../src/utils/ignore-parser.ts"],"names":[],"mappings":"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"}
|