@modular-circuit/transpiler 0.0.109 → 0.1.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.
- package/dist/index.d.mts +480 -0
- package/dist/index.d.ts +480 -0
- package/dist/index.js +3039 -0
- package/dist/index.mjs +2936 -0
- package/package.json +15 -12
- package/build/builder/graph_to_kicad/do_convert_graph_to_kicad_project.d.ts +0 -3
- package/build/builder/graph_to_kicad/do_convert_graph_to_kicad_project.d.ts.map +0 -1
- package/build/builder/graph_to_kicad/do_convert_graph_to_kicad_project.js +0 -115
- package/build/builder/graph_to_kicad/index.d.ts +0 -3
- package/build/builder/graph_to_kicad/index.d.ts.map +0 -1
- package/build/builder/graph_to_kicad/index.js +0 -63
- package/build/builder/index.d.ts +0 -2
- package/build/builder/index.d.ts.map +0 -1
- package/build/builder/index.js +0 -1
- package/build/converter/graph_to_netlist/context.d.ts +0 -13
- package/build/converter/graph_to_netlist/context.d.ts.map +0 -1
- package/build/converter/graph_to_netlist/context.js +0 -0
- package/build/converter/graph_to_netlist/graph_converter.d.ts +0 -8
- package/build/converter/graph_to_netlist/graph_converter.d.ts.map +0 -1
- package/build/converter/graph_to_netlist/graph_converter.js +0 -192
- package/build/converter/graph_to_netlist/index.d.ts +0 -3
- package/build/converter/graph_to_netlist/index.d.ts.map +0 -1
- package/build/converter/graph_to_netlist/index.js +0 -2
- package/build/converter/index.d.ts +0 -4
- package/build/converter/index.d.ts.map +0 -1
- package/build/converter/index.js +0 -3
- package/build/converter/kicad_sexpr/eeschema/drawing_sheet/index.d.ts +0 -2
- package/build/converter/kicad_sexpr/eeschema/drawing_sheet/index.d.ts.map +0 -1
- package/build/converter/kicad_sexpr/eeschema/drawing_sheet/index.js +0 -5
- package/build/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.d.ts +0 -2
- package/build/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.d.ts.map +0 -1
- package/build/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.js +0 -1
- package/build/converter/kicad_sexpr/eeschema/index.d.ts +0 -3
- package/build/converter/kicad_sexpr/eeschema/index.d.ts.map +0 -1
- package/build/converter/kicad_sexpr/eeschema/index.js +0 -2
- package/build/converter/kicad_sexpr/eeschema/printer.d.ts +0 -38
- package/build/converter/kicad_sexpr/eeschema/printer.d.ts.map +0 -1
- package/build/converter/kicad_sexpr/eeschema/printer.js +0 -296
- package/build/converter/kicad_sexpr/index.d.ts +0 -3
- package/build/converter/kicad_sexpr/index.d.ts.map +0 -1
- package/build/converter/kicad_sexpr/index.js +0 -2
- package/build/converter/kicad_sexpr/pcb/index.d.ts +0 -2
- package/build/converter/kicad_sexpr/pcb/index.d.ts.map +0 -1
- package/build/converter/kicad_sexpr/pcb/index.js +0 -1
- package/build/converter/link_to_netlist/context.d.ts +0 -12
- package/build/converter/link_to_netlist/context.d.ts.map +0 -1
- package/build/converter/link_to_netlist/context.js +0 -0
- package/build/converter/link_to_netlist/converter.d.ts +0 -13
- package/build/converter/link_to_netlist/converter.d.ts.map +0 -1
- package/build/converter/link_to_netlist/converter.js +0 -154
- package/build/converter/link_to_netlist/index.d.ts +0 -3
- package/build/converter/link_to_netlist/index.d.ts.map +0 -1
- package/build/converter/link_to_netlist/index.js +0 -2
- package/build/converter/link_to_netlist/links/converter_base.d.ts +0 -30
- package/build/converter/link_to_netlist/links/converter_base.d.ts.map +0 -1
- package/build/converter/link_to_netlist/links/converter_base.js +0 -156
- package/build/converter/link_to_netlist/links/converters.d.ts +0 -51
- package/build/converter/link_to_netlist/links/converters.d.ts.map +0 -1
- package/build/converter/link_to_netlist/links/converters.js +0 -1190
- package/build/converter/link_to_netlist/links/index.d.ts +0 -3
- package/build/converter/link_to_netlist/links/index.d.ts.map +0 -1
- package/build/converter/link_to_netlist/links/index.js +0 -2
- package/build/converter/netlist_to_kicad/context.d.ts +0 -10
- package/build/converter/netlist_to_kicad/context.d.ts.map +0 -1
- package/build/converter/netlist_to_kicad/context.js +0 -0
- package/build/converter/netlist_to_kicad/index.d.ts +0 -4
- package/build/converter/netlist_to_kicad/index.d.ts.map +0 -1
- package/build/converter/netlist_to_kicad/index.js +0 -3
- package/build/converter/netlist_to_kicad/layout.d.ts +0 -38
- package/build/converter/netlist_to_kicad/layout.d.ts.map +0 -1
- package/build/converter/netlist_to_kicad/layout.js +0 -194
- package/build/converter/netlist_to_kicad/netlist_converter.d.ts +0 -28
- package/build/converter/netlist_to_kicad/netlist_converter.d.ts.map +0 -1
- package/build/converter/netlist_to_kicad/netlist_converter.js +0 -398
- package/build/converter/netlist_to_kicad/place_blocks.d.ts +0 -6
- package/build/converter/netlist_to_kicad/place_blocks.d.ts.map +0 -1
- package/build/converter/netlist_to_kicad/place_blocks.js +0 -59
- package/build/index.d.ts +0 -6
- package/build/index.d.ts.map +0 -1
- package/build/index.js +0 -5
- package/build/kicad/constraints/index.d.ts +0 -5
- package/build/kicad/constraints/index.d.ts.map +0 -1
- package/build/kicad/constraints/index.js +0 -4
- package/build/kicad/index.d.ts +0 -1
- package/build/kicad/index.d.ts.map +0 -1
- package/build/kicad/index.js +0 -1
- package/build/kicad/label/index.d.ts +0 -3
- package/build/kicad/label/index.d.ts.map +0 -1
- package/build/kicad/label/index.js +0 -2
- package/build/kicad/label/net_label.d.ts +0 -4
- package/build/kicad/label/net_label.d.ts.map +0 -1
- package/build/kicad/label/net_label.js +0 -14
- package/build/kicad/label/sheet_pin.d.ts +0 -5
- package/build/kicad/label/sheet_pin.d.ts.map +0 -1
- package/build/kicad/label/sheet_pin.js +0 -25
- package/build/kicad/project/index.d.ts +0 -3
- package/build/kicad/project/index.d.ts.map +0 -1
- package/build/kicad/project/index.js +0 -2
- package/build/kicad/project/kicad_prl.d.ts +0 -48
- package/build/kicad/project/kicad_prl.d.ts.map +0 -1
- package/build/kicad/project/kicad_prl.js +0 -50
- package/build/kicad/project/kicad_pro.d.ts +0 -176
- package/build/kicad/project/kicad_pro.d.ts.map +0 -1
- package/build/kicad/project/kicad_pro.js +0 -224
- package/build/kicad/project/kicad_project_archive.d.ts +0 -237
- package/build/kicad/project/kicad_project_archive.d.ts.map +0 -1
- package/build/kicad/project/kicad_project_archive.js +0 -53
- package/build/kicad/project/wildcards_and_files_ext.d.ts +0 -62
- package/build/kicad/project/wildcards_and_files_ext.d.ts.map +0 -1
- package/build/kicad/project/wildcards_and_files_ext.js +0 -61
- package/build/kicad/sheet/index.d.ts +0 -2
- package/build/kicad/sheet/index.d.ts.map +0 -1
- package/build/kicad/sheet/index.js +0 -1
- package/build/kicad/sheet/sheet.d.ts +0 -8
- package/build/kicad/sheet/sheet.d.ts.map +0 -1
- package/build/kicad/sheet/sheet.js +0 -44
- package/build/kicad/symbols/index.d.ts +0 -3
- package/build/kicad/symbols/index.d.ts.map +0 -1
- package/build/kicad/symbols/index.js +0 -2
- package/build/kicad/symbols/lib_symbol/gnd.d.ts +0 -3
- package/build/kicad/symbols/lib_symbol/gnd.d.ts.map +0 -1
- package/build/kicad/symbols/lib_symbol/gnd.js +0 -121
- package/build/kicad/symbols/lib_symbol/index.d.ts +0 -3
- package/build/kicad/symbols/lib_symbol/index.d.ts.map +0 -1
- package/build/kicad/symbols/lib_symbol/index.js +0 -2
- package/build/kicad/symbols/lib_symbol/vcc.d.ts +0 -3
- package/build/kicad/symbols/lib_symbol/vcc.d.ts.map +0 -1
- package/build/kicad/symbols/lib_symbol/vcc.js +0 -119
- package/build/kicad/symbols/sch_symbol/gnd.d.ts +0 -4
- package/build/kicad/symbols/sch_symbol/gnd.d.ts.map +0 -1
- package/build/kicad/symbols/sch_symbol/gnd.js +0 -66
- package/build/kicad/symbols/sch_symbol/index.d.ts +0 -3
- package/build/kicad/symbols/sch_symbol/index.d.ts.map +0 -1
- package/build/kicad/symbols/sch_symbol/index.js +0 -2
- package/build/kicad/symbols/sch_symbol/vcc.d.ts +0 -4
- package/build/kicad/symbols/sch_symbol/vcc.d.ts.map +0 -1
- package/build/kicad/symbols/sch_symbol/vcc.js +0 -66
- package/build/kicad/symbols/symbol_utils.d.ts +0 -2
- package/build/kicad/symbols/symbol_utils.d.ts.map +0 -1
- package/build/kicad/symbols/symbol_utils.js +0 -1
- package/build/kicad/wire/gen_wire.d.ts +0 -4
- package/build/kicad/wire/gen_wire.d.ts.map +0 -1
- package/build/kicad/wire/gen_wire.js +0 -12
- package/build/tsconfig.build.tsbuildinfo +0 -1
- package/build/utils/collect_sub_sheets.d.ts +0 -7
- package/build/utils/collect_sub_sheets.d.ts.map +0 -1
- package/build/utils/collect_sub_sheets.js +0 -156
- package/build/utils/collect_sub_sheets_by_id.d.ts +0 -7
- package/build/utils/collect_sub_sheets_by_id.d.ts.map +0 -1
- package/build/utils/collect_sub_sheets_by_id.js +0 -150
- package/build/utils/constraints.d.ts +0 -11
- package/build/utils/constraints.d.ts.map +0 -1
- package/build/utils/constraints.js +0 -17
- package/build/utils/filter_null_undefined.d.ts +0 -2
- package/build/utils/filter_null_undefined.d.ts.map +0 -1
- package/build/utils/filter_null_undefined.js +0 -39
- package/build/utils/index.d.ts +0 -6
- package/build/utils/index.d.ts.map +0 -1
- package/build/utils/index.js +0 -5
- package/build/utils/string_formatter.d.ts +0 -14
- package/build/utils/string_formatter.d.ts.map +0 -1
- package/build/utils/string_formatter.js +0 -35
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/converter/link_to_netlist/links/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { NL_NetList } from "@modular-circuit/electronics-model";
|
|
2
|
-
export interface NetlistProject {
|
|
3
|
-
author: string;
|
|
4
|
-
name: string;
|
|
5
|
-
}
|
|
6
|
-
export interface NetlistToKicadContext {
|
|
7
|
-
project: NetlistProject;
|
|
8
|
-
netlist: NL_NetList;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=context.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/converter/netlist_to_kicad/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,UAAU,CAAC;CACrB"}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/converter/netlist_to_kicad/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,qBAAqB,CAAA"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import type { BOX2, VECTOR2 } from '@modular-circuit/electronics-model';
|
|
2
|
-
export declare const GRID_SIZE: number;
|
|
3
|
-
export declare const FONT_SIZE: number;
|
|
4
|
-
export declare function get_power_pos(pwr_number: number): {
|
|
5
|
-
x: number;
|
|
6
|
-
y: number;
|
|
7
|
-
};
|
|
8
|
-
export declare const BLOCK_PIN_GAP: number;
|
|
9
|
-
export declare const BLOCK_PIN_TB_MARGIN: number;
|
|
10
|
-
export declare const WIRE_PADDING: number;
|
|
11
|
-
export interface LabelPadding {
|
|
12
|
-
l_side: number;
|
|
13
|
-
r_side: number;
|
|
14
|
-
}
|
|
15
|
-
export interface BlockLabelPadding {
|
|
16
|
-
internal: LabelPadding;
|
|
17
|
-
outer: LabelPadding;
|
|
18
|
-
total_pin_num: number;
|
|
19
|
-
}
|
|
20
|
-
export interface BoxGeometry {
|
|
21
|
-
box: BOX2;
|
|
22
|
-
bounding_box: BOX2;
|
|
23
|
-
}
|
|
24
|
-
export interface BlockSize {
|
|
25
|
-
size: VECTOR2;
|
|
26
|
-
bounding_size: VECTOR2;
|
|
27
|
-
factor: BlockLabelPadding;
|
|
28
|
-
l_margin: number;
|
|
29
|
-
r_margin: number;
|
|
30
|
-
}
|
|
31
|
-
export declare class Layout {
|
|
32
|
-
private block_geo;
|
|
33
|
-
private elk;
|
|
34
|
-
add_block(id: string, factor: BlockLabelPadding): void;
|
|
35
|
-
finalize(): Promise<Record<string, BOX2>>;
|
|
36
|
-
private calc_block_size;
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=layout.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/converter/netlist_to_kicad/layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAA;AAMvE,eAAO,MAAM,SAAS,QAAiB,CAAA;AAEvC,eAAO,MAAM,SAAS,QAAY,CAAA;AAgBlC,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM;;;EAE/C;AAED,eAAO,MAAM,aAAa,QAAgB,CAAA;AAE1C,eAAO,MAAM,mBAAmB,QAAgB,CAAA;AAKhD,eAAO,MAAM,YAAY,QAAY,CAAA;AAIrC,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,YAAY,CAAA;IACtB,KAAK,EAAE,YAAY,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,IAAI,CAAA;IACT,YAAY,EAAE,IAAI,CAAA;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,CAAA;IACb,aAAa,EAAE,OAAO,CAAA;IACtB,MAAM,EAAE,iBAAiB,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,SAAS,CAAgC;IAEjD,OAAO,CAAC,GAAG,CAAY;IAEhB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB;IAIzC,QAAQ;IAmDrB,OAAO,CAAC,eAAe;CA+BxB"}
|
|
@@ -1,194 +0,0 @@
|
|
|
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 ELK, {} from 'elkjs/lib/elk.bundled.js';
|
|
65
|
-
import { PAPER_SIZE } from '../../utils/constraints';
|
|
66
|
-
var MIL_TO_MM = 0.0254;
|
|
67
|
-
export var GRID_SIZE = 50 * MIL_TO_MM;
|
|
68
|
-
export var FONT_SIZE = GRID_SIZE;
|
|
69
|
-
var POWER_START_Y = 30 * GRID_SIZE;
|
|
70
|
-
var POWER_START_X = (PAPER_SIZE.A4.height - 30) * GRID_SIZE;
|
|
71
|
-
var POWER_Y_STEP = 16 * GRID_SIZE;
|
|
72
|
-
var BLOCK_V_SPACE = 8 * GRID_SIZE;
|
|
73
|
-
var BLOCK_H_SPACE = 14 * GRID_SIZE - BLOCK_V_SPACE;
|
|
74
|
-
var PADDING = 10 * GRID_SIZE;
|
|
75
|
-
var PADDING_TOP = 21 * GRID_SIZE;
|
|
76
|
-
export function get_power_pos(pwr_number) {
|
|
77
|
-
return { x: POWER_START_X, y: POWER_START_Y + POWER_Y_STEP * pwr_number };
|
|
78
|
-
}
|
|
79
|
-
export var BLOCK_PIN_GAP = 4 * GRID_SIZE;
|
|
80
|
-
export var BLOCK_PIN_TB_MARGIN = 2 * GRID_SIZE;
|
|
81
|
-
var MIN_BLOCK_WIDTH = 8 * GRID_SIZE;
|
|
82
|
-
var INTERNAL_LABEL_MARGIN = 8 * FONT_SIZE;
|
|
83
|
-
export var WIRE_PADDING = GRID_SIZE;
|
|
84
|
-
var SIDE_MARGIN = WIRE_PADDING * 2 + BLOCK_H_SPACE / 2;
|
|
85
|
-
var Layout = /** @class */ (function () {
|
|
86
|
-
function Layout() {
|
|
87
|
-
this.block_geo = {};
|
|
88
|
-
this.elk = new ELK();
|
|
89
|
-
}
|
|
90
|
-
Layout.prototype.add_block = function (id, factor) {
|
|
91
|
-
this.block_geo[id] = this.calc_block_size(factor);
|
|
92
|
-
};
|
|
93
|
-
Layout.prototype.finalize = function () {
|
|
94
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
95
|
-
var bbox, graph, _a, _b, _c, id, geo, bounding_size, res, _d, _e, child, geo, pos;
|
|
96
|
-
var e_1, _f, e_2, _g;
|
|
97
|
-
var _h, _j;
|
|
98
|
-
return __generator(this, function (_k) {
|
|
99
|
-
switch (_k.label) {
|
|
100
|
-
case 0:
|
|
101
|
-
bbox = {};
|
|
102
|
-
graph = {
|
|
103
|
-
id: 'root',
|
|
104
|
-
layoutOptions: {
|
|
105
|
-
'elk.algorithm': 'rectpacking',
|
|
106
|
-
'elk.contentAlignment': 'V_TOP | H_LEFT',
|
|
107
|
-
'elk.rectpacking.orderBySize': 'true',
|
|
108
|
-
'elk.nodeSize.fixedGraphSize': 'true',
|
|
109
|
-
'org.eclipse.elk.rectpacking.packing.compaction.rowHeightReevaluation': 'true',
|
|
110
|
-
'elk.rectpacking.widthApproximation.optimizationGoal': 'ASPECT_RATIO_DRIVEN',
|
|
111
|
-
'org.eclipse.elk.rectpacking.packing.compaction.iterations': '5',
|
|
112
|
-
'org.eclipse.elk.aspectRatio': '1.414',
|
|
113
|
-
'elk.spacing.nodeNode': "".concat(BLOCK_V_SPACE),
|
|
114
|
-
'elk.padding': "[top=".concat(PADDING_TOP, ",left=").concat(PADDING, ",bottom=").concat(PADDING, ",right=").concat(PADDING, "]"),
|
|
115
|
-
'elk.childAreaWidth': "".concat(PAPER_SIZE.A4.height),
|
|
116
|
-
'elk.childAreaHeight': "".concat(PAPER_SIZE.A4.width),
|
|
117
|
-
},
|
|
118
|
-
children: [],
|
|
119
|
-
edges: [],
|
|
120
|
-
};
|
|
121
|
-
try {
|
|
122
|
-
for (_a = __values(Object.entries(this.block_geo)), _b = _a.next(); !_b.done; _b = _a.next()) {
|
|
123
|
-
_c = __read(_b.value, 2), id = _c[0], geo = _c[1];
|
|
124
|
-
bounding_size = geo.bounding_size;
|
|
125
|
-
graph.children.push({
|
|
126
|
-
id: id,
|
|
127
|
-
width: bounding_size.x,
|
|
128
|
-
height: bounding_size.y,
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
133
|
-
finally {
|
|
134
|
-
try {
|
|
135
|
-
if (_b && !_b.done && (_f = _a.return)) _f.call(_a);
|
|
136
|
-
}
|
|
137
|
-
finally { if (e_1) throw e_1.error; }
|
|
138
|
-
}
|
|
139
|
-
return [4 /*yield*/, this.elk.layout(graph)];
|
|
140
|
-
case 1:
|
|
141
|
-
res = _k.sent();
|
|
142
|
-
if (res.children) {
|
|
143
|
-
try {
|
|
144
|
-
for (_d = __values(res.children), _e = _d.next(); !_e.done; _e = _d.next()) {
|
|
145
|
-
child = _e.value;
|
|
146
|
-
geo = this.block_geo[child.id];
|
|
147
|
-
pos = {
|
|
148
|
-
x: ((_h = child.x) !== null && _h !== void 0 ? _h : 0) + geo.l_margin,
|
|
149
|
-
y: (_j = child.y) !== null && _j !== void 0 ? _j : 0,
|
|
150
|
-
};
|
|
151
|
-
bbox[child.id] = {
|
|
152
|
-
pos: pos,
|
|
153
|
-
size: geo.size,
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
158
|
-
finally {
|
|
159
|
-
try {
|
|
160
|
-
if (_e && !_e.done && (_g = _d.return)) _g.call(_d);
|
|
161
|
-
}
|
|
162
|
-
finally { if (e_2) throw e_2.error; }
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
return [2 /*return*/, bbox];
|
|
166
|
-
}
|
|
167
|
-
});
|
|
168
|
-
});
|
|
169
|
-
};
|
|
170
|
-
Layout.prototype.calc_block_size = function (factor) {
|
|
171
|
-
var block_height = Math.floor(factor.total_pin_num / 2) * BLOCK_PIN_GAP + 2 * BLOCK_PIN_TB_MARGIN;
|
|
172
|
-
var block_width = Math.max(MIN_BLOCK_WIDTH, factor.internal.l_side + factor.internal.r_side + INTERNAL_LABEL_MARGIN);
|
|
173
|
-
var l_margin = factor.outer.l_side + SIDE_MARGIN;
|
|
174
|
-
var r_margin = factor.outer.r_side + SIDE_MARGIN;
|
|
175
|
-
var block_bounding_width = block_width + l_margin + r_margin;
|
|
176
|
-
var size = {
|
|
177
|
-
x: block_width,
|
|
178
|
-
y: block_height,
|
|
179
|
-
};
|
|
180
|
-
var bounding_size = {
|
|
181
|
-
x: block_bounding_width,
|
|
182
|
-
y: block_height,
|
|
183
|
-
};
|
|
184
|
-
return {
|
|
185
|
-
size: size,
|
|
186
|
-
bounding_size: bounding_size,
|
|
187
|
-
l_margin: l_margin,
|
|
188
|
-
r_margin: r_margin,
|
|
189
|
-
factor: factor,
|
|
190
|
-
};
|
|
191
|
-
};
|
|
192
|
-
return Layout;
|
|
193
|
-
}());
|
|
194
|
-
export { Layout };
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { type SCHEMATIC } from '@modular-circuit/ir';
|
|
2
|
-
import type { NetlistToKicadContext } from './context';
|
|
3
|
-
export declare class NetListConverter {
|
|
4
|
-
private ctx;
|
|
5
|
-
private block_calc;
|
|
6
|
-
private sheet_pwr_count;
|
|
7
|
-
private net_name;
|
|
8
|
-
private wires;
|
|
9
|
-
constructor(ctx: NetlistToKicadContext);
|
|
10
|
-
pin_is_connected(id: string): boolean;
|
|
11
|
-
get_pin_net_name(id: string): string;
|
|
12
|
-
convert_to_kicad(): Promise<Record<string, SCHEMATIC>>;
|
|
13
|
-
/**
|
|
14
|
-
* Convert a schematic to a kicad schematic
|
|
15
|
-
* @param name The name of the graph ,also the file name of the converted schematic
|
|
16
|
-
* @param schematic For net label , it will be reflected by the net name,
|
|
17
|
-
* no need to handle them before the other types of label are introduced, e.g. global or hierarchical
|
|
18
|
-
* @returns
|
|
19
|
-
*/
|
|
20
|
-
private convert_sch;
|
|
21
|
-
private convert_hierarchical_label;
|
|
22
|
-
private convert_pwr_symbol;
|
|
23
|
-
private get_sheet_symbol_lb_padding;
|
|
24
|
-
private convert_sheet_symbol;
|
|
25
|
-
private convert_sheet_pin;
|
|
26
|
-
private convert_net_label;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=netlist_converter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"netlist_converter.d.ts","sourceRoot":"","sources":["../../../src/converter/netlist_to_kicad/netlist_converter.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,SAAS,EAGf,MAAM,qBAAqB,CAAA;AAM5B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAmBtD,qBAAa,gBAAgB;IASR,OAAO,CAAC,GAAG;IAR9B,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,eAAe,CAAI;IAE3B,OAAO,CAAC,QAAQ,CAA6B;IAE7C,OAAO,CAAC,KAAK,CAAiB;gBAEH,GAAG,EAAE,qBAAqB;IAQrD,gBAAgB,CAAC,EAAE,EAAE,MAAM;IAI3B,gBAAgB,CAAC,EAAE,EAAE,MAAM;IAId,gBAAgB;IAY7B;;;;;;OAMG;YACW,WAAW;IAwEzB,OAAO,CAAC,0BAA0B;IAMlC,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,2BAA2B;IA+CnC,OAAO,CAAC,oBAAoB;IAsC5B,OAAO,CAAC,iBAAiB;IAgCzB,OAAO,CAAC,iBAAiB;CAQ1B"}
|