ide-assi 0.109.0 → 0.111.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.
@@ -193548,6 +193548,22 @@ class IdeAi
193548
193548
  return "";
193549
193549
  };
193550
193550
 
193551
+ #generateTmplateFile = async (promptFile, generateFileName, params) => {
193552
+
193553
+ const src = await this.#invoke(promptFile, params);
193554
+
193555
+ await fetch(`/api/source/tmpl/generateFile`, {
193556
+ method: "POST",
193557
+ headers: { "Content-Type": "application/json" },
193558
+ body: JSON.stringify({
193559
+ fileNm: generateFileName,
193560
+ contents: src,
193561
+ })
193562
+ });
193563
+
193564
+ return src;
193565
+ };
193566
+
193551
193567
  generateSourceClient = async (userPrompt) => {
193552
193568
 
193553
193569
  this.#createModel();
@@ -193561,18 +193577,39 @@ class IdeAi
193561
193577
 
193562
193578
  const columnInfo = await this.#getColumnInfo(where.table);
193563
193579
 
193564
- const myBatisSrc = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
193580
+ //const mybatisXmlSource = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
193581
+ const mybatisXmlSource = await this.#generateTmplateFile("/prompts/meta/BuildMyBatisMapper.txt", "mybatis.xml", {
193582
+ "userPrompt": userPrompt,
193583
+ "namespace": where.package,
193584
+ "tableDefinitions": columnInfo
193585
+ });
193565
193586
  this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
193566
193587
 
193567
- await this.#generateService({
193588
+ const serviceSrc = await this.#generateTmplateFile("/prompts/meta/BuildService.txt", "service.java", {
193568
193589
  userPrompt: userPrompt,
193569
193590
  menuUrl: where.menu.url,
193570
- classPackage: where.package + ".service",
193591
+ classPackage: "ide.assi.be." + where.package + ".service",
193571
193592
  namespace: where.package,
193572
- mybatisXmlSource: myBatisSrc,
193593
+ mybatisXmlSource: mybatisXmlSource,
193573
193594
  });
193574
193595
  this.#parent.addMessage("Java(Service) 소스파일을 생성했습니다.");
193575
193596
 
193597
+ const controllerSrc = await this.#generateTmplateFile("/prompts/meta/BuildController.txt", "controller.java", {
193598
+ userPrompt: userPrompt,
193599
+ menuUrl: where.menu.url,
193600
+ classPackage: "ide.assi.be." + where.package + ".controller",
193601
+ namespace: where.package,
193602
+ serviceSource: serviceSrc,
193603
+ });
193604
+ this.#parent.addMessage("Java(Controller) 소스파일을 생성했습니다.");
193605
+
193606
+ await this.#generateTmplateFile("/prompts/meta/BuildReactJsx.txt", "react.jsx", {
193607
+ userPrompt: userPrompt,
193608
+ menuUrl: where.menu.url,
193609
+ controllerSource: controllerSrc,
193610
+ });
193611
+ this.#parent.addMessage("Jsx(React) 소스파일을 생성했습니다.");
193612
+
193576
193613
 
193577
193614
  return "OK";
193578
193615
  }
@@ -193544,6 +193544,22 @@ class IdeAi
193544
193544
  return "";
193545
193545
  };
193546
193546
 
193547
+ #generateTmplateFile = async (promptFile, generateFileName, params) => {
193548
+
193549
+ const src = await this.#invoke(promptFile, params);
193550
+
193551
+ await fetch(`/api/source/tmpl/generateFile`, {
193552
+ method: "POST",
193553
+ headers: { "Content-Type": "application/json" },
193554
+ body: JSON.stringify({
193555
+ fileNm: generateFileName,
193556
+ contents: src,
193557
+ })
193558
+ });
193559
+
193560
+ return src;
193561
+ };
193562
+
193547
193563
  generateSourceClient = async (userPrompt) => {
193548
193564
 
193549
193565
  this.#createModel();
@@ -193557,18 +193573,39 @@ class IdeAi
193557
193573
 
193558
193574
  const columnInfo = await this.#getColumnInfo(where.table);
193559
193575
 
193560
- const myBatisSrc = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
193576
+ //const mybatisXmlSource = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
193577
+ const mybatisXmlSource = await this.#generateTmplateFile("/prompts/meta/BuildMyBatisMapper.txt", "mybatis.xml", {
193578
+ "userPrompt": userPrompt,
193579
+ "namespace": where.package,
193580
+ "tableDefinitions": columnInfo
193581
+ });
193561
193582
  this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
193562
193583
 
193563
- await this.#generateService({
193584
+ const serviceSrc = await this.#generateTmplateFile("/prompts/meta/BuildService.txt", "service.java", {
193564
193585
  userPrompt: userPrompt,
193565
193586
  menuUrl: where.menu.url,
193566
- classPackage: where.package + ".service",
193587
+ classPackage: "ide.assi.be." + where.package + ".service",
193567
193588
  namespace: where.package,
193568
- mybatisXmlSource: myBatisSrc,
193589
+ mybatisXmlSource: mybatisXmlSource,
193569
193590
  });
193570
193591
  this.#parent.addMessage("Java(Service) 소스파일을 생성했습니다.");
193571
193592
 
193593
+ const controllerSrc = await this.#generateTmplateFile("/prompts/meta/BuildController.txt", "controller.java", {
193594
+ userPrompt: userPrompt,
193595
+ menuUrl: where.menu.url,
193596
+ classPackage: "ide.assi.be." + where.package + ".controller",
193597
+ namespace: where.package,
193598
+ serviceSource: serviceSrc,
193599
+ });
193600
+ this.#parent.addMessage("Java(Controller) 소스파일을 생성했습니다.");
193601
+
193602
+ await this.#generateTmplateFile("/prompts/meta/BuildReactJsx.txt", "react.jsx", {
193603
+ userPrompt: userPrompt,
193604
+ menuUrl: where.menu.url,
193605
+ controllerSource: controllerSrc,
193606
+ });
193607
+ this.#parent.addMessage("Jsx(React) 소스파일을 생성했습니다.");
193608
+
193572
193609
 
193573
193610
  return "OK";
193574
193611
  }
@@ -253,6 +253,22 @@ export class IdeAi
253
253
  return "";
254
254
  };
255
255
 
256
+ #generateTmplateFile = async (promptFile, generateFileName, params) => {
257
+
258
+ const src = await this.#invoke(promptFile, params);
259
+
260
+ const response3 = await fetch(`/api/source/tmpl/generateFile`, {
261
+ method: "POST",
262
+ headers: { "Content-Type": "application/json" },
263
+ body: JSON.stringify({
264
+ fileNm: generateFileName,
265
+ contents: src,
266
+ })
267
+ });
268
+
269
+ return src;
270
+ };
271
+
256
272
  generateSourceClient = async (userPrompt) => {
257
273
 
258
274
  this.#createModel();
@@ -266,18 +282,39 @@ export class IdeAi
266
282
 
267
283
  const columnInfo = await this.#getColumnInfo(where.table);
268
284
 
269
- const myBatisSrc = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
285
+ //const mybatisXmlSource = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
286
+ const mybatisXmlSource = await this.#generateTmplateFile("/prompts/meta/BuildMyBatisMapper.txt", "mybatis.xml", {
287
+ "userPrompt": userPrompt,
288
+ "namespace": where.package,
289
+ "tableDefinitions": columnInfo
290
+ });
270
291
  this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
271
292
 
272
- const serviceSrc = await this.#generateService({
293
+ const serviceSrc = await this.#generateTmplateFile("/prompts/meta/BuildService.txt", "service.java", {
273
294
  userPrompt: userPrompt,
274
295
  menuUrl: where.menu.url,
275
- classPackage: where.package + ".service",
296
+ classPackage: "ide.assi.be." + where.package + ".service",
276
297
  namespace: where.package,
277
- mybatisXmlSource: myBatisSrc,
298
+ mybatisXmlSource: mybatisXmlSource,
278
299
  });
279
300
  this.#parent.addMessage("Java(Service) 소스파일을 생성했습니다.");
280
301
 
302
+ const controllerSrc = await this.#generateTmplateFile("/prompts/meta/BuildController.txt", "controller.java", {
303
+ userPrompt: userPrompt,
304
+ menuUrl: where.menu.url,
305
+ classPackage: "ide.assi.be." + where.package + ".controller",
306
+ namespace: where.package,
307
+ serviceSource: serviceSrc,
308
+ });
309
+ this.#parent.addMessage("Java(Controller) 소스파일을 생성했습니다.");
310
+
311
+ const jsSrc = await this.#generateTmplateFile("/prompts/meta/BuildReactJsx.txt", "react.jsx", {
312
+ userPrompt: userPrompt,
313
+ menuUrl: where.menu.url,
314
+ controllerSource: controllerSrc,
315
+ });
316
+ this.#parent.addMessage("Jsx(React) 소스파일을 생성했습니다.");
317
+
281
318
 
282
319
  return "OK";
283
320
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ide-assi",
3
3
  "type": "module",
4
- "version": "0.109.0",
4
+ "version": "0.111.0",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "exports": {
@@ -253,6 +253,22 @@ export class IdeAi
253
253
  return "";
254
254
  };
255
255
 
256
+ #generateTmplateFile = async (promptFile, generateFileName, params) => {
257
+
258
+ const src = await this.#invoke(promptFile, params);
259
+
260
+ const response3 = await fetch(`/api/source/tmpl/generateFile`, {
261
+ method: "POST",
262
+ headers: { "Content-Type": "application/json" },
263
+ body: JSON.stringify({
264
+ fileNm: generateFileName,
265
+ contents: src,
266
+ })
267
+ });
268
+
269
+ return src;
270
+ };
271
+
256
272
  generateSourceClient = async (userPrompt) => {
257
273
 
258
274
  this.#createModel();
@@ -266,18 +282,39 @@ export class IdeAi
266
282
 
267
283
  const columnInfo = await this.#getColumnInfo(where.table);
268
284
 
269
- const myBatisSrc = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
285
+ //const mybatisXmlSource = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
286
+ const mybatisXmlSource = await this.#generateTmplateFile("/prompts/meta/BuildMyBatisMapper.txt", "mybatis.xml", {
287
+ "userPrompt": userPrompt,
288
+ "namespace": where.package,
289
+ "tableDefinitions": columnInfo
290
+ });
270
291
  this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
271
292
 
272
- const serviceSrc = await this.#generateService({
293
+ const serviceSrc = await this.#generateTmplateFile("/prompts/meta/BuildService.txt", "service.java", {
273
294
  userPrompt: userPrompt,
274
295
  menuUrl: where.menu.url,
275
- classPackage: where.package + ".service",
296
+ classPackage: "ide.assi.be." + where.package + ".service",
276
297
  namespace: where.package,
277
- mybatisXmlSource: myBatisSrc,
298
+ mybatisXmlSource: mybatisXmlSource,
278
299
  });
279
300
  this.#parent.addMessage("Java(Service) 소스파일을 생성했습니다.");
280
301
 
302
+ const controllerSrc = await this.#generateTmplateFile("/prompts/meta/BuildController.txt", "controller.java", {
303
+ userPrompt: userPrompt,
304
+ menuUrl: where.menu.url,
305
+ classPackage: "ide.assi.be." + where.package + ".controller",
306
+ namespace: where.package,
307
+ serviceSource: serviceSrc,
308
+ });
309
+ this.#parent.addMessage("Java(Controller) 소스파일을 생성했습니다.");
310
+
311
+ const jsSrc = await this.#generateTmplateFile("/prompts/meta/BuildReactJsx.txt", "react.jsx", {
312
+ userPrompt: userPrompt,
313
+ menuUrl: where.menu.url,
314
+ controllerSource: controllerSrc,
315
+ });
316
+ this.#parent.addMessage("Jsx(React) 소스파일을 생성했습니다.");
317
+
281
318
 
282
319
  return "OK";
283
320
  }