@modular-circuit/transpiler 0.0.89 → 0.0.90

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.
@@ -1 +1 @@
1
- {"root":["../src/index.ts","../src/builder/index.ts","../src/builder/graph_to_kicad/do_convert_graph_to_kicad_project.ts","../src/builder/graph_to_kicad/index.ts","../src/converter/index.ts","../src/converter/graph_to_netlist/context.ts","../src/converter/graph_to_netlist/graph_converter.ts","../src/converter/graph_to_netlist/index.ts","../src/converter/kicad_sexpr/index.ts","../src/converter/kicad_sexpr/eeschema/index.ts","../src/converter/kicad_sexpr/eeschema/printer.ts","../src/converter/kicad_sexpr/eeschema/drawing_sheet/index.ts","../src/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.ts","../src/converter/kicad_sexpr/pcb/index.ts","../src/converter/link_to_netlist/context.ts","../src/converter/link_to_netlist/converter.ts","../src/converter/link_to_netlist/index.ts","../src/converter/link_to_netlist/links/converter_base.ts","../src/converter/link_to_netlist/links/converters.ts","../src/converter/link_to_netlist/links/index.ts","../src/converter/netlist_to_kicad/context.ts","../src/converter/netlist_to_kicad/index.ts","../src/converter/netlist_to_kicad/layout.ts","../src/converter/netlist_to_kicad/netlist_converter.ts","../src/converter/netlist_to_kicad/place_blocks.ts","../src/kicad/index.ts","../src/kicad/constraints/index.ts","../src/kicad/label/index.ts","../src/kicad/label/net_label.ts","../src/kicad/label/sheet_pin.ts","../src/kicad/project/index.ts","../src/kicad/project/kicad_prl.ts","../src/kicad/project/kicad_pro.ts","../src/kicad/project/kicad_project_achieve.ts","../src/kicad/project/wildcards_and_files_ext.ts","../src/kicad/sheet/index.ts","../src/kicad/sheet/sheet.ts","../src/kicad/symbols/index.ts","../src/kicad/symbols/symbol_utils.ts","../src/kicad/symbols/lib_symbol/gnd.ts","../src/kicad/symbols/lib_symbol/index.ts","../src/kicad/symbols/lib_symbol/vcc.ts","../src/kicad/symbols/sch_symbol/gnd.ts","../src/kicad/symbols/sch_symbol/index.ts","../src/kicad/symbols/sch_symbol/vcc.ts","../src/kicad/wire/gen_wire.ts","../src/utils/collect_sub_sheets.ts","../src/utils/constraints.ts","../src/utils/filter_null_undefined.ts","../src/utils/index.ts","../src/utils/string_formatter.ts"],"version":"5.8.3"}
1
+ {"root":["../src/index.ts","../src/builder/index.ts","../src/builder/graph_to_kicad/do_convert_graph_to_kicad_project.ts","../src/builder/graph_to_kicad/index.ts","../src/converter/index.ts","../src/converter/graph_to_netlist/context.ts","../src/converter/graph_to_netlist/graph_converter.ts","../src/converter/graph_to_netlist/index.ts","../src/converter/kicad_sexpr/index.ts","../src/converter/kicad_sexpr/eeschema/index.ts","../src/converter/kicad_sexpr/eeschema/printer.ts","../src/converter/kicad_sexpr/eeschema/drawing_sheet/index.ts","../src/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.ts","../src/converter/kicad_sexpr/pcb/index.ts","../src/converter/link_to_netlist/context.ts","../src/converter/link_to_netlist/converter.ts","../src/converter/link_to_netlist/index.ts","../src/converter/link_to_netlist/links/converter_base.ts","../src/converter/link_to_netlist/links/converters.ts","../src/converter/link_to_netlist/links/index.ts","../src/converter/netlist_to_kicad/context.ts","../src/converter/netlist_to_kicad/index.ts","../src/converter/netlist_to_kicad/layout.ts","../src/converter/netlist_to_kicad/netlist_converter.ts","../src/converter/netlist_to_kicad/place_blocks.ts","../src/kicad/index.ts","../src/kicad/constraints/index.ts","../src/kicad/label/index.ts","../src/kicad/label/net_label.ts","../src/kicad/label/sheet_pin.ts","../src/kicad/project/index.ts","../src/kicad/project/kicad_prl.ts","../src/kicad/project/kicad_pro.ts","../src/kicad/project/kicad_project_achieve.ts","../src/kicad/project/wildcards_and_files_ext.ts","../src/kicad/sheet/index.ts","../src/kicad/sheet/sheet.ts","../src/kicad/symbols/index.ts","../src/kicad/symbols/symbol_utils.ts","../src/kicad/symbols/lib_symbol/gnd.ts","../src/kicad/symbols/lib_symbol/index.ts","../src/kicad/symbols/lib_symbol/vcc.ts","../src/kicad/symbols/sch_symbol/gnd.ts","../src/kicad/symbols/sch_symbol/index.ts","../src/kicad/symbols/sch_symbol/vcc.ts","../src/kicad/wire/gen_wire.ts","../src/utils/collect_sub_sheets.ts","../src/utils/collect_sub_sheets_by_id.ts","../src/utils/constraints.ts","../src/utils/filter_null_undefined.ts","../src/utils/index.ts","../src/utils/string_formatter.ts"],"version":"5.8.3"}
@@ -0,0 +1,7 @@
1
+ import type { ModuleCircuit, ModuleResolver } from '@modular-circuit/ir';
2
+ export declare function collect_sub_sheets_by_id(module_ids: string[], module_resolver: ModuleResolver): Promise<{
3
+ sheets: Record<string, string>;
4
+ module_main_sheet: Record<string, string>;
5
+ modules: Record<string, ModuleCircuit>;
6
+ }>;
7
+ //# sourceMappingURL=collect_sub_sheets_by_id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collect_sub_sheets_by_id.d.ts","sourceRoot":"","sources":["../../src/utils/collect_sub_sheets_by_id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AASxE,wBAAsB,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,cAAc;;;;GA+CnG"}
@@ -0,0 +1,150 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
12
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ var __values = (this && this.__values) || function(o) {
38
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
39
+ if (m) return m.call(o);
40
+ if (o && typeof o.length === "number") return {
41
+ next: function () {
42
+ if (o && i >= o.length) o = void 0;
43
+ return { value: o && o[i++], done: !o };
44
+ }
45
+ };
46
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
47
+ };
48
+ var __read = (this && this.__read) || function (o, n) {
49
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
50
+ if (!m) return o;
51
+ var i = m.call(o), r, ar = [], e;
52
+ try {
53
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
54
+ }
55
+ catch (error) { e = { error: error }; }
56
+ finally {
57
+ try {
58
+ if (r && !r.done && (m = i["return"])) m.call(i);
59
+ }
60
+ finally { if (e) throw e.error; }
61
+ }
62
+ return ar;
63
+ };
64
+ import { fmt_module_name, KICAD_SHC_FILE_EXT, parse_module_name, remove_filename_path_prefix, unzipFile, } from '@modular-circuit/utils';
65
+ export function collect_sub_sheets_by_id(module_ids, module_resolver) {
66
+ return __awaiter(this, void 0, void 0, function () {
67
+ var sheets, module_main_sheet, modules, module_ids_1, module_ids_1_1, id, zip_achieve_url, module_circuit, k, zip_achieve, files, _a, _b, _c, name, content, fileName, e_1_1;
68
+ var e_1, _d, e_2, _e;
69
+ return __generator(this, function (_f) {
70
+ switch (_f.label) {
71
+ case 0:
72
+ sheets = {};
73
+ module_main_sheet = {};
74
+ modules = {};
75
+ _f.label = 1;
76
+ case 1:
77
+ _f.trys.push([1, 9, 10, 11]);
78
+ module_ids_1 = __values(module_ids), module_ids_1_1 = module_ids_1.next();
79
+ _f.label = 2;
80
+ case 2:
81
+ if (!!module_ids_1_1.done) return [3 /*break*/, 8];
82
+ id = module_ids_1_1.value;
83
+ return [4 /*yield*/, module_resolver.get_module_achieve_by_id(id)];
84
+ case 3:
85
+ zip_achieve_url = _f.sent();
86
+ return [4 /*yield*/, module_resolver.get_module_circuit_by_id(id)];
87
+ case 4:
88
+ module_circuit = _f.sent();
89
+ if (!module_circuit) {
90
+ console.error("Module ".concat(id, " not found"));
91
+ return [3 /*break*/, 7];
92
+ }
93
+ if (!zip_achieve_url || !module_circuit) {
94
+ console.error("Module ".concat(module_circuit.author, "/").concat(module_circuit.name, " not found"));
95
+ return [3 /*break*/, 7];
96
+ }
97
+ if (!module_circuit.main) {
98
+ console.error("Missing main entry in module".concat(module_circuit.author, "/").concat(module_circuit.name));
99
+ return [3 /*break*/, 7];
100
+ }
101
+ k = fmt_module_name(module_circuit);
102
+ module_main_sheet[k] = module_circuit.main;
103
+ modules[k] = module_circuit;
104
+ return [4 /*yield*/, fetch(zip_achieve_url).then(function (res) { return res.arrayBuffer(); })];
105
+ case 5:
106
+ zip_achieve = _f.sent();
107
+ return [4 /*yield*/, unzipFile(zip_achieve)];
108
+ case 6:
109
+ files = _f.sent();
110
+ try {
111
+ for (_a = (e_2 = void 0, __values(Object.entries(files))), _b = _a.next(); !_b.done; _b = _a.next()) {
112
+ _c = __read(_b.value, 2), name = _c[0], content = _c[1];
113
+ if (name.endsWith(KICAD_SHC_FILE_EXT)) {
114
+ fileName = remove_filename_path_prefix(name);
115
+ // FIXME : Should auto rename the sheets and remapping them
116
+ if (fileName in sheets) {
117
+ console.error("Duplicate sheet name: ".concat(fileName));
118
+ continue;
119
+ }
120
+ sheets[fileName] = content;
121
+ }
122
+ }
123
+ }
124
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
125
+ finally {
126
+ try {
127
+ if (_b && !_b.done && (_e = _a.return)) _e.call(_a);
128
+ }
129
+ finally { if (e_2) throw e_2.error; }
130
+ }
131
+ _f.label = 7;
132
+ case 7:
133
+ module_ids_1_1 = module_ids_1.next();
134
+ return [3 /*break*/, 2];
135
+ case 8: return [3 /*break*/, 11];
136
+ case 9:
137
+ e_1_1 = _f.sent();
138
+ e_1 = { error: e_1_1 };
139
+ return [3 /*break*/, 11];
140
+ case 10:
141
+ try {
142
+ if (module_ids_1_1 && !module_ids_1_1.done && (_d = module_ids_1.return)) _d.call(module_ids_1);
143
+ }
144
+ finally { if (e_1) throw e_1.error; }
145
+ return [7 /*endfinally*/];
146
+ case 11: return [2 /*return*/, { sheets: sheets, module_main_sheet: module_main_sheet, modules: modules }];
147
+ }
148
+ });
149
+ });
150
+ }
@@ -2,4 +2,5 @@ export * from './collect_sub_sheets';
2
2
  export * from './constraints';
3
3
  export * from './filter_null_undefined';
4
4
  export * from './string_formatter';
5
+ export * from './collect_sub_sheets_by_id';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,eAAe,CAAA;AAC7B,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,eAAe,CAAA;AAC7B,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA"}
@@ -2,3 +2,4 @@ export * from './collect_sub_sheets';
2
2
  export * from './constraints';
3
3
  export * from './filter_null_undefined';
4
4
  export * from './string_formatter';
5
+ export * from './collect_sub_sheets_by_id';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@modular-circuit/transpiler",
3
- "version": "0.0.89",
3
+ "version": "0.0.90",
4
4
  "description": "Intermediate representation of the modular circuit",
5
5
  "main": "./build/index.js",
6
6
  "files": [
@@ -29,7 +29,7 @@
29
29
  "@modular-circuit/electronics-model": "0.0.54",
30
30
  "@modular-circuit/perc": "0.0.61",
31
31
  "@modular-circuit/utils": "0.0.40",
32
- "@modular-circuit/ir": "0.0.61"
32
+ "@modular-circuit/ir": "0.0.62"
33
33
  },
34
34
  "scripts": {
35
35
  "clean": "rimraf build",