@idlizer/core 2.1.10-arktscgen-7 → 2.1.10-arktscgen-10

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 (77) hide show
  1. package/build/lib/src/IndentedPrinter.js +2 -2
  2. package/build/lib/src/Language.d.ts +1 -0
  3. package/build/lib/src/Language.js +8 -0
  4. package/build/lib/src/LanguageWriters/ArgConvertors.d.ts +47 -3
  5. package/build/lib/src/LanguageWriters/ArgConvertors.js +216 -19
  6. package/build/lib/src/LanguageWriters/LanguageWriter.d.ts +12 -4
  7. package/build/lib/src/LanguageWriters/LanguageWriter.js +28 -3
  8. package/build/lib/src/LanguageWriters/convertors/CJConvertors.js +6 -2
  9. package/build/lib/src/LanguageWriters/convertors/CppConvertors.js +7 -1
  10. package/build/lib/src/LanguageWriters/convertors/ETSConvertors.js +3 -0
  11. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.js +4 -0
  12. package/build/lib/src/LanguageWriters/convertors/KotlinConvertors.d.ts +10 -5
  13. package/build/lib/src/LanguageWriters/convertors/KotlinConvertors.js +138 -51
  14. package/build/lib/src/LanguageWriters/convertors/TSConvertors.js +5 -1
  15. package/build/lib/src/LanguageWriters/index.d.ts +1 -2
  16. package/build/lib/src/LanguageWriters/index.js +17 -3
  17. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.d.ts +1 -1
  18. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.js +5 -3
  19. package/build/lib/src/LanguageWriters/writers/CLikeLanguageWriter.d.ts +1 -1
  20. package/build/lib/src/LanguageWriters/writers/CLikeLanguageWriter.js +5 -3
  21. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.d.ts +2 -1
  22. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.js +8 -3
  23. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.js +4 -10
  24. package/build/lib/src/LanguageWriters/writers/KotlinLanguageWriter.d.ts +6 -4
  25. package/build/lib/src/LanguageWriters/writers/KotlinLanguageWriter.js +59 -42
  26. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.d.ts +1 -1
  27. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.js +5 -3
  28. package/build/lib/src/LibraryInterface.d.ts +6 -0
  29. package/build/lib/src/LibraryInterface.js +22 -1
  30. package/build/lib/src/from-idl/DtsPrinter.d.ts +3 -2
  31. package/build/lib/src/from-idl/DtsPrinter.js +9 -6
  32. package/build/lib/src/from-idl/parser.d.ts +1 -1
  33. package/build/lib/src/from-idl/parser.js +3 -3
  34. package/build/lib/src/idl/builders.d.ts +36 -1
  35. package/build/lib/src/idl/builders.js +62 -2
  36. package/build/lib/src/idl/dump.d.ts +3 -0
  37. package/build/lib/src/idl/dump.js +22 -4
  38. package/build/lib/src/idl/index.d.ts +0 -1
  39. package/build/lib/src/idl/index.js +0 -1
  40. package/build/lib/src/idl/node.d.ts +1 -0
  41. package/build/lib/src/idl/node.js +1 -0
  42. package/build/lib/src/idl/stdlib.d.ts +1 -0
  43. package/build/lib/src/idl/stdlib.js +1 -0
  44. package/build/lib/src/idl/utils.d.ts +4 -3
  45. package/build/lib/src/idl/utils.js +26 -13
  46. package/build/lib/src/idl/visitors.js +24 -104
  47. package/build/lib/src/index.d.ts +4 -1
  48. package/build/lib/src/index.js +4 -1
  49. package/build/lib/src/peer-generation/Extractors.d.ts +7 -0
  50. package/build/lib/src/peer-generation/Extractors.js +40 -0
  51. package/build/lib/src/peer-generation/Initializers.d.ts +5 -0
  52. package/build/lib/src/peer-generation/Initializers.js +28 -0
  53. package/build/lib/src/peer-generation/Materialized.d.ts +0 -4
  54. package/build/lib/src/peer-generation/Materialized.js +13 -24
  55. package/build/lib/src/peer-generation/PeerLibrary.d.ts +1 -0
  56. package/build/lib/src/peer-generation/PeerLibrary.js +54 -3
  57. package/build/lib/src/peer-generation/PeerMethod.d.ts +1 -0
  58. package/build/lib/src/peer-generation/PeerMethod.js +1 -0
  59. package/build/lib/src/peer-generation/idl/common.d.ts +0 -2
  60. package/build/lib/src/peer-generation/idl/common.js +3 -25
  61. package/build/lib/src/peer-generation/isMaterialized.d.ts +4 -0
  62. package/build/lib/src/peer-generation/isMaterialized.js +12 -0
  63. package/build/lib/src/peer-generation/unions.d.ts +1 -27
  64. package/build/lib/src/peer-generation/unions.js +1 -99
  65. package/build/lib/src/transformers/FqnTransformer.js +26 -2
  66. package/build/lib/src/transformers/GenericTransformer.d.ts +0 -2
  67. package/build/lib/src/transformers/GenericTransformer.js +20 -20
  68. package/build/lib/src/transformers/IdlTransformer.js +14 -0
  69. package/build/lib/src/transformers/NullTransformer.js +16 -3
  70. package/build/lib/src/transformers/OnSerializeTransformer.js +14 -0
  71. package/build/lib/src/transformers/ThrowsTransformer.d.ts +3 -0
  72. package/build/lib/src/transformers/ThrowsTransformer.js +51 -0
  73. package/build/lib/src/transformers/transformUtils.d.ts +7 -0
  74. package/build/lib/src/transformers/transformUtils.js +55 -0
  75. package/build/lib/src/util.d.ts +0 -15
  76. package/build/lib/src/util.js +2 -73
  77. package/package.json +11 -5
@@ -12,12 +12,8 @@
12
12
  * See the License for the specific language governing permissions and
13
13
  * limitations under the License.
14
14
  */
15
- import * as path from 'path';
16
- import * as fs from "fs";
17
- import * as idl from "./idl";
18
- import { Language } from './Language';
19
- import { getModuleFor, isInExternalModule } from './peer-generation/modules';
20
- import { getInternalClassName, getInternalClassQualifiedName } from './peer-generation/Materialized';
15
+ import * as path from 'node:path';
16
+ import * as fs from "node:fs";
21
17
  export function arrayAt(array, index) {
22
18
  return array ? array[index >= 0 ? index : array.length + index] : undefined;
23
19
  }
@@ -125,22 +121,6 @@ export function camelCaseToUpperSnakeCase(input) {
125
121
  export function camelCaseToLowerSnakeCase(input) {
126
122
  return camelCaseToUpperSnakeCase(input).toLowerCase();
127
123
  }
128
- export function snakeToLowCamelNode(node) {
129
- if (!node.fileName) {
130
- throw new Error("Invalid Convert");
131
- }
132
- const classname = path.basename(node.fileName).replace(".idl", "").replace(".d.ts", "");
133
- return classname
134
- .split('_')
135
- .filter(word => word !== '')
136
- .map((word, index) => {
137
- if (index === 0) {
138
- return word.toLowerCase();
139
- }
140
- return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();
141
- })
142
- .join('');
143
- }
144
124
  export function renameDtsToPeer(fileName, language, withFileExtension = true) {
145
125
  const renamed = "Ark"
146
126
  .concat(snakeCaseToCamelCase(fileName))
@@ -302,9 +282,6 @@ export class Lazy {
302
282
  export function lazy(factory) {
303
283
  return new Lazy(factory);
304
284
  }
305
- export function isInNamespace(node) {
306
- return idl.getNamespacesPathFor(node).length > 0;
307
- }
308
285
  export function rightmostIndexOf(array, predicate) {
309
286
  let result = -1;
310
287
  array.forEach((it, index) => {
@@ -325,57 +302,9 @@ export function sorted(array, key) {
325
302
  return array.map(it => it)
326
303
  .sort((a, b) => comparator.compare(a[key], b[key]));
327
304
  }
328
- export function mapLibraryName(node, lang, mapping, prefix = "@") {
329
- var _a, _b;
330
- const module = getModuleFor(node);
331
- if (module.tsLikePackage !== undefined) {
332
- return `^` + module.tsLikePackage;
333
- }
334
- const packageName = idl.getPackageName(node);
335
- return `^` + ((_b = (_a = mapping === null || mapping === void 0 ? void 0 : mapping.get(packageName)) === null || _a === void 0 ? void 0 : _a.get(lang.name)) !== null && _b !== void 0 ? _b : `${prefix}${packageName}`);
336
- }
337
- function getExtractorClass(target, toPtr = true) {
338
- if (isInExternalModule(target)) {
339
- const qualifiedName = idl.getQualifiedName(target, "namespace.name");
340
- const name = qualifiedName.split(`.`).map(it => capitalize(it)).join("");
341
- return name;
342
- }
343
- return toPtr ? "Peer" : "";
344
- }
345
- export function getExtractor(target, lang, toPtr = true) {
346
- const receiver = isInExternalModule(target)
347
- ? `extractors`
348
- : toPtr
349
- ? undefined // TBD: update to MaterializedBase when import is updated
350
- : (lang == Language.CJ || lang == Language.KOTLIN)
351
- ? getInternalClassName(target.name)
352
- : getInternalClassQualifiedName(target, "namespace.name", lang);
353
- const extractorClass = getExtractorClass(target, toPtr);
354
- const method = toPtr ? `to${extractorClass}Ptr` : `from${extractorClass}Ptr`;
355
- return { receiver, method };
356
- }
357
- export function getInitializerFeature(lang) {
358
- // TBD: update code for KT and CJ
359
- return "initializers";
360
- }
361
- export function getInitializerDefaultValue(decl, lang) {
362
- const parent = decl.parent;
363
- const fqn = parent && idl.isProperty(decl)
364
- ? `${idl.getFQName(parent)}NS.${decl.name}`
365
- : idl.getFQName(decl);
366
- // TBD: update code for KT and CJ
367
- return `${getInitializerFeature(lang)}.${fqn}`;
368
- }
369
305
  export function getSyntheticTypesFileName() {
370
306
  return "synthetic_types";
371
307
  }
372
- export function getTransformer(library, from, to) {
373
- const convertor = library.createTypeNameConvertor(Language.CPP);
374
- return {
375
- receiver: "extractors",
376
- method: `transform_${convertor.convert(from)}_to_${convertor.convert(to)}`
377
- };
378
- }
379
308
  export function removePoints(s) {
380
309
  return s.split(/[\.\-]/g).join('_');
381
310
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlizer/core",
3
- "version": "2.1.10-arktscgen-7",
3
+ "version": "2.1.10-arktscgen-10",
4
4
  "description": "",
5
5
  "types": "build/lib/src/index.d.ts",
6
6
  "exports": {
@@ -31,16 +31,22 @@
31
31
  },
32
32
  "keywords": [],
33
33
  "devDependencies": {
34
- "@koalaui/harness": "1.7.6+devel",
34
+ "@koalaui/harness": "1.7.13",
35
35
  "@koalaui/ets-tsc": "4.9.5-r5",
36
36
  "mocha": "^9.2.2",
37
37
  "ts-node": "^10.9.2",
38
38
  "typescript": "4.9.5",
39
- "@types/node": "^18.0.0",
40
- "rimraf": "^6.0.1"
39
+ "@types/node": "^18.19.127",
40
+ "rimraf": "^6.0.1",
41
+ "@rollup/plugin-commonjs": "^26.0.1",
42
+ "@rollup/plugin-node-resolve": "^15.3.0",
43
+ "@rollup/plugin-replace": "^5.0.7",
44
+ "@rollup/plugin-terser": "^0.4.4",
45
+ "@rollup/plugin-typescript": "^11.1.6",
46
+ "rollup": "^4.24.4"
41
47
  },
42
48
  "scripts": {
43
- "test": "mocha",
49
+ "test": "rollup -c && mocha",
44
50
  "clean": "rimraf -g build",
45
51
  "compile:self": "tsc -b .",
46
52
  "compile": "npm run compile:self"