ide-assi 0.198.0 → 0.200.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.
@@ -193687,9 +193687,14 @@ class IdeAi
193687
193687
  #getSourcePath = (menuUrl) => {
193688
193688
  const path = menuUrl.replace(/^\/+/, '');
193689
193689
 
193690
- const packageName = `${this.#parent.config.basePackage}.${path.split("/").slice(0, -1).join(".").toLowerCase()}`;
193690
+ const raw = path.split("/").join(".").toLowerCase();
193691
+ const cleaned = raw.replace(/[^a-z0-9.]/g, "");
193692
+ const namespace = `${this.#parent.config.basePackage}.${cleaned}`;
193693
+
193694
+ const packageName = namespace.split(".").slice(0, -1).join(".");
193695
+
193691
193696
  //const packageName = `${path.split("/").slice(0, -1).join(".").toLowerCase()}`;
193692
- const namespace = path.split("/").join(".").toLowerCase();
193697
+ //const packageName = path.split("/").join(".").toLowerCase();
193693
193698
  const fileName = path.split("/").at(-1).toLowerCase().split('-').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join('');
193694
193699
 
193695
193700
  //console.log(this.#parent, this.#parent.config, packageName, namespace, fileName);
@@ -193697,6 +193702,7 @@ class IdeAi
193697
193702
  return {
193698
193703
  package: packageName,
193699
193704
  namespace: namespace,
193705
+ resultType: this.#parent.config.basePackage.split(".").slice(0, -1).join(".") + ".core.CamelCaseMap",
193700
193706
  controller: `${packageName.replaceAll(".", "/")}/controller/${fileName}Controller.java`,
193701
193707
  service: `${packageName.replaceAll(".", "/")}/service/${fileName}Service.java`,
193702
193708
  mybatis: `${path.split("/").slice(0, -1).join("/").toLowerCase()}/${fileName}Mapper.xml`,
@@ -193742,9 +193748,10 @@ class IdeAi
193742
193748
 
193743
193749
  //const mybatisXmlSource = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
193744
193750
  const mybatisXmlSource = await this.#generateTmplFile("/prompts/meta/BuildMyBatisMapper.txt", "mybatis.xml", {
193745
- "userPrompt": userPrompt,
193746
- "namespace": srcPath.namespace,
193747
- "tableDefinitions": columnInfo
193751
+ resultType: srcPath.resultType,
193752
+ userPrompt: userPrompt,
193753
+ namespace: srcPath.namespace,
193754
+ tableDefinitions: columnInfo
193748
193755
  });
193749
193756
  this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
193750
193757
 
@@ -193683,9 +193683,14 @@ class IdeAi
193683
193683
  #getSourcePath = (menuUrl) => {
193684
193684
  const path = menuUrl.replace(/^\/+/, '');
193685
193685
 
193686
- const packageName = `${this.#parent.config.basePackage}.${path.split("/").slice(0, -1).join(".").toLowerCase()}`;
193686
+ const raw = path.split("/").join(".").toLowerCase();
193687
+ const cleaned = raw.replace(/[^a-z0-9.]/g, "");
193688
+ const namespace = `${this.#parent.config.basePackage}.${cleaned}`;
193689
+
193690
+ const packageName = namespace.split(".").slice(0, -1).join(".");
193691
+
193687
193692
  //const packageName = `${path.split("/").slice(0, -1).join(".").toLowerCase()}`;
193688
- const namespace = path.split("/").join(".").toLowerCase();
193693
+ //const packageName = path.split("/").join(".").toLowerCase();
193689
193694
  const fileName = path.split("/").at(-1).toLowerCase().split('-').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join('');
193690
193695
 
193691
193696
  //console.log(this.#parent, this.#parent.config, packageName, namespace, fileName);
@@ -193693,6 +193698,7 @@ class IdeAi
193693
193698
  return {
193694
193699
  package: packageName,
193695
193700
  namespace: namespace,
193701
+ resultType: this.#parent.config.basePackage.split(".").slice(0, -1).join(".") + ".core.CamelCaseMap",
193696
193702
  controller: `${packageName.replaceAll(".", "/")}/controller/${fileName}Controller.java`,
193697
193703
  service: `${packageName.replaceAll(".", "/")}/service/${fileName}Service.java`,
193698
193704
  mybatis: `${path.split("/").slice(0, -1).join("/").toLowerCase()}/${fileName}Mapper.xml`,
@@ -193738,9 +193744,10 @@ class IdeAi
193738
193744
 
193739
193745
  //const mybatisXmlSource = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
193740
193746
  const mybatisXmlSource = await this.#generateTmplFile("/prompts/meta/BuildMyBatisMapper.txt", "mybatis.xml", {
193741
- "userPrompt": userPrompt,
193742
- "namespace": srcPath.namespace,
193743
- "tableDefinitions": columnInfo
193747
+ resultType: srcPath.resultType,
193748
+ userPrompt: userPrompt,
193749
+ namespace: srcPath.namespace,
193750
+ tableDefinitions: columnInfo
193744
193751
  });
193745
193752
  this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
193746
193753
 
@@ -285,9 +285,14 @@ export class IdeAi
285
285
  #getSourcePath = (menuUrl) => {
286
286
  const path = menuUrl.replace(/^\/+/, '');
287
287
 
288
- const packageName = `${this.#parent.config.basePackage}.${path.split("/").slice(0, -1).join(".").toLowerCase()}`;
288
+ const raw = path.split("/").join(".").toLowerCase();
289
+ const cleaned = raw.replace(/[^a-z0-9.]/g, "");
290
+ const namespace = `${this.#parent.config.basePackage}.${cleaned}`;
291
+
292
+ const packageName = namespace.split(".").slice(0, -1).join(".");
293
+
289
294
  //const packageName = `${path.split("/").slice(0, -1).join(".").toLowerCase()}`;
290
- const namespace = path.split("/").join(".").toLowerCase();
295
+ //const packageName = path.split("/").join(".").toLowerCase();
291
296
  const fileName = path.split("/").at(-1).toLowerCase().split('-').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join('');
292
297
 
293
298
  //console.log(this.#parent, this.#parent.config, packageName, namespace, fileName);
@@ -295,6 +300,7 @@ export class IdeAi
295
300
  return {
296
301
  package: packageName,
297
302
  namespace: namespace,
303
+ resultType: this.#parent.config.basePackage.split(".").slice(0, -1).join(".") + ".core.CamelCaseMap",
298
304
  controller: `${packageName.replaceAll(".", "/")}/controller/${fileName}Controller.java`,
299
305
  service: `${packageName.replaceAll(".", "/")}/service/${fileName}Service.java`,
300
306
  mybatis: `${path.split("/").slice(0, -1).join("/").toLowerCase()}/${fileName}Mapper.xml`,
@@ -340,9 +346,10 @@ export class IdeAi
340
346
 
341
347
  //const mybatisXmlSource = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
342
348
  const mybatisXmlSource = await this.#generateTmplFile("/prompts/meta/BuildMyBatisMapper.txt", "mybatis.xml", {
343
- "userPrompt": userPrompt,
344
- "namespace": srcPath.namespace,
345
- "tableDefinitions": columnInfo
349
+ resultType: srcPath.resultType,
350
+ userPrompt: userPrompt,
351
+ namespace: srcPath.namespace,
352
+ tableDefinitions: columnInfo
346
353
  });
347
354
  this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
348
355
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ide-assi",
3
3
  "type": "module",
4
- "version": "0.198.0",
4
+ "version": "0.200.0",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "exports": {
@@ -285,9 +285,14 @@ export class IdeAi
285
285
  #getSourcePath = (menuUrl) => {
286
286
  const path = menuUrl.replace(/^\/+/, '');
287
287
 
288
- const packageName = `${this.#parent.config.basePackage}.${path.split("/").slice(0, -1).join(".").toLowerCase()}`;
288
+ const raw = path.split("/").join(".").toLowerCase();
289
+ const cleaned = raw.replace(/[^a-z0-9.]/g, "");
290
+ const namespace = `${this.#parent.config.basePackage}.${cleaned}`;
291
+
292
+ const packageName = namespace.split(".").slice(0, -1).join(".");
293
+
289
294
  //const packageName = `${path.split("/").slice(0, -1).join(".").toLowerCase()}`;
290
- const namespace = path.split("/").join(".").toLowerCase();
295
+ //const packageName = path.split("/").join(".").toLowerCase();
291
296
  const fileName = path.split("/").at(-1).toLowerCase().split('-').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join('');
292
297
 
293
298
  //console.log(this.#parent, this.#parent.config, packageName, namespace, fileName);
@@ -295,6 +300,7 @@ export class IdeAi
295
300
  return {
296
301
  package: packageName,
297
302
  namespace: namespace,
303
+ resultType: this.#parent.config.basePackage.split(".").slice(0, -1).join(".") + ".core.CamelCaseMap",
298
304
  controller: `${packageName.replaceAll(".", "/")}/controller/${fileName}Controller.java`,
299
305
  service: `${packageName.replaceAll(".", "/")}/service/${fileName}Service.java`,
300
306
  mybatis: `${path.split("/").slice(0, -1).join("/").toLowerCase()}/${fileName}Mapper.xml`,
@@ -340,9 +346,10 @@ export class IdeAi
340
346
 
341
347
  //const mybatisXmlSource = await this.#generateMyBatis(userPrompt, where.package, columnInfo);
342
348
  const mybatisXmlSource = await this.#generateTmplFile("/prompts/meta/BuildMyBatisMapper.txt", "mybatis.xml", {
343
- "userPrompt": userPrompt,
344
- "namespace": srcPath.namespace,
345
- "tableDefinitions": columnInfo
349
+ resultType: srcPath.resultType,
350
+ userPrompt: userPrompt,
351
+ namespace: srcPath.namespace,
352
+ tableDefinitions: columnInfo
346
353
  });
347
354
  this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
348
355