@modular-circuit/transpiler 0.0.108 → 0.1.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.
Files changed (162) hide show
  1. package/dist/index.d.mts +479 -0
  2. package/dist/index.d.ts +479 -0
  3. package/dist/index.js +3031 -0
  4. package/dist/index.mjs +2927 -0
  5. package/package.json +15 -12
  6. package/build/builder/graph_to_kicad/do_convert_graph_to_kicad_project.d.ts +0 -3
  7. package/build/builder/graph_to_kicad/do_convert_graph_to_kicad_project.d.ts.map +0 -1
  8. package/build/builder/graph_to_kicad/do_convert_graph_to_kicad_project.js +0 -115
  9. package/build/builder/graph_to_kicad/index.d.ts +0 -3
  10. package/build/builder/graph_to_kicad/index.d.ts.map +0 -1
  11. package/build/builder/graph_to_kicad/index.js +0 -63
  12. package/build/builder/index.d.ts +0 -2
  13. package/build/builder/index.d.ts.map +0 -1
  14. package/build/builder/index.js +0 -1
  15. package/build/converter/graph_to_netlist/context.d.ts +0 -13
  16. package/build/converter/graph_to_netlist/context.d.ts.map +0 -1
  17. package/build/converter/graph_to_netlist/context.js +0 -0
  18. package/build/converter/graph_to_netlist/graph_converter.d.ts +0 -8
  19. package/build/converter/graph_to_netlist/graph_converter.d.ts.map +0 -1
  20. package/build/converter/graph_to_netlist/graph_converter.js +0 -192
  21. package/build/converter/graph_to_netlist/index.d.ts +0 -3
  22. package/build/converter/graph_to_netlist/index.d.ts.map +0 -1
  23. package/build/converter/graph_to_netlist/index.js +0 -2
  24. package/build/converter/index.d.ts +0 -4
  25. package/build/converter/index.d.ts.map +0 -1
  26. package/build/converter/index.js +0 -3
  27. package/build/converter/kicad_sexpr/eeschema/drawing_sheet/index.d.ts +0 -2
  28. package/build/converter/kicad_sexpr/eeschema/drawing_sheet/index.d.ts.map +0 -1
  29. package/build/converter/kicad_sexpr/eeschema/drawing_sheet/index.js +0 -5
  30. package/build/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.d.ts +0 -2
  31. package/build/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.d.ts.map +0 -1
  32. package/build/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.js +0 -1
  33. package/build/converter/kicad_sexpr/eeschema/index.d.ts +0 -3
  34. package/build/converter/kicad_sexpr/eeschema/index.d.ts.map +0 -1
  35. package/build/converter/kicad_sexpr/eeschema/index.js +0 -2
  36. package/build/converter/kicad_sexpr/eeschema/printer.d.ts +0 -38
  37. package/build/converter/kicad_sexpr/eeschema/printer.d.ts.map +0 -1
  38. package/build/converter/kicad_sexpr/eeschema/printer.js +0 -296
  39. package/build/converter/kicad_sexpr/index.d.ts +0 -3
  40. package/build/converter/kicad_sexpr/index.d.ts.map +0 -1
  41. package/build/converter/kicad_sexpr/index.js +0 -2
  42. package/build/converter/kicad_sexpr/pcb/index.d.ts +0 -2
  43. package/build/converter/kicad_sexpr/pcb/index.d.ts.map +0 -1
  44. package/build/converter/kicad_sexpr/pcb/index.js +0 -1
  45. package/build/converter/link_to_netlist/context.d.ts +0 -12
  46. package/build/converter/link_to_netlist/context.d.ts.map +0 -1
  47. package/build/converter/link_to_netlist/context.js +0 -0
  48. package/build/converter/link_to_netlist/converter.d.ts +0 -13
  49. package/build/converter/link_to_netlist/converter.d.ts.map +0 -1
  50. package/build/converter/link_to_netlist/converter.js +0 -154
  51. package/build/converter/link_to_netlist/index.d.ts +0 -3
  52. package/build/converter/link_to_netlist/index.d.ts.map +0 -1
  53. package/build/converter/link_to_netlist/index.js +0 -2
  54. package/build/converter/link_to_netlist/links/converter_base.d.ts +0 -30
  55. package/build/converter/link_to_netlist/links/converter_base.d.ts.map +0 -1
  56. package/build/converter/link_to_netlist/links/converter_base.js +0 -156
  57. package/build/converter/link_to_netlist/links/converters.d.ts +0 -51
  58. package/build/converter/link_to_netlist/links/converters.d.ts.map +0 -1
  59. package/build/converter/link_to_netlist/links/converters.js +0 -1190
  60. package/build/converter/link_to_netlist/links/index.d.ts +0 -3
  61. package/build/converter/link_to_netlist/links/index.d.ts.map +0 -1
  62. package/build/converter/link_to_netlist/links/index.js +0 -2
  63. package/build/converter/netlist_to_kicad/context.d.ts +0 -10
  64. package/build/converter/netlist_to_kicad/context.d.ts.map +0 -1
  65. package/build/converter/netlist_to_kicad/context.js +0 -0
  66. package/build/converter/netlist_to_kicad/index.d.ts +0 -4
  67. package/build/converter/netlist_to_kicad/index.d.ts.map +0 -1
  68. package/build/converter/netlist_to_kicad/index.js +0 -3
  69. package/build/converter/netlist_to_kicad/layout.d.ts +0 -36
  70. package/build/converter/netlist_to_kicad/layout.d.ts.map +0 -1
  71. package/build/converter/netlist_to_kicad/layout.js +0 -200
  72. package/build/converter/netlist_to_kicad/netlist_converter.d.ts +0 -28
  73. package/build/converter/netlist_to_kicad/netlist_converter.d.ts.map +0 -1
  74. package/build/converter/netlist_to_kicad/netlist_converter.js +0 -398
  75. package/build/converter/netlist_to_kicad/place_blocks.d.ts +0 -6
  76. package/build/converter/netlist_to_kicad/place_blocks.d.ts.map +0 -1
  77. package/build/converter/netlist_to_kicad/place_blocks.js +0 -59
  78. package/build/index.d.ts +0 -6
  79. package/build/index.d.ts.map +0 -1
  80. package/build/index.js +0 -5
  81. package/build/kicad/constraints/index.d.ts +0 -5
  82. package/build/kicad/constraints/index.d.ts.map +0 -1
  83. package/build/kicad/constraints/index.js +0 -4
  84. package/build/kicad/index.d.ts +0 -1
  85. package/build/kicad/index.d.ts.map +0 -1
  86. package/build/kicad/index.js +0 -1
  87. package/build/kicad/label/index.d.ts +0 -3
  88. package/build/kicad/label/index.d.ts.map +0 -1
  89. package/build/kicad/label/index.js +0 -2
  90. package/build/kicad/label/net_label.d.ts +0 -4
  91. package/build/kicad/label/net_label.d.ts.map +0 -1
  92. package/build/kicad/label/net_label.js +0 -14
  93. package/build/kicad/label/sheet_pin.d.ts +0 -5
  94. package/build/kicad/label/sheet_pin.d.ts.map +0 -1
  95. package/build/kicad/label/sheet_pin.js +0 -25
  96. package/build/kicad/project/index.d.ts +0 -3
  97. package/build/kicad/project/index.d.ts.map +0 -1
  98. package/build/kicad/project/index.js +0 -2
  99. package/build/kicad/project/kicad_prl.d.ts +0 -48
  100. package/build/kicad/project/kicad_prl.d.ts.map +0 -1
  101. package/build/kicad/project/kicad_prl.js +0 -50
  102. package/build/kicad/project/kicad_pro.d.ts +0 -176
  103. package/build/kicad/project/kicad_pro.d.ts.map +0 -1
  104. package/build/kicad/project/kicad_pro.js +0 -224
  105. package/build/kicad/project/kicad_project_archive.d.ts +0 -237
  106. package/build/kicad/project/kicad_project_archive.d.ts.map +0 -1
  107. package/build/kicad/project/kicad_project_archive.js +0 -53
  108. package/build/kicad/project/wildcards_and_files_ext.d.ts +0 -62
  109. package/build/kicad/project/wildcards_and_files_ext.d.ts.map +0 -1
  110. package/build/kicad/project/wildcards_and_files_ext.js +0 -61
  111. package/build/kicad/sheet/index.d.ts +0 -2
  112. package/build/kicad/sheet/index.d.ts.map +0 -1
  113. package/build/kicad/sheet/index.js +0 -1
  114. package/build/kicad/sheet/sheet.d.ts +0 -8
  115. package/build/kicad/sheet/sheet.d.ts.map +0 -1
  116. package/build/kicad/sheet/sheet.js +0 -44
  117. package/build/kicad/symbols/index.d.ts +0 -3
  118. package/build/kicad/symbols/index.d.ts.map +0 -1
  119. package/build/kicad/symbols/index.js +0 -2
  120. package/build/kicad/symbols/lib_symbol/gnd.d.ts +0 -3
  121. package/build/kicad/symbols/lib_symbol/gnd.d.ts.map +0 -1
  122. package/build/kicad/symbols/lib_symbol/gnd.js +0 -121
  123. package/build/kicad/symbols/lib_symbol/index.d.ts +0 -3
  124. package/build/kicad/symbols/lib_symbol/index.d.ts.map +0 -1
  125. package/build/kicad/symbols/lib_symbol/index.js +0 -2
  126. package/build/kicad/symbols/lib_symbol/vcc.d.ts +0 -3
  127. package/build/kicad/symbols/lib_symbol/vcc.d.ts.map +0 -1
  128. package/build/kicad/symbols/lib_symbol/vcc.js +0 -119
  129. package/build/kicad/symbols/sch_symbol/gnd.d.ts +0 -4
  130. package/build/kicad/symbols/sch_symbol/gnd.d.ts.map +0 -1
  131. package/build/kicad/symbols/sch_symbol/gnd.js +0 -66
  132. package/build/kicad/symbols/sch_symbol/index.d.ts +0 -3
  133. package/build/kicad/symbols/sch_symbol/index.d.ts.map +0 -1
  134. package/build/kicad/symbols/sch_symbol/index.js +0 -2
  135. package/build/kicad/symbols/sch_symbol/vcc.d.ts +0 -4
  136. package/build/kicad/symbols/sch_symbol/vcc.d.ts.map +0 -1
  137. package/build/kicad/symbols/sch_symbol/vcc.js +0 -66
  138. package/build/kicad/symbols/symbol_utils.d.ts +0 -2
  139. package/build/kicad/symbols/symbol_utils.d.ts.map +0 -1
  140. package/build/kicad/symbols/symbol_utils.js +0 -1
  141. package/build/kicad/wire/gen_wire.d.ts +0 -4
  142. package/build/kicad/wire/gen_wire.d.ts.map +0 -1
  143. package/build/kicad/wire/gen_wire.js +0 -12
  144. package/build/tsconfig.build.tsbuildinfo +0 -1
  145. package/build/utils/collect_sub_sheets.d.ts +0 -7
  146. package/build/utils/collect_sub_sheets.d.ts.map +0 -1
  147. package/build/utils/collect_sub_sheets.js +0 -156
  148. package/build/utils/collect_sub_sheets_by_id.d.ts +0 -7
  149. package/build/utils/collect_sub_sheets_by_id.d.ts.map +0 -1
  150. package/build/utils/collect_sub_sheets_by_id.js +0 -150
  151. package/build/utils/constraints.d.ts +0 -11
  152. package/build/utils/constraints.d.ts.map +0 -1
  153. package/build/utils/constraints.js +0 -17
  154. package/build/utils/filter_null_undefined.d.ts +0 -2
  155. package/build/utils/filter_null_undefined.d.ts.map +0 -1
  156. package/build/utils/filter_null_undefined.js +0 -39
  157. package/build/utils/index.d.ts +0 -6
  158. package/build/utils/index.d.ts.map +0 -1
  159. package/build/utils/index.js +0 -5
  160. package/build/utils/string_formatter.d.ts +0 -14
  161. package/build/utils/string_formatter.d.ts.map +0 -1
  162. package/build/utils/string_formatter.js +0 -35
@@ -1,398 +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 { PowerShape } from '@modular-circuit/electronics-model';
65
- import { MODULAR_CIRCUIT_SCH_EXT, } from '@modular-circuit/ir';
66
- import { replaceAll } from '@modular-circuit/utils';
67
- import { gen_hierarchical_label, gen_net_label, gen_sheet_pin } from '../../kicad/label';
68
- import { gen_sch_sheet } from '../../kicad/sheet';
69
- import { gen_lib_gnd, gen_lib_vcc, gen_sch_gnd, gen_sch_vcc } from '../../kicad/symbols';
70
- import { GENERATOR_NAME, GENERATOR_VERSION, SCH_VERSION } from '../../utils/constraints';
71
- import { BLOCK_PIN_GAP, BLOCK_PIN_TB_MARGIN, FONT_SIZE, Layout, WIRE_PADDING, get_power_pos, } from './layout';
72
- import { gen_wire } from '../../kicad/wire/gen_wire';
73
- var H_LABEL_FACTOR = {
74
- internal: { l_side: 0, r_side: 0 },
75
- outer: { l_side: 0, r_side: 0 },
76
- total_pin_num: 1,
77
- };
78
- var NetListConverter = /** @class */ (function () {
79
- function NetListConverter(ctx) {
80
- var e_1, _a, e_2, _b;
81
- this.ctx = ctx;
82
- this.sheet_pwr_count = 0;
83
- this.net_name = {};
84
- this.wires = [];
85
- try {
86
- for (var _c = __values(this.ctx.netlist.nets), _d = _c.next(); !_d.done; _d = _c.next()) {
87
- var net = _d.value;
88
- try {
89
- for (var _e = (e_2 = void 0, __values(net.pins)), _f = _e.next(); !_f.done; _f = _e.next()) {
90
- var it_1 = _f.value;
91
- this.net_name[it_1] = net.name;
92
- }
93
- }
94
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
95
- finally {
96
- try {
97
- if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
98
- }
99
- finally { if (e_2) throw e_2.error; }
100
- }
101
- }
102
- }
103
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
104
- finally {
105
- try {
106
- if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
107
- }
108
- finally { if (e_1) throw e_1.error; }
109
- }
110
- }
111
- NetListConverter.prototype.pin_is_connected = function (id) {
112
- return this.net_name[id] !== undefined;
113
- };
114
- NetListConverter.prototype.get_pin_net_name = function (id) {
115
- return this.net_name[id];
116
- };
117
- NetListConverter.prototype.convert_to_kicad = function () {
118
- return __awaiter(this, void 0, void 0, function () {
119
- var all_sch, _a, _b, _c, k, v, _d, _e, e_3_1;
120
- var e_3, _f;
121
- return __generator(this, function (_g) {
122
- switch (_g.label) {
123
- case 0:
124
- all_sch = {};
125
- _g.label = 1;
126
- case 1:
127
- _g.trys.push([1, 6, 7, 8]);
128
- _a = __values(Object.entries(this.ctx.netlist.schematics)), _b = _a.next();
129
- _g.label = 2;
130
- case 2:
131
- if (!!_b.done) return [3 /*break*/, 5];
132
- _c = __read(_b.value, 2), k = _c[0], v = _c[1];
133
- this.sheet_pwr_count = 0;
134
- this.block_calc = new Layout();
135
- _d = all_sch;
136
- _e = k;
137
- return [4 /*yield*/, this.convert_sch(k, v)];
138
- case 3:
139
- _d[_e] = _g.sent();
140
- _g.label = 4;
141
- case 4:
142
- _b = _a.next();
143
- return [3 /*break*/, 2];
144
- case 5: return [3 /*break*/, 8];
145
- case 6:
146
- e_3_1 = _g.sent();
147
- e_3 = { error: e_3_1 };
148
- return [3 /*break*/, 8];
149
- case 7:
150
- try {
151
- if (_b && !_b.done && (_f = _a.return)) _f.call(_a);
152
- }
153
- finally { if (e_3) throw e_3.error; }
154
- return [7 /*endfinally*/];
155
- case 8: return [2 /*return*/, all_sch];
156
- }
157
- });
158
- });
159
- };
160
- /**
161
- * Convert a schematic to a kicad schematic
162
- * @param name The name of the graph ,also the file name of the converted schematic
163
- * @param schematic For net label , it will be reflected by the net name,
164
- * no need to handle them before the other types of label are introduced, e.g. global or hierarchical
165
- * @returns
166
- */
167
- NetListConverter.prototype.convert_sch = function (name, schematic) {
168
- return __awaiter(this, void 0, void 0, function () {
169
- var powers, sch, _a, _b, it_2, sheet_names_count, ordered_sheets, ordered_sheets_1, ordered_sheets_1_1, it_3, sheet_padding, _c, _d, it_4, res, ordered_sheets_2, ordered_sheets_2_1, it_5, _e, _f, it_6;
170
- var e_4, _g, e_5, _h, e_6, _j, e_7, _k, e_8, _l;
171
- var _m, _o;
172
- return __generator(this, function (_p) {
173
- switch (_p.label) {
174
- case 0:
175
- powers = new Set();
176
- this.wires = [];
177
- sch = {
178
- version: SCH_VERSION,
179
- generator: GENERATOR_NAME,
180
- generator_version: GENERATOR_VERSION,
181
- paper: {
182
- size: 'A4',
183
- },
184
- title_block: {
185
- title: name.replace(".".concat(MODULAR_CIRCUIT_SCH_EXT), ''),
186
- date: replaceAll(new Date().toISOString().slice(0, 10), '-', '/'),
187
- rev: '1.0',
188
- comment: {
189
- 1: 'https://www.eda.cn',
190
- 2: this.ctx.project.author,
191
- 3: this.ctx.project.name,
192
- },
193
- },
194
- lib_symbols: {
195
- symbols: [],
196
- },
197
- uuid: schematic.uuid,
198
- symbols: [],
199
- labels: [],
200
- sheets: [],
201
- };
202
- try {
203
- for (_a = __values(schematic.powers), _b = _a.next(); !_b.done; _b = _a.next()) {
204
- it_2 = _b.value;
205
- if (!powers.has(it_2.value)) {
206
- switch (it_2.shape) {
207
- case PowerShape.VCC:
208
- (_m = sch.lib_symbols) === null || _m === void 0 ? void 0 : _m.symbols.push(gen_lib_vcc(it_2.value));
209
- break;
210
- case PowerShape.GND:
211
- (_o = sch.lib_symbols) === null || _o === void 0 ? void 0 : _o.symbols.push(gen_lib_gnd(it_2.value));
212
- break;
213
- }
214
- powers.add(it_2.value);
215
- this.convert_pwr_symbol(it_2, get_power_pos(this.sheet_pwr_count++), sch);
216
- }
217
- }
218
- }
219
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
220
- finally {
221
- try {
222
- if (_b && !_b.done && (_g = _a.return)) _g.call(_a);
223
- }
224
- finally { if (e_4) throw e_4.error; }
225
- }
226
- sheet_names_count = new Map();
227
- ordered_sheets = schematic.sheet_symbols.sort(function (a, b) {
228
- return b.pins.length - a.pins.length;
229
- });
230
- try {
231
- for (ordered_sheets_1 = __values(ordered_sheets), ordered_sheets_1_1 = ordered_sheets_1.next(); !ordered_sheets_1_1.done; ordered_sheets_1_1 = ordered_sheets_1.next()) {
232
- it_3 = ordered_sheets_1_1.value;
233
- sheet_padding = this.get_sheet_symbol_lb_padding(it_3);
234
- this.block_calc.add_block(it_3.uuid, sheet_padding);
235
- }
236
- }
237
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
238
- finally {
239
- try {
240
- if (ordered_sheets_1_1 && !ordered_sheets_1_1.done && (_h = ordered_sheets_1.return)) _h.call(ordered_sheets_1);
241
- }
242
- finally { if (e_5) throw e_5.error; }
243
- }
244
- try {
245
- for (_c = __values(schematic.hiera_labels), _d = _c.next(); !_d.done; _d = _c.next()) {
246
- it_4 = _d.value;
247
- this.block_calc.add_block(it_4.uuid, H_LABEL_FACTOR);
248
- }
249
- }
250
- catch (e_6_1) { e_6 = { error: e_6_1 }; }
251
- finally {
252
- try {
253
- if (_d && !_d.done && (_j = _c.return)) _j.call(_c);
254
- }
255
- finally { if (e_6) throw e_6.error; }
256
- }
257
- return [4 /*yield*/, this.block_calc.finalize()];
258
- case 1:
259
- res = _p.sent();
260
- try {
261
- for (ordered_sheets_2 = __values(ordered_sheets), ordered_sheets_2_1 = ordered_sheets_2.next(); !ordered_sheets_2_1.done; ordered_sheets_2_1 = ordered_sheets_2.next()) {
262
- it_5 = ordered_sheets_2_1.value;
263
- this.convert_sheet_symbol(it_5, res[it_5.uuid], sch, sheet_names_count);
264
- }
265
- }
266
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
267
- finally {
268
- try {
269
- if (ordered_sheets_2_1 && !ordered_sheets_2_1.done && (_k = ordered_sheets_2.return)) _k.call(ordered_sheets_2);
270
- }
271
- finally { if (e_7) throw e_7.error; }
272
- }
273
- try {
274
- for (_e = __values(schematic.hiera_labels), _f = _e.next(); !_f.done; _f = _e.next()) {
275
- it_6 = _f.value;
276
- this.convert_hierarchical_label(it_6, res[it_6.uuid], sch);
277
- }
278
- }
279
- catch (e_8_1) { e_8 = { error: e_8_1 }; }
280
- finally {
281
- try {
282
- if (_f && !_f.done && (_l = _e.return)) _l.call(_e);
283
- }
284
- finally { if (e_8) throw e_8.error; }
285
- }
286
- sch.wires = this.wires;
287
- return [2 /*return*/, sch];
288
- }
289
- });
290
- });
291
- };
292
- NetListConverter.prototype.convert_hierarchical_label = function (pin, bbox, sch) {
293
- var _a;
294
- (_a = sch.labels) === null || _a === void 0 ? void 0 : _a.push(gen_hierarchical_label(pin.name, bbox.pos, { horizontal: 'left', vertical: 'bottom' }, 0, pin.shape));
295
- };
296
- NetListConverter.prototype.convert_pwr_symbol = function (pwr, at, sch) {
297
- // NOTE : The power uuid is used as the uuid of its pin ,cause all power symbols have only one pin
298
- var pin_id = pwr.uuid;
299
- var sch_pwr_symbol = pwr.shape === PowerShape.VCC
300
- ? gen_sch_vcc(pwr.value, this.sheet_pwr_count, pin_id, at)
301
- : gen_sch_gnd(pwr.value, this.sheet_pwr_count, pin_id, at);
302
- sch.symbols.push(sch_pwr_symbol);
303
- this.convert_net_label(pwr.value, at, sch);
304
- };
305
- NetListConverter.prototype.get_sheet_symbol_lb_padding = function (sheet_sym) {
306
- var factor = {
307
- internal: {
308
- l_side: 0,
309
- r_side: 0,
310
- },
311
- outer: {
312
- l_side: 0,
313
- r_side: 0,
314
- },
315
- total_pin_num: sheet_sym.pins.length,
316
- };
317
- var port_count = sheet_sym.pins.length;
318
- var h_count = Math.ceil(port_count / 2);
319
- for (var i = 0; i < port_count; i++) {
320
- var is_left = i < h_count;
321
- var cur_pin = sheet_sym.pins[i];
322
- if (is_left) {
323
- factor.internal.l_side = Math.max(factor.internal.l_side, cur_pin.name.length);
324
- }
325
- else {
326
- factor.internal.r_side = Math.max(factor.internal.r_side, cur_pin.name.length);
327
- }
328
- if (this.pin_is_connected(cur_pin.uuid)) {
329
- var net_name = this.get_pin_net_name(cur_pin.uuid);
330
- if (is_left) {
331
- factor.outer.l_side = Math.max(factor.outer.l_side, net_name.length);
332
- }
333
- else {
334
- factor.outer.r_side = Math.max(factor.outer.r_side, net_name.length);
335
- }
336
- }
337
- }
338
- return {
339
- internal: {
340
- l_side: factor.internal.l_side * FONT_SIZE,
341
- r_side: factor.internal.r_side * FONT_SIZE,
342
- },
343
- outer: {
344
- l_side: factor.outer.l_side * FONT_SIZE,
345
- r_side: factor.outer.r_side * FONT_SIZE,
346
- },
347
- total_pin_num: sheet_sym.pins.length,
348
- };
349
- };
350
- NetListConverter.prototype.convert_sheet_symbol = function (sheet_sym, rect, sch, sheet_names_count) {
351
- var port_count = sheet_sym.pins.length;
352
- var pins = [];
353
- var h_count = Math.floor(port_count / 2);
354
- for (var i = 0; i < port_count; i++) {
355
- var is_left = i < h_count;
356
- var x = is_left ? rect.pos.x : rect.pos.x + rect.size.x;
357
- var y = rect.pos.y + BLOCK_PIN_GAP * Math.abs(i < h_count ? i : i - h_count) + BLOCK_PIN_TB_MARGIN;
358
- var justify = is_left ? 'left' : 'right';
359
- var rotation = is_left ? 180 : 0;
360
- pins.push(this.convert_sheet_pin(sheet_sym.pins[i], { x: x, y: y }, sch, justify, rotation, is_left));
361
- }
362
- var sheet_name = sheet_sym.sheet_name;
363
- if (sheet_names_count.has(sheet_name)) {
364
- var count = sheet_names_count.get(sheet_name);
365
- sheet_name += "_".concat(count);
366
- sheet_names_count.set(sheet_name, count + 1);
367
- }
368
- else {
369
- sheet_names_count.set(sheet_name, 1);
370
- }
371
- sch.sheets.push(gen_sch_sheet(rect, pins, {
372
- Sheetfile: sheet_sym.sheet_file_name,
373
- Sheetname: sheet_name,
374
- }));
375
- };
376
- NetListConverter.prototype.convert_sheet_pin = function (pin, pin_pos, sch, horizontal, rotation, is_left) {
377
- if (this.pin_is_connected(pin.uuid)) {
378
- var nt_name = this.get_pin_net_name(pin.uuid);
379
- this.convert_net_label(nt_name, {
380
- x: pin_pos.x + (is_left ? -WIRE_PADDING : WIRE_PADDING),
381
- y: pin_pos.y,
382
- }, sch, horizontal === 'left' ? 'right' : 'left');
383
- var lb_txt_len = nt_name.length * FONT_SIZE;
384
- var wire_padding = lb_txt_len + 2 * WIRE_PADDING;
385
- this.wires.push(gen_wire(pin_pos, {
386
- x: pin_pos.x + (is_left ? -wire_padding : wire_padding),
387
- y: pin_pos.y,
388
- }));
389
- }
390
- return gen_sheet_pin(pin.name, pin_pos, { horizontal: horizontal, vertical: 'bottom' }, rotation, pin.shape);
391
- };
392
- NetListConverter.prototype.convert_net_label = function (net_name, pin_pos, sch, horizontal) {
393
- if (horizontal === void 0) { horizontal = 'right'; }
394
- sch.labels.push(gen_net_label(net_name, pin_pos, { horizontal: horizontal, vertical: 'bottom' }));
395
- };
396
- return NetListConverter;
397
- }());
398
- export { NetListConverter };
@@ -1,6 +0,0 @@
1
- export type VECTOR2 = {
2
- x: number;
3
- y: number;
4
- };
5
- export declare const place_blocks: (boxes: Record<string, VECTOR2>, margin: number, maxRowWidth: number) => Record<string, VECTOR2>;
6
- //# sourceMappingURL=place_blocks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"place_blocks.d.ts","sourceRoot":"","sources":["../../../src/converter/netlist_to_kicad/place_blocks.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9C,eAAO,MAAM,YAAY,GACvB,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,QAAQ,MAAM,EACd,aAAa,MAAM,KAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAyBxB,CAAA"}
@@ -1,59 +0,0 @@
1
- var __values = (this && this.__values) || function(o) {
2
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
3
- if (m) return m.call(o);
4
- if (o && typeof o.length === "number") return {
5
- next: function () {
6
- if (o && i >= o.length) o = void 0;
7
- return { value: o && o[i++], done: !o };
8
- }
9
- };
10
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
11
- };
12
- var __read = (this && this.__read) || function (o, n) {
13
- var m = typeof Symbol === "function" && o[Symbol.iterator];
14
- if (!m) return o;
15
- var i = m.call(o), r, ar = [], e;
16
- try {
17
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
18
- }
19
- catch (error) { e = { error: error }; }
20
- finally {
21
- try {
22
- if (r && !r.done && (m = i["return"])) m.call(i);
23
- }
24
- finally { if (e) throw e.error; }
25
- }
26
- return ar;
27
- };
28
- export var place_blocks = function (boxes, margin, maxRowWidth // constraint on row width
29
- ) {
30
- var e_1, _a;
31
- var placed = {};
32
- var cursorX = margin;
33
- var cursorY = margin;
34
- var rowHeight = 0;
35
- try {
36
- for (var _b = __values(Object.entries(boxes)), _c = _b.next(); !_c.done; _c = _b.next()) {
37
- var _d = __read(_c.value, 2), id = _d[0], size = _d[1];
38
- var w = size.x;
39
- var h = size.y;
40
- // wrap if exceeding row width
41
- if (cursorX + w + margin > maxRowWidth) {
42
- cursorX = margin;
43
- cursorY += rowHeight + margin;
44
- rowHeight = 0;
45
- }
46
- placed[id] = { x: cursorX, y: cursorY };
47
- cursorX += w + margin;
48
- rowHeight = Math.max(rowHeight, h);
49
- }
50
- }
51
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
52
- finally {
53
- try {
54
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
55
- }
56
- finally { if (e_1) throw e_1.error; }
57
- }
58
- return placed;
59
- };
package/build/index.d.ts DELETED
@@ -1,6 +0,0 @@
1
- export * from './converter';
2
- export * from './builder';
3
- export * from './kicad/project';
4
- export * from './utils';
5
- export * from './kicad/symbols';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,iBAAiB,CAAA"}
package/build/index.js DELETED
@@ -1,5 +0,0 @@
1
- export * from './converter';
2
- export * from './builder';
3
- export * from './kicad/project';
4
- export * from './utils';
5
- export * from './kicad/symbols';
@@ -1,5 +0,0 @@
1
- export declare const DEFAULT_FONT_SIZE: {
2
- x: number;
3
- y: number;
4
- };
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kicad/constraints/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;CAG7B,CAAA"}
@@ -1,4 +0,0 @@
1
- export var DEFAULT_FONT_SIZE = {
2
- x: 1.27,
3
- y: 1.27,
4
- };
@@ -1 +0,0 @@
1
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/kicad/index.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- "use strict";
@@ -1,3 +0,0 @@
1
- export * from './net_label';
2
- export * from './sheet_pin';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kicad/label/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './net_label';
2
- export * from './sheet_pin';
@@ -1,4 +0,0 @@
1
- import type { VECTOR2 } from '@modular-circuit/electronics-model';
2
- import type { Justify, NetLabel } from '@modular-circuit/ir';
3
- export declare const gen_net_label: (name: string, at: VECTOR2, justify: Justify) => NetLabel;
4
- //# sourceMappingURL=net_label.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"net_label.d.ts","sourceRoot":"","sources":["../../../src/kicad/label/net_label.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAA;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAI5D,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,EAAE,IAAI,OAAO,EAAE,SAAS,OAAO,KAAG,QAW1E,CAAA"}
@@ -1,14 +0,0 @@
1
- import { gen_uuid } from '@modular-circuit/utils';
2
- import { DEFAULT_FONT_SIZE } from '../constraints';
3
- export var gen_net_label = function (name, at, justify) { return ({
4
- label_type: 'label',
5
- text: name,
6
- fields: [],
7
- fields_autoplaced: true,
8
- at: { position: at, rotation: 0 },
9
- effects: {
10
- font: { size: DEFAULT_FONT_SIZE },
11
- justify: justify,
12
- },
13
- uuid: gen_uuid(),
14
- }); };
@@ -1,5 +0,0 @@
1
- import type { LabelShapes, VECTOR2 } from '@modular-circuit/electronics-model';
2
- import type { Justify, SCH_SHEET_PIN } from '@modular-circuit/ir';
3
- export declare const gen_sheet_pin: (text: string, at: VECTOR2, justify: Justify, rotation: number, shape: LabelShapes) => SCH_SHEET_PIN;
4
- export declare const gen_hierarchical_label: (text: string, at: VECTOR2, justify: Justify, rotation: number, shape: LabelShapes) => SCH_SHEET_PIN;
5
- //# sourceMappingURL=sheet_pin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sheet_pin.d.ts","sourceRoot":"","sources":["../../../src/kicad/label/sheet_pin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAA;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAqBjE,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,EACZ,IAAI,OAAO,EACX,SAAS,OAAO,EAChB,UAAU,MAAM,EAChB,OAAO,WAAW,KACjB,aAGD,CAAA;AAEF,eAAO,MAAM,sBAAsB,SAV3B,MAAM,MACR,OAAO,WACF,OAAO,YACN,MAAM,SACT,WAAW,KACjB,aAKgD,CAAA"}
@@ -1,25 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { gen_uuid } from '@modular-circuit/utils';
13
- import { DEFAULT_FONT_SIZE } from '../constraints';
14
- var gen_base_hierarchical_label = function (text, at, justify, rotation, shape) { return ({
15
- shape: shape,
16
- effects: {
17
- font: { size: DEFAULT_FONT_SIZE },
18
- justify: justify,
19
- },
20
- text: text,
21
- at: { position: at, rotation: rotation },
22
- uuid: gen_uuid(),
23
- }); };
24
- export var gen_sheet_pin = function (text, at, justify, rotation, shape) { return (__assign({ label_type: 'hierarchical_label' }, gen_base_hierarchical_label(text, at, justify, rotation, shape))); };
25
- export var gen_hierarchical_label = gen_sheet_pin;
@@ -1,3 +0,0 @@
1
- export * from './wildcards_and_files_ext';
2
- export * from './kicad_project_archive';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kicad/project/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './wildcards_and_files_ext';
2
- export * from './kicad_project_archive';
@@ -1,48 +0,0 @@
1
- export declare const kicad_prl: (prj_name: string) => {
2
- board: {
3
- active_layer: number;
4
- active_layer_preset: string;
5
- auto_track_width: boolean;
6
- hidden_netclasses: never[];
7
- hidden_nets: never[];
8
- high_contrast_mode: number;
9
- net_color_mode: number;
10
- opacity: {
11
- images: number;
12
- pads: number;
13
- tracks: number;
14
- vias: number;
15
- zones: number;
16
- };
17
- selection_filter: {
18
- dimensions: boolean;
19
- footprints: boolean;
20
- graphics: boolean;
21
- keepouts: boolean;
22
- lockedItems: boolean;
23
- otherItems: boolean;
24
- pads: boolean;
25
- text: boolean;
26
- tracks: boolean;
27
- vias: boolean;
28
- zones: boolean;
29
- };
30
- visible_items: number[];
31
- visible_layers: string;
32
- zone_display_mode: number;
33
- };
34
- git: {
35
- repo_password: string;
36
- repo_type: string;
37
- repo_username: string;
38
- ssh_key: string;
39
- };
40
- meta: {
41
- filename: string;
42
- version: number;
43
- };
44
- project: {
45
- files: never[];
46
- };
47
- };
48
- //# sourceMappingURL=kicad_prl.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"kicad_prl.d.ts","sourceRoot":"","sources":["../../../src/kicad/project/kicad_prl.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,GAAI,UAAU,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDxC,CAAA"}