el-diatonico-models 0.0.7 → 0.0.9

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 (157) hide show
  1. package/dist/Accordion/Accordion.d.ts +29 -4
  2. package/dist/Accordion/Accordion.d.ts.map +1 -1
  3. package/dist/Accordion/Accordion.js +21 -4
  4. package/dist/Accordion/Accordion.js.map +1 -1
  5. package/dist/Accordion/AccordionFactory.d.ts +19 -0
  6. package/dist/Accordion/AccordionFactory.d.ts.map +1 -1
  7. package/dist/Accordion/AccordionFactory.js +28 -6
  8. package/dist/Accordion/AccordionFactory.js.map +1 -1
  9. package/dist/Core/Errors.d.ts +59 -0
  10. package/dist/Core/Errors.d.ts.map +1 -0
  11. package/dist/Core/Errors.js +71 -0
  12. package/dist/Core/Errors.js.map +1 -0
  13. package/dist/Core/IFactory.d.ts +13 -0
  14. package/dist/Core/IFactory.d.ts.map +1 -0
  15. package/dist/Core/IFactory.js +2 -0
  16. package/dist/Core/IFactory.js.map +1 -0
  17. package/dist/Core/index.d.ts +7 -0
  18. package/dist/Core/index.d.ts.map +1 -0
  19. package/dist/Core/index.js +7 -0
  20. package/dist/Core/index.js.map +1 -0
  21. package/dist/{NotesKeyboard/NotesKeyboard.d.ts → Data/NotesKeyboardData.d.ts} +1 -1
  22. package/dist/Data/NotesKeyboardData.d.ts.map +1 -0
  23. package/dist/{NotesKeyboard/NotesKeyboard.js → Data/NotesKeyboardData.js} +1 -1
  24. package/dist/Data/NotesKeyboardData.js.map +1 -0
  25. package/dist/{Scale/ScalesPositions.d.ts → Data/ScalesPositionsData.d.ts} +1 -1
  26. package/dist/Data/ScalesPositionsData.d.ts.map +1 -0
  27. package/dist/{Scale/ScalesPositions.js → Data/ScalesPositionsData.js} +1 -1
  28. package/dist/{Scale/ScalesPositions.js.map → Data/ScalesPositionsData.js.map} +1 -1
  29. package/dist/Data/TonalitiesData.d.ts +3 -0
  30. package/dist/Data/TonalitiesData.d.ts.map +1 -0
  31. package/dist/{Tonality/Tonalities.js → Data/TonalitiesData.js} +2 -2
  32. package/dist/Data/TonalitiesData.js.map +1 -0
  33. package/dist/Data/index.d.ts +3 -0
  34. package/dist/Data/index.d.ts.map +1 -0
  35. package/dist/Data/index.js +3 -0
  36. package/dist/Data/index.js.map +1 -0
  37. package/dist/Enums/index.d.ts +0 -1
  38. package/dist/Enums/index.d.ts.map +1 -1
  39. package/dist/Enums/index.js +0 -1
  40. package/dist/Enums/index.js.map +1 -1
  41. package/dist/Keyboard/KeyBoard.d.ts +50 -3
  42. package/dist/Keyboard/KeyBoard.d.ts.map +1 -1
  43. package/dist/Keyboard/KeyBoard.js +47 -5
  44. package/dist/Keyboard/KeyBoard.js.map +1 -1
  45. package/dist/Keyboard/KeyboardFactory.d.ts +24 -1
  46. package/dist/Keyboard/KeyboardFactory.d.ts.map +1 -1
  47. package/dist/Keyboard/KeyboardFactory.js +33 -2
  48. package/dist/Keyboard/KeyboardFactory.js.map +1 -1
  49. package/dist/Keyboard/index.d.ts +1 -0
  50. package/dist/Keyboard/index.d.ts.map +1 -1
  51. package/dist/Keyboard/index.js +1 -0
  52. package/dist/Keyboard/index.js.map +1 -1
  53. package/dist/Loaders/INotesKeyboardLoader.d.ts +7 -0
  54. package/dist/Loaders/INotesKeyboardLoader.d.ts.map +1 -0
  55. package/dist/Loaders/INotesKeyboardLoader.js +2 -0
  56. package/dist/Loaders/INotesKeyboardLoader.js.map +1 -0
  57. package/dist/Loaders/IScalesPositionsLoader.d.ts +7 -0
  58. package/dist/Loaders/IScalesPositionsLoader.d.ts.map +1 -0
  59. package/dist/Loaders/IScalesPositionsLoader.js +2 -0
  60. package/dist/Loaders/IScalesPositionsLoader.js.map +1 -0
  61. package/dist/Loaders/ITonalitiesLoader.d.ts +7 -0
  62. package/dist/Loaders/ITonalitiesLoader.d.ts.map +1 -0
  63. package/dist/Loaders/ITonalitiesLoader.js +2 -0
  64. package/dist/Loaders/ITonalitiesLoader.js.map +1 -0
  65. package/dist/Loaders/NotesKeyboardLoader.d.ts +8 -0
  66. package/dist/Loaders/NotesKeyboardLoader.d.ts.map +1 -0
  67. package/dist/Loaders/NotesKeyboardLoader.js +10 -0
  68. package/dist/Loaders/NotesKeyboardLoader.js.map +1 -0
  69. package/dist/Loaders/ScalesPositionsLoader.d.ts +8 -0
  70. package/dist/Loaders/ScalesPositionsLoader.d.ts.map +1 -0
  71. package/dist/Loaders/ScalesPositionsLoader.js +10 -0
  72. package/dist/Loaders/ScalesPositionsLoader.js.map +1 -0
  73. package/dist/Loaders/TonalitiesLoader.d.ts +8 -0
  74. package/dist/Loaders/TonalitiesLoader.d.ts.map +1 -0
  75. package/dist/Loaders/TonalitiesLoader.js +10 -0
  76. package/dist/Loaders/TonalitiesLoader.js.map +1 -0
  77. package/dist/Loaders/index.d.ts +7 -0
  78. package/dist/Loaders/index.d.ts.map +1 -0
  79. package/dist/Loaders/index.js +7 -0
  80. package/dist/Loaders/index.js.map +1 -0
  81. package/dist/Notes/Note.d.ts +25 -3
  82. package/dist/Notes/Note.d.ts.map +1 -1
  83. package/dist/Notes/Note.js +36 -20
  84. package/dist/Notes/Note.js.map +1 -1
  85. package/dist/NotesKeyboard/NoteKeyboard.d.ts +44 -5
  86. package/dist/NotesKeyboard/NoteKeyboard.d.ts.map +1 -1
  87. package/dist/NotesKeyboard/NoteKeyboard.js +30 -5
  88. package/dist/NotesKeyboard/NoteKeyboard.js.map +1 -1
  89. package/dist/NotesKeyboard/index.d.ts +0 -1
  90. package/dist/NotesKeyboard/index.d.ts.map +1 -1
  91. package/dist/NotesKeyboard/index.js +0 -1
  92. package/dist/NotesKeyboard/index.js.map +1 -1
  93. package/dist/Position/Position.d.ts +34 -2
  94. package/dist/Position/Position.d.ts.map +1 -1
  95. package/dist/Position/Position.js +19 -2
  96. package/dist/Position/Position.js.map +1 -1
  97. package/dist/Scale/Grade.d.ts +36 -5
  98. package/dist/Scale/Grade.d.ts.map +1 -1
  99. package/dist/Scale/Grade.js +29 -5
  100. package/dist/Scale/Grade.js.map +1 -1
  101. package/dist/Scale/Interval.d.ts +24 -2
  102. package/dist/Scale/Interval.d.ts.map +1 -1
  103. package/dist/Scale/Interval.js +23 -2
  104. package/dist/Scale/Interval.js.map +1 -1
  105. package/dist/Scale/IntervalsFactory.d.ts +24 -2
  106. package/dist/Scale/IntervalsFactory.d.ts.map +1 -1
  107. package/dist/Scale/IntervalsFactory.js +25 -1
  108. package/dist/Scale/IntervalsFactory.js.map +1 -1
  109. package/dist/Scale/ScaleFactory.d.ts +26 -1
  110. package/dist/Scale/ScaleFactory.d.ts.map +1 -1
  111. package/dist/Scale/ScaleFactory.js +34 -7
  112. package/dist/Scale/ScaleFactory.js.map +1 -1
  113. package/dist/Scale/ScalePositions.js +0 -3
  114. package/dist/Scale/ScalePositions.js.map +1 -1
  115. package/dist/Scale/index.d.ts +0 -1
  116. package/dist/Scale/index.d.ts.map +1 -1
  117. package/dist/Scale/index.js +0 -1
  118. package/dist/Scale/index.js.map +1 -1
  119. package/dist/Tonality/Tonality.d.ts +33 -4
  120. package/dist/Tonality/Tonality.d.ts.map +1 -1
  121. package/dist/Tonality/Tonality.js +30 -5
  122. package/dist/Tonality/Tonality.js.map +1 -1
  123. package/dist/Tonality/index.d.ts +0 -1
  124. package/dist/Tonality/index.d.ts.map +1 -1
  125. package/dist/Tonality/index.js +0 -1
  126. package/dist/Tonality/index.js.map +1 -1
  127. package/dist/Types/English_Note_Metrics.d.ts +2 -0
  128. package/dist/Types/English_Note_Metrics.d.ts.map +1 -0
  129. package/dist/Types/English_Note_Metrics.js +2 -0
  130. package/dist/Types/English_Note_Metrics.js.map +1 -0
  131. package/dist/Types/Spanish_Note_Metrics.d.ts +2 -0
  132. package/dist/Types/Spanish_Note_Metrics.d.ts.map +1 -0
  133. package/dist/Types/Spanish_Note_Metrics.js +2 -0
  134. package/dist/Types/Spanish_Note_Metrics.js.map +1 -0
  135. package/dist/Types/index.d.ts +3 -0
  136. package/dist/Types/index.d.ts.map +1 -0
  137. package/dist/Types/index.js +3 -0
  138. package/dist/Types/index.js.map +1 -0
  139. package/dist/Utils/GradeToIntervalConverter.d.ts +40 -1
  140. package/dist/Utils/GradeToIntervalConverter.d.ts.map +1 -1
  141. package/dist/Utils/GradeToIntervalConverter.js +55 -8
  142. package/dist/Utils/GradeToIntervalConverter.js.map +1 -1
  143. package/dist/index.d.ts +2 -0
  144. package/dist/index.d.ts.map +1 -1
  145. package/dist/index.js +2 -0
  146. package/dist/index.js.map +1 -1
  147. package/package.json +2 -2
  148. package/dist/Enums/NoteMetrics.d.ts +0 -69
  149. package/dist/Enums/NoteMetrics.d.ts.map +0 -1
  150. package/dist/Enums/NoteMetrics.js +0 -86
  151. package/dist/Enums/NoteMetrics.js.map +0 -1
  152. package/dist/NotesKeyboard/NotesKeyboard.d.ts.map +0 -1
  153. package/dist/NotesKeyboard/NotesKeyboard.js.map +0 -1
  154. package/dist/Scale/ScalesPositions.d.ts.map +0 -1
  155. package/dist/Tonality/Tonalities.d.ts +0 -3
  156. package/dist/Tonality/Tonalities.d.ts.map +0 -1
  157. package/dist/Tonality/Tonalities.js.map +0 -1
@@ -2,11 +2,36 @@ import type { IAccordion } from "@Accordion";
2
2
  import type { AccordionTuning } from "@Enums";
3
3
  import type { IKeyBoard } from "@Keyboard";
4
4
  import type { ITonality } from "@Tonality";
5
+ /**
6
+ * Represents a physical accordion instrument.
7
+ *
8
+ * An accordion consists of two keyboards (opening and closing bellows directions),
9
+ * a specific tuning system, and a collection of available tonalities.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const accordion = AccordionFactory.createAccordion(AccordionTuning.FA);
14
+ * console.log(accordion.tuning); // AccordionTuning.FA
15
+ * console.log(accordion.tones.length); // List of available tonalities
16
+ * ```
17
+ */
5
18
  export declare class Accordion implements IAccordion {
6
- tuning: AccordionTuning;
7
- keyboardClosing: IKeyBoard;
8
- keyboardOpening: IKeyBoard;
9
- tones: ITonality[];
19
+ /** The tuning system of this accordion */
20
+ readonly tuning: AccordionTuning;
21
+ /** The keyboard for closing bellows (Cerrando) */
22
+ readonly keyboardClosing: IKeyBoard;
23
+ /** The keyboard for opening bellows (Abriendo) */
24
+ readonly keyboardOpening: IKeyBoard;
25
+ /** The available tonalities for this accordion */
26
+ readonly tones: ITonality[];
27
+ /**
28
+ * Creates a new Accordion instance.
29
+ *
30
+ * @param tuning - The accordion tuning (FA, SOL)
31
+ * @param keyboardClosing - The closing bellows keyboard
32
+ * @param keyboardOpening - The opening bellows keyboard
33
+ * @param tones - Available tonalities
34
+ */
10
35
  constructor(tuning: AccordionTuning, keyboardClosing: IKeyBoard, keyboardOpening: IKeyBoard, tones: ITonality[]);
11
36
  }
12
37
  //# sourceMappingURL=Accordion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../src/Accordion/Accordion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,qBAAa,SAAU,YAAW,UAAU;IAC1C,MAAM,EAAE,eAAe,CAAC;IACxB,eAAe,EAAE,SAAS,CAAC;IAC3B,eAAe,EAAE,SAAS,CAAC;IAC3B,KAAK,EAAE,SAAS,EAAE,CAAC;gBAGjB,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,SAAS,EAC1B,eAAe,EAAE,SAAS,EAC1B,KAAK,EAAE,SAAS,EAAE;CAOrB"}
1
+ {"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../src/Accordion/Accordion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C;;;;;;;;;;;;GAYG;AACH,qBAAa,SAAU,YAAW,UAAU;IAC1C,0CAA0C;IAC1C,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,kDAAkD;IAClD,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC;IACpC,kDAAkD;IAClD,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC;IACpC,kDAAkD;IAClD,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC;IAE5B;;;;;;;OAOG;gBAED,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,SAAS,EAC1B,eAAe,EAAE,SAAS,EAC1B,KAAK,EAAE,SAAS,EAAE;CAOrB"}
@@ -1,8 +1,25 @@
1
+ /**
2
+ * Represents a physical accordion instrument.
3
+ *
4
+ * An accordion consists of two keyboards (opening and closing bellows directions),
5
+ * a specific tuning system, and a collection of available tonalities.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const accordion = AccordionFactory.createAccordion(AccordionTuning.FA);
10
+ * console.log(accordion.tuning); // AccordionTuning.FA
11
+ * console.log(accordion.tones.length); // List of available tonalities
12
+ * ```
13
+ */
1
14
  export class Accordion {
2
- tuning;
3
- keyboardClosing;
4
- keyboardOpening;
5
- tones;
15
+ /**
16
+ * Creates a new Accordion instance.
17
+ *
18
+ * @param tuning - The accordion tuning (FA, SOL)
19
+ * @param keyboardClosing - The closing bellows keyboard
20
+ * @param keyboardOpening - The opening bellows keyboard
21
+ * @param tones - Available tonalities
22
+ */
6
23
  constructor(tuning, keyboardClosing, keyboardOpening, tones) {
7
24
  this.tuning = tuning;
8
25
  this.keyboardClosing = keyboardClosing;
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.js","sourceRoot":"","sources":["../../src/Accordion/Accordion.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,SAAS;IACpB,MAAM,CAAkB;IACxB,eAAe,CAAY;IAC3B,eAAe,CAAY;IAC3B,KAAK,CAAc;IAEnB,YACE,MAAuB,EACvB,eAA0B,EAC1B,eAA0B,EAC1B,KAAkB;QAElB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"Accordion.js","sourceRoot":"","sources":["../../src/Accordion/Accordion.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,SAAS;IAUpB;;;;;;;OAOG;IACH,YACE,MAAuB,EACvB,eAA0B,EAC1B,eAA0B,EAC1B,KAAkB;QAElB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF"}
@@ -1,6 +1,25 @@
1
1
  import { Accordion } from "@Accordion";
2
2
  import { type AccordionTuning } from "@Enums";
3
+ /**
4
+ * Factory for creating Accordion instances.
5
+ *
6
+ * Handles the creation of complete accordion objects with all required keyboards
7
+ * (closing/cerrando and opening/abriendo) and tonalities for a given tuning.
8
+ */
3
9
  export declare class AccordionFactory {
10
+ private static tonalitiesLoader;
11
+ /**
12
+ * Creates an Accordion with both keyboard configurations.
13
+ *
14
+ * @param tuning - The accordion tuning (e.g., FA, SOL)
15
+ * @returns A fully initialized Accordion instance
16
+ * @throws {ConfigurationError} If no tonalities are found for the specified tuning
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const accordion = AccordionFactory.createAccordion(AccordionTuning.FA);
21
+ * ```
22
+ */
4
23
  static createAccordion(tuning: AccordionTuning): Accordion;
5
24
  }
6
25
  //# sourceMappingURL=AccordionFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AccordionFactory.d.ts","sourceRoot":"","sources":["../../src/Accordion/AccordionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAW,KAAK,eAAe,EAAE,MAAM,QAAQ,CAAC;AAIvD,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,eAAe;CAgB/C"}
1
+ {"version":3,"file":"AccordionFactory.d.ts","sourceRoot":"","sources":["../../src/Accordion/AccordionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAW,KAAK,eAAe,EAAE,MAAM,QAAQ,CAAC;AAKvD;;;;;GAKG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAA0B;IAEzD;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS;CAmB3D"}
@@ -1,13 +1,35 @@
1
1
  import { Accordion } from "@Accordion";
2
2
  import { Bellows } from "@Enums";
3
- import { tonalities as TonalitiesCollection } from "@Tonality";
4
- import { KeyboardFactory } from "../Keyboard/KeyboardFactory";
3
+ import { TonalitiesLoader } from "@Loaders";
4
+ import { KeyboardFactory } from "@Keyboard";
5
+ import { ConfigurationError } from "@Core";
6
+ /**
7
+ * Factory for creating Accordion instances.
8
+ *
9
+ * Handles the creation of complete accordion objects with all required keyboards
10
+ * (closing/cerrando and opening/abriendo) and tonalities for a given tuning.
11
+ */
5
12
  export class AccordionFactory {
13
+ /**
14
+ * Creates an Accordion with both keyboard configurations.
15
+ *
16
+ * @param tuning - The accordion tuning (e.g., FA, SOL)
17
+ * @returns A fully initialized Accordion instance
18
+ * @throws {ConfigurationError} If no tonalities are found for the specified tuning
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * const accordion = AccordionFactory.createAccordion(AccordionTuning.FA);
23
+ * ```
24
+ */
6
25
  static createAccordion(tuning) {
7
- const tonalities = TonalitiesCollection.filter((tonality) => tonality.accordionTuning == tuning) || [];
8
- const keyboarClosing = KeyboardFactory.createKeyboard(tuning, Bellows.CERRANDO);
9
- const keyboarOpening = KeyboardFactory.createKeyboard(tuning, Bellows.ABRIENDO);
10
- return new Accordion(tuning, keyboarClosing, keyboarOpening, tonalities);
26
+ const tonalities = this.tonalitiesLoader.loadByTuning(tuning);
27
+ if (tonalities.length == 0)
28
+ throw new ConfigurationError(`No tonalities found for accordion tuning: ${tuning}`);
29
+ const keyboardClosing = KeyboardFactory.createKeyboard(tuning, Bellows.CERRANDO);
30
+ const keyboardOpening = KeyboardFactory.createKeyboard(tuning, Bellows.ABRIENDO);
31
+ return new Accordion(tuning, keyboardClosing, keyboardOpening, tonalities);
11
32
  }
12
33
  }
34
+ AccordionFactory.tonalitiesLoader = new TonalitiesLoader();
13
35
  //# sourceMappingURL=AccordionFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AccordionFactory.js","sourceRoot":"","sources":["../../src/Accordion/AccordionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,OAAO,EAAwB,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAkB,MAAM,WAAW,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,eAAe,CAAC,MAAuB;QAC5C,MAAM,UAAU,GACd,oBAAoB,CAAC,MAAM,CACzB,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,eAAe,IAAI,MAAM,CACjD,IAAK,EAAkB,CAAC;QAC3B,MAAM,cAAc,GAAG,eAAe,CAAC,cAAc,CACnD,MAAM,EACN,OAAO,CAAC,QAAQ,CACjB,CAAC;QACF,MAAM,cAAc,GAAG,eAAe,CAAC,cAAc,CACnD,MAAM,EACN,OAAO,CAAC,QAAQ,CACjB,CAAC;QAEF,OAAO,IAAI,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IAC3E,CAAC;CACF"}
1
+ {"version":3,"file":"AccordionFactory.js","sourceRoot":"","sources":["../../src/Accordion/AccordionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,OAAO,EAAwB,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,OAAO,gBAAgB;IAG3B;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,eAAe,CAAC,MAAuB;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAE9D,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC;YACxB,MAAM,IAAI,kBAAkB,CAC1B,6CAA6C,MAAM,EAAE,CACtD,CAAC;QAEJ,MAAM,eAAe,GAAG,eAAe,CAAC,cAAc,CACpD,MAAM,EACN,OAAO,CAAC,QAAQ,CACjB,CAAC;QACF,MAAM,eAAe,GAAG,eAAe,CAAC,cAAc,CACpD,MAAM,EACN,OAAO,CAAC,QAAQ,CACjB,CAAC;QAEF,OAAO,IAAI,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAC7E,CAAC;;AAhCc,iCAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Custom error types for the diatonico models library.
3
+ * Enables precise error handling and better error categorization.
4
+ */
5
+ /**
6
+ * Base error class for all domain-specific errors.
7
+ * Extends Error to maintain stack traces and standard error behavior.
8
+ */
9
+ export declare class DiatonicoError extends Error {
10
+ /**
11
+ * Creates a new DiatonicoError instance.
12
+ * @param message - The error message
13
+ */
14
+ constructor(message: string);
15
+ }
16
+ /**
17
+ * Thrown when a requested resource (note, scale, tonality) cannot be found.
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * try {
22
+ * const note = findNote(tuning, bellows, position);
23
+ * } catch (error) {
24
+ * if (error instanceof NotFoundError) {
25
+ * console.log("Note not available for this configuration");
26
+ * }
27
+ * }
28
+ * ```
29
+ */
30
+ export declare class NotFoundError extends DiatonicoError {
31
+ /**
32
+ * Creates a new NotFoundError instance.
33
+ * @param resourceType - The type of resource that wasn't found (e.g., "Note", "Scale")
34
+ * @param details - Additional context about what was being searched for
35
+ */
36
+ constructor(resourceType: string, details: string);
37
+ }
38
+ /**
39
+ * Thrown when an operation cannot be completed due to missing or incompatible configuration.
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * try {
44
+ * const keyboard = KeyboardFactory.createKeyboard(tuning, bellows);
45
+ * } catch (error) {
46
+ * if (error instanceof ConfigurationError) {
47
+ * console.log("Configuration not available");
48
+ * }
49
+ * }
50
+ * ```
51
+ */
52
+ export declare class ConfigurationError extends DiatonicoError {
53
+ /**
54
+ * Creates a new ConfigurationError instance.
55
+ * @param message - Description of the configuration problem
56
+ */
57
+ constructor(message: string);
58
+ }
59
+ //# sourceMappingURL=Errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../src/Core/Errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC;;;OAGG;gBACS,OAAO,EAAE,MAAM;CAK5B;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,aAAc,SAAQ,cAAc;IAC/C;;;;OAIG;gBACS,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAKlD;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;IACpD;;;OAGG;gBACS,OAAO,EAAE,MAAM;CAK5B"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Custom error types for the diatonico models library.
3
+ * Enables precise error handling and better error categorization.
4
+ */
5
+ /**
6
+ * Base error class for all domain-specific errors.
7
+ * Extends Error to maintain stack traces and standard error behavior.
8
+ */
9
+ export class DiatonicoError extends Error {
10
+ /**
11
+ * Creates a new DiatonicoError instance.
12
+ * @param message - The error message
13
+ */
14
+ constructor(message) {
15
+ super(message);
16
+ this.name = "DiatonicoError";
17
+ Object.setPrototypeOf(this, DiatonicoError.prototype);
18
+ }
19
+ }
20
+ /**
21
+ * Thrown when a requested resource (note, scale, tonality) cannot be found.
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * try {
26
+ * const note = findNote(tuning, bellows, position);
27
+ * } catch (error) {
28
+ * if (error instanceof NotFoundError) {
29
+ * console.log("Note not available for this configuration");
30
+ * }
31
+ * }
32
+ * ```
33
+ */
34
+ export class NotFoundError extends DiatonicoError {
35
+ /**
36
+ * Creates a new NotFoundError instance.
37
+ * @param resourceType - The type of resource that wasn't found (e.g., "Note", "Scale")
38
+ * @param details - Additional context about what was being searched for
39
+ */
40
+ constructor(resourceType, details) {
41
+ super(`${resourceType} not found: ${details}`);
42
+ this.name = "NotFoundError";
43
+ Object.setPrototypeOf(this, NotFoundError.prototype);
44
+ }
45
+ }
46
+ /**
47
+ * Thrown when an operation cannot be completed due to missing or incompatible configuration.
48
+ *
49
+ * @example
50
+ * ```typescript
51
+ * try {
52
+ * const keyboard = KeyboardFactory.createKeyboard(tuning, bellows);
53
+ * } catch (error) {
54
+ * if (error instanceof ConfigurationError) {
55
+ * console.log("Configuration not available");
56
+ * }
57
+ * }
58
+ * ```
59
+ */
60
+ export class ConfigurationError extends DiatonicoError {
61
+ /**
62
+ * Creates a new ConfigurationError instance.
63
+ * @param message - Description of the configuration problem
64
+ */
65
+ constructor(message) {
66
+ super(message);
67
+ this.name = "ConfigurationError";
68
+ Object.setPrototypeOf(this, ConfigurationError.prototype);
69
+ }
70
+ }
71
+ //# sourceMappingURL=Errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Errors.js","sourceRoot":"","sources":["../../src/Core/Errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC;;;OAGG;IACH,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;CACF;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,aAAc,SAAQ,cAAc;IAC/C;;;;OAIG;IACH,YAAY,YAAoB,EAAE,OAAe;QAC/C,KAAK,CAAC,GAAG,YAAY,eAAe,OAAO,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;CACF;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,kBAAmB,SAAQ,cAAc;IACpD;;;OAGG;IACH,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;CACF"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Base factory interface that defines the factory pattern used throughout the codebase.
3
+ *
4
+ * All factories should follow this pattern:
5
+ * - Static methods only (no instances)
6
+ * - Clear, descriptive method names (e.g., "create", "build")
7
+ * - Comprehensive JSDoc documentation
8
+ * - Input validation with meaningful error messages
9
+ * - Type-safe returns with no fallbacks
10
+ */
11
+ export interface IFactory {
12
+ }
13
+ //# sourceMappingURL=IFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFactory.d.ts","sourceRoot":"","sources":["../../src/Core/IFactory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,WAAW,QAAQ;CAIxB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFactory.js","sourceRoot":"","sources":["../../src/Core/IFactory.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Core module providing shared utilities, patterns, and type definitions
3
+ * used throughout the diatonico models library.
4
+ */
5
+ export * from "./IFactory";
6
+ export * from "./Errors";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Core/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Core module providing shared utilities, patterns, and type definitions
3
+ * used throughout the diatonico models library.
4
+ */
5
+ export * from "./IFactory";
6
+ export * from "./Errors";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Core/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { NoteKeyboard } from "@NotesKeyboard";
2
2
  export declare const NotesKeyboard: NoteKeyboard[];
3
- //# sourceMappingURL=NotesKeyboard.d.ts.map
3
+ //# sourceMappingURL=NotesKeyboardData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotesKeyboardData.d.ts","sourceRoot":"","sources":["../../src/Data/NotesKeyboardData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAiL9C,eAAO,MAAM,aAAa,gBAKzB,CAAA"}
@@ -153,4 +153,4 @@ export const NotesKeyboard = [
153
153
  ...notesGClosing,
154
154
  ...notesGOpening
155
155
  ];
156
- //# sourceMappingURL=NotesKeyboard.js.map
156
+ //# sourceMappingURL=NotesKeyboardData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotesKeyboardData.js","sourceRoot":"","sources":["../../src/Data/NotesKeyboardData.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import { ScalePositions } from "@Scale";
2
2
  export declare const scalesPositions: ScalePositions[];
3
- //# sourceMappingURL=ScalesPositions.d.ts.map
3
+ //# sourceMappingURL=ScalesPositionsData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScalesPositionsData.d.ts","sourceRoot":"","sources":["../../src/Data/ScalesPositionsData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,cAAc,EAAE,MAAM,QAAQ,CAAC;AA0U/C,eAAO,MAAM,eAAe,kBAmB3B,CAAC"}
@@ -293,4 +293,4 @@ export const scalesPositions = [
293
293
  seventhGradeThirds,
294
294
  seventhGradeSixths,
295
295
  ];
296
- //# sourceMappingURL=ScalesPositions.js.map
296
+ //# sourceMappingURL=ScalesPositionsData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScalesPositions.js","sourceRoot":"","sources":["../../src/Scale/ScalesPositions.ts"],"names":[],"mappings":"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OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAChD,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"}
1
+ {"version":3,"file":"ScalesPositionsData.js","sourceRoot":"","sources":["../../src/Data/ScalesPositionsData.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Tonality } from "@Tonality";
2
+ export declare const tonalities: Tonality[];
3
+ //# sourceMappingURL=TonalitiesData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TonalitiesData.d.ts","sourceRoot":"","sources":["../../src/Data/TonalitiesData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAsRrC,eAAO,MAAM,UAAU,YAWtB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { AccordionTuning, Grade_Type, ScalesTypes, TonalityType } from "@Enums";
2
2
  import { ScaleFactory } from "@Scale";
3
- import { Tonality } from "./Tonality";
3
+ import { Tonality } from "@Tonality";
4
4
  //#region F accordion Tonalities
5
5
  const fFTonality = new Tonality(AccordionTuning.FA, TonalityType.F, Grade_Type.FIRST, [
6
6
  {
@@ -181,4 +181,4 @@ export const tonalities = [
181
181
  gBFlatTonality,
182
182
  gDTonality,
183
183
  ];
184
- //# sourceMappingURL=Tonalities.js.map
184
+ //# sourceMappingURL=TonalitiesData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TonalitiesData.js","sourceRoot":"","sources":["../../src/Data/TonalitiesData.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from "./NotesKeyboardData";
2
+ export * from "./ScalesPositionsData";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Data/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./NotesKeyboardData";
2
+ export * from "./ScalesPositionsData";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Data/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC"}