@tremolo-ui/functions 0.0.9 → 0.0.10

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 (62) hide show
  1. package/dist/cjs/components/NumberInput/type.js +18 -60
  2. package/dist/cjs/components/NumberInput/type.js.map +1 -1
  3. package/dist/cjs/components/NumberInput/types/components/NumberInput/type.d.ts +1 -2
  4. package/dist/cjs/components/NumberInput/types/components/NumberInput/type.d.ts.map +1 -1
  5. package/dist/cjs/components/NumberInput/types/index.d.ts +5 -0
  6. package/dist/cjs/components/NumberInput/types/index.d.ts.map +1 -1
  7. package/dist/cjs/components/NumberInput/types/math.d.ts +5 -0
  8. package/dist/cjs/components/NumberInput/types/math.d.ts.map +1 -1
  9. package/dist/cjs/components/NumberInput/types/midi.d.ts +16 -3
  10. package/dist/cjs/components/NumberInput/types/midi.d.ts.map +1 -1
  11. package/dist/cjs/components/Slider/types/components/NumberInput/type.d.ts +1 -2
  12. package/dist/cjs/components/Slider/types/components/NumberInput/type.d.ts.map +1 -1
  13. package/dist/cjs/components/Slider/types/index.d.ts +5 -0
  14. package/dist/cjs/components/Slider/types/index.d.ts.map +1 -1
  15. package/dist/cjs/components/Slider/types/math.d.ts +5 -0
  16. package/dist/cjs/components/Slider/types/math.d.ts.map +1 -1
  17. package/dist/cjs/components/Slider/types/midi.d.ts +16 -3
  18. package/dist/cjs/components/Slider/types/midi.d.ts.map +1 -1
  19. package/dist/cjs/index.js +29 -4
  20. package/dist/cjs/index.js.map +1 -1
  21. package/dist/cjs/types/components/NumberInput/type.d.ts +1 -2
  22. package/dist/cjs/types/components/NumberInput/type.d.ts.map +1 -1
  23. package/dist/cjs/types/index.d.ts +5 -0
  24. package/dist/cjs/types/index.d.ts.map +1 -1
  25. package/dist/cjs/types/math.d.ts +5 -0
  26. package/dist/cjs/types/math.d.ts.map +1 -1
  27. package/dist/cjs/types/midi.d.ts +16 -3
  28. package/dist/cjs/types/midi.d.ts.map +1 -1
  29. package/dist/esm/components/NumberInput/type.js +19 -60
  30. package/dist/esm/components/NumberInput/type.js.map +1 -1
  31. package/dist/esm/components/NumberInput/types/components/NumberInput/type.d.ts +1 -2
  32. package/dist/esm/components/NumberInput/types/components/NumberInput/type.d.ts.map +1 -1
  33. package/dist/esm/components/NumberInput/types/index.d.ts +5 -0
  34. package/dist/esm/components/NumberInput/types/index.d.ts.map +1 -1
  35. package/dist/esm/components/NumberInput/types/math.d.ts +5 -0
  36. package/dist/esm/components/NumberInput/types/math.d.ts.map +1 -1
  37. package/dist/esm/components/NumberInput/types/midi.d.ts +16 -3
  38. package/dist/esm/components/NumberInput/types/midi.d.ts.map +1 -1
  39. package/dist/esm/components/Slider/types/components/NumberInput/type.d.ts +1 -2
  40. package/dist/esm/components/Slider/types/components/NumberInput/type.d.ts.map +1 -1
  41. package/dist/esm/components/Slider/types/index.d.ts +5 -0
  42. package/dist/esm/components/Slider/types/index.d.ts.map +1 -1
  43. package/dist/esm/components/Slider/types/math.d.ts +5 -0
  44. package/dist/esm/components/Slider/types/math.d.ts.map +1 -1
  45. package/dist/esm/components/Slider/types/midi.d.ts +16 -3
  46. package/dist/esm/components/Slider/types/midi.d.ts.map +1 -1
  47. package/dist/esm/components/tsconfig.tsbuildinfo +1 -1
  48. package/dist/esm/index.js +28 -5
  49. package/dist/esm/index.js.map +1 -1
  50. package/dist/esm/types/components/NumberInput/type.d.ts +1 -2
  51. package/dist/esm/types/components/NumberInput/type.d.ts.map +1 -1
  52. package/dist/esm/types/index.d.ts +5 -0
  53. package/dist/esm/types/index.d.ts.map +1 -1
  54. package/dist/esm/types/math.d.ts +5 -0
  55. package/dist/esm/types/math.d.ts.map +1 -1
  56. package/dist/esm/types/midi.d.ts +16 -3
  57. package/dist/esm/types/midi.d.ts.map +1 -1
  58. package/package.json +1 -1
  59. package/src/components/NumberInput/type.ts +22 -46
  60. package/src/index.ts +5 -0
  61. package/src/math.ts +14 -0
  62. package/src/midi.ts +21 -4
@@ -1,23 +1,9 @@
1
1
  'use strict';
2
2
 
3
- /**
4
- * clamp value between min and max
5
- * @category Math
6
- */
7
- /**
8
- *
9
- * @category Math
10
- */
11
- function toFixed(x, fractionDigits) {
12
- return Number(x.toFixed(fractionDigits));
13
- }
14
-
15
3
  /**
16
4
  * @module NumberInput
17
5
  */
18
6
  function selectUnit(units, value) {
19
- if (typeof units == 'string')
20
- return [units, 1];
21
7
  let i = 0;
22
8
  for (; i < units.length; i++) {
23
9
  if (Math.abs(units[i][1]) > Math.abs(value))
@@ -25,46 +11,33 @@ function selectUnit(units, value) {
25
11
  }
26
12
  return units[Math.max(0, i - 1)];
27
13
  }
28
- function parseValue(inputString, units, digit, defaultValue = 0) {
29
- let str = inputString.trim();
30
- if (str == '')
31
- str = String(defaultValue);
32
- if (!units) {
14
+ function parseValue(inputString, units, digit) {
15
+ var _a;
16
+ const str = inputString.trim();
17
+ if (!units || typeof units == 'string') {
18
+ const m = str.match(/-?\d+(\.\d+)?/);
19
+ let v = Number((_a = m === null || m === void 0 ? void 0 : m[0]) !== null && _a !== void 0 ? _a : '0');
20
+ v = isNaN(v) ? 0 : v;
33
21
  return {
34
- rawValue: Number(str) || defaultValue,
35
- formatValue: str,
36
- unit: '',
37
- };
38
- }
39
- else if (typeof units == 'string') {
40
- return {
41
- rawValue: Number(str) || defaultValue,
42
- formatValue: `${str}${units}`,
43
- unit: units,
22
+ rawValue: v,
23
+ formatValue: (digit != undefined ? v.toFixed(digit) : v) + (units !== null && units !== void 0 ? units : ''),
24
+ unit: units !== null && units !== void 0 ? units : '',
44
25
  };
45
26
  }
46
27
  const unitList = units.map(([u, _s]) => u);
47
28
  const scaleList = units.map(([_u, s]) => s);
48
- let rawValue = defaultValue;
49
- let formatValue = `${scaleList[0]}`;
29
+ let rawValue = 0;
50
30
  let unit = unitList[0];
31
+ let formatValue = (digit != undefined ? rawValue.toFixed(digit) : rawValue) + unit;
51
32
  const m = str.match(/^(-?\d+(\.\d+)?)\s*(\w*)$/);
52
33
  if (m) {
53
34
  rawValue = Number(m[1]) || 0;
54
- const inputUnit = m[3];
55
- if (inputUnit != '' && unitList.indexOf(inputUnit) != -1) {
56
- rawValue *= scaleList[unitList.indexOf(inputUnit)];
57
- const s = selectUnit(units, rawValue);
58
- const v = rawValue / s[1];
59
- formatValue = `${digit != undefined ? toFixed(v, digit) : v}${s[0]}`;
60
- unit = s[0];
61
- }
62
- else {
63
- const [u, scale] = selectUnit(units, rawValue);
64
- const v = rawValue / scale;
65
- formatValue = `${digit != undefined ? toFixed(v, digit) : v}${u}`;
66
- unit = u;
67
- }
35
+ const uIndex = unitList.indexOf(m[3]);
36
+ rawValue *= uIndex != -1 ? scaleList[uIndex] : 1;
37
+ const [u, scale] = selectUnit(units, rawValue);
38
+ const v = rawValue / scale;
39
+ formatValue = (digit != undefined ? v.toFixed(digit) : v) + u;
40
+ unit = u;
68
41
  }
69
42
  return {
70
43
  rawValue: rawValue,
@@ -72,22 +45,7 @@ function parseValue(inputString, units, digit, defaultValue = 0) {
72
45
  unit: unit,
73
46
  };
74
47
  }
75
- // TODO: toFixed 以外のフォーマット手法
76
- // e.g. 小数点第n位
77
- function formatValue(value, units) {
78
- if (!units) {
79
- return `${value}`;
80
- }
81
- else if (typeof units == 'string') {
82
- return `${value}${units}`;
83
- }
84
- else {
85
- const [unit, scale] = selectUnit(units, value);
86
- return `${toFixed(value / scale)}${unit}`;
87
- }
88
- }
89
48
 
90
- exports.formatValue = formatValue;
91
49
  exports.parseValue = parseValue;
92
50
  exports.selectUnit = selectUnit;
93
51
  //# sourceMappingURL=type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.js","sources":["../../../../../../../src/math.ts","../../../../../../../src/components/NumberInput/type.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type.js","sources":["../../../../../../../src/components/NumberInput/type.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;AAEG;AASa,SAAA,UAAU,CAAC,KAAY,EAAE,KAAa,EAAA;IACpD,IAAI,CAAC,GAAG,CAAC;IACT,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC5B,QAAA,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE;;AAE/C,IAAA,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AAClC;SAEgB,UAAU,CACxB,WAAmB,EACnB,KAAsB,EACtB,KAAc,EAAA;;AAMd,IAAA,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE;IAC9B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE;QACtC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC;AACpC,QAAA,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA,EAAA,GAAA,CAAC,KAAD,IAAA,IAAA,CAAC,KAAD,MAAA,GAAA,MAAA,GAAA,CAAC,CAAG,CAAC,CAAC,MAAI,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAA,GAAG,CAAC;AAC7B,QAAA,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QACpB,OAAO;AACL,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,WAAW,EAAE,CAAC,KAAK,IAAI,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,KAAL,IAAA,IAAA,KAAK,KAAL,MAAA,GAAA,KAAK,GAAI,EAAE,CAAC;AACxE,YAAA,IAAI,EAAE,KAAK,KAAA,IAAA,IAAL,KAAK,KAAL,MAAA,GAAA,KAAK,GAAI,EAAE;SAClB;;AAGH,IAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAC1C,IAAA,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,QAAQ,GAAG,CAAC;AAChB,IAAA,IAAI,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC;IACtB,IAAI,WAAW,GACb,CAAC,KAAK,IAAI,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,QAAQ,IAAI,IAAI;IAClE,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC;IAChD,IAAI,CAAC,EAAE;QACL,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5B,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,QAAA,QAAQ,IAAI,MAAM,IAAI,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC;AAChD,QAAA,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC9C,QAAA,MAAM,CAAC,GAAG,QAAQ,GAAG,KAAK;QAC1B,WAAW,GAAG,CAAC,KAAK,IAAI,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;QAC7D,IAAI,GAAG,CAAC;;IAEV,OAAO;AACL,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,WAAW,EAAE,WAAW;AACxB,QAAA,IAAI,EAAE,IAAI;KACX;AACH;;;;;"}
@@ -8,10 +8,9 @@
8
8
  */
9
9
  export type Units = [string, number][];
10
10
  export declare function selectUnit(units: Units, value: number): [string, number];
11
- export declare function parseValue(inputString: string, units?: string | Units, digit?: number, defaultValue?: number): {
11
+ export declare function parseValue(inputString: string, units?: string | Units, digit?: number): {
12
12
  rawValue: number;
13
13
  formatValue: string;
14
14
  unit: string;
15
15
  };
16
- export declare function formatValue(value: number, units?: string | Units): string;
17
16
  //# sourceMappingURL=type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/NumberInput/type.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;AAEtC,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxE;AAED,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,EACtB,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,SAAI;;;;EA6CjB;AAID,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,UAShE"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/NumberInput/type.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;AAEtC,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMxE;AAED,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,EACtB,KAAK,CAAC,EAAE,MAAM,GACb;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;CACb,CAkCA"}
@@ -1,4 +1,9 @@
1
1
  /**
2
+ * This is how you import top-level functions.
3
+ *
4
+ * ```ts
5
+ * import { anyFunc } from '@tremolo-ui/functions'
6
+ * ```
2
7
  * @module top-level
3
8
  */
4
9
  export * from './math';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
@@ -48,6 +48,11 @@ export declare function radian(degree: number): number;
48
48
  * @category Math
49
49
  */
50
50
  export declare function degree(radian: number): number;
51
+ /**
52
+ *
53
+ * @category Math
54
+ */
55
+ export declare function mapValue(value: number, inMin: number, inMax: number, outMin: number, outMax: number): number;
51
56
  /**
52
57
  *
53
58
  * @category Math
@@ -1 +1 @@
1
- {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../../src/math.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAE5D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAKT;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,eAAe,EAAE,MAAM,EACvB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAQT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,UAKZ;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAOpD;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,UAEzD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAKlE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAElE;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,UAElC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,UAEpC"}
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../../src/math.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAE5D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAKT;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,eAAe,EAAE,MAAM,EACvB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAQT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,UAKZ;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAOpD;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,UAEzD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAKlE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAElE;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,UAGf;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,UAElC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,UAEpC"}
@@ -23,22 +23,35 @@ export declare function parseNoteName(noteName: string): {
23
23
  octave: number;
24
24
  };
25
25
  /**
26
- *
26
+ * Convert noteName to noteNumber
27
27
  * @category MIDI
28
28
  */
29
29
  export declare function noteNumber(noteName: string): number;
30
30
  /**
31
- *
31
+ * Convert noteNumber to noteName
32
32
  * @category MIDI
33
33
  */
34
34
  export declare function noteName(noteNumber: number): string;
35
35
  /**
36
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
36
37
  * @category MIDI
37
38
  */
38
39
  export declare function isWhiteKey(note: number | string): boolean;
40
+ /**
41
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
42
+ * @category MIDI
43
+ */
44
+ export declare function isBlackKey(note: number | string): boolean;
39
45
  /**
40
46
  * @category MIDI
41
47
  */
42
- export declare function isBlackKey(noteNumber: number | string): boolean;
43
48
  export declare const scaleNames: string[];
49
+ /**
50
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
51
+ * @param detune [cent]
52
+ * @param a4 A4 frequency [Hz]
53
+ * @returns frequency [Hz]
54
+ * @category MIDI
55
+ */
56
+ export declare function noteToFrequency(note: number | string, detune?: number, a4?: number): number;
44
57
  //# sourceMappingURL=midi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,SAAS,4EAaZ,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,UAI1C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,WAErD;AAED,eAAO,MAAM,UAAU,UAAoD,CAAA"}
1
+ {"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,SAAS,4EAaZ,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,UAI1C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}
@@ -8,10 +8,9 @@
8
8
  */
9
9
  export type Units = [string, number][];
10
10
  export declare function selectUnit(units: Units, value: number): [string, number];
11
- export declare function parseValue(inputString: string, units?: string | Units, digit?: number, defaultValue?: number): {
11
+ export declare function parseValue(inputString: string, units?: string | Units, digit?: number): {
12
12
  rawValue: number;
13
13
  formatValue: string;
14
14
  unit: string;
15
15
  };
16
- export declare function formatValue(value: number, units?: string | Units): string;
17
16
  //# sourceMappingURL=type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/NumberInput/type.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;AAEtC,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxE;AAED,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,EACtB,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,SAAI;;;;EA6CjB;AAID,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,UAShE"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/NumberInput/type.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;AAEtC,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMxE;AAED,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,EACtB,KAAK,CAAC,EAAE,MAAM,GACb;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;CACb,CAkCA"}
@@ -1,4 +1,9 @@
1
1
  /**
2
+ * This is how you import top-level functions.
3
+ *
4
+ * ```ts
5
+ * import { anyFunc } from '@tremolo-ui/functions'
6
+ * ```
2
7
  * @module top-level
3
8
  */
4
9
  export * from './math';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
@@ -48,6 +48,11 @@ export declare function radian(degree: number): number;
48
48
  * @category Math
49
49
  */
50
50
  export declare function degree(radian: number): number;
51
+ /**
52
+ *
53
+ * @category Math
54
+ */
55
+ export declare function mapValue(value: number, inMin: number, inMax: number, outMin: number, outMax: number): number;
51
56
  /**
52
57
  *
53
58
  * @category Math
@@ -1 +1 @@
1
- {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../../src/math.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAE5D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAKT;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,eAAe,EAAE,MAAM,EACvB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAQT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,UAKZ;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAOpD;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,UAEzD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAKlE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAElE;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,UAElC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,UAEpC"}
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../../src/math.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAE5D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAKT;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,eAAe,EAAE,MAAM,EACvB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAQT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,UAKZ;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAOpD;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,UAEzD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAKlE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAElE;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,UAGf;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,UAElC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,UAEpC"}
@@ -23,22 +23,35 @@ export declare function parseNoteName(noteName: string): {
23
23
  octave: number;
24
24
  };
25
25
  /**
26
- *
26
+ * Convert noteName to noteNumber
27
27
  * @category MIDI
28
28
  */
29
29
  export declare function noteNumber(noteName: string): number;
30
30
  /**
31
- *
31
+ * Convert noteNumber to noteName
32
32
  * @category MIDI
33
33
  */
34
34
  export declare function noteName(noteNumber: number): string;
35
35
  /**
36
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
36
37
  * @category MIDI
37
38
  */
38
39
  export declare function isWhiteKey(note: number | string): boolean;
40
+ /**
41
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
42
+ * @category MIDI
43
+ */
44
+ export declare function isBlackKey(note: number | string): boolean;
39
45
  /**
40
46
  * @category MIDI
41
47
  */
42
- export declare function isBlackKey(noteNumber: number | string): boolean;
43
48
  export declare const scaleNames: string[];
49
+ /**
50
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
51
+ * @param detune [cent]
52
+ * @param a4 A4 frequency [Hz]
53
+ * @returns frequency [Hz]
54
+ * @category MIDI
55
+ */
56
+ export declare function noteToFrequency(note: number | string, detune?: number, a4?: number): number;
44
57
  //# sourceMappingURL=midi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,SAAS,4EAaZ,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,UAI1C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,WAErD;AAED,eAAO,MAAM,UAAU,UAAoD,CAAA"}
1
+ {"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,SAAS,4EAaZ,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,UAI1C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}
package/dist/cjs/index.js CHANGED
@@ -90,6 +90,13 @@ function radian(degree) {
90
90
  function degree(radian) {
91
91
  return (180 * radian) / Math.PI;
92
92
  }
93
+ /**
94
+ *
95
+ * @category Math
96
+ */
97
+ function mapValue(value, inMin, inMax, outMin, outMax) {
98
+ return ((value - inMin) / (inMax - inMin)) * (outMax - outMin) + outMin;
99
+ }
93
100
  /**
94
101
  *
95
102
  * @category Math
@@ -185,7 +192,7 @@ function parseNoteName(noteName) {
185
192
  };
186
193
  }
187
194
  /**
188
- *
195
+ * Convert noteName to noteNumber
189
196
  * @category MIDI
190
197
  */
191
198
  function noteNumber(noteName) {
@@ -195,7 +202,7 @@ function noteNumber(noteName) {
195
202
  return noteIndex + 12 * (Number(octave) + 1) + accidentalValue;
196
203
  }
197
204
  /**
198
- *
205
+ * Convert noteNumber to noteName
199
206
  * @category MIDI
200
207
  */
201
208
  function noteName(noteNumber) {
@@ -204,6 +211,7 @@ function noteName(noteNumber) {
204
211
  return noteNames[noteIndex] + octave;
205
212
  }
206
213
  /**
214
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
207
215
  * @category MIDI
208
216
  */
209
217
  function isWhiteKey(note) {
@@ -217,12 +225,27 @@ function isWhiteKey(note) {
217
225
  mod(n, 12) == 11);
218
226
  }
219
227
  /**
228
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
220
229
  * @category MIDI
221
230
  */
222
- function isBlackKey(noteNumber) {
223
- return !isWhiteKey(noteNumber);
231
+ function isBlackKey(note) {
232
+ return !isWhiteKey(note);
224
233
  }
234
+ /**
235
+ * @category MIDI
236
+ */
225
237
  const scaleNames = ['major', 'minor', 'natural minor', 'pentatonic'];
238
+ /**
239
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
240
+ * @param detune [cent]
241
+ * @param a4 A4 frequency [Hz]
242
+ * @returns frequency [Hz]
243
+ * @category MIDI
244
+ */
245
+ function noteToFrequency(note, detune = 0, a4 = 440) {
246
+ const n = typeof note == 'string' ? noteNumber(note) : note;
247
+ return (a4 / 32) * 2 ** ((n - 9 + detune / 100) / 12);
248
+ }
226
249
 
227
250
  exports.clamp = clamp;
228
251
  exports.dbToGain = dbToGain;
@@ -233,11 +256,13 @@ exports.integerPart = integerPart;
233
256
  exports.isBlackKey = isBlackKey;
234
257
  exports.isEmpty = isEmpty;
235
258
  exports.isWhiteKey = isWhiteKey;
259
+ exports.mapValue = mapValue;
236
260
  exports.mod = mod;
237
261
  exports.normalizeValue = normalizeValue;
238
262
  exports.noteName = noteName;
239
263
  exports.noteNames = noteNames;
240
264
  exports.noteNumber = noteNumber;
265
+ exports.noteToFrequency = noteToFrequency;
241
266
  exports.parseNoteName = parseNoteName;
242
267
  exports.radian = radian;
243
268
  exports.rawValue = rawValue;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/math.ts","../../../src/util.ts","../../../src/midi.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":";;AAAA;;;AAGG;SACa,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW,EAAA;AAC3D,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5C;AAEA;;;AAGG;AACG,SAAU,cAAc,CAC5B,QAAgB,EAChB,GAAW,EACX,GAAW,EACX,IAAI,GAAG,CAAC,EAAA;IAER,IAAI,GAAG,IAAI,GAAG;AAAE,QAAA,MAAM,IAAI,UAAU,CAAC,yBAAyB,CAAC;IAC/D,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,GAAG,GAAG,KAAK,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC;AAC1B;AAEA;;;AAGG;AACG,SAAU,QAAQ,CACtB,eAAuB,EACvB,GAAW,EACX,GAAW,EACX,IAAI,GAAG,CAAC,EAAA;IAER,IAAI,GAAG,IAAI,GAAG;AAAE,QAAA,MAAM,IAAI,UAAU,CAAC,yBAAyB,CAAC;AAC/D,IAAA,MAAM,CAAC,GACL,IAAI,IAAI;UACJ,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC;UAC3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC7D,OAAO,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC;AAC9B;AAEA;;;AAGG;SACa,mBAAmB,CACjC,WAAmB,EACnB,GAAW,EACX,GAAW,EAAA;IAEX,IAAI,EAAE,GAAG,IAAI,WAAW,IAAI,WAAW,IAAI,GAAG,CAAC;AAC7C,QAAA,MAAM,IAAI,UAAU,CAAC,yCAAyC,CAAC;IACjE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,GAAG,GAAG,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC;AACpE;AAEA;;;AAGG;AACa,SAAA,SAAS,CAAC,KAAa,EAAE,IAAY,EAAA;;IACnD,IAAI,IAAI,IAAI,CAAC;AAAE,QAAA,MAAM,IAAI,UAAU,CAAC,wBAAwB,CAAC;IAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;IACzC,MAAM,aAAa,GAAG,CAAA,EAAA,GAAA,WAAW,CAAC,IAAI,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,MAAM;IAC/C,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,EAAE,aAAa,CAAC;AACjD,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,QAAQ,GAAG,CAAC,IAAI,IAAI,EAAE,aAAa,CAAC;IAC1D,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI;AAChE;AAEA;;;AAGG;AACa,SAAA,OAAO,CAAC,CAAS,EAAE,cAAuB,EAAA;IACxD,OAAO,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AAC1C;AAEA;;;AAGG;AACG,SAAU,WAAW,CAAC,CAAkB,EAAA;AAC5C,IAAA,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AACnB,QAAA,OAAO,SAAS;;AAElB,IAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAChC;AAEA;;;AAGG;AACG,SAAU,WAAW,CAAC,CAAkB,EAAA;AAC5C,IAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAChC;AAEA;;;AAGG;AACG,SAAU,MAAM,CAAC,MAAc,EAAA;IACnC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,IAAI,GAAG;AACjC;AAEA;;;AAGG;AACG,SAAU,MAAM,CAAC,MAAc,EAAA;IACnC,OAAO,CAAC,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,EAAE;AACjC;AAEA;;;AAGG;AACG,SAAU,QAAQ,CAAC,EAAU,EAAA;IACjC,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;AAC9B;AAEA;;;AAGG;AACG,SAAU,QAAQ,CAAC,IAAY,EAAA;AACnC,IAAA,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;AAC1C;;SClHgB,WAAW,CACzB,KAAsB,EACtB,EAAa,EACb,UAAmB,EAAA;AAEnB,IAAA,IAAI,EAAE,IAAI,UAAU,EAAE;AACpB,QAAA,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE;YAC5B,IAAI,EAAE,IAAI,GAAG;AAAE,gBAAA,OAAO,CAAG,EAAA,KAAK,GAAG,UAAU,IAAI;YAC/C,IAAI,EAAE,IAAI,GAAG;AAAE,gBAAA,OAAO,CAAG,EAAA,KAAK,GAAG,UAAU,IAAI;YAC/C,IAAI,EAAE,IAAI,GAAG;AAAE,gBAAA,OAAO,CAAG,EAAA,KAAK,GAAG,UAAU,IAAI;YAC/C,IAAI,EAAE,IAAI,GAAG;AAAE,gBAAA,OAAO,CAAG,EAAA,KAAK,GAAG,UAAU,IAAI;;aAC1C;AACL,YAAA,OAAO,QAAQ,KAAK,CAAA,GAAA,EAAM,EAAE,CAAI,CAAA,EAAA,UAAU,GAAG;;;SAE1C;AACL,QAAA,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE;YAC5B,OAAO,CAAA,EAAG,KAAK,CAAA,EAAA,CAAI;;aACd;AACL,YAAA,OAAO,KAAK;;;AAGlB;AAEA;;AAEG;AACG,SAAU,OAAO,CAAC,GAAW,EAAA;IACjC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC;AACrC;AAEA;;AAEG;AACa,SAAA,GAAG,CAAC,CAAS,EAAE,CAAS,EAAA;IACtC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;AAC1B;AAEA;;AAEG;AACG,SAAU,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAAA;IACtC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC3B;;ACnDA;;AAEG;AACU,MAAA,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;AAO3D;;AAEG;AACU,MAAA,SAAS,GAAG;IACvB,GAAG;IACH,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,GAAG;IACH,GAAG;IACH,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,GAAG;;AAQL;;AAEG;AACG,SAAU,aAAa,CAAC,QAAgB,EAAA;IAC5C,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,kCAAkC,CAAC;AAC5D,IAAA,IAAI,CAAC,CAAC;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAC5C,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC;IACxC,OAAO;AACL,QAAA,MAAM,EAAE,MAAM,CAAC,iBAAiB,EAAc;AAC9C,QAAA,UAAU,EAAE,UAA0C;AACtD,QAAA,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;KACvB;AACH;AAEA;;;AAGG;AACG,SAAU,UAAU,CAAC,QAAgB,EAAA;AACzC,IAAA,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,QAAQ,CAAC;IAC9D,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAc,CAAC;IAC3E,MAAM,eAAe,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,EAAE,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM;AAC3E,IAAA,OAAO,SAAS,GAAG,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,eAAe;AAChE;AAEA;;;AAGG;AACG,SAAU,QAAQ,CAAC,UAAkB,EAAA;IACzC,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC;AACrC,IAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,GAAG,CAAC;AAC9C,IAAA,OAAO,SAAS,CAAC,SAAS,CAAC,GAAG,MAAM;AACtC;AAEA;;AAEG;AACG,SAAU,UAAU,CAAC,IAAqB,EAAA;AAC9C,IAAA,MAAM,CAAC,GAAG,OAAO,IAAI,IAAI,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAC3D,QACE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;AACf,QAAA,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;AACf,QAAA,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;AACf,QAAA,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;AACf,QAAA,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;AACf,QAAA,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;QACf,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE;AAEpB;AAEA;;AAEG;AACG,SAAU,UAAU,CAAC,UAA2B,EAAA;AACpD,IAAA,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;AAChC;AAEO,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/math.ts","../../../src/util.ts","../../../src/midi.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}
@@ -8,10 +8,9 @@
8
8
  */
9
9
  export type Units = [string, number][];
10
10
  export declare function selectUnit(units: Units, value: number): [string, number];
11
- export declare function parseValue(inputString: string, units?: string | Units, digit?: number, defaultValue?: number): {
11
+ export declare function parseValue(inputString: string, units?: string | Units, digit?: number): {
12
12
  rawValue: number;
13
13
  formatValue: string;
14
14
  unit: string;
15
15
  };
16
- export declare function formatValue(value: number, units?: string | Units): string;
17
16
  //# sourceMappingURL=type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../src/components/NumberInput/type.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;AAEtC,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxE;AAED,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,EACtB,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,SAAI;;;;EA6CjB;AAID,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,UAShE"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../src/components/NumberInput/type.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;AAEtC,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMxE;AAED,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,EACtB,KAAK,CAAC,EAAE,MAAM,GACb;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;CACb,CAkCA"}
@@ -1,4 +1,9 @@
1
1
  /**
2
+ * This is how you import top-level functions.
3
+ *
4
+ * ```ts
5
+ * import { anyFunc } from '@tremolo-ui/functions'
6
+ * ```
2
7
  * @module top-level
3
8
  */
4
9
  export * from './math';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
@@ -48,6 +48,11 @@ export declare function radian(degree: number): number;
48
48
  * @category Math
49
49
  */
50
50
  export declare function degree(radian: number): number;
51
+ /**
52
+ *
53
+ * @category Math
54
+ */
55
+ export declare function mapValue(value: number, inMin: number, inMax: number, outMin: number, outMax: number): number;
51
56
  /**
52
57
  *
53
58
  * @category Math
@@ -1 +1 @@
1
- {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../src/math.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAE5D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAKT;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,eAAe,EAAE,MAAM,EACvB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAQT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,UAKZ;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAOpD;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,UAEzD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAKlE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAElE;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,UAElC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,UAEpC"}
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../src/math.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAE5D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAKT;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,eAAe,EAAE,MAAM,EACvB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,SAAI,UAQT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,UAKZ;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAOpD;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,UAEzD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAKlE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAElE;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,UAEpC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,UAGf;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,UAElC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,UAEpC"}
@@ -23,22 +23,35 @@ export declare function parseNoteName(noteName: string): {
23
23
  octave: number;
24
24
  };
25
25
  /**
26
- *
26
+ * Convert noteName to noteNumber
27
27
  * @category MIDI
28
28
  */
29
29
  export declare function noteNumber(noteName: string): number;
30
30
  /**
31
- *
31
+ * Convert noteNumber to noteName
32
32
  * @category MIDI
33
33
  */
34
34
  export declare function noteName(noteNumber: number): string;
35
35
  /**
36
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
36
37
  * @category MIDI
37
38
  */
38
39
  export declare function isWhiteKey(note: number | string): boolean;
40
+ /**
41
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
42
+ * @category MIDI
43
+ */
44
+ export declare function isBlackKey(note: number | string): boolean;
39
45
  /**
40
46
  * @category MIDI
41
47
  */
42
- export declare function isBlackKey(noteNumber: number | string): boolean;
43
48
  export declare const scaleNames: string[];
49
+ /**
50
+ * @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
51
+ * @param detune [cent]
52
+ * @param a4 A4 frequency [Hz]
53
+ * @returns frequency [Hz]
54
+ * @category MIDI
55
+ */
56
+ export declare function noteToFrequency(note: number | string, detune?: number, a4?: number): number;
44
57
  //# sourceMappingURL=midi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,SAAS,4EAaZ,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,UAI1C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,WAErD;AAED,eAAO,MAAM,UAAU,UAAoD,CAAA"}
1
+ {"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,SAAS,4EAaZ,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,UAI1C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}