@akis05/akis 0.1.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/cli/commands/migrate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ interface StatusOptions {
2
+ name?: string;
3
+ }
4
+ export declare function status(options?: StatusOptions): Promise<void>;
5
+ export {};
6
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAcA,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,MAAM,CAAC,OAAO,GAAE,aAAkB,iBAmHvD"}
@@ -0,0 +1,151 @@
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.status = status;
37
+ const node_appwrite_1 = require("node-appwrite");
38
+ const path = __importStar(require("path"));
39
+ const dotenv = __importStar(require("dotenv"));
40
+ const parser_1 = require("../parser");
41
+ // Load env
42
+ dotenv.config({ path: path.resolve(process.cwd(), ".env") });
43
+ dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });
44
+ const APPWRITE_ENDPOINT = process.env.APPWRITE_ENDPOINT || "https://cloud.appwrite.io/v1";
45
+ const APPWRITE_PROJECT_ID = process.env.APPWRITE_PROJECT_ID || "";
46
+ const APPWRITE_API_KEY = process.env.APPWRITE_API_KEY || "";
47
+ const APPWRITE_DATABASE_ID = process.env.APPWRITE_DATABASE_ID || "";
48
+ async function status(options = {}) {
49
+ const targetName = options.name;
50
+ console.log(`\n📊 AKIS Status - ${targetName ? `État de "${targetName}"` : "État des collections"}\n`);
51
+ if (!APPWRITE_API_KEY) {
52
+ console.error("❌ APPWRITE_API_KEY non configurée dans .env");
53
+ process.exit(1);
54
+ }
55
+ if (!APPWRITE_DATABASE_ID) {
56
+ console.error("❌ APPWRITE_DATABASE_ID non configurée dans .env");
57
+ process.exit(1);
58
+ }
59
+ // Parse types.ts
60
+ const typesPath = path.resolve(process.cwd(), "core/appwrite-model/types.ts");
61
+ console.log(`📖 Lecture de ${typesPath}...`);
62
+ let expectedCollections;
63
+ try {
64
+ const allCollections = (0, parser_1.parseTypesFile)(typesPath);
65
+ if (targetName) {
66
+ expectedCollections = allCollections.filter((c) => c.name === targetName);
67
+ if (expectedCollections.length === 0) {
68
+ console.error(`❌ Collection "${targetName}" non trouvée dans types.ts`);
69
+ console.log(` Collections disponibles: ${allCollections.map((c) => c.name).join(", ")}`);
70
+ process.exit(1);
71
+ }
72
+ }
73
+ else {
74
+ expectedCollections = allCollections;
75
+ }
76
+ console.log(` ${expectedCollections.length} collection(s) à vérifier\n`);
77
+ }
78
+ catch (error) {
79
+ console.error("❌ Erreur lors de la lecture de types.ts:", error);
80
+ process.exit(1);
81
+ }
82
+ // Connect to Appwrite
83
+ const client = new node_appwrite_1.Client()
84
+ .setEndpoint(APPWRITE_ENDPOINT)
85
+ .setProject(APPWRITE_PROJECT_ID)
86
+ .setKey(APPWRITE_API_KEY);
87
+ const databases = new node_appwrite_1.Databases(client);
88
+ // Get existing collections
89
+ console.log("📡 Connexion à Appwrite...");
90
+ let existingCollectionsMap = new Map();
91
+ try {
92
+ const response = await databases.listCollections({
93
+ databaseId: APPWRITE_DATABASE_ID,
94
+ queries: [node_appwrite_1.Query.limit(100)],
95
+ });
96
+ for (const col of response.collections) {
97
+ const attrs = await databases.listAttributes({
98
+ databaseId: APPWRITE_DATABASE_ID,
99
+ collectionId: col.$id,
100
+ });
101
+ const indexes = await databases.listIndexes({
102
+ databaseId: APPWRITE_DATABASE_ID,
103
+ collectionId: col.$id,
104
+ });
105
+ existingCollectionsMap.set(col.name, {
106
+ id: col.$id,
107
+ attributes: attrs.attributes.map((a) => a.key),
108
+ indexes: indexes.indexes.length,
109
+ });
110
+ }
111
+ console.log(` ${existingCollectionsMap.size} collections dans Appwrite\n`);
112
+ }
113
+ catch (error) {
114
+ console.error("❌ Erreur lors de la connexion:", error);
115
+ process.exit(1);
116
+ }
117
+ // Compare
118
+ console.log("┌─────────────────────────────┬────────┬────────────┬─────────────┐");
119
+ console.log("│ Collection │ Status │ Attributs │ Manquants │");
120
+ console.log("├─────────────────────────────┼────────┼────────────┼─────────────┤");
121
+ let synced = 0;
122
+ let needsUpdate = 0;
123
+ let missing = 0;
124
+ for (const col of expectedCollections) {
125
+ const existing = existingCollectionsMap.get(col.name);
126
+ const name = col.name.padEnd(27);
127
+ if (!existing) {
128
+ console.log(`│ ${name} │ ❌ │ 0/${col.fields.length.toString().padEnd(8)} │ ${col.fields.length.toString().padEnd(11)} │`);
129
+ missing++;
130
+ }
131
+ else {
132
+ const missingFields = col.fields.filter((f) => !existing.attributes.includes(f.key));
133
+ const attrStr = `${existing.attributes.length}/${col.fields.length}`.padEnd(10);
134
+ const missingStr = missingFields.length.toString().padEnd(11);
135
+ if (missingFields.length === 0) {
136
+ console.log(`│ ${name} │ ✅ │ ${attrStr} │ ${missingStr} │`);
137
+ synced++;
138
+ }
139
+ else {
140
+ console.log(`│ ${name} │ ⚠️ │ ${attrStr} │ ${missingStr} │`);
141
+ needsUpdate++;
142
+ }
143
+ }
144
+ }
145
+ console.log("└─────────────────────────────┴────────┴────────────┴─────────────┘");
146
+ console.log(`\n📈 Résumé:`);
147
+ console.log(` ✅ ${synced} synchronisées`);
148
+ console.log(` ⚠️ ${needsUpdate} à mettre à jour (akis update)`);
149
+ console.log(` ❌ ${missing} manquantes (akis migrate)\n`);
150
+ }
151
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ interface UpdateOptions {
2
+ dryRun?: boolean;
3
+ name?: string;
4
+ }
5
+ export declare function update(options: UpdateOptions): Promise<void>;
6
+ export {};
7
+ //# sourceMappingURL=update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAcA,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AA4DD,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,iBA0HlD"}
@@ -0,0 +1,203 @@
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.update = update;
37
+ const node_appwrite_1 = require("node-appwrite");
38
+ const path = __importStar(require("path"));
39
+ const dotenv = __importStar(require("dotenv"));
40
+ const parser_1 = require("../parser");
41
+ // Load env
42
+ dotenv.config({ path: path.resolve(process.cwd(), ".env") });
43
+ dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });
44
+ const APPWRITE_ENDPOINT = process.env.APPWRITE_ENDPOINT || "https://cloud.appwrite.io/v1";
45
+ const APPWRITE_PROJECT_ID = process.env.APPWRITE_PROJECT_ID || "";
46
+ const APPWRITE_API_KEY = process.env.APPWRITE_API_KEY || "";
47
+ const APPWRITE_DATABASE_ID = process.env.APPWRITE_DATABASE_ID || "";
48
+ async function delay(ms) {
49
+ return new Promise((resolve) => setTimeout(resolve, ms));
50
+ }
51
+ async function createAttribute(databases, databaseId, collectionId, field) {
52
+ const baseParams = {
53
+ databaseId,
54
+ collectionId,
55
+ key: field.key,
56
+ required: field.required,
57
+ };
58
+ switch (field.type) {
59
+ case "string":
60
+ await databases.createStringAttribute({
61
+ ...baseParams,
62
+ size: field.size || 255,
63
+ });
64
+ break;
65
+ case "integer":
66
+ await databases.createIntegerAttribute(baseParams);
67
+ break;
68
+ case "float":
69
+ await databases.createFloatAttribute(baseParams);
70
+ break;
71
+ case "boolean":
72
+ await databases.createBooleanAttribute(baseParams);
73
+ break;
74
+ case "enum":
75
+ await databases.createEnumAttribute({
76
+ ...baseParams,
77
+ elements: field.enumValues || [],
78
+ });
79
+ break;
80
+ case "string[]":
81
+ await databases.createStringAttribute({
82
+ ...baseParams,
83
+ size: field.size || 255,
84
+ array: true,
85
+ });
86
+ break;
87
+ case "integer[]":
88
+ await databases.createIntegerAttribute({
89
+ ...baseParams,
90
+ array: true,
91
+ });
92
+ break;
93
+ case "datetime":
94
+ await databases.createDatetimeAttribute(baseParams);
95
+ break;
96
+ }
97
+ }
98
+ async function update(options) {
99
+ const targetName = options.name;
100
+ console.log(`\n🔄 AKIS Update - ${targetName ? `Mise à jour de "${targetName}"` : "Mise à jour des collections existantes"}\n`);
101
+ if (!APPWRITE_API_KEY) {
102
+ console.error("❌ APPWRITE_API_KEY non configurée dans .env");
103
+ process.exit(1);
104
+ }
105
+ if (!APPWRITE_DATABASE_ID) {
106
+ console.error("❌ APPWRITE_DATABASE_ID non configurée dans .env");
107
+ process.exit(1);
108
+ }
109
+ // Parse types.ts
110
+ const typesPath = path.resolve(process.cwd(), "core/appwrite-model/types.ts");
111
+ console.log(`📖 Lecture de ${typesPath}...`);
112
+ let collections;
113
+ try {
114
+ const allCollections = (0, parser_1.parseTypesFile)(typesPath);
115
+ if (targetName) {
116
+ collections = allCollections.filter((c) => c.name === targetName);
117
+ if (collections.length === 0) {
118
+ console.error(`❌ Collection "${targetName}" non trouvée dans types.ts`);
119
+ console.log(` Collections disponibles: ${allCollections.map((c) => c.name).join(", ")}`);
120
+ process.exit(1);
121
+ }
122
+ }
123
+ else {
124
+ collections = allCollections;
125
+ }
126
+ console.log(` ${collections.length} collection(s) à traiter\n`);
127
+ }
128
+ catch (error) {
129
+ console.error("❌ Erreur lors de la lecture de types.ts:", error);
130
+ process.exit(1);
131
+ }
132
+ // Connect to Appwrite
133
+ const client = new node_appwrite_1.Client()
134
+ .setEndpoint(APPWRITE_ENDPOINT)
135
+ .setProject(APPWRITE_PROJECT_ID)
136
+ .setKey(APPWRITE_API_KEY);
137
+ const databases = new node_appwrite_1.Databases(client);
138
+ // Get existing collections with their attributes
139
+ console.log("📡 Connexion à Appwrite...");
140
+ let existingCollectionsMap = new Map();
141
+ try {
142
+ const response = await databases.listCollections({
143
+ databaseId: APPWRITE_DATABASE_ID,
144
+ queries: [node_appwrite_1.Query.limit(100)],
145
+ });
146
+ for (const col of response.collections) {
147
+ const attrs = await databases.listAttributes({
148
+ databaseId: APPWRITE_DATABASE_ID,
149
+ collectionId: col.$id,
150
+ });
151
+ existingCollectionsMap.set(col.name, {
152
+ id: col.$id,
153
+ attributes: attrs.attributes.map((a) => a.key),
154
+ });
155
+ }
156
+ console.log(` ${existingCollectionsMap.size} collections existantes\n`);
157
+ }
158
+ catch (error) {
159
+ console.error("❌ Erreur lors de la connexion:", error);
160
+ process.exit(1);
161
+ }
162
+ if (options.dryRun) {
163
+ console.log("🔍 Mode dry-run - Aucune modification ne sera effectuée\n");
164
+ }
165
+ // Update collections
166
+ let updated = 0;
167
+ let attributesAdded = 0;
168
+ for (const col of collections) {
169
+ const existing = existingCollectionsMap.get(col.name);
170
+ if (!existing) {
171
+ console.log(`⏭️ ${col.name} - n'existe pas (utilisez 'akis migrate')`);
172
+ continue;
173
+ }
174
+ const missingFields = col.fields.filter((f) => !existing.attributes.includes(f.key));
175
+ if (missingFields.length === 0) {
176
+ console.log(`✓ ${col.name} - à jour`);
177
+ continue;
178
+ }
179
+ console.log(`\n📦 Mise à jour de ${col.name} (${missingFields.length} nouveaux champs)...`);
180
+ if (options.dryRun) {
181
+ for (const field of missingFields) {
182
+ console.log(` + ${field.key}: ${field.type}`);
183
+ }
184
+ continue;
185
+ }
186
+ for (const field of missingFields) {
187
+ try {
188
+ await createAttribute(databases, APPWRITE_DATABASE_ID, existing.id, field);
189
+ console.log(` ✓ ${field.key}`);
190
+ attributesAdded++;
191
+ await delay(300);
192
+ }
193
+ catch (error) {
194
+ const err = error;
195
+ console.log(` ✗ ${field.key}: ${err.message || error}`);
196
+ }
197
+ }
198
+ updated++;
199
+ await delay(500);
200
+ }
201
+ console.log(`\n✨ Mise à jour terminée: ${updated} collections, ${attributesAdded} attributs ajoutés\n`);
202
+ }
203
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export interface ParsedField {
2
+ key: string;
3
+ type: "string" | "integer" | "float" | "boolean" | "datetime" | "enum" | "string[]" | "integer[]";
4
+ required: boolean;
5
+ size?: number;
6
+ enumValues?: string[];
7
+ }
8
+ export interface ParsedCollection {
9
+ name: string;
10
+ typeName: string;
11
+ fields: ParsedField[];
12
+ }
13
+ export declare function parseTypesFile(typesPath: string): ParsedCollection[];
14
+ export declare function generateIndexes(collection: ParsedCollection): {
15
+ key: string;
16
+ type: "key";
17
+ attributes: string[];
18
+ }[];
19
+ //# sourceMappingURL=parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/cli/parser.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;IAClG,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAqFD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE,CA2GpE;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,KAAK,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,CAkBlH"}