@modular-circuit/transpiler 0.1.0 → 0.1.2

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 CHANGED
@@ -462,10 +462,20 @@ declare class StringFormatter {
462
462
  append_quote(str: string): void;
463
463
  }
464
464
 
465
+ interface NamedContent {
466
+ name: string;
467
+ content: string;
468
+ }
469
+ interface DesignBlock {
470
+ main_sch: string;
471
+ sheets: NamedContent[];
472
+ pcb?: NamedContent;
473
+ }
465
474
  declare function collect_sub_sheets_by_id(module_ids: string[], module_resolver: ModuleResolver): Promise<{
466
475
  sheets: Record<string, string>;
467
476
  module_main_sheet: Record<string, string>;
468
477
  modules: Record<string, ModuleCircuit>;
478
+ design_blocks: DesignBlock[];
469
479
  }>;
470
480
 
471
481
  declare const gen_lib_gnd: (value: string) => LIB_SYMBOL;
@@ -476,4 +486,4 @@ declare const gen_sch_gnd: (value: string, pwr_number: number, port_id: string,
476
486
 
477
487
  declare const gen_sch_vcc: (value: string, pwr_number: number, port_id: string, position: VECTOR2) => SCH_SYMBOL;
478
488
 
479
- export { AllegroNetlistFileExtension, AltiumFootprintLibPathExtension, ArchiveFileExtension, BLOCK_PIN_GAP, BLOCK_PIN_TB_MARGIN, type BlockLabelPadding, type BlockSize, type BoxGeometry, CadstarFootprintLibPathExtension, CadstarNetlistFileExtension, CadstarPartsLibraryFileExtension, CadstarPcbFileExtension, CadstarSchematicFileExtension, type ConnectionGraphMap, type ConvertGraphToKiCadContext, type ConvertGraphToKiCadInput, CsvFileExtension, DEFAULT_PAPER_SIZE, DatabaseLibraryFileExtension, DesignRulesFileExtension, DrawingSheetFileExtension, DrillFileExtension, EagleFootprintLibPathExtension, EaglePcbFileExtension, EquFileExtension, FONT_SIZE, FootprintAssignmentFileExtension, FootprintPlaceFileExtension, GENERATOR_NAME, GENERATOR_VERSION, GRID_SIZE, GedaPcbFootprintLibFileExtension, GerberFileExtension, GerberFileExtensionsRegex, GerberJobFileExtension, GltfBinaryFileExtension, GraphConverter, HTTPLibraryFileExtension, HotkeyFileExtension, HtmlFileExtension, Ipc2581FileExtension, IpcD356FileExtension, JpegFileExtension, JsonFileExtension, KICAD_SCH_FRAME, KiCadFootprintFileExtension, KiCadFootprintLibPathExtension, KiCadPcbFileExtension, KiCadProjectArchive, KiCadSchematicFileExtension, KiCadSymbolLibFileExtension, type LabelPadding, Layout, LegacyFootprintLibPathExtension, LegacyPcbFileExtension, LegacyProjectFileExtension, LegacySchematicFileExtension, LegacySymbolDocumentFileExtension, LegacySymbolLibFileExtension, MacrosFileExtension, MarkdownFileExtension, NetListConverter, NetlistFileExtension, type NetlistProject, type NetlistToKicadContext, OrCadPcb2NetlistFileExtension, PAPER, PAPER_SIZE, PdfFileExtension, PngFileExtension, ProjectFileExtension, ProjectLocalSettingsFileExtension, ReportFileExtension, SCHEMATIC_PRINTER, SCH_VERSION, SVGFileExtension, SchematicSymbolFileExtension, type Size, SpecctraDsnFileExtension, SpecctraSessionFileExtension, SpiceFileExtension, StepFileAbrvExtension, StepFileExtension, StringFormatter, TextFileExtension, VrmlFileExtension, WIRE_PADDING, WorkbookFileExtension, XmlFileExtension, collect_sub_sheets, collect_sub_sheets_by_id, convert_graph_to_kicad_project, filterNullOrUndefined, gen_lib_gnd, gen_lib_vcc, gen_sch_gnd, gen_sch_vcc, get_power_pos, get_sch_default_drawing_sheet, tab };
489
+ export { AllegroNetlistFileExtension, AltiumFootprintLibPathExtension, ArchiveFileExtension, BLOCK_PIN_GAP, BLOCK_PIN_TB_MARGIN, type BlockLabelPadding, type BlockSize, type BoxGeometry, CadstarFootprintLibPathExtension, CadstarNetlistFileExtension, CadstarPartsLibraryFileExtension, CadstarPcbFileExtension, CadstarSchematicFileExtension, type ConnectionGraphMap, type ConvertGraphToKiCadContext, type ConvertGraphToKiCadInput, CsvFileExtension, DEFAULT_PAPER_SIZE, DatabaseLibraryFileExtension, type DesignBlock, DesignRulesFileExtension, DrawingSheetFileExtension, DrillFileExtension, EagleFootprintLibPathExtension, EaglePcbFileExtension, EquFileExtension, FONT_SIZE, FootprintAssignmentFileExtension, FootprintPlaceFileExtension, GENERATOR_NAME, GENERATOR_VERSION, GRID_SIZE, GedaPcbFootprintLibFileExtension, GerberFileExtension, GerberFileExtensionsRegex, GerberJobFileExtension, GltfBinaryFileExtension, GraphConverter, HTTPLibraryFileExtension, HotkeyFileExtension, HtmlFileExtension, Ipc2581FileExtension, IpcD356FileExtension, JpegFileExtension, JsonFileExtension, KICAD_SCH_FRAME, KiCadFootprintFileExtension, KiCadFootprintLibPathExtension, KiCadPcbFileExtension, KiCadProjectArchive, KiCadSchematicFileExtension, KiCadSymbolLibFileExtension, type LabelPadding, Layout, LegacyFootprintLibPathExtension, LegacyPcbFileExtension, LegacyProjectFileExtension, LegacySchematicFileExtension, LegacySymbolDocumentFileExtension, LegacySymbolLibFileExtension, MacrosFileExtension, MarkdownFileExtension, type NamedContent, NetListConverter, NetlistFileExtension, type NetlistProject, type NetlistToKicadContext, OrCadPcb2NetlistFileExtension, PAPER, PAPER_SIZE, PdfFileExtension, PngFileExtension, ProjectFileExtension, ProjectLocalSettingsFileExtension, ReportFileExtension, SCHEMATIC_PRINTER, SCH_VERSION, SVGFileExtension, SchematicSymbolFileExtension, type Size, SpecctraDsnFileExtension, SpecctraSessionFileExtension, SpiceFileExtension, StepFileAbrvExtension, StepFileExtension, StringFormatter, TextFileExtension, VrmlFileExtension, WIRE_PADDING, WorkbookFileExtension, XmlFileExtension, collect_sub_sheets, collect_sub_sheets_by_id, convert_graph_to_kicad_project, filterNullOrUndefined, gen_lib_gnd, gen_lib_vcc, gen_sch_gnd, gen_sch_vcc, get_power_pos, get_sch_default_drawing_sheet, tab };
package/dist/index.d.ts CHANGED
@@ -462,10 +462,20 @@ declare class StringFormatter {
462
462
  append_quote(str: string): void;
463
463
  }
464
464
 
465
+ interface NamedContent {
466
+ name: string;
467
+ content: string;
468
+ }
469
+ interface DesignBlock {
470
+ main_sch: string;
471
+ sheets: NamedContent[];
472
+ pcb?: NamedContent;
473
+ }
465
474
  declare function collect_sub_sheets_by_id(module_ids: string[], module_resolver: ModuleResolver): Promise<{
466
475
  sheets: Record<string, string>;
467
476
  module_main_sheet: Record<string, string>;
468
477
  modules: Record<string, ModuleCircuit>;
478
+ design_blocks: DesignBlock[];
469
479
  }>;
470
480
 
471
481
  declare const gen_lib_gnd: (value: string) => LIB_SYMBOL;
@@ -476,4 +486,4 @@ declare const gen_sch_gnd: (value: string, pwr_number: number, port_id: string,
476
486
 
477
487
  declare const gen_sch_vcc: (value: string, pwr_number: number, port_id: string, position: VECTOR2) => SCH_SYMBOL;
478
488
 
479
- export { AllegroNetlistFileExtension, AltiumFootprintLibPathExtension, ArchiveFileExtension, BLOCK_PIN_GAP, BLOCK_PIN_TB_MARGIN, type BlockLabelPadding, type BlockSize, type BoxGeometry, CadstarFootprintLibPathExtension, CadstarNetlistFileExtension, CadstarPartsLibraryFileExtension, CadstarPcbFileExtension, CadstarSchematicFileExtension, type ConnectionGraphMap, type ConvertGraphToKiCadContext, type ConvertGraphToKiCadInput, CsvFileExtension, DEFAULT_PAPER_SIZE, DatabaseLibraryFileExtension, DesignRulesFileExtension, DrawingSheetFileExtension, DrillFileExtension, EagleFootprintLibPathExtension, EaglePcbFileExtension, EquFileExtension, FONT_SIZE, FootprintAssignmentFileExtension, FootprintPlaceFileExtension, GENERATOR_NAME, GENERATOR_VERSION, GRID_SIZE, GedaPcbFootprintLibFileExtension, GerberFileExtension, GerberFileExtensionsRegex, GerberJobFileExtension, GltfBinaryFileExtension, GraphConverter, HTTPLibraryFileExtension, HotkeyFileExtension, HtmlFileExtension, Ipc2581FileExtension, IpcD356FileExtension, JpegFileExtension, JsonFileExtension, KICAD_SCH_FRAME, KiCadFootprintFileExtension, KiCadFootprintLibPathExtension, KiCadPcbFileExtension, KiCadProjectArchive, KiCadSchematicFileExtension, KiCadSymbolLibFileExtension, type LabelPadding, Layout, LegacyFootprintLibPathExtension, LegacyPcbFileExtension, LegacyProjectFileExtension, LegacySchematicFileExtension, LegacySymbolDocumentFileExtension, LegacySymbolLibFileExtension, MacrosFileExtension, MarkdownFileExtension, NetListConverter, NetlistFileExtension, type NetlistProject, type NetlistToKicadContext, OrCadPcb2NetlistFileExtension, PAPER, PAPER_SIZE, PdfFileExtension, PngFileExtension, ProjectFileExtension, ProjectLocalSettingsFileExtension, ReportFileExtension, SCHEMATIC_PRINTER, SCH_VERSION, SVGFileExtension, SchematicSymbolFileExtension, type Size, SpecctraDsnFileExtension, SpecctraSessionFileExtension, SpiceFileExtension, StepFileAbrvExtension, StepFileExtension, StringFormatter, TextFileExtension, VrmlFileExtension, WIRE_PADDING, WorkbookFileExtension, XmlFileExtension, collect_sub_sheets, collect_sub_sheets_by_id, convert_graph_to_kicad_project, filterNullOrUndefined, gen_lib_gnd, gen_lib_vcc, gen_sch_gnd, gen_sch_vcc, get_power_pos, get_sch_default_drawing_sheet, tab };
489
+ export { AllegroNetlistFileExtension, AltiumFootprintLibPathExtension, ArchiveFileExtension, BLOCK_PIN_GAP, BLOCK_PIN_TB_MARGIN, type BlockLabelPadding, type BlockSize, type BoxGeometry, CadstarFootprintLibPathExtension, CadstarNetlistFileExtension, CadstarPartsLibraryFileExtension, CadstarPcbFileExtension, CadstarSchematicFileExtension, type ConnectionGraphMap, type ConvertGraphToKiCadContext, type ConvertGraphToKiCadInput, CsvFileExtension, DEFAULT_PAPER_SIZE, DatabaseLibraryFileExtension, type DesignBlock, DesignRulesFileExtension, DrawingSheetFileExtension, DrillFileExtension, EagleFootprintLibPathExtension, EaglePcbFileExtension, EquFileExtension, FONT_SIZE, FootprintAssignmentFileExtension, FootprintPlaceFileExtension, GENERATOR_NAME, GENERATOR_VERSION, GRID_SIZE, GedaPcbFootprintLibFileExtension, GerberFileExtension, GerberFileExtensionsRegex, GerberJobFileExtension, GltfBinaryFileExtension, GraphConverter, HTTPLibraryFileExtension, HotkeyFileExtension, HtmlFileExtension, Ipc2581FileExtension, IpcD356FileExtension, JpegFileExtension, JsonFileExtension, KICAD_SCH_FRAME, KiCadFootprintFileExtension, KiCadFootprintLibPathExtension, KiCadPcbFileExtension, KiCadProjectArchive, KiCadSchematicFileExtension, KiCadSymbolLibFileExtension, type LabelPadding, Layout, LegacyFootprintLibPathExtension, LegacyPcbFileExtension, LegacyProjectFileExtension, LegacySchematicFileExtension, LegacySymbolDocumentFileExtension, LegacySymbolLibFileExtension, MacrosFileExtension, MarkdownFileExtension, type NamedContent, NetListConverter, NetlistFileExtension, type NetlistProject, type NetlistToKicadContext, OrCadPcb2NetlistFileExtension, PAPER, PAPER_SIZE, PdfFileExtension, PngFileExtension, ProjectFileExtension, ProjectLocalSettingsFileExtension, ReportFileExtension, SCHEMATIC_PRINTER, SCH_VERSION, SVGFileExtension, SchematicSymbolFileExtension, type Size, SpecctraDsnFileExtension, SpecctraSessionFileExtension, SpiceFileExtension, StepFileAbrvExtension, StepFileExtension, StringFormatter, TextFileExtension, VrmlFileExtension, WIRE_PADDING, WorkbookFileExtension, XmlFileExtension, collect_sub_sheets, collect_sub_sheets_by_id, convert_graph_to_kicad_project, filterNullOrUndefined, gen_lib_gnd, gen_lib_vcc, gen_sch_gnd, gen_sch_vcc, get_power_pos, get_sch_default_drawing_sheet, tab };
package/dist/index.js CHANGED
@@ -288,6 +288,7 @@ async function collect_sub_sheets_by_id(module_ids, module_resolver) {
288
288
  const sheets = {};
289
289
  const module_main_sheet = {};
290
290
  const modules = {};
291
+ const design_blocks = [];
291
292
  for (const id of module_ids) {
292
293
  const zip_archive_url = await module_resolver.get_module_archive_by_id(id);
293
294
  const module_circuit = await module_resolver.get_module_circuit_by_id(id);
@@ -306,6 +307,10 @@ async function collect_sub_sheets_by_id(module_ids, module_resolver) {
306
307
  const k = (0, import_utils2.fmt_module_name)(module_circuit);
307
308
  module_main_sheet[k] = module_circuit.main;
308
309
  modules[k] = module_circuit;
310
+ const design_block = {
311
+ main_sch: module_circuit.main,
312
+ sheets: []
313
+ };
309
314
  const zip_archive = await fetch(zip_archive_url).then((res) => res.arrayBuffer());
310
315
  const files = await (0, import_utils2.unzipFile)(zip_archive);
311
316
  for (const [name, content] of Object.entries(files)) {
@@ -316,10 +321,14 @@ async function collect_sub_sheets_by_id(module_ids, module_resolver) {
316
321
  continue;
317
322
  }
318
323
  sheets[fileName] = content;
324
+ design_block.sheets.push({ name: fileName, content });
325
+ } else if (name.endsWith(import_utils2.KICAD_PCB_FILE_EXT)) {
326
+ const fileName = (0, import_utils2.remove_filename_path_prefix)(name);
327
+ design_block.pcb = { name: fileName, content };
319
328
  }
320
329
  }
321
330
  }
322
- return { sheets, module_main_sheet, modules };
331
+ return { sheets, module_main_sheet, modules, design_blocks };
323
332
  }
324
333
 
325
334
  // src/converter/kicad_sexpr/eeschema/printer.ts
package/dist/index.mjs CHANGED
@@ -166,6 +166,7 @@ var StringFormatter = class {
166
166
  // src/utils/collect_sub_sheets_by_id.ts
167
167
  import {
168
168
  fmt_module_name,
169
+ KICAD_PCB_FILE_EXT,
169
170
  KICAD_SHC_FILE_EXT as KICAD_SHC_FILE_EXT2,
170
171
  remove_filename_path_prefix as remove_filename_path_prefix2,
171
172
  unzipFile as unzipFile2
@@ -174,6 +175,7 @@ async function collect_sub_sheets_by_id(module_ids, module_resolver) {
174
175
  const sheets = {};
175
176
  const module_main_sheet = {};
176
177
  const modules = {};
178
+ const design_blocks = [];
177
179
  for (const id of module_ids) {
178
180
  const zip_archive_url = await module_resolver.get_module_archive_by_id(id);
179
181
  const module_circuit = await module_resolver.get_module_circuit_by_id(id);
@@ -192,6 +194,10 @@ async function collect_sub_sheets_by_id(module_ids, module_resolver) {
192
194
  const k = fmt_module_name(module_circuit);
193
195
  module_main_sheet[k] = module_circuit.main;
194
196
  modules[k] = module_circuit;
197
+ const design_block = {
198
+ main_sch: module_circuit.main,
199
+ sheets: []
200
+ };
195
201
  const zip_archive = await fetch(zip_archive_url).then((res) => res.arrayBuffer());
196
202
  const files = await unzipFile2(zip_archive);
197
203
  for (const [name, content] of Object.entries(files)) {
@@ -202,10 +208,14 @@ async function collect_sub_sheets_by_id(module_ids, module_resolver) {
202
208
  continue;
203
209
  }
204
210
  sheets[fileName] = content;
211
+ design_block.sheets.push({ name: fileName, content });
212
+ } else if (name.endsWith(KICAD_PCB_FILE_EXT)) {
213
+ const fileName = remove_filename_path_prefix2(name);
214
+ design_block.pcb = { name: fileName, content };
205
215
  }
206
216
  }
207
217
  }
208
- return { sheets, module_main_sheet, modules };
218
+ return { sheets, module_main_sheet, modules, design_blocks };
209
219
  }
210
220
 
211
221
  // src/converter/kicad_sexpr/eeschema/printer.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@modular-circuit/transpiler",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Intermediate representation of the modular circuit",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -31,9 +31,9 @@
31
31
  "js-base64": "^3.7.7",
32
32
  "jszip": "^3.10.1",
33
33
  "@modular-circuit/electronics-model": "0.1.0",
34
- "@modular-circuit/ir": "0.1.0",
35
- "@modular-circuit/perc": "0.1.0",
36
- "@modular-circuit/utils": "0.1.0"
34
+ "@modular-circuit/ir": "0.1.1",
35
+ "@modular-circuit/perc": "0.1.1",
36
+ "@modular-circuit/utils": "0.1.1"
37
37
  },
38
38
  "scripts": {
39
39
  "clean": "rimraf dist",