@kubb/core 4.1.4 → 4.2.1

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 (149) hide show
  1. package/dist/URLPath-8WVzHBnA.cjs +134 -0
  2. package/dist/URLPath-8WVzHBnA.cjs.map +1 -0
  3. package/dist/URLPath-BYceu_vY.js +117 -0
  4. package/dist/URLPath-BYceu_vY.js.map +1 -0
  5. package/dist/{acorn-Cg_eXN51.cjs → acorn-BAVXZMtK.cjs} +17 -21
  6. package/dist/{acorn-Cg_eXN51.cjs.map → acorn-BAVXZMtK.cjs.map} +1 -1
  7. package/dist/{acorn-Z0oy0vSt.js → acorn-D-VhIOLw.js} +17 -21
  8. package/dist/{acorn-Z0oy0vSt.js.map → acorn-D-VhIOLw.js.map} +1 -1
  9. package/dist/{angular-nBly58h0.cjs → angular-Bp0XO9db.cjs} +24 -29
  10. package/dist/{angular-nBly58h0.cjs.map → angular-Bp0XO9db.cjs.map} +1 -1
  11. package/dist/{angular-BUlb_iaU.js → angular-Czhp4eq5.js} +24 -29
  12. package/dist/{angular-BUlb_iaU.js.map → angular-Czhp4eq5.js.map} +1 -1
  13. package/dist/{babel-DfXTN9QX.js → babel-DCR_B4Qn.js} +27 -37
  14. package/dist/{babel-DfXTN9QX.js.map → babel-DCR_B4Qn.js.map} +1 -1
  15. package/dist/{babel-5qXjvTGO.cjs → babel-NI0v59ga.cjs} +27 -37
  16. package/dist/{babel-5qXjvTGO.cjs.map → babel-NI0v59ga.cjs.map} +1 -1
  17. package/dist/casing-BSeq_teY.js +100 -0
  18. package/dist/casing-BSeq_teY.js.map +1 -0
  19. package/dist/casing-CP-9GGdK.cjs +112 -0
  20. package/dist/casing-CP-9GGdK.cjs.map +1 -0
  21. package/dist/{chunk-kPDogv7o.js → chunk-1SJ2vVWa.js} +1 -1
  22. package/dist/{estree-DyiFjXDy.cjs → estree-C3BZPlpU.cjs} +49 -64
  23. package/dist/{estree-DyiFjXDy.cjs.map → estree-C3BZPlpU.cjs.map} +1 -1
  24. package/dist/{estree-Bt3vRtV3.js → estree-DU2NummP.js} +49 -64
  25. package/dist/{estree-Bt3vRtV3.js.map → estree-DU2NummP.js.map} +1 -1
  26. package/dist/{flow-DdtBrX0O.cjs → flow-CWUBUkoi.cjs} +978 -1038
  27. package/dist/{flow-DdtBrX0O.cjs.map → flow-CWUBUkoi.cjs.map} +1 -1
  28. package/dist/{flow-Bb8_yYns.js → flow-JiEbweKj.js} +978 -1038
  29. package/dist/{flow-Bb8_yYns.js.map → flow-JiEbweKj.js.map} +1 -1
  30. package/dist/{fs-BNC5Fj6t.js → fs-BIPMUfpW.js} +3 -4
  31. package/dist/{fs-BNC5Fj6t.js.map → fs-BIPMUfpW.js.map} +1 -1
  32. package/dist/{fs-Bi2kuxAm.cjs → fs-RSVoUw3S.cjs} +2 -3
  33. package/dist/{fs-Bi2kuxAm.cjs.map → fs-RSVoUw3S.cjs.map} +1 -1
  34. package/dist/fs.cjs +1 -1
  35. package/dist/fs.d.cts +1 -1
  36. package/dist/fs.d.ts +1 -1
  37. package/dist/fs.js +2 -2
  38. package/dist/{glimmer-BuCRLjbI.cjs → glimmer-CX9OqG1j.cjs} +27 -41
  39. package/dist/{glimmer-BuCRLjbI.cjs.map → glimmer-CX9OqG1j.cjs.map} +1 -1
  40. package/dist/{glimmer-By8WZPkK.js → glimmer-t9nWn9aE.js} +27 -41
  41. package/dist/{glimmer-By8WZPkK.js.map → glimmer-t9nWn9aE.js.map} +1 -1
  42. package/dist/{graphql-DsrNefXx.js → graphql-DjErlIi5.js} +16 -20
  43. package/dist/{graphql-DsrNefXx.js.map → graphql-DjErlIi5.js.map} +1 -1
  44. package/dist/{graphql-TN0hv-fx.cjs → graphql-GOxQAKxM.cjs} +16 -20
  45. package/dist/{graphql-TN0hv-fx.cjs.map → graphql-GOxQAKxM.cjs.map} +1 -1
  46. package/dist/hooks.cjs +29 -0
  47. package/dist/hooks.cjs.map +1 -0
  48. package/dist/hooks.d.cts +16 -0
  49. package/dist/hooks.d.ts +16 -0
  50. package/dist/hooks.js +25 -0
  51. package/dist/hooks.js.map +1 -0
  52. package/dist/{html-1W4-2_9J.cjs → html-CWrdYAhQ.cjs} +26 -27
  53. package/dist/{html-1W4-2_9J.cjs.map → html-CWrdYAhQ.cjs.map} +1 -1
  54. package/dist/{html-Y5KDc150.js → html-_apcbx34.js} +26 -27
  55. package/dist/{html-Y5KDc150.js.map → html-_apcbx34.js.map} +1 -1
  56. package/dist/{index-CGJ3tdk-.d.ts → index-BTe91LHd.d.ts} +7 -2
  57. package/dist/{index-CWX6_-da.d.cts → index-BmQIxvw0.d.cts} +5 -2
  58. package/dist/index.cjs +383 -30
  59. package/dist/index.cjs.map +1 -1
  60. package/dist/index.d.cts +43 -10
  61. package/dist/index.d.ts +43 -10
  62. package/dist/index.js +376 -23
  63. package/dist/index.js.map +1 -1
  64. package/dist/{logger-OWS6fqk0.d.cts → logger-BA-za85-.d.ts} +2 -2
  65. package/dist/{logger-DBJsdlpZ.cjs → logger-BXL0YCrv.cjs} +8 -12
  66. package/dist/{logger-DBJsdlpZ.cjs.map → logger-BXL0YCrv.cjs.map} +1 -1
  67. package/dist/{logger-BKPT4rkB.js → logger-CDxSrFkR.js} +10 -14
  68. package/dist/{logger-BKPT4rkB.js.map → logger-CDxSrFkR.js.map} +1 -1
  69. package/dist/{logger-B-4AXUmB.d.ts → logger-DpoDtxfo.d.cts} +2 -2
  70. package/dist/logger.cjs +1 -1
  71. package/dist/logger.d.cts +1 -1
  72. package/dist/logger.d.ts +1 -1
  73. package/dist/logger.js +2 -2
  74. package/dist/{markdown-Drl4Cbq5.js → markdown-ckUc3Q6q.js} +25 -29
  75. package/dist/{markdown-Drl4Cbq5.js.map → markdown-ckUc3Q6q.js.map} +1 -1
  76. package/dist/{markdown-Bltb-uzO.cjs → markdown-pzqiRmft.cjs} +25 -29
  77. package/dist/{markdown-Bltb-uzO.cjs.map → markdown-pzqiRmft.cjs.map} +1 -1
  78. package/dist/{meriyah-Cz9whwp-.js → meriyah-BjnGqpUs.js} +21 -29
  79. package/dist/{meriyah-Cz9whwp-.js.map → meriyah-BjnGqpUs.js.map} +1 -1
  80. package/dist/{meriyah-CdG8HPS2.cjs → meriyah-D_x7itbT.cjs} +21 -29
  81. package/dist/{meriyah-CdG8HPS2.cjs.map → meriyah-D_x7itbT.cjs.map} +1 -1
  82. package/dist/mocks.cjs +87 -144
  83. package/dist/mocks.cjs.map +1 -1
  84. package/dist/mocks.d.cts +4 -3
  85. package/dist/mocks.d.ts +4 -3
  86. package/dist/mocks.js +83 -141
  87. package/dist/mocks.js.map +1 -1
  88. package/dist/{postcss-B7n9zUIy.cjs → postcss-B_c2wbFu.cjs} +41 -54
  89. package/dist/{postcss-B7n9zUIy.cjs.map → postcss-B_c2wbFu.cjs.map} +1 -1
  90. package/dist/{postcss-Dfx_9buT.js → postcss-v7BP6SZ-.js} +41 -54
  91. package/dist/{postcss-Dfx_9buT.js.map → postcss-v7BP6SZ-.js.map} +1 -1
  92. package/dist/{prompt-BMs_Y-vT.js → prompt-DBVnG4Me.js} +30 -32
  93. package/dist/{prompt-BMs_Y-vT.js.map → prompt-DBVnG4Me.js.map} +1 -1
  94. package/dist/{prompt-BXlYKArM.cjs → prompt-DgONOpPH.cjs} +29 -31
  95. package/dist/{prompt-BXlYKArM.cjs.map → prompt-DgONOpPH.cjs.map} +1 -1
  96. package/dist/{transformers-DZ22lE-S.cjs → transformers-BH0KLJJP.cjs} +130 -248
  97. package/dist/transformers-BH0KLJJP.cjs.map +1 -0
  98. package/dist/{transformers-BllSzdDt.js → transformers-DzHGqYO2.js} +130 -236
  99. package/dist/transformers-DzHGqYO2.js.map +1 -0
  100. package/dist/transformers.cjs +4 -3
  101. package/dist/transformers.js +2 -1
  102. package/dist/types-BzI9JlV8.d.ts +5 -0
  103. package/dist/types-C3ea5qNG.d.cts +5 -0
  104. package/dist/{PluginManager-BSUDeUfP.d.ts → types-DNxlynJr.d.cts} +187 -246
  105. package/dist/{PluginManager-a3RiDAFC.d.cts → types-DPeNK0FO.d.ts} +187 -246
  106. package/dist/{typescript-Evf8GXVW.cjs → typescript-6kMN6Wqz.cjs} +100 -152
  107. package/dist/{typescript-Evf8GXVW.cjs.map → typescript-6kMN6Wqz.cjs.map} +1 -1
  108. package/dist/{typescript-C8iCxnaF.js → typescript-B_IBfKSe.js} +101 -153
  109. package/dist/{typescript-C8iCxnaF.js.map → typescript-B_IBfKSe.js.map} +1 -1
  110. package/dist/typescript-C5hce4HG.cjs +4 -0
  111. package/dist/typescript-Cas1XcNz.js +3 -0
  112. package/dist/utils.cjs +165 -20
  113. package/dist/utils.cjs.map +1 -0
  114. package/dist/utils.d.cts +136 -5
  115. package/dist/utils.d.ts +136 -5
  116. package/dist/utils.js +156 -5
  117. package/dist/utils.js.map +1 -0
  118. package/dist/{write-O9QWtBJ_.js → write-CxO1CDML.js} +2 -2
  119. package/dist/{write-O9QWtBJ_.js.map → write-CxO1CDML.js.map} +1 -1
  120. package/dist/{yaml-Bi_nSoU_.js → yaml-BfWM_B73.js} +141 -157
  121. package/dist/{yaml-Bi_nSoU_.js.map → yaml-BfWM_B73.js.map} +1 -1
  122. package/dist/{yaml-B2qeXFgu.cjs → yaml-DZs6MhV1.cjs} +141 -157
  123. package/dist/{yaml-B2qeXFgu.cjs.map → yaml-DZs6MhV1.cjs.map} +1 -1
  124. package/package.json +15 -3
  125. package/src/FileManager.ts +34 -302
  126. package/src/PluginManager.ts +9 -8
  127. package/src/__snapshots__/barrel.json +5 -5
  128. package/src/build.ts +19 -5
  129. package/src/hooks/index.ts +3 -0
  130. package/src/hooks/useMode.ts +8 -0
  131. package/src/hooks/usePlugin.ts +8 -0
  132. package/src/hooks/usePluginManager.ts +8 -0
  133. package/src/index.ts +1 -2
  134. package/src/mocks/index.ts +4 -3
  135. package/src/plugin.ts +1 -1
  136. package/src/types.ts +4 -1
  137. package/src/utils/TreeNode.ts +3 -3
  138. package/src/utils/index.ts +2 -4
  139. package/dist/FileManager-B0V0rX5Z.js +0 -881
  140. package/dist/FileManager-B0V0rX5Z.js.map +0 -1
  141. package/dist/FileManager-COJW0Zp4.cjs +0 -1003
  142. package/dist/FileManager-COJW0Zp4.cjs.map +0 -1
  143. package/dist/index-B7KKQHG8.d.cts +0 -179
  144. package/dist/index-BhFFCWR1.d.ts +0 -179
  145. package/dist/transformers-BllSzdDt.js.map +0 -1
  146. package/dist/transformers-DZ22lE-S.cjs.map +0 -1
  147. package/dist/typescript-BY9-7pw9.js +0 -3
  148. package/dist/typescript-PxlX-TH7.cjs +0 -4
  149. package/src/utils/parser.ts +0 -199
@@ -0,0 +1,134 @@
1
+ const require_transformers = require('./transformers-BH0KLJJP.cjs');
2
+ const require_casing = require('./casing-CP-9GGdK.cjs');
3
+
4
+ //#region src/utils/uniqueName.ts
5
+ function getUniqueName(originalName, data) {
6
+ let used = data[originalName] || 0;
7
+ if (used) {
8
+ data[originalName] = ++used;
9
+ originalName += used;
10
+ }
11
+ data[originalName] = 1;
12
+ return originalName;
13
+ }
14
+ function setUniqueName(originalName, data) {
15
+ let used = data[originalName] || 0;
16
+ if (used) {
17
+ data[originalName] = ++used;
18
+ return originalName;
19
+ }
20
+ data[originalName] = 1;
21
+ return originalName;
22
+ }
23
+
24
+ //#endregion
25
+ //#region src/utils/URLPath.ts
26
+ var URLPath = class {
27
+ path;
28
+ #options;
29
+ constructor(path, options = {}) {
30
+ this.path = path;
31
+ this.#options = options;
32
+ return this;
33
+ }
34
+ /**
35
+ * Convert Swagger path to URLPath(syntax of Express)
36
+ * @example /pet/{petId} => /pet/:petId
37
+ */
38
+ get URL() {
39
+ return this.toURLPath();
40
+ }
41
+ get isURL() {
42
+ try {
43
+ if (new URL(this.path)?.href) return true;
44
+ } catch (_error) {
45
+ return false;
46
+ }
47
+ return false;
48
+ }
49
+ /**
50
+ * Convert Swagger path to template literals/ template strings(camelcase)
51
+ * @example /pet/{petId} => `/pet/${petId}`
52
+ * @example /account/monetary-accountID => `/account/${monetaryAccountId}`
53
+ * @example /account/userID => `/account/${userId}`
54
+ */
55
+ get template() {
56
+ return this.toTemplateString();
57
+ }
58
+ get object() {
59
+ return this.toObject();
60
+ }
61
+ get params() {
62
+ return this.getParams();
63
+ }
64
+ toObject({ type = "path", replacer, stringify } = {}) {
65
+ const object = {
66
+ url: type === "path" ? this.toURLPath() : this.toTemplateString({ replacer }),
67
+ params: this.getParams()
68
+ };
69
+ if (stringify) {
70
+ if (type === "template") return JSON.stringify(object).replaceAll("'", "").replaceAll(`"`, "");
71
+ if (object.params) return `{ url: '${object.url}', params: ${JSON.stringify(object.params).replaceAll("'", "").replaceAll(`"`, "")} }`;
72
+ return `{ url: '${object.url}' }`;
73
+ }
74
+ return object;
75
+ }
76
+ /**
77
+ * Convert Swagger path to template literals/ template strings(camelcase)
78
+ * @example /pet/{petId} => `/pet/${petId}`
79
+ * @example /account/monetary-accountID => `/account/${monetaryAccountId}`
80
+ * @example /account/userID => `/account/${userId}`
81
+ */
82
+ toTemplateString({ prefix = "", replacer } = {}) {
83
+ const found = this.path.match(/{(\w|-)*}/g);
84
+ let newPath = this.path.replaceAll("{", "${");
85
+ if (found) newPath = found.reduce((prev, path) => {
86
+ const pathWithoutBrackets = path.replaceAll("{", "").replaceAll("}", "");
87
+ let param = require_transformers.isValidVarName(pathWithoutBrackets) ? pathWithoutBrackets : require_casing.camelCase(pathWithoutBrackets);
88
+ if (this.#options.casing === "camelcase") param = require_casing.camelCase(param);
89
+ return prev.replace(path, `\${${replacer ? replacer(param) : param}}`);
90
+ }, this.path);
91
+ return `\`${prefix}${newPath}\``;
92
+ }
93
+ getParams(replacer) {
94
+ const found = this.path.match(/{(\w|-)*}/g);
95
+ if (!found) return;
96
+ const params = {};
97
+ found.forEach((item) => {
98
+ item = item.replaceAll("{", "").replaceAll("}", "");
99
+ let param = require_transformers.isValidVarName(item) ? item : require_casing.camelCase(item);
100
+ if (this.#options.casing === "camelcase") param = require_casing.camelCase(param);
101
+ const key = replacer ? replacer(param) : param;
102
+ params[key] = key;
103
+ }, this.path);
104
+ return params;
105
+ }
106
+ /**
107
+ * Convert Swagger path to URLPath(syntax of Express)
108
+ * @example /pet/{petId} => /pet/:petId
109
+ */
110
+ toURLPath() {
111
+ return this.path.replaceAll("{", ":").replaceAll("}", "");
112
+ }
113
+ };
114
+
115
+ //#endregion
116
+ Object.defineProperty(exports, 'URLPath', {
117
+ enumerable: true,
118
+ get: function () {
119
+ return URLPath;
120
+ }
121
+ });
122
+ Object.defineProperty(exports, 'getUniqueName', {
123
+ enumerable: true,
124
+ get: function () {
125
+ return getUniqueName;
126
+ }
127
+ });
128
+ Object.defineProperty(exports, 'setUniqueName', {
129
+ enumerable: true,
130
+ get: function () {
131
+ return setUniqueName;
132
+ }
133
+ });
134
+ //# sourceMappingURL=URLPath-8WVzHBnA.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"URLPath-8WVzHBnA.cjs","names":["#options","isValidVarName","camelCase","params: Record<string, string>"],"sources":["../src/utils/uniqueName.ts","../src/utils/URLPath.ts"],"sourcesContent":["export function getUniqueName(originalName: string, data: Record<string, number>): string {\n let used = data[originalName] || 0\n if (used) {\n data[originalName] = ++used\n originalName += used\n }\n data[originalName] = 1\n return originalName\n}\n\nexport function setUniqueName(originalName: string, data: Record<string, number>): string {\n let used = data[originalName] || 0\n if (used) {\n data[originalName] = ++used\n\n return originalName\n }\n data[originalName] = 1\n return originalName\n}\n","import { camelCase, isValidVarName } from '../transformers'\n\nexport type URLObject = {\n url: string\n params?: Record<string, string>\n}\n\ntype ObjectOptions = {\n type?: 'path' | 'template'\n replacer?: (pathParam: string) => string\n stringify?: boolean\n}\n\ntype Options = {\n casing?: 'camelcase'\n}\n\nexport class URLPath {\n path: string\n #options: Options\n\n constructor(path: string, options: Options = {}) {\n this.path = path\n this.#options = options\n\n return this\n }\n\n /**\n * Convert Swagger path to URLPath(syntax of Express)\n * @example /pet/{petId} => /pet/:petId\n */\n get URL(): string {\n return this.toURLPath()\n }\n get isURL(): boolean {\n try {\n const url = new URL(this.path)\n if (url?.href) {\n return true\n }\n } catch (_error) {\n return false\n }\n return false\n }\n\n /**\n * Convert Swagger path to template literals/ template strings(camelcase)\n * @example /pet/{petId} => `/pet/${petId}`\n * @example /account/monetary-accountID => `/account/${monetaryAccountId}`\n * @example /account/userID => `/account/${userId}`\n */\n get template(): string {\n return this.toTemplateString()\n }\n get object(): URLObject | string {\n return this.toObject()\n }\n get params(): Record<string, string> | undefined {\n return this.getParams()\n }\n\n toObject({ type = 'path', replacer, stringify }: ObjectOptions = {}): URLObject | string {\n const object = {\n url: type === 'path' ? this.toURLPath() : this.toTemplateString({ replacer }),\n params: this.getParams(),\n }\n\n if (stringify) {\n if (type === 'template') {\n return JSON.stringify(object).replaceAll(\"'\", '').replaceAll(`\"`, '')\n }\n\n if (object.params) {\n return `{ url: '${object.url}', params: ${JSON.stringify(object.params).replaceAll(\"'\", '').replaceAll(`\"`, '')} }`\n }\n\n return `{ url: '${object.url}' }`\n }\n\n return object\n }\n\n /**\n * Convert Swagger path to template literals/ template strings(camelcase)\n * @example /pet/{petId} => `/pet/${petId}`\n * @example /account/monetary-accountID => `/account/${monetaryAccountId}`\n * @example /account/userID => `/account/${userId}`\n */\n toTemplateString({ prefix = '', replacer }: { prefix?: string; replacer?: (pathParam: string) => string } = {}): string {\n const regex = /{(\\w|-)*}/g\n const found = this.path.match(regex)\n let newPath = this.path.replaceAll('{', '${')\n\n if (found) {\n newPath = found.reduce((prev, path) => {\n const pathWithoutBrackets = path.replaceAll('{', '').replaceAll('}', '')\n\n let param = isValidVarName(pathWithoutBrackets) ? pathWithoutBrackets : camelCase(pathWithoutBrackets)\n\n if (this.#options.casing === 'camelcase') {\n param = camelCase(param)\n }\n\n return prev.replace(path, `\\${${replacer ? replacer(param) : param}}`)\n }, this.path)\n }\n\n return `\\`${prefix}${newPath}\\``\n }\n\n getParams(replacer?: (pathParam: string) => string): Record<string, string> | undefined {\n const regex = /{(\\w|-)*}/g\n const found = this.path.match(regex)\n\n if (!found) {\n return undefined\n }\n\n const params: Record<string, string> = {}\n found.forEach((item) => {\n item = item.replaceAll('{', '').replaceAll('}', '')\n\n let param = isValidVarName(item) ? item : camelCase(item)\n\n if (this.#options.casing === 'camelcase') {\n param = camelCase(param)\n }\n\n const key = replacer ? replacer(param) : param\n\n params[key] = key\n }, this.path)\n\n return params\n }\n\n /**\n * Convert Swagger path to URLPath(syntax of Express)\n * @example /pet/{petId} => /pet/:petId\n */\n toURLPath(): string {\n return this.path.replaceAll('{', ':').replaceAll('}', '')\n }\n}\n"],"mappings":";;;;AAAA,SAAgB,cAAc,cAAsB,MAAsC;CACxF,IAAI,OAAO,KAAK,iBAAiB;AACjC,KAAI,MAAM;AACR,OAAK,gBAAgB,EAAE;AACvB,kBAAgB;;AAElB,MAAK,gBAAgB;AACrB,QAAO;;AAGT,SAAgB,cAAc,cAAsB,MAAsC;CACxF,IAAI,OAAO,KAAK,iBAAiB;AACjC,KAAI,MAAM;AACR,OAAK,gBAAgB,EAAE;AAEvB,SAAO;;AAET,MAAK,gBAAgB;AACrB,QAAO;;;;;ACDT,IAAa,UAAb,MAAqB;CACnB;CACA;CAEA,YAAY,MAAc,UAAmB,EAAE,EAAE;AAC/C,OAAK,OAAO;AACZ,QAAKA,UAAW;AAEhB,SAAO;;;;;;CAOT,IAAI,MAAc;AAChB,SAAO,KAAK,WAAW;;CAEzB,IAAI,QAAiB;AACnB,MAAI;AAEF,OADY,IAAI,IAAI,KAAK,KAAK,EACrB,KACP,QAAO;WAEF,QAAQ;AACf,UAAO;;AAET,SAAO;;;;;;;;CAST,IAAI,WAAmB;AACrB,SAAO,KAAK,kBAAkB;;CAEhC,IAAI,SAA6B;AAC/B,SAAO,KAAK,UAAU;;CAExB,IAAI,SAA6C;AAC/C,SAAO,KAAK,WAAW;;CAGzB,SAAS,EAAE,OAAO,QAAQ,UAAU,cAA6B,EAAE,EAAsB;EACvF,MAAM,SAAS;GACb,KAAK,SAAS,SAAS,KAAK,WAAW,GAAG,KAAK,iBAAiB,EAAE,UAAU,CAAC;GAC7E,QAAQ,KAAK,WAAW;GACzB;AAED,MAAI,WAAW;AACb,OAAI,SAAS,WACX,QAAO,KAAK,UAAU,OAAO,CAAC,WAAW,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG;AAGvE,OAAI,OAAO,OACT,QAAO,WAAW,OAAO,IAAI,aAAa,KAAK,UAAU,OAAO,OAAO,CAAC,WAAW,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC;AAGlH,UAAO,WAAW,OAAO,IAAI;;AAG/B,SAAO;;;;;;;;CAST,iBAAiB,EAAE,SAAS,IAAI,aAA4E,EAAE,EAAU;EAEtH,MAAM,QAAQ,KAAK,KAAK,MADV,aACsB;EACpC,IAAI,UAAU,KAAK,KAAK,WAAW,KAAK,KAAK;AAE7C,MAAI,MACF,WAAU,MAAM,QAAQ,MAAM,SAAS;GACrC,MAAM,sBAAsB,KAAK,WAAW,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG;GAExE,IAAI,QAAQC,oCAAe,oBAAoB,GAAG,sBAAsBC,yBAAU,oBAAoB;AAEtG,OAAI,MAAKF,QAAS,WAAW,YAC3B,SAAQE,yBAAU,MAAM;AAG1B,UAAO,KAAK,QAAQ,MAAM,MAAM,WAAW,SAAS,MAAM,GAAG,MAAM,GAAG;KACrE,KAAK,KAAK;AAGf,SAAO,KAAK,SAAS,QAAQ;;CAG/B,UAAU,UAA8E;EAEtF,MAAM,QAAQ,KAAK,KAAK,MADV,aACsB;AAEpC,MAAI,CAAC,MACH;EAGF,MAAMC,SAAiC,EAAE;AACzC,QAAM,SAAS,SAAS;AACtB,UAAO,KAAK,WAAW,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG;GAEnD,IAAI,QAAQF,oCAAe,KAAK,GAAG,OAAOC,yBAAU,KAAK;AAEzD,OAAI,MAAKF,QAAS,WAAW,YAC3B,SAAQE,yBAAU,MAAM;GAG1B,MAAM,MAAM,WAAW,SAAS,MAAM,GAAG;AAEzC,UAAO,OAAO;KACb,KAAK,KAAK;AAEb,SAAO;;;;;;CAOT,YAAoB;AAClB,SAAO,KAAK,KAAK,WAAW,KAAK,IAAI,CAAC,WAAW,KAAK,GAAG"}
@@ -0,0 +1,117 @@
1
+ import { _ as isValidVarName } from "./transformers-DzHGqYO2.js";
2
+ import { t as camelCase } from "./casing-BSeq_teY.js";
3
+
4
+ //#region src/utils/uniqueName.ts
5
+ function getUniqueName(originalName, data) {
6
+ let used = data[originalName] || 0;
7
+ if (used) {
8
+ data[originalName] = ++used;
9
+ originalName += used;
10
+ }
11
+ data[originalName] = 1;
12
+ return originalName;
13
+ }
14
+ function setUniqueName(originalName, data) {
15
+ let used = data[originalName] || 0;
16
+ if (used) {
17
+ data[originalName] = ++used;
18
+ return originalName;
19
+ }
20
+ data[originalName] = 1;
21
+ return originalName;
22
+ }
23
+
24
+ //#endregion
25
+ //#region src/utils/URLPath.ts
26
+ var URLPath = class {
27
+ path;
28
+ #options;
29
+ constructor(path, options = {}) {
30
+ this.path = path;
31
+ this.#options = options;
32
+ return this;
33
+ }
34
+ /**
35
+ * Convert Swagger path to URLPath(syntax of Express)
36
+ * @example /pet/{petId} => /pet/:petId
37
+ */
38
+ get URL() {
39
+ return this.toURLPath();
40
+ }
41
+ get isURL() {
42
+ try {
43
+ if (new URL(this.path)?.href) return true;
44
+ } catch (_error) {
45
+ return false;
46
+ }
47
+ return false;
48
+ }
49
+ /**
50
+ * Convert Swagger path to template literals/ template strings(camelcase)
51
+ * @example /pet/{petId} => `/pet/${petId}`
52
+ * @example /account/monetary-accountID => `/account/${monetaryAccountId}`
53
+ * @example /account/userID => `/account/${userId}`
54
+ */
55
+ get template() {
56
+ return this.toTemplateString();
57
+ }
58
+ get object() {
59
+ return this.toObject();
60
+ }
61
+ get params() {
62
+ return this.getParams();
63
+ }
64
+ toObject({ type = "path", replacer, stringify } = {}) {
65
+ const object = {
66
+ url: type === "path" ? this.toURLPath() : this.toTemplateString({ replacer }),
67
+ params: this.getParams()
68
+ };
69
+ if (stringify) {
70
+ if (type === "template") return JSON.stringify(object).replaceAll("'", "").replaceAll(`"`, "");
71
+ if (object.params) return `{ url: '${object.url}', params: ${JSON.stringify(object.params).replaceAll("'", "").replaceAll(`"`, "")} }`;
72
+ return `{ url: '${object.url}' }`;
73
+ }
74
+ return object;
75
+ }
76
+ /**
77
+ * Convert Swagger path to template literals/ template strings(camelcase)
78
+ * @example /pet/{petId} => `/pet/${petId}`
79
+ * @example /account/monetary-accountID => `/account/${monetaryAccountId}`
80
+ * @example /account/userID => `/account/${userId}`
81
+ */
82
+ toTemplateString({ prefix = "", replacer } = {}) {
83
+ const found = this.path.match(/{(\w|-)*}/g);
84
+ let newPath = this.path.replaceAll("{", "${");
85
+ if (found) newPath = found.reduce((prev, path) => {
86
+ const pathWithoutBrackets = path.replaceAll("{", "").replaceAll("}", "");
87
+ let param = isValidVarName(pathWithoutBrackets) ? pathWithoutBrackets : camelCase(pathWithoutBrackets);
88
+ if (this.#options.casing === "camelcase") param = camelCase(param);
89
+ return prev.replace(path, `\${${replacer ? replacer(param) : param}}`);
90
+ }, this.path);
91
+ return `\`${prefix}${newPath}\``;
92
+ }
93
+ getParams(replacer) {
94
+ const found = this.path.match(/{(\w|-)*}/g);
95
+ if (!found) return;
96
+ const params = {};
97
+ found.forEach((item) => {
98
+ item = item.replaceAll("{", "").replaceAll("}", "");
99
+ let param = isValidVarName(item) ? item : camelCase(item);
100
+ if (this.#options.casing === "camelcase") param = camelCase(param);
101
+ const key = replacer ? replacer(param) : param;
102
+ params[key] = key;
103
+ }, this.path);
104
+ return params;
105
+ }
106
+ /**
107
+ * Convert Swagger path to URLPath(syntax of Express)
108
+ * @example /pet/{petId} => /pet/:petId
109
+ */
110
+ toURLPath() {
111
+ return this.path.replaceAll("{", ":").replaceAll("}", "");
112
+ }
113
+ };
114
+
115
+ //#endregion
116
+ export { getUniqueName as n, setUniqueName as r, URLPath as t };
117
+ //# sourceMappingURL=URLPath-BYceu_vY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"URLPath-BYceu_vY.js","names":["#options","params: Record<string, string>"],"sources":["../src/utils/uniqueName.ts","../src/utils/URLPath.ts"],"sourcesContent":["export function getUniqueName(originalName: string, data: Record<string, number>): string {\n let used = data[originalName] || 0\n if (used) {\n data[originalName] = ++used\n originalName += used\n }\n data[originalName] = 1\n return originalName\n}\n\nexport function setUniqueName(originalName: string, data: Record<string, number>): string {\n let used = data[originalName] || 0\n if (used) {\n data[originalName] = ++used\n\n return originalName\n }\n data[originalName] = 1\n return originalName\n}\n","import { camelCase, isValidVarName } from '../transformers'\n\nexport type URLObject = {\n url: string\n params?: Record<string, string>\n}\n\ntype ObjectOptions = {\n type?: 'path' | 'template'\n replacer?: (pathParam: string) => string\n stringify?: boolean\n}\n\ntype Options = {\n casing?: 'camelcase'\n}\n\nexport class URLPath {\n path: string\n #options: Options\n\n constructor(path: string, options: Options = {}) {\n this.path = path\n this.#options = options\n\n return this\n }\n\n /**\n * Convert Swagger path to URLPath(syntax of Express)\n * @example /pet/{petId} => /pet/:petId\n */\n get URL(): string {\n return this.toURLPath()\n }\n get isURL(): boolean {\n try {\n const url = new URL(this.path)\n if (url?.href) {\n return true\n }\n } catch (_error) {\n return false\n }\n return false\n }\n\n /**\n * Convert Swagger path to template literals/ template strings(camelcase)\n * @example /pet/{petId} => `/pet/${petId}`\n * @example /account/monetary-accountID => `/account/${monetaryAccountId}`\n * @example /account/userID => `/account/${userId}`\n */\n get template(): string {\n return this.toTemplateString()\n }\n get object(): URLObject | string {\n return this.toObject()\n }\n get params(): Record<string, string> | undefined {\n return this.getParams()\n }\n\n toObject({ type = 'path', replacer, stringify }: ObjectOptions = {}): URLObject | string {\n const object = {\n url: type === 'path' ? this.toURLPath() : this.toTemplateString({ replacer }),\n params: this.getParams(),\n }\n\n if (stringify) {\n if (type === 'template') {\n return JSON.stringify(object).replaceAll(\"'\", '').replaceAll(`\"`, '')\n }\n\n if (object.params) {\n return `{ url: '${object.url}', params: ${JSON.stringify(object.params).replaceAll(\"'\", '').replaceAll(`\"`, '')} }`\n }\n\n return `{ url: '${object.url}' }`\n }\n\n return object\n }\n\n /**\n * Convert Swagger path to template literals/ template strings(camelcase)\n * @example /pet/{petId} => `/pet/${petId}`\n * @example /account/monetary-accountID => `/account/${monetaryAccountId}`\n * @example /account/userID => `/account/${userId}`\n */\n toTemplateString({ prefix = '', replacer }: { prefix?: string; replacer?: (pathParam: string) => string } = {}): string {\n const regex = /{(\\w|-)*}/g\n const found = this.path.match(regex)\n let newPath = this.path.replaceAll('{', '${')\n\n if (found) {\n newPath = found.reduce((prev, path) => {\n const pathWithoutBrackets = path.replaceAll('{', '').replaceAll('}', '')\n\n let param = isValidVarName(pathWithoutBrackets) ? pathWithoutBrackets : camelCase(pathWithoutBrackets)\n\n if (this.#options.casing === 'camelcase') {\n param = camelCase(param)\n }\n\n return prev.replace(path, `\\${${replacer ? replacer(param) : param}}`)\n }, this.path)\n }\n\n return `\\`${prefix}${newPath}\\``\n }\n\n getParams(replacer?: (pathParam: string) => string): Record<string, string> | undefined {\n const regex = /{(\\w|-)*}/g\n const found = this.path.match(regex)\n\n if (!found) {\n return undefined\n }\n\n const params: Record<string, string> = {}\n found.forEach((item) => {\n item = item.replaceAll('{', '').replaceAll('}', '')\n\n let param = isValidVarName(item) ? item : camelCase(item)\n\n if (this.#options.casing === 'camelcase') {\n param = camelCase(param)\n }\n\n const key = replacer ? replacer(param) : param\n\n params[key] = key\n }, this.path)\n\n return params\n }\n\n /**\n * Convert Swagger path to URLPath(syntax of Express)\n * @example /pet/{petId} => /pet/:petId\n */\n toURLPath(): string {\n return this.path.replaceAll('{', ':').replaceAll('}', '')\n }\n}\n"],"mappings":";;;;AAAA,SAAgB,cAAc,cAAsB,MAAsC;CACxF,IAAI,OAAO,KAAK,iBAAiB;AACjC,KAAI,MAAM;AACR,OAAK,gBAAgB,EAAE;AACvB,kBAAgB;;AAElB,MAAK,gBAAgB;AACrB,QAAO;;AAGT,SAAgB,cAAc,cAAsB,MAAsC;CACxF,IAAI,OAAO,KAAK,iBAAiB;AACjC,KAAI,MAAM;AACR,OAAK,gBAAgB,EAAE;AAEvB,SAAO;;AAET,MAAK,gBAAgB;AACrB,QAAO;;;;;ACDT,IAAa,UAAb,MAAqB;CACnB;CACA;CAEA,YAAY,MAAc,UAAmB,EAAE,EAAE;AAC/C,OAAK,OAAO;AACZ,QAAKA,UAAW;AAEhB,SAAO;;;;;;CAOT,IAAI,MAAc;AAChB,SAAO,KAAK,WAAW;;CAEzB,IAAI,QAAiB;AACnB,MAAI;AAEF,OADY,IAAI,IAAI,KAAK,KAAK,EACrB,KACP,QAAO;WAEF,QAAQ;AACf,UAAO;;AAET,SAAO;;;;;;;;CAST,IAAI,WAAmB;AACrB,SAAO,KAAK,kBAAkB;;CAEhC,IAAI,SAA6B;AAC/B,SAAO,KAAK,UAAU;;CAExB,IAAI,SAA6C;AAC/C,SAAO,KAAK,WAAW;;CAGzB,SAAS,EAAE,OAAO,QAAQ,UAAU,cAA6B,EAAE,EAAsB;EACvF,MAAM,SAAS;GACb,KAAK,SAAS,SAAS,KAAK,WAAW,GAAG,KAAK,iBAAiB,EAAE,UAAU,CAAC;GAC7E,QAAQ,KAAK,WAAW;GACzB;AAED,MAAI,WAAW;AACb,OAAI,SAAS,WACX,QAAO,KAAK,UAAU,OAAO,CAAC,WAAW,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG;AAGvE,OAAI,OAAO,OACT,QAAO,WAAW,OAAO,IAAI,aAAa,KAAK,UAAU,OAAO,OAAO,CAAC,WAAW,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC;AAGlH,UAAO,WAAW,OAAO,IAAI;;AAG/B,SAAO;;;;;;;;CAST,iBAAiB,EAAE,SAAS,IAAI,aAA4E,EAAE,EAAU;EAEtH,MAAM,QAAQ,KAAK,KAAK,MADV,aACsB;EACpC,IAAI,UAAU,KAAK,KAAK,WAAW,KAAK,KAAK;AAE7C,MAAI,MACF,WAAU,MAAM,QAAQ,MAAM,SAAS;GACrC,MAAM,sBAAsB,KAAK,WAAW,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG;GAExE,IAAI,QAAQ,eAAe,oBAAoB,GAAG,sBAAsB,UAAU,oBAAoB;AAEtG,OAAI,MAAKA,QAAS,WAAW,YAC3B,SAAQ,UAAU,MAAM;AAG1B,UAAO,KAAK,QAAQ,MAAM,MAAM,WAAW,SAAS,MAAM,GAAG,MAAM,GAAG;KACrE,KAAK,KAAK;AAGf,SAAO,KAAK,SAAS,QAAQ;;CAG/B,UAAU,UAA8E;EAEtF,MAAM,QAAQ,KAAK,KAAK,MADV,aACsB;AAEpC,MAAI,CAAC,MACH;EAGF,MAAMC,SAAiC,EAAE;AACzC,QAAM,SAAS,SAAS;AACtB,UAAO,KAAK,WAAW,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG;GAEnD,IAAI,QAAQ,eAAe,KAAK,GAAG,OAAO,UAAU,KAAK;AAEzD,OAAI,MAAKD,QAAS,WAAW,YAC3B,SAAQ,UAAU,MAAM;GAG1B,MAAM,MAAM,WAAW,SAAS,MAAM,GAAG;AAEzC,UAAO,OAAO;KACb,KAAK,KAAK;AAEb,SAAO;;;;;;CAOT,YAAoB;AAClB,SAAO,KAAK,KAAK,WAAW,KAAK,IAAI,CAAC,WAAW,KAAK,GAAG"}
@@ -1449,7 +1449,7 @@ j.inAsync.get = function() {
1449
1449
  };
1450
1450
  j.canAwait.get = function() {
1451
1451
  for (var e = this.scopeStack.length - 1; e >= 0; e--) {
1452
- var t = this.scopeStack[e], i = t.flags;
1452
+ var i = this.scopeStack[e].flags;
1453
1453
  if (i & (X | oe)) return !1;
1454
1454
  if (i & Z) return (i & Ue) > 0;
1455
1455
  }
@@ -1466,7 +1466,7 @@ j.treatFunctionsAsVar.get = function() {
1466
1466
  };
1467
1467
  j.allowNewDotTarget.get = function() {
1468
1468
  for (var e = this.scopeStack.length - 1; e >= 0; e--) {
1469
- var t = this.scopeStack[e], i = t.flags;
1469
+ var i = this.scopeStack[e].flags;
1470
1470
  if (i & (X | oe) || i & Z && !(i & Ge)) return !0;
1471
1471
  }
1472
1472
  return !1;
@@ -3756,12 +3756,12 @@ function Is(e, t, i) {
3756
3756
  return s;
3757
3757
  }
3758
3758
  var Zt = Is;
3759
- var Ns = ie([
3759
+ var z = ie([
3760
3760
  "Block",
3761
3761
  "CommentBlock",
3762
3762
  "MultiLine"
3763
- ]), z = Ns;
3764
- var Ls = ie([
3763
+ ]);
3764
+ var ze = ie([
3765
3765
  "Line",
3766
3766
  "CommentLine",
3767
3767
  "SingleLine",
@@ -3770,7 +3770,7 @@ var Ls = ie([
3770
3770
  "HTMLClose",
3771
3771
  "Hashbang",
3772
3772
  "InterpreterDirective"
3773
- ]), ze = Ls;
3773
+ ]);
3774
3774
  var Qe = /* @__PURE__ */ new WeakMap();
3775
3775
  function Vs(e) {
3776
3776
  return Qe.has(e) || Qe.set(e, z(e) && e.value[0] === "*" && /@(?:type|satisfies)\b/u.test(e.value)), Qe.get(e);
@@ -3819,7 +3819,7 @@ function Fs(e, t = "type") {
3819
3819
  }
3820
3820
  return i;
3821
3821
  }
3822
- var Ms = Fs({
3822
+ var ri = Fs({
3823
3823
  ArrayExpression: ["elements"],
3824
3824
  AssignmentExpression: ["left", "right"],
3825
3825
  BinaryExpression: ["left", "right"],
@@ -4539,7 +4539,7 @@ var Ms = Fs({
4539
4539
  SatisfiesExpression: ["expression", "typeAnnotation"],
4540
4540
  UndefinedTypeAnnotation: [],
4541
4541
  UnknownTypeAnnotation: []
4542
- }), ri = Ms;
4542
+ });
4543
4543
  function et(e, t) {
4544
4544
  if (!(e !== null && typeof e == "object")) return e;
4545
4545
  if (Array.isArray(e)) {
@@ -4595,10 +4595,7 @@ function js(e, t) {
4595
4595
  if (u.expressions.length !== u.quasis.length - 1) throw new Error("Malformed template literal.");
4596
4596
  break;
4597
4597
  case "TemplateElement":
4598
- if (i === "flow" || i === "hermes" || i === "espree" || i === "typescript" || n) {
4599
- let c = w(u) + 1, f = k(u) - (u.tail ? 1 : 2);
4600
- u.range = [c, f];
4601
- }
4598
+ if (i === "flow" || i === "hermes" || i === "espree" || i === "typescript" || n) u.range = [w(u) + 1, k(u) - (u.tail ? 1 : 2)];
4602
4599
  break;
4603
4600
  case "VariableDeclaration": {
4604
4601
  let c = te(!1, u.declarations, -1);
@@ -4627,14 +4624,14 @@ function js(e, t) {
4627
4624
  break;
4628
4625
  case "TSEnumDeclaration":
4629
4626
  if (!u.body) {
4630
- let c = k(u.id), { members: f } = u, v = Zt({
4631
- originalText: s,
4632
- [Symbol.for("comments")]: r
4633
- }, c, f[0] ? w(f[0]) : k(u)), T = c + v.indexOf("{");
4627
+ let c = k(u.id), { members: f } = u;
4634
4628
  u.body = {
4635
4629
  type: "TSEnumBody",
4636
4630
  members: f,
4637
- range: [T, k(u)]
4631
+ range: [c + Zt({
4632
+ originalText: s,
4633
+ [Symbol.for("comments")]: r
4634
+ }, c, f[0] ? w(f[0]) : k(u)).indexOf("{"), k(u)]
4638
4635
  }, delete u.members;
4639
4636
  }
4640
4637
  break;
@@ -4719,7 +4716,7 @@ var di = zs;
4719
4716
  function mi(e) {
4720
4717
  let t = di(e);
4721
4718
  t && (e = e.slice(t.length + 1));
4722
- let i = hi(e), { pragmas: s, comments: r } = ci(i);
4719
+ let { pragmas: s, comments: r } = ci(hi(e));
4723
4720
  return {
4724
4721
  shebang: t,
4725
4722
  text: e,
@@ -5073,14 +5070,13 @@ function hr(e, t) {
5073
5070
  text: e
5074
5071
  });
5075
5072
  }
5076
- var Ai = Ae(hr);
5077
5073
  var cr = {
5078
5074
  acorn: Si,
5079
- espree: Ai
5075
+ espree: Ae(hr)
5080
5076
  };
5081
5077
  var cn = at;
5082
5078
 
5083
5079
  //#endregion
5084
5080
  exports.default = cn;
5085
5081
  exports.parsers = cr;
5086
- //# sourceMappingURL=acorn-Cg_eXN51.cjs.map
5082
+ //# sourceMappingURL=acorn-BAVXZMtK.cjs.map