Socket
Socket
Sign inDemoInstall

array-notation

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

array-notation - npm Package Compare versions

Comparing version 1.0.1 to 1.1.0

coverage/lcov-report/array-notation/index.js.html

73

API.md

@@ -25,2 +25,17 @@ ## `interval.parse`

## `interval.regex`
A regex for parse intervals in shorthand notation
Three different shorthand notations are supported:
- default [direction][number][quality]: the preferred style `3M`, `-5A`
- strict: [quality][direction][number], for example: `M3`, `A-5`
- altered: [direction][number][alterations]: `3`, `-5#`
## `interval.str`

@@ -51,2 +66,30 @@

## `notation`
Decorate a function to work with intervals, notes or pitches in
[array notation](https://github.com/danigb/tonal/tree/next/packages/array-notation)
with independence of string representations.
This is the base of the pluggable notation system of
[tonal](https://github.com/danigb/tonal)
### Parameters
* `parse` **`Function`** the parser
* `str` **`Function`** the string builder
* `op` **`Function`** the operation to decorate
### Examples
```js
var parse = require('array-notation/interval/parse')
var str = require('array-notation/interval/str')
var intervalNotation = require('array-notation')(parse, str)
var add = intervalNotation(function(a, b) { return [a[0] + b[0], a[1] + b[1]] })
add('3m', '3M') // => '5P'
```
## `note.parse`

@@ -140,32 +183,2 @@

## `operation`
Decorate a function to work with intervals, notes or pitches in
[array notation](https://github.com/danigb/tonal/tree/next/packages/array-notation)
with independence of string representations.
This is the base of the pluggable notation system of
[tonal](https://github.com/danigb/tonal)
### Parameters
* `parse` **`Function`** the parser
* `str` **`Function`** the string builder
* `op` **`Function`** the operation to decorate
### Examples
```js
var operation = require('array-notation/operation')
var parse = require('array-notation/interval/parse')
var str = require('array-notation/interval/str')
var add = operation(parse, str, function(a, b) {
return [a[0] + b[0], a[1] + b[1]]
})
add('3m', '3M') // => '5P'
```
## `pitch.parse`

@@ -172,0 +185,0 @@

@@ -1,1 +0,1 @@

{"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/parse.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/parse.js","s":{"1":1,"2":1,"3":1,"4":1,"5":135,"6":135,"7":4,"8":131,"9":131,"10":131,"11":35,"12":131,"13":131,"14":42,"15":89,"16":89,"17":89},"b":{"1":[4,131],"2":[135,134],"3":[35,96],"4":[42,89],"5":[11,78]},"f":{"1":135},"fnMap":{"1":{"name":"(anonymous_1)","line":32,"loc":{"start":{"line":32,"column":25},"end":{"line":32,"column":40}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":39}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":26}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":96}},"4":{"start":{"line":32,"column":0},"end":{"line":44,"column":2}},"5":{"start":{"line":33,"column":2},"end":{"line":33,"column":21}},"6":{"start":{"line":34,"column":2},"end":{"line":34,"column":29}},"7":{"start":{"line":34,"column":18},"end":{"line":34,"column":29}},"8":{"start":{"line":36,"column":2},"end":{"line":36,"column":38}},"9":{"start":{"line":37,"column":2},"end":{"line":37,"column":43}},"10":{"start":{"line":38,"column":2},"end":{"line":38,"column":32}},"11":{"start":{"line":38,"column":23},"end":{"line":38,"column":32}},"12":{"start":{"line":39,"column":2},"end":{"line":39,"column":32}},"13":{"start":{"line":40,"column":2},"end":{"line":40,"column":28}},"14":{"start":{"line":40,"column":13},"end":{"line":40,"column":28}},"15":{"start":{"line":41,"column":2},"end":{"line":41,"column":37}},"16":{"start":{"line":42,"column":2},"end":{"line":42,"column":46}},"17":{"start":{"line":43,"column":2},"end":{"line":43,"column":27}}},"branchMap":{"1":{"line":34,"type":"if","locations":[{"start":{"line":34,"column":2},"end":{"line":34,"column":2}},{"start":{"line":34,"column":2},"end":{"line":34,"column":2}}]},"2":{"line":34,"type":"binary-expr","locations":[{"start":{"line":34,"column":6},"end":{"line":34,"column":8}},{"start":{"line":34,"column":12},"end":{"line":34,"column":16}}]},"3":{"line":38,"type":"if","locations":[{"start":{"line":38,"column":2},"end":{"line":38,"column":2}},{"start":{"line":38,"column":2},"end":{"line":38,"column":2}}]},"4":{"line":40,"type":"if","locations":[{"start":{"line":40,"column":2},"end":{"line":40,"column":2}},{"start":{"line":40,"column":2},"end":{"line":40,"column":2}}]},"5":{"line":42,"type":"cond-expr","locations":[{"start":{"line":42,"column":19},"end":{"line":42,"column":39}},{"start":{"line":42,"column":42},"end":{"line":42,"column":46}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/memoize.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/memoize.js","s":{"1":1,"2":3,"3":3,"4":445,"5":8,"6":437},"b":{"1":[8,437],"2":[195,242]},"f":{"1":3,"2":445},"fnMap":{"1":{"name":"(anonymous_1)","line":15,"loc":{"start":{"line":15,"column":17},"end":{"line":15,"column":31}}},"2":{"name":"(anonymous_2)","line":17,"loc":{"start":{"line":17,"column":9},"end":{"line":17,"column":24}}}},"statementMap":{"1":{"start":{"line":15,"column":0},"end":{"line":21,"column":1}},"2":{"start":{"line":16,"column":2},"end":{"line":16,"column":16}},"3":{"start":{"line":17,"column":2},"end":{"line":20,"column":3}},"4":{"start":{"line":18,"column":4},"end":{"line":18,"column":44}},"5":{"start":{"line":18,"column":33},"end":{"line":18,"column":44}},"6":{"start":{"line":19,"column":4},"end":{"line":19,"column":61}}},"branchMap":{"1":{"line":18,"type":"if","locations":[{"start":{"line":18,"column":4},"end":{"line":18,"column":4}},{"start":{"line":18,"column":4},"end":{"line":18,"column":4}}]},"2":{"line":19,"type":"cond-expr","locations":[{"start":{"line":19,"column":28},"end":{"line":19,"column":38}},{"start":{"line":19,"column":41},"end":{"line":19,"column":61}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/regex.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/regex.js","s":{"1":1},"b":{},"f":{},"fnMap":{},"statementMap":{"1":{"start":{"line":22,"column":0},"end":{"line":22,"column":76}}},"branchMap":{}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/parse.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/parse.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":77,"8":77,"9":1,"10":76,"11":76,"12":76,"13":76,"14":76,"15":29,"16":47,"17":8,"18":39,"19":15,"20":24,"21":24,"22":2,"23":74,"24":74},"b":{"1":[1,76],"2":[16,60],"3":[29,47],"4":[8,39],"5":[15,24],"6":[2,22]},"f":{"1":77},"fnMap":{"1":{"name":"(anonymous_1)","line":29,"loc":{"start":{"line":29,"column":25},"end":{"line":29,"column":40}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":39}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":40}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":67}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":21}},"5":{"start":{"line":7,"column":0},"end":{"line":10,"column":1}},"6":{"start":{"line":29,"column":0},"end":{"line":47,"column":2}},"7":{"start":{"line":30,"column":2},"end":{"line":30,"column":28}},"8":{"start":{"line":31,"column":2},"end":{"line":31,"column":21}},"9":{"start":{"line":31,"column":10},"end":{"line":31,"column":21}},"10":{"start":{"line":32,"column":2},"end":{"line":32,"column":33}},"11":{"start":{"line":33,"column":2},"end":{"line":33,"column":21}},"12":{"start":{"line":35,"column":2},"end":{"line":35,"column":22}},"13":{"start":{"line":37,"column":2},"end":{"line":37,"column":9}},"14":{"start":{"line":38,"column":2},"end":{"line":44,"column":3}},"15":{"start":{"line":38,"column":19},"end":{"line":38,"column":26}},"16":{"start":{"line":39,"column":7},"end":{"line":44,"column":3}},"17":{"start":{"line":39,"column":28},"end":{"line":39,"column":45}},"18":{"start":{"line":40,"column":7},"end":{"line":44,"column":3}},"19":{"start":{"line":40,"column":28},"end":{"line":40,"column":46}},"20":{"start":{"line":42,"column":4},"end":{"line":42,"column":35}},"21":{"start":{"line":43,"column":4},"end":{"line":43,"column":47}},"22":{"start":{"line":43,"column":36},"end":{"line":43,"column":47}},"23":{"start":{"line":45,"column":2},"end":{"line":45,"column":31}},"24":{"start":{"line":46,"column":2},"end":{"line":46,"column":37}}},"branchMap":{"1":{"line":31,"type":"if","locations":[{"start":{"line":31,"column":2},"end":{"line":31,"column":2}},{"start":{"line":31,"column":2},"end":{"line":31,"column":2}}]},"2":{"line":32,"type":"cond-expr","locations":[{"start":{"line":32,"column":27},"end":{"line":32,"column":29}},{"start":{"line":32,"column":32},"end":{"line":32,"column":33}}]},"3":{"line":38,"type":"if","locations":[{"start":{"line":38,"column":2},"end":{"line":38,"column":2}},{"start":{"line":38,"column":2},"end":{"line":38,"column":2}}]},"4":{"line":39,"type":"if","locations":[{"start":{"line":39,"column":7},"end":{"line":39,"column":7}},{"start":{"line":39,"column":7},"end":{"line":39,"column":7}}]},"5":{"line":40,"type":"if","locations":[{"start":{"line":40,"column":7},"end":{"line":40,"column":7}},{"start":{"line":40,"column":7},"end":{"line":40,"column":7}}]},"6":{"line":43,"type":"if","locations":[{"start":{"line":43,"column":4},"end":{"line":43,"column":4}},{"start":{"line":43,"column":4},"end":{"line":43,"column":4}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/props-to-arr.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/props-to-arr.js","s":{"1":1,"2":1,"3":102,"4":102,"5":28,"6":74},"b":{"1":[28,74]},"f":{"1":102},"fnMap":{"1":{"name":"(anonymous_1)","line":15,"loc":{"start":{"line":15,"column":17},"end":{"line":15,"column":30}}}},"statementMap":{"1":{"start":{"line":4,"column":0},"end":{"line":4,"column":75}},"2":{"start":{"line":15,"column":0},"end":{"line":19,"column":1}},"3":{"start":{"line":16,"column":2},"end":{"line":16,"column":24}},"4":{"start":{"line":17,"column":2},"end":{"line":17,"column":49}},"5":{"start":{"line":17,"column":22},"end":{"line":17,"column":49}},"6":{"start":{"line":18,"column":2},"end":{"line":18,"column":74}}},"branchMap":{"1":{"line":17,"type":"if","locations":[{"start":{"line":17,"column":2},"end":{"line":17,"column":2}},{"start":{"line":17,"column":2},"end":{"line":17,"column":2}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/array-props.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/array-props.js","s":{"1":1,"2":1,"3":260,"4":4,"5":256,"6":256,"7":47,"8":256,"9":256,"10":256,"11":256,"12":256},"b":{"1":[4,256],"2":[47,209],"3":[77,179],"4":[256,249]},"f":{"1":260},"fnMap":{"1":{"name":"(anonymous_1)","line":22,"loc":{"start":{"line":22,"column":17},"end":{"line":22,"column":32}}}},"statementMap":{"1":{"start":{"line":5,"column":0},"end":{"line":5,"column":81}},"2":{"start":{"line":22,"column":0},"end":{"line":31,"column":1}},"3":{"start":{"line":23,"column":2},"end":{"line":23,"column":38}},"4":{"start":{"line":23,"column":27},"end":{"line":23,"column":38}},"5":{"start":{"line":24,"column":2},"end":{"line":24,"column":30}},"6":{"start":{"line":25,"column":2},"end":{"line":25,"column":34}},"7":{"start":{"line":25,"column":17},"end":{"line":25,"column":34}},"8":{"start":{"line":26,"column":2},"end":{"line":26,"column":25}},"9":{"start":{"line":27,"column":2},"end":{"line":27,"column":42}},"10":{"start":{"line":28,"column":2},"end":{"line":28,"column":66}},"11":{"start":{"line":29,"column":2},"end":{"line":29,"column":26}},"12":{"start":{"line":30,"column":2},"end":{"line":30,"column":35}}},"branchMap":{"1":{"line":23,"type":"if","locations":[{"start":{"line":23,"column":2},"end":{"line":23,"column":2}},{"start":{"line":23,"column":2},"end":{"line":23,"column":2}}]},"2":{"line":25,"type":"if","locations":[{"start":{"line":25,"column":2},"end":{"line":25,"column":2}},{"start":{"line":25,"column":2},"end":{"line":25,"column":2}}]},"3":{"line":28,"type":"cond-expr","locations":[{"start":{"line":28,"column":31},"end":{"line":28,"column":35}},{"start":{"line":28,"column":38},"end":{"line":28,"column":66}}]},"4":{"line":29,"type":"binary-expr","locations":[{"start":{"line":29,"column":12},"end":{"line":29,"column":18}},{"start":{"line":29,"column":22},"end":{"line":29,"column":26}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/str.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/str.js","s":{"1":1,"2":1,"3":1,"4":46,"5":5,"6":41,"7":41,"8":1,"9":1,"10":1,"11":38,"12":38,"13":38,"14":38,"15":7,"16":7,"17":7,"18":31,"19":31,"20":31,"21":38,"22":38},"b":{"1":[5,41],"2":[46,42],"3":[3,38],"4":[7,31],"5":[3,4]},"f":{"1":46,"2":38},"fnMap":{"1":{"name":"(anonymous_1)","line":24,"loc":{"start":{"line":24,"column":17},"end":{"line":24,"column":32}}},"2":{"name":"build","line":36,"loc":{"start":{"line":36,"column":0},"end":{"line":36,"column":23}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":41}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":14}},"3":{"start":{"line":24,"column":0},"end":{"line":28,"column":1}},"4":{"start":{"line":25,"column":2},"end":{"line":25,"column":58}},"5":{"start":{"line":25,"column":47},"end":{"line":25,"column":58}},"6":{"start":{"line":26,"column":2},"end":{"line":26,"column":39}},"7":{"start":{"line":27,"column":2},"end":{"line":27,"column":60}},"8":{"start":{"line":30,"column":0},"end":{"line":33,"column":1}},"9":{"start":{"line":34,"column":0},"end":{"line":34,"column":21}},"10":{"start":{"line":36,"column":0},"end":{"line":53,"column":1}},"11":{"start":{"line":37,"column":2},"end":{"line":37,"column":22}},"12":{"start":{"line":38,"column":2},"end":{"line":38,"column":21}},"13":{"start":{"line":40,"column":2},"end":{"line":40,"column":19}},"14":{"start":{"line":42,"column":2},"end":{"line":50,"column":3}},"15":{"start":{"line":43,"column":4},"end":{"line":43,"column":12}},"16":{"start":{"line":44,"column":4},"end":{"line":44,"column":37}},"17":{"start":{"line":45,"column":4},"end":{"line":45,"column":41}},"18":{"start":{"line":47,"column":4},"end":{"line":47,"column":11}},"19":{"start":{"line":48,"column":4},"end":{"line":48,"column":29}},"20":{"start":{"line":49,"column":4},"end":{"line":49,"column":14}},"21":{"start":{"line":51,"column":2},"end":{"line":51,"column":27}},"22":{"start":{"line":52,"column":2},"end":{"line":52,"column":22}}},"branchMap":{"1":{"line":25,"type":"if","locations":[{"start":{"line":25,"column":2},"end":{"line":25,"column":2}},{"start":{"line":25,"column":2},"end":{"line":25,"column":2}}]},"2":{"line":25,"type":"binary-expr","locations":[{"start":{"line":25,"column":6},"end":{"line":25,"column":25}},{"start":{"line":25,"column":29},"end":{"line":25,"column":45}}]},"3":{"line":27,"type":"cond-expr","locations":[{"start":{"line":27,"column":24},"end":{"line":27,"column":34}},{"start":{"line":27,"column":37},"end":{"line":27,"column":60}}]},"4":{"line":42,"type":"if","locations":[{"start":{"line":42,"column":2},"end":{"line":42,"column":2}},{"start":{"line":42,"column":2},"end":{"line":42,"column":2}}]},"5":{"line":45,"type":"cond-expr","locations":[{"start":{"line":45,"column":22},"end":{"line":45,"column":27}},{"start":{"line":45,"column":30},"end":{"line":45,"column":41}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/str.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/str.js","s":{"1":1,"2":1,"3":1,"4":71,"5":6,"6":65,"7":65,"8":1,"9":64,"10":14,"11":50,"12":21,"13":29,"14":1,"15":1,"16":64,"17":64},"b":{"1":[6,65],"2":[71,67,66],"3":[1,64],"4":[14,50],"5":[21,29],"6":[36,28],"7":[7,57]},"f":{"1":71,"2":64,"3":64},"fnMap":{"1":{"name":"(anonymous_1)","line":29,"loc":{"start":{"line":29,"column":17},"end":{"line":29,"column":32}}},"2":{"name":"accidentals","line":35,"loc":{"start":{"line":35,"column":0},"end":{"line":35,"column":27}}},"3":{"name":"build","line":42,"loc":{"start":{"line":42,"column":0},"end":{"line":42,"column":23}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":41}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":14}},"3":{"start":{"line":29,"column":0},"end":{"line":33,"column":1}},"4":{"start":{"line":30,"column":2},"end":{"line":30,"column":76}},"5":{"start":{"line":30,"column":65},"end":{"line":30,"column":76}},"6":{"start":{"line":31,"column":2},"end":{"line":31,"column":54}},"7":{"start":{"line":32,"column":2},"end":{"line":32,"column":60}},"8":{"start":{"line":35,"column":0},"end":{"line":39,"column":1}},"9":{"start":{"line":36,"column":2},"end":{"line":38,"column":16}},"10":{"start":{"line":36,"column":15},"end":{"line":36,"column":47}},"11":{"start":{"line":37,"column":7},"end":{"line":38,"column":16}},"12":{"start":{"line":37,"column":20},"end":{"line":37,"column":51}},"13":{"start":{"line":38,"column":7},"end":{"line":38,"column":16}},"14":{"start":{"line":41,"column":0},"end":{"line":41,"column":48}},"15":{"start":{"line":42,"column":0},"end":{"line":45,"column":1}},"16":{"start":{"line":43,"column":2},"end":{"line":43,"column":22}},"17":{"start":{"line":44,"column":2},"end":{"line":44,"column":107}}},"branchMap":{"1":{"line":30,"type":"if","locations":[{"start":{"line":30,"column":2},"end":{"line":30,"column":2}},{"start":{"line":30,"column":2},"end":{"line":30,"column":2}}]},"2":{"line":30,"type":"binary-expr","locations":[{"start":{"line":30,"column":6},"end":{"line":30,"column":25}},{"start":{"line":30,"column":29},"end":{"line":30,"column":43}},{"start":{"line":30,"column":47},"end":{"line":30,"column":63}}]},"3":{"line":32,"type":"cond-expr","locations":[{"start":{"line":32,"column":24},"end":{"line":32,"column":34}},{"start":{"line":32,"column":37},"end":{"line":32,"column":60}}]},"4":{"line":36,"type":"if","locations":[{"start":{"line":36,"column":2},"end":{"line":36,"column":2}},{"start":{"line":36,"column":2},"end":{"line":36,"column":2}}]},"5":{"line":37,"type":"if","locations":[{"start":{"line":37,"column":7},"end":{"line":37,"column":7}},{"start":{"line":37,"column":7},"end":{"line":37,"column":7}}]},"6":{"line":44,"type":"cond-expr","locations":[{"start":{"line":44,"column":61},"end":{"line":44,"column":65}},{"start":{"line":44,"column":68},"end":{"line":44,"column":70}}]},"7":{"line":44,"type":"cond-expr","locations":[{"start":{"line":44,"column":91},"end":{"line":44,"column":101}},{"start":{"line":44,"column":104},"end":{"line":44,"column":106}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/operation.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/operation.js","s":{"1":1,"2":3,"3":1,"4":2,"5":4,"6":1,"7":1,"8":3,"9":1,"10":3,"11":6,"12":6,"13":6,"14":2,"15":4,"16":4},"b":{"1":[1,2],"2":[1,3],"3":[2,4],"4":[6,2],"5":[4,0],"6":[4,2],"7":[4,1]},"f":{"1":3,"2":4,"3":1,"4":3,"5":6},"fnMap":{"1":{"name":"curry","line":3,"loc":{"start":{"line":3,"column":0},"end":{"line":3,"column":27}}},"2":{"name":"(anonymous_2)","line":5,"loc":{"start":{"line":5,"column":9},"end":{"line":5,"column":25}}},"3":{"name":"(anonymous_3)","line":6,"loc":{"start":{"line":6,"column":39},"end":{"line":6,"column":52}}},"4":{"name":"(anonymous_4)","line":34,"loc":{"start":{"line":34,"column":17},"end":{"line":34,"column":43}}},"5":{"name":"(anonymous_5)","line":35,"loc":{"start":{"line":35,"column":15},"end":{"line":35,"column":31}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":9,"column":1}},"2":{"start":{"line":4,"column":2},"end":{"line":4,"column":28}},"3":{"start":{"line":4,"column":19},"end":{"line":4,"column":28}},"4":{"start":{"line":5,"column":2},"end":{"line":8,"column":3}},"5":{"start":{"line":6,"column":4},"end":{"line":6,"column":71}},"6":{"start":{"line":6,"column":32},"end":{"line":6,"column":71}},"7":{"start":{"line":6,"column":54},"end":{"line":6,"column":70}},"8":{"start":{"line":7,"column":4},"end":{"line":7,"column":19}},"9":{"start":{"line":34,"column":0},"end":{"line":42,"column":1}},"10":{"start":{"line":35,"column":2},"end":{"line":41,"column":15}},"11":{"start":{"line":36,"column":4},"end":{"line":36,"column":21}},"12":{"start":{"line":37,"column":4},"end":{"line":37,"column":21}},"13":{"start":{"line":38,"column":4},"end":{"line":38,"column":35}},"14":{"start":{"line":38,"column":20},"end":{"line":38,"column":35}},"15":{"start":{"line":39,"column":4},"end":{"line":39,"column":32}},"16":{"start":{"line":40,"column":4},"end":{"line":40,"column":22}}},"branchMap":{"1":{"line":4,"type":"if","locations":[{"start":{"line":4,"column":2},"end":{"line":4,"column":2}},{"start":{"line":4,"column":2},"end":{"line":4,"column":2}}]},"2":{"line":6,"type":"if","locations":[{"start":{"line":6,"column":4},"end":{"line":6,"column":4}},{"start":{"line":6,"column":4},"end":{"line":6,"column":4}}]},"3":{"line":38,"type":"if","locations":[{"start":{"line":38,"column":4},"end":{"line":38,"column":4}},{"start":{"line":38,"column":4},"end":{"line":38,"column":4}}]},"4":{"line":38,"type":"binary-expr","locations":[{"start":{"line":38,"column":8},"end":{"line":38,"column":11}},{"start":{"line":38,"column":15},"end":{"line":38,"column":18}}]},"5":{"line":39,"type":"binary-expr","locations":[{"start":{"line":39,"column":15},"end":{"line":39,"column":17}},{"start":{"line":39,"column":21},"end":{"line":39,"column":22}}]},"6":{"line":39,"type":"binary-expr","locations":[{"start":{"line":39,"column":24},"end":{"line":39,"column":26}},{"start":{"line":39,"column":30},"end":{"line":39,"column":31}}]},"7":{"line":40,"type":"binary-expr","locations":[{"start":{"line":40,"column":11},"end":{"line":40,"column":17}},{"start":{"line":40,"column":21},"end":{"line":40,"column":22}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/pitch/parse.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/pitch/parse.js","s":{"1":1,"2":1,"3":1,"4":5},"b":{"1":[5,3]},"f":{"1":5},"fnMap":{"1":{"name":"(anonymous_1)","line":17,"loc":{"start":{"line":17,"column":17},"end":{"line":17,"column":30}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":35}},"2":{"start":{"line":2,"column":0},"end":{"line":2,"column":43}},"3":{"start":{"line":17,"column":0},"end":{"line":17,"column":63}},"4":{"start":{"line":17,"column":32},"end":{"line":17,"column":62}}},"branchMap":{"1":{"line":17,"type":"binary-expr","locations":[{"start":{"line":17,"column":39},"end":{"line":17,"column":46}},{"start":{"line":17,"column":50},"end":{"line":17,"column":61}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/pitch/str.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/pitch/str.js","s":{"1":1,"2":1,"3":1,"4":3},"b":{"1":[3,1]},"f":{"1":3},"fnMap":{"1":{"name":"(anonymous_1)","line":22,"loc":{"start":{"line":22,"column":17},"end":{"line":22,"column":30}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":33}},"2":{"start":{"line":2,"column":0},"end":{"line":2,"column":41}},"3":{"start":{"line":22,"column":0},"end":{"line":22,"column":63}},"4":{"start":{"line":22,"column":32},"end":{"line":22,"column":62}}},"branchMap":{"1":{"line":22,"type":"binary-expr","locations":[{"start":{"line":22,"column":39},"end":{"line":22,"column":46}},{"start":{"line":22,"column":50},"end":{"line":22,"column":61}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/roman/parse.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/roman/parse.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":30,"7":30,"8":2,"9":28,"10":28,"11":28,"12":7,"13":28},"b":{"1":[2,28],"2":[30,29],"3":[7,21]},"f":{"1":30},"fnMap":{"1":{"name":"(anonymous_1)","line":23,"loc":{"start":{"line":23,"column":25},"end":{"line":23,"column":40}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":39}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":26}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"4":{"start":{"line":7,"column":0},"end":{"line":7,"column":59}},"5":{"start":{"line":23,"column":0},"end":{"line":30,"column":2}},"6":{"start":{"line":24,"column":2},"end":{"line":24,"column":21}},"7":{"start":{"line":25,"column":2},"end":{"line":25,"column":29}},"8":{"start":{"line":25,"column":18},"end":{"line":25,"column":29}},"9":{"start":{"line":26,"column":2},"end":{"line":26,"column":35}},"10":{"start":{"line":27,"column":2},"end":{"line":27,"column":23}},"11":{"start":{"line":28,"column":2},"end":{"line":28,"column":33}},"12":{"start":{"line":28,"column":23},"end":{"line":28,"column":33}},"13":{"start":{"line":29,"column":2},"end":{"line":29,"column":26}}},"branchMap":{"1":{"line":25,"type":"if","locations":[{"start":{"line":25,"column":2},"end":{"line":25,"column":2}},{"start":{"line":25,"column":2},"end":{"line":25,"column":2}}]},"2":{"line":25,"type":"binary-expr","locations":[{"start":{"line":25,"column":6},"end":{"line":25,"column":8}},{"start":{"line":25,"column":12},"end":{"line":25,"column":16}}]},"3":{"line":28,"type":"if","locations":[{"start":{"line":28,"column":2},"end":{"line":28,"column":2}},{"start":{"line":28,"column":2},"end":{"line":28,"column":2}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/roman/regex.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/roman/regex.js","s":{"1":1},"b":{},"f":{},"fnMap":{},"statementMap":{"1":{"start":{"line":19,"column":0},"end":{"line":19,"column":89}}},"branchMap":{}}}
{"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/parse.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/parse.js","s":{"1":1,"2":1,"3":1,"4":1,"5":135,"6":135,"7":4,"8":131,"9":131,"10":131,"11":35,"12":131,"13":131,"14":42,"15":89,"16":89,"17":89},"b":{"1":[4,131],"2":[135,134],"3":[35,96],"4":[42,89],"5":[11,78]},"f":{"1":135},"fnMap":{"1":{"name":"(anonymous_1)","line":32,"loc":{"start":{"line":32,"column":25},"end":{"line":32,"column":40}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":39}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":26}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":96}},"4":{"start":{"line":32,"column":0},"end":{"line":44,"column":2}},"5":{"start":{"line":33,"column":2},"end":{"line":33,"column":21}},"6":{"start":{"line":34,"column":2},"end":{"line":34,"column":29}},"7":{"start":{"line":34,"column":18},"end":{"line":34,"column":29}},"8":{"start":{"line":36,"column":2},"end":{"line":36,"column":38}},"9":{"start":{"line":37,"column":2},"end":{"line":37,"column":43}},"10":{"start":{"line":38,"column":2},"end":{"line":38,"column":32}},"11":{"start":{"line":38,"column":23},"end":{"line":38,"column":32}},"12":{"start":{"line":39,"column":2},"end":{"line":39,"column":32}},"13":{"start":{"line":40,"column":2},"end":{"line":40,"column":28}},"14":{"start":{"line":40,"column":13},"end":{"line":40,"column":28}},"15":{"start":{"line":41,"column":2},"end":{"line":41,"column":37}},"16":{"start":{"line":42,"column":2},"end":{"line":42,"column":46}},"17":{"start":{"line":43,"column":2},"end":{"line":43,"column":27}}},"branchMap":{"1":{"line":34,"type":"if","locations":[{"start":{"line":34,"column":2},"end":{"line":34,"column":2}},{"start":{"line":34,"column":2},"end":{"line":34,"column":2}}]},"2":{"line":34,"type":"binary-expr","locations":[{"start":{"line":34,"column":6},"end":{"line":34,"column":8}},{"start":{"line":34,"column":12},"end":{"line":34,"column":16}}]},"3":{"line":38,"type":"if","locations":[{"start":{"line":38,"column":2},"end":{"line":38,"column":2}},{"start":{"line":38,"column":2},"end":{"line":38,"column":2}}]},"4":{"line":40,"type":"if","locations":[{"start":{"line":40,"column":2},"end":{"line":40,"column":2}},{"start":{"line":40,"column":2},"end":{"line":40,"column":2}}]},"5":{"line":42,"type":"cond-expr","locations":[{"start":{"line":42,"column":19},"end":{"line":42,"column":39}},{"start":{"line":42,"column":42},"end":{"line":42,"column":46}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/memoize.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/memoize.js","s":{"1":1,"2":3,"3":3,"4":449,"5":8,"6":441},"b":{"1":[8,441],"2":[196,245]},"f":{"1":3,"2":449},"fnMap":{"1":{"name":"(anonymous_1)","line":15,"loc":{"start":{"line":15,"column":17},"end":{"line":15,"column":31}}},"2":{"name":"(anonymous_2)","line":17,"loc":{"start":{"line":17,"column":9},"end":{"line":17,"column":24}}}},"statementMap":{"1":{"start":{"line":15,"column":0},"end":{"line":21,"column":1}},"2":{"start":{"line":16,"column":2},"end":{"line":16,"column":16}},"3":{"start":{"line":17,"column":2},"end":{"line":20,"column":3}},"4":{"start":{"line":18,"column":4},"end":{"line":18,"column":44}},"5":{"start":{"line":18,"column":33},"end":{"line":18,"column":44}},"6":{"start":{"line":19,"column":4},"end":{"line":19,"column":61}}},"branchMap":{"1":{"line":18,"type":"if","locations":[{"start":{"line":18,"column":4},"end":{"line":18,"column":4}},{"start":{"line":18,"column":4},"end":{"line":18,"column":4}}]},"2":{"line":19,"type":"cond-expr","locations":[{"start":{"line":19,"column":28},"end":{"line":19,"column":38}},{"start":{"line":19,"column":41},"end":{"line":19,"column":61}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/regex.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/regex.js","s":{"1":1},"b":{},"f":{},"fnMap":{},"statementMap":{"1":{"start":{"line":22,"column":0},"end":{"line":22,"column":76}}},"branchMap":{}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/parse.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/parse.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":80,"8":80,"9":1,"10":79,"11":79,"12":79,"13":79,"14":79,"15":79,"16":29,"17":50,"18":8,"19":42,"20":15,"21":27,"22":27,"23":2,"24":77,"25":77},"b":{"1":[1,79],"2":[18,61],"3":[79,62],"4":[79,2],"5":[79,31,29],"6":[29,50],"7":[8,42],"8":[15,27],"9":[2,25]},"f":{"1":80},"fnMap":{"1":{"name":"(anonymous_1)","line":29,"loc":{"start":{"line":29,"column":25},"end":{"line":29,"column":40}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":39}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":40}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":33}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":21}},"5":{"start":{"line":7,"column":0},"end":{"line":10,"column":1}},"6":{"start":{"line":29,"column":0},"end":{"line":48,"column":2}},"7":{"start":{"line":30,"column":2},"end":{"line":30,"column":28}},"8":{"start":{"line":31,"column":2},"end":{"line":31,"column":21}},"9":{"start":{"line":31,"column":10},"end":{"line":31,"column":21}},"10":{"start":{"line":32,"column":2},"end":{"line":32,"column":43}},"11":{"start":{"line":33,"column":2},"end":{"line":33,"column":31}},"12":{"start":{"line":34,"column":2},"end":{"line":34,"column":28}},"13":{"start":{"line":36,"column":2},"end":{"line":36,"column":22}},"14":{"start":{"line":38,"column":2},"end":{"line":38,"column":9}},"15":{"start":{"line":39,"column":2},"end":{"line":45,"column":3}},"16":{"start":{"line":39,"column":16},"end":{"line":39,"column":23}},"17":{"start":{"line":40,"column":7},"end":{"line":45,"column":3}},"18":{"start":{"line":40,"column":25},"end":{"line":40,"column":39}},"19":{"start":{"line":41,"column":7},"end":{"line":45,"column":3}},"20":{"start":{"line":41,"column":25},"end":{"line":41,"column":40}},"21":{"start":{"line":43,"column":4},"end":{"line":43,"column":32}},"22":{"start":{"line":44,"column":4},"end":{"line":44,"column":47}},"23":{"start":{"line":44,"column":36},"end":{"line":44,"column":47}},"24":{"start":{"line":46,"column":2},"end":{"line":46,"column":31}},"25":{"start":{"line":47,"column":2},"end":{"line":47,"column":37}}},"branchMap":{"1":{"line":31,"type":"if","locations":[{"start":{"line":31,"column":2},"end":{"line":31,"column":2}},{"start":{"line":31,"column":2},"end":{"line":31,"column":2}}]},"2":{"line":32,"type":"cond-expr","locations":[{"start":{"line":32,"column":37},"end":{"line":32,"column":39}},{"start":{"line":32,"column":42},"end":{"line":32,"column":43}}]},"3":{"line":32,"type":"binary-expr","locations":[{"start":{"line":32,"column":13},"end":{"line":32,"column":17}},{"start":{"line":32,"column":21},"end":{"line":32,"column":25}}]},"4":{"line":33,"type":"binary-expr","locations":[{"start":{"line":33,"column":14},"end":{"line":33,"column":18}},{"start":{"line":33,"column":22},"end":{"line":33,"column":26}}]},"5":{"line":34,"type":"binary-expr","locations":[{"start":{"line":34,"column":10},"end":{"line":34,"column":14}},{"start":{"line":34,"column":18},"end":{"line":34,"column":22}},{"start":{"line":34,"column":26},"end":{"line":34,"column":28}}]},"6":{"line":39,"type":"if","locations":[{"start":{"line":39,"column":2},"end":{"line":39,"column":2}},{"start":{"line":39,"column":2},"end":{"line":39,"column":2}}]},"7":{"line":40,"type":"if","locations":[{"start":{"line":40,"column":7},"end":{"line":40,"column":7}},{"start":{"line":40,"column":7},"end":{"line":40,"column":7}}]},"8":{"line":41,"type":"if","locations":[{"start":{"line":41,"column":7},"end":{"line":41,"column":7}},{"start":{"line":41,"column":7},"end":{"line":41,"column":7}}]},"9":{"line":44,"type":"if","locations":[{"start":{"line":44,"column":4},"end":{"line":44,"column":4}},{"start":{"line":44,"column":4},"end":{"line":44,"column":4}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/props-to-arr.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/props-to-arr.js","s":{"1":1,"2":1,"3":105,"4":105,"5":28,"6":77},"b":{"1":[28,77]},"f":{"1":105},"fnMap":{"1":{"name":"(anonymous_1)","line":15,"loc":{"start":{"line":15,"column":17},"end":{"line":15,"column":30}}}},"statementMap":{"1":{"start":{"line":4,"column":0},"end":{"line":4,"column":75}},"2":{"start":{"line":15,"column":0},"end":{"line":19,"column":1}},"3":{"start":{"line":16,"column":2},"end":{"line":16,"column":24}},"4":{"start":{"line":17,"column":2},"end":{"line":17,"column":49}},"5":{"start":{"line":17,"column":22},"end":{"line":17,"column":49}},"6":{"start":{"line":18,"column":2},"end":{"line":18,"column":74}}},"branchMap":{"1":{"line":17,"type":"if","locations":[{"start":{"line":17,"column":2},"end":{"line":17,"column":2}},{"start":{"line":17,"column":2},"end":{"line":17,"column":2}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/regex.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/regex.js","s":{"1":1,"2":1,"3":1,"4":1},"b":{},"f":{},"fnMap":{},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":63}},"2":{"start":{"line":5,"column":0},"end":{"line":5,"column":45}},"3":{"start":{"line":6,"column":0},"end":{"line":6,"column":52}},"4":{"start":{"line":19,"column":0},"end":{"line":19,"column":48}}},"branchMap":{}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/array-props.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/lib/array-props.js","s":{"1":1,"2":1,"3":260,"4":4,"5":256,"6":256,"7":47,"8":256,"9":256,"10":256,"11":256,"12":256},"b":{"1":[4,256],"2":[47,209],"3":[77,179],"4":[256,249]},"f":{"1":260},"fnMap":{"1":{"name":"(anonymous_1)","line":22,"loc":{"start":{"line":22,"column":17},"end":{"line":22,"column":32}}}},"statementMap":{"1":{"start":{"line":5,"column":0},"end":{"line":5,"column":81}},"2":{"start":{"line":22,"column":0},"end":{"line":31,"column":1}},"3":{"start":{"line":23,"column":2},"end":{"line":23,"column":38}},"4":{"start":{"line":23,"column":27},"end":{"line":23,"column":38}},"5":{"start":{"line":24,"column":2},"end":{"line":24,"column":30}},"6":{"start":{"line":25,"column":2},"end":{"line":25,"column":34}},"7":{"start":{"line":25,"column":17},"end":{"line":25,"column":34}},"8":{"start":{"line":26,"column":2},"end":{"line":26,"column":25}},"9":{"start":{"line":27,"column":2},"end":{"line":27,"column":42}},"10":{"start":{"line":28,"column":2},"end":{"line":28,"column":66}},"11":{"start":{"line":29,"column":2},"end":{"line":29,"column":26}},"12":{"start":{"line":30,"column":2},"end":{"line":30,"column":35}}},"branchMap":{"1":{"line":23,"type":"if","locations":[{"start":{"line":23,"column":2},"end":{"line":23,"column":2}},{"start":{"line":23,"column":2},"end":{"line":23,"column":2}}]},"2":{"line":25,"type":"if","locations":[{"start":{"line":25,"column":2},"end":{"line":25,"column":2}},{"start":{"line":25,"column":2},"end":{"line":25,"column":2}}]},"3":{"line":28,"type":"cond-expr","locations":[{"start":{"line":28,"column":31},"end":{"line":28,"column":35}},{"start":{"line":28,"column":38},"end":{"line":28,"column":66}}]},"4":{"line":29,"type":"binary-expr","locations":[{"start":{"line":29,"column":12},"end":{"line":29,"column":18}},{"start":{"line":29,"column":22},"end":{"line":29,"column":26}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/str.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/interval/str.js","s":{"1":1,"2":1,"3":1,"4":46,"5":5,"6":41,"7":41,"8":1,"9":1,"10":1,"11":38,"12":38,"13":38,"14":38,"15":7,"16":7,"17":7,"18":31,"19":31,"20":31,"21":38,"22":38},"b":{"1":[5,41],"2":[46,42],"3":[3,38],"4":[7,31],"5":[3,4]},"f":{"1":46,"2":38},"fnMap":{"1":{"name":"(anonymous_1)","line":24,"loc":{"start":{"line":24,"column":17},"end":{"line":24,"column":32}}},"2":{"name":"build","line":36,"loc":{"start":{"line":36,"column":0},"end":{"line":36,"column":23}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":41}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":14}},"3":{"start":{"line":24,"column":0},"end":{"line":28,"column":1}},"4":{"start":{"line":25,"column":2},"end":{"line":25,"column":58}},"5":{"start":{"line":25,"column":47},"end":{"line":25,"column":58}},"6":{"start":{"line":26,"column":2},"end":{"line":26,"column":39}},"7":{"start":{"line":27,"column":2},"end":{"line":27,"column":60}},"8":{"start":{"line":30,"column":0},"end":{"line":33,"column":1}},"9":{"start":{"line":34,"column":0},"end":{"line":34,"column":21}},"10":{"start":{"line":36,"column":0},"end":{"line":53,"column":1}},"11":{"start":{"line":37,"column":2},"end":{"line":37,"column":22}},"12":{"start":{"line":38,"column":2},"end":{"line":38,"column":21}},"13":{"start":{"line":40,"column":2},"end":{"line":40,"column":19}},"14":{"start":{"line":42,"column":2},"end":{"line":50,"column":3}},"15":{"start":{"line":43,"column":4},"end":{"line":43,"column":12}},"16":{"start":{"line":44,"column":4},"end":{"line":44,"column":37}},"17":{"start":{"line":45,"column":4},"end":{"line":45,"column":41}},"18":{"start":{"line":47,"column":4},"end":{"line":47,"column":11}},"19":{"start":{"line":48,"column":4},"end":{"line":48,"column":29}},"20":{"start":{"line":49,"column":4},"end":{"line":49,"column":14}},"21":{"start":{"line":51,"column":2},"end":{"line":51,"column":27}},"22":{"start":{"line":52,"column":2},"end":{"line":52,"column":22}}},"branchMap":{"1":{"line":25,"type":"if","locations":[{"start":{"line":25,"column":2},"end":{"line":25,"column":2}},{"start":{"line":25,"column":2},"end":{"line":25,"column":2}}]},"2":{"line":25,"type":"binary-expr","locations":[{"start":{"line":25,"column":6},"end":{"line":25,"column":25}},{"start":{"line":25,"column":29},"end":{"line":25,"column":45}}]},"3":{"line":27,"type":"cond-expr","locations":[{"start":{"line":27,"column":24},"end":{"line":27,"column":34}},{"start":{"line":27,"column":37},"end":{"line":27,"column":60}}]},"4":{"line":42,"type":"if","locations":[{"start":{"line":42,"column":2},"end":{"line":42,"column":2}},{"start":{"line":42,"column":2},"end":{"line":42,"column":2}}]},"5":{"line":45,"type":"cond-expr","locations":[{"start":{"line":45,"column":22},"end":{"line":45,"column":27}},{"start":{"line":45,"column":30},"end":{"line":45,"column":41}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/index.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/index.js","s":{"1":1,"2":3,"3":1,"4":2,"5":4,"6":1,"7":1,"8":3,"9":1,"10":4,"11":1,"12":2,"13":3,"14":6,"15":6,"16":6,"17":2,"18":4,"19":4},"b":{"1":[1,2],"2":[1,3],"3":[1,3],"4":[2,4],"5":[6,2],"6":[4,0],"7":[4,2],"8":[4,1]},"f":{"1":3,"2":4,"3":1,"4":4,"5":2,"6":6},"fnMap":{"1":{"name":"curry","line":3,"loc":{"start":{"line":3,"column":0},"end":{"line":3,"column":27}}},"2":{"name":"(anonymous_2)","line":5,"loc":{"start":{"line":5,"column":9},"end":{"line":5,"column":25}}},"3":{"name":"(anonymous_3)","line":6,"loc":{"start":{"line":6,"column":39},"end":{"line":6,"column":52}}},"4":{"name":"op","line":32,"loc":{"start":{"line":32,"column":17},"end":{"line":32,"column":46}}},"5":{"name":"(anonymous_5)","line":33,"loc":{"start":{"line":33,"column":37},"end":{"line":33,"column":50}}},"6":{"name":"(anonymous_6)","line":34,"loc":{"start":{"line":34,"column":15},"end":{"line":34,"column":31}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":9,"column":1}},"2":{"start":{"line":4,"column":2},"end":{"line":4,"column":28}},"3":{"start":{"line":4,"column":19},"end":{"line":4,"column":28}},"4":{"start":{"line":5,"column":2},"end":{"line":8,"column":3}},"5":{"start":{"line":6,"column":4},"end":{"line":6,"column":71}},"6":{"start":{"line":6,"column":32},"end":{"line":6,"column":71}},"7":{"start":{"line":6,"column":54},"end":{"line":6,"column":70}},"8":{"start":{"line":7,"column":4},"end":{"line":7,"column":19}},"9":{"start":{"line":32,"column":0},"end":{"line":41,"column":1}},"10":{"start":{"line":33,"column":2},"end":{"line":33,"column":78}},"11":{"start":{"line":33,"column":30},"end":{"line":33,"column":78}},"12":{"start":{"line":33,"column":52},"end":{"line":33,"column":77}},"13":{"start":{"line":34,"column":2},"end":{"line":40,"column":15}},"14":{"start":{"line":35,"column":4},"end":{"line":35,"column":21}},"15":{"start":{"line":36,"column":4},"end":{"line":36,"column":21}},"16":{"start":{"line":37,"column":4},"end":{"line":37,"column":35}},"17":{"start":{"line":37,"column":20},"end":{"line":37,"column":35}},"18":{"start":{"line":38,"column":4},"end":{"line":38,"column":32}},"19":{"start":{"line":39,"column":4},"end":{"line":39,"column":22}}},"branchMap":{"1":{"line":4,"type":"if","locations":[{"start":{"line":4,"column":2},"end":{"line":4,"column":2}},{"start":{"line":4,"column":2},"end":{"line":4,"column":2}}]},"2":{"line":6,"type":"if","locations":[{"start":{"line":6,"column":4},"end":{"line":6,"column":4}},{"start":{"line":6,"column":4},"end":{"line":6,"column":4}}]},"3":{"line":33,"type":"if","locations":[{"start":{"line":33,"column":2},"end":{"line":33,"column":2}},{"start":{"line":33,"column":2},"end":{"line":33,"column":2}}]},"4":{"line":37,"type":"if","locations":[{"start":{"line":37,"column":4},"end":{"line":37,"column":4}},{"start":{"line":37,"column":4},"end":{"line":37,"column":4}}]},"5":{"line":37,"type":"binary-expr","locations":[{"start":{"line":37,"column":8},"end":{"line":37,"column":11}},{"start":{"line":37,"column":15},"end":{"line":37,"column":18}}]},"6":{"line":38,"type":"binary-expr","locations":[{"start":{"line":38,"column":15},"end":{"line":38,"column":17}},{"start":{"line":38,"column":21},"end":{"line":38,"column":22}}]},"7":{"line":38,"type":"binary-expr","locations":[{"start":{"line":38,"column":24},"end":{"line":38,"column":26}},{"start":{"line":38,"column":30},"end":{"line":38,"column":31}}]},"8":{"line":39,"type":"binary-expr","locations":[{"start":{"line":39,"column":11},"end":{"line":39,"column":17}},{"start":{"line":39,"column":21},"end":{"line":39,"column":22}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/str.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/note/str.js","s":{"1":1,"2":1,"3":1,"4":71,"5":6,"6":65,"7":65,"8":1,"9":64,"10":14,"11":50,"12":21,"13":29,"14":1,"15":1,"16":64,"17":64},"b":{"1":[6,65],"2":[71,67,66],"3":[1,64],"4":[14,50],"5":[21,29],"6":[36,28],"7":[7,57]},"f":{"1":71,"2":64,"3":64},"fnMap":{"1":{"name":"(anonymous_1)","line":29,"loc":{"start":{"line":29,"column":17},"end":{"line":29,"column":32}}},"2":{"name":"accidentals","line":35,"loc":{"start":{"line":35,"column":0},"end":{"line":35,"column":27}}},"3":{"name":"build","line":42,"loc":{"start":{"line":42,"column":0},"end":{"line":42,"column":23}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":41}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":14}},"3":{"start":{"line":29,"column":0},"end":{"line":33,"column":1}},"4":{"start":{"line":30,"column":2},"end":{"line":30,"column":76}},"5":{"start":{"line":30,"column":65},"end":{"line":30,"column":76}},"6":{"start":{"line":31,"column":2},"end":{"line":31,"column":54}},"7":{"start":{"line":32,"column":2},"end":{"line":32,"column":60}},"8":{"start":{"line":35,"column":0},"end":{"line":39,"column":1}},"9":{"start":{"line":36,"column":2},"end":{"line":38,"column":16}},"10":{"start":{"line":36,"column":15},"end":{"line":36,"column":47}},"11":{"start":{"line":37,"column":7},"end":{"line":38,"column":16}},"12":{"start":{"line":37,"column":20},"end":{"line":37,"column":51}},"13":{"start":{"line":38,"column":7},"end":{"line":38,"column":16}},"14":{"start":{"line":41,"column":0},"end":{"line":41,"column":48}},"15":{"start":{"line":42,"column":0},"end":{"line":45,"column":1}},"16":{"start":{"line":43,"column":2},"end":{"line":43,"column":22}},"17":{"start":{"line":44,"column":2},"end":{"line":44,"column":107}}},"branchMap":{"1":{"line":30,"type":"if","locations":[{"start":{"line":30,"column":2},"end":{"line":30,"column":2}},{"start":{"line":30,"column":2},"end":{"line":30,"column":2}}]},"2":{"line":30,"type":"binary-expr","locations":[{"start":{"line":30,"column":6},"end":{"line":30,"column":25}},{"start":{"line":30,"column":29},"end":{"line":30,"column":43}},{"start":{"line":30,"column":47},"end":{"line":30,"column":63}}]},"3":{"line":32,"type":"cond-expr","locations":[{"start":{"line":32,"column":24},"end":{"line":32,"column":34}},{"start":{"line":32,"column":37},"end":{"line":32,"column":60}}]},"4":{"line":36,"type":"if","locations":[{"start":{"line":36,"column":2},"end":{"line":36,"column":2}},{"start":{"line":36,"column":2},"end":{"line":36,"column":2}}]},"5":{"line":37,"type":"if","locations":[{"start":{"line":37,"column":7},"end":{"line":37,"column":7}},{"start":{"line":37,"column":7},"end":{"line":37,"column":7}}]},"6":{"line":44,"type":"cond-expr","locations":[{"start":{"line":44,"column":61},"end":{"line":44,"column":65}},{"start":{"line":44,"column":68},"end":{"line":44,"column":70}}]},"7":{"line":44,"type":"cond-expr","locations":[{"start":{"line":44,"column":91},"end":{"line":44,"column":101}},{"start":{"line":44,"column":104},"end":{"line":44,"column":106}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/pitch/parse.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/pitch/parse.js","s":{"1":1,"2":1,"3":1,"4":5},"b":{"1":[5,3]},"f":{"1":5},"fnMap":{"1":{"name":"(anonymous_1)","line":17,"loc":{"start":{"line":17,"column":17},"end":{"line":17,"column":30}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":35}},"2":{"start":{"line":2,"column":0},"end":{"line":2,"column":43}},"3":{"start":{"line":17,"column":0},"end":{"line":17,"column":63}},"4":{"start":{"line":17,"column":32},"end":{"line":17,"column":62}}},"branchMap":{"1":{"line":17,"type":"binary-expr","locations":[{"start":{"line":17,"column":39},"end":{"line":17,"column":46}},{"start":{"line":17,"column":50},"end":{"line":17,"column":61}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/pitch/str.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/pitch/str.js","s":{"1":1,"2":1,"3":1,"4":3},"b":{"1":[3,1]},"f":{"1":3},"fnMap":{"1":{"name":"(anonymous_1)","line":22,"loc":{"start":{"line":22,"column":17},"end":{"line":22,"column":30}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":33}},"2":{"start":{"line":2,"column":0},"end":{"line":2,"column":41}},"3":{"start":{"line":22,"column":0},"end":{"line":22,"column":63}},"4":{"start":{"line":22,"column":32},"end":{"line":22,"column":62}}},"branchMap":{"1":{"line":22,"type":"binary-expr","locations":[{"start":{"line":22,"column":39},"end":{"line":22,"column":46}},{"start":{"line":22,"column":50},"end":{"line":22,"column":61}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/roman/parse.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/roman/parse.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":30,"7":30,"8":2,"9":28,"10":28,"11":28,"12":7,"13":28},"b":{"1":[2,28],"2":[30,29],"3":[7,21]},"f":{"1":30},"fnMap":{"1":{"name":"(anonymous_1)","line":23,"loc":{"start":{"line":23,"column":25},"end":{"line":23,"column":40}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":39}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":26}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"4":{"start":{"line":7,"column":0},"end":{"line":7,"column":59}},"5":{"start":{"line":23,"column":0},"end":{"line":30,"column":2}},"6":{"start":{"line":24,"column":2},"end":{"line":24,"column":21}},"7":{"start":{"line":25,"column":2},"end":{"line":25,"column":29}},"8":{"start":{"line":25,"column":18},"end":{"line":25,"column":29}},"9":{"start":{"line":26,"column":2},"end":{"line":26,"column":35}},"10":{"start":{"line":27,"column":2},"end":{"line":27,"column":23}},"11":{"start":{"line":28,"column":2},"end":{"line":28,"column":33}},"12":{"start":{"line":28,"column":23},"end":{"line":28,"column":33}},"13":{"start":{"line":29,"column":2},"end":{"line":29,"column":26}}},"branchMap":{"1":{"line":25,"type":"if","locations":[{"start":{"line":25,"column":2},"end":{"line":25,"column":2}},{"start":{"line":25,"column":2},"end":{"line":25,"column":2}}]},"2":{"line":25,"type":"binary-expr","locations":[{"start":{"line":25,"column":6},"end":{"line":25,"column":8}},{"start":{"line":25,"column":12},"end":{"line":25,"column":16}}]},"3":{"line":28,"type":"if","locations":[{"start":{"line":28,"column":2},"end":{"line":28,"column":2}},{"start":{"line":28,"column":2},"end":{"line":28,"column":2}}]}}},"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/roman/regex.js":{"path":"/Users/Dani/Code/WebAudio/tonal/packages/array-notation/roman/regex.js","s":{"1":1},"b":{},"f":{},"fnMap":{},"statementMap":{"1":{"start":{"line":19,"column":0},"end":{"line":19,"column":89}}},"branchMap":{}}}

@@ -0,15 +1,41 @@

'use strict'
var A = require('./operation')
A.note = function (n) { A.note.str(A.note.parse(n)) }
A.note.regex = require('./note/regex')
A.note.parse = require('./note/parse')
A.note.str = require('./note/str')
A.interval = function (n) { A.interval.str(A.interval.parse(n)) }
A.interval.parse = require('./interval/parse')
A.interval.str = require('./interval/str')
A.pitch = function (n) { A.pitch.str(A.pitch.parse(n)) }
A.pitch.parse = require('./pitch/parse')
A.pitch.str = require('./pitch/str')
A.roman = function (n) { }
A.roman.regex = require('./roman/regex')
A.roman.parse = require('./roman/parse')
function curry (fn, arity) {
if (arity === 1) return fn
return function (a, b) {
if (arguments.length === 1) return function (c) { return fn(a, c) }
return fn(a, b)
}
}
/**
* Decorate a function to work with intervals, notes or pitches in
* [array notation](https://github.com/danigb/tonal/tree/next/packages/array-notation)
* with independence of string representations.
*
* This is the base of the pluggable notation system of
* [tonal](https://github.com/danigb/tonal)
*
* @name notation
* @function
* @param {Function} parse - the parser
* @param {Function} str - the string builder
* @param {Function} op - the operation to decorate
*
* @example
* var parse = require('array-notation/interval/parse')
* var str = require('array-notation/interval/str')
* var intervalNotation = require('array-notation')(parse, str)
* var add = intervalNotation(function(a, b) { return [a[0] + b[0], a[1] + b[1]] })
* add('3m', '3M') // => '5P'
*/
module.exports = function op (parse, str, fn) {
if (arguments.length === 2) return function (f) { return op(parse, str, f) }
return curry(function (a, b) {
var ac = parse(a)
var bc = parse(b)
if (!ac && !bc) return fn(a, b)
var v = fn(ac || a, bc || b)
return str(v) || v
}, fn.length)
}

@@ -5,3 +5,3 @@ 'use strict'

var ptc = require('../lib/props-to-arr')
var INTERVAL = /^([-+]?)(\d+)(d{1,4}|m|M|P|A{1,4}|b{1,4}|#{1,4}|)$/
var INTERVAL = require('./regex')
var TYPES = 'PMMPPMM'

@@ -33,4 +33,5 @@ var QALT = {

if (!m) return null
var dir = m[1] === '-' ? -1 : 1
var num = +m[2] - 1
var dir = (m[2] || m[7]) === '-' ? -1 : 1
var num = +(m[3] || m[8]) - 1
var q = m[4] || m[6] || ''

@@ -40,7 +41,7 @@ var simple = num % 7

var alt
if (m[3] === '') alt = 0
else if (m[3][0] === '#') alt = m[3].length
else if (m[3][0] === 'b') alt = -m[3].length
if (q === '') alt = 0
else if (q[0] === '#') alt = q.length
else if (q[0] === 'b') alt = -q.length
else {
alt = QALT[TYPES[simple]][m[3]]
alt = QALT[TYPES[simple]][q]
if (typeof alt === 'undefined') return null

@@ -47,0 +48,0 @@ }

{
"name": "array-notation",
"version": "1.0.1",
"version": "1.1.0",
"description": "Convert music elements to array notation",
"main": "index.js",
"scripts": {
"build": "npm test && npm run coverage && npm run docs && npm run disc && npm run dist",
"build": "npm test && npm run coverage && npm run docs",
"test": "mocha",
"docs": "documentation -f md *.js > API.md",
"dist": "browserify index.js | uglifyjs > tmp/music-gamut.min.js&& ls -hall tmp/",
"disc": "browserify --full-paths index.js | uglifyjs | discify > tmp/disc.html",
"docs": "documentation --shallow true -f md index.js ./**/*.js > API.md",
"dist": "browserify tmp/dist.js | uglifyjs > tmp/music-gamut.min.js&& ls -hall tmp/",
"disc": "browserify --full-paths tmp/dist.js | uglifyjs | discify > tmp/disc.html",
"coverage": "istanbul cover _mocha"

@@ -12,0 +13,0 @@ },

@@ -1,1 +0,1 @@

(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){var A=require("./operation");A.note=function(n){A.note.str(A.note.parse(n))};A.note.regex=require("./note/regex");A.note.parse=require("./note/parse");A.note.str=require("./note/str");A.interval=function(n){A.interval.str(A.interval.parse(n))};A.interval.parse=require("./interval/parse");A.interval.str=require("./interval/str");A.pitch=function(n){A.pitch.str(A.pitch.parse(n))};A.pitch.parse=require("./pitch/parse");A.pitch.str=require("./pitch/str");A.roman=function(n){};A.roman.regex=require("./roman/regex");A.roman.parse=require("./roman/parse")},{"./interval/parse":2,"./interval/str":3,"./note/parse":7,"./note/regex":8,"./note/str":9,"./operation":10,"./pitch/parse":11,"./pitch/str":12,"./roman/parse":13,"./roman/regex":14}],2:[function(require,module,exports){"use strict";var memoize=require("../lib/memoize");var ptc=require("../lib/props-to-arr");var INTERVAL=/^([-+]?)(\d+)(d{1,4}|m|M|P|A{1,4}|b{1,4}|#{1,4}|)$/;var TYPES="PMMPPMM";var QALT={P:{dddd:-4,ddd:-3,dd:-2,d:-1,P:0,A:1,AA:2,AAA:3,AAAA:4},M:{ddd:-4,dd:-3,d:-2,m:-1,M:0,A:1,AA:2,AAA:3,AAAA:4}};module.exports=memoize(function(str){var m=INTERVAL.exec(str);if(!m)return null;var dir=m[1]==="-"?-1:1;var num=+m[2]-1;var simple=num%7;var alt;if(m[3]==="")alt=0;else if(m[3][0]==="#")alt=m[3].length;else if(m[3][0]==="b")alt=-m[3].length;else{alt=QALT[TYPES[simple]][m[3]];if(typeof alt==="undefined")return null}var oct=Math.floor(num/7);return ptc([simple,alt,oct,dir])})},{"../lib/memoize":5,"../lib/props-to-arr":6}],3:[function(require,module,exports){"use strict";var props=require("../lib/array-props");var cache={};module.exports=function(arr){if(!Array.isArray(arr)||arr.length!==2)return null;var str="|"+arr[0]+"|"+arr[1];return str in cache?cache[str]:cache[str]=build(arr)};var ALTER={P:["dddd","ddd","dd","d","P","A","AA","AAA","AAAA"],M:["ddd","dd","d","m","M","A","AA","AAA","AAAA"]};var TYPES="PMMPPMM";function build(coord){var p=props(coord);var t=TYPES[p[0]];var dir,num,alt;if(p[2]<0){dir=-1;num=8-p[0]-7*(p[2]+1);alt=t==="P"?-p[1]:-(p[1]+1)}else{dir=1;num=p[0]+1+7*p[2];alt=p[1]}var q=ALTER[t][4+alt];return dir*num+q}},{"../lib/array-props":4}],4:[function(require,module,exports){"use strict";var BASES=[[3,1],[0,0],[4,0],[1,-1],[5,-1],[2,-2],[6,-2],[3,-3]];module.exports=function(arr){if(!Array.isArray(arr))return null;var index=(arr[0]+1)%7;if(index<0)index=7+index;var base=BASES[index];var alter=Math.floor((arr[0]+1)/7);var oct=arr.length===1?null:arr[1]-base[1]+alter*4;var dur=arr[2]||null;return[base[0],alter,oct,dur]}},{}],5:[function(require,module,exports){"use strict";module.exports=function(fn){var cache={};return function(str){if(typeof str!=="string")return null;return str in cache?cache[str]:cache[str]=fn(str)}}},{}],6:[function(require,module,exports){"use strict";var BASES=[[0,0],[2,-1],[4,-2],[-1,1],[1,0],[3,-1],[5,-2]];module.exports=function(p){var base=BASES[p[0]];if(p.length===2)return[base[0]+7*p[1]];return[p[3]*(base[0]+7*p[1]),p[3]*(p[2]+base[1]-4*p[1])]}},{}],7:[function(require,module,exports){"use strict";var memoize=require("../lib/memoize");var R=require("./regex");var BASES={C:[0,0],D:[2,-1],E:[4,-2],F:[-1,1],G:[1,0],A:[3,-1],B:[5,-2]};module.exports=memoize(function(str){var m=R.exec(str);if(!m||m[5])return null;var base=BASES[m[1].toUpperCase()];var alt=m[2].replace(/x/g,"##").length;if(m[2][0]==="b")alt*=-1;var fifths=base[0]+7*alt;if(!m[3])return[fifths];var oct=+m[3]+base[1]-4*alt;var dur=m[4]?+m[4].substring(1):null;return[fifths,oct,dur]})},{"../lib/memoize":5,"./regex":8}],8:[function(require,module,exports){"use strict";module.exports=/^([a-gA-G])(#{1,}|b{1,}|x{1,}|)(-?\d*)(\/\d+|)\s*(.*)\s*$/},{}],9:[function(require,module,exports){"use strict";var props=require("../lib/array-props");var cache={};module.exports=function(arr){if(!Array.isArray(arr)||arr.length<1||arr.length===2)return null;var str="|"+arr[0]+"|"+arr[1]+"|"+arr[2];return str in cache?cache[str]:cache[str]=build(arr)};function accidentals(num){if(num<0)return Array(-num+1).join("b");else if(num>0)return Array(num+1).join("#");else return""}var LETTER=["C","D","E","F","G","A","B"];function build(coord){var p=props(coord);return LETTER[p[0]]+accidentals(p[1])+(p[2]!==null?p[2]:"")+(p[3]!==null?"/"+p[3]:"")}},{"../lib/array-props":4}],10:[function(require,module,exports){"use strict";function curry(fn,arity){if(arity===1)return fn;return function(a,b){if(arguments.length===1)return function(c){return fn(a,c)};return fn(a,b)}}module.exports=function(parse,str,fn){return curry(function(a,b){var ac=parse(a);var bc=parse(b);if(!ac&&!bc)return fn(a,b);var v=fn(ac||a,bc||b);return str(v)||v},fn.length)}},{}],11:[function(require,module,exports){var note=require("../note/parse");var interval=require("../interval/parse");module.exports=function(n){return note(n)||interval(n)}},{"../interval/parse":2,"../note/parse":7}],12:[function(require,module,exports){var note=require("../note/str");var interval=require("../interval/str");module.exports=function(n){return note(n)||interval(n)}},{"../interval/str":3,"../note/str":9}],13:[function(require,module,exports){"use strict";var memoize=require("../lib/memoize");var R=require("./regex");var coord=require("../lib/props-to-arr");var NUM={i:0,ii:1,iii:2,iv:3,v:4,vi:5,vii:6};module.exports=memoize(function(str){var m=R.exec(str);if(!m||m[3])return null;var num=NUM[m[2].toLowerCase()];var alt=m[1].length;if(m[1][0]==="b")alt=-alt;return coord([num,alt])})},{"../lib/memoize":5,"../lib/props-to-arr":6,"./regex":14}],14:[function(require,module,exports){"use strict";module.exports=/^\s*(b|bb|#|##|)(IV|III|II|I|VII|VI|V|iv|iii|ii|i|vii|vi|v)\s*(.*)\s*$/},{}]},{},[1]);
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){"use strict";function curry(fn,arity){if(arity===1)return fn;return function(a,b){if(arguments.length===1)return function(c){return fn(a,c)};return fn(a,b)}}module.exports=function op(parse,str,fn){if(arguments.length===2)return function(f){return op(parse,str,f)};return curry(function(a,b){var ac=parse(a);var bc=parse(b);if(!ac&&!bc)return fn(a,b);var v=fn(ac||a,bc||b);return str(v)||v},fn.length)}},{}],2:[function(require,module,exports){"use strict";var memoize=require("../lib/memoize");var ptc=require("../lib/props-to-arr");var INTERVAL=require("./regex");var TYPES="PMMPPMM";var QALT={P:{dddd:-4,ddd:-3,dd:-2,d:-1,P:0,A:1,AA:2,AAA:3,AAAA:4},M:{ddd:-4,dd:-3,d:-2,m:-1,M:0,A:1,AA:2,AAA:3,AAAA:4}};module.exports=memoize(function(str){var m=INTERVAL.exec(str);if(!m)return null;var dir=(m[2]||m[7])==="-"?-1:1;var num=+(m[3]||m[8])-1;var q=m[4]||m[6]||"";var simple=num%7;var alt;if(q==="")alt=0;else if(q[0]==="#")alt=q.length;else if(q[0]==="b")alt=-q.length;else{alt=QALT[TYPES[simple]][q];if(typeof alt==="undefined")return null}var oct=Math.floor(num/7);return ptc([simple,alt,oct,dir])})},{"../lib/memoize":6,"../lib/props-to-arr":7,"./regex":3}],3:[function(require,module,exports){var TONAL="([-+]?)(\\d+)(d{1,4}|m|M|P|A{1,4}|b{1,4}|#{1,4}|)";var STRICT="(AA|A|P|M|m|d|dd)([-+]?)(\\d+)";var COMPOSE="(?:("+TONAL+")|("+STRICT+"))";module.exports=new RegExp("^"+COMPOSE+"$")},{}],4:[function(require,module,exports){"use strict";var props=require("../lib/array-props");var cache={};module.exports=function(arr){if(!Array.isArray(arr)||arr.length!==2)return null;var str="|"+arr[0]+"|"+arr[1];return str in cache?cache[str]:cache[str]=build(arr)};var ALTER={P:["dddd","ddd","dd","d","P","A","AA","AAA","AAAA"],M:["ddd","dd","d","m","M","A","AA","AAA","AAAA"]};var TYPES="PMMPPMM";function build(coord){var p=props(coord);var t=TYPES[p[0]];var dir,num,alt;if(p[2]<0){dir=-1;num=8-p[0]-7*(p[2]+1);alt=t==="P"?-p[1]:-(p[1]+1)}else{dir=1;num=p[0]+1+7*p[2];alt=p[1]}var q=ALTER[t][4+alt];return dir*num+q}},{"../lib/array-props":5}],5:[function(require,module,exports){"use strict";var BASES=[[3,1],[0,0],[4,0],[1,-1],[5,-1],[2,-2],[6,-2],[3,-3]];module.exports=function(arr){if(!Array.isArray(arr))return null;var index=(arr[0]+1)%7;if(index<0)index=7+index;var base=BASES[index];var alter=Math.floor((arr[0]+1)/7);var oct=arr.length===1?null:arr[1]-base[1]+alter*4;var dur=arr[2]||null;return[base[0],alter,oct,dur]}},{}],6:[function(require,module,exports){"use strict";module.exports=function(fn){var cache={};return function(str){if(typeof str!=="string")return null;return str in cache?cache[str]:cache[str]=fn(str)}}},{}],7:[function(require,module,exports){"use strict";var BASES=[[0,0],[2,-1],[4,-2],[-1,1],[1,0],[3,-1],[5,-2]];module.exports=function(p){var base=BASES[p[0]];if(p.length===2)return[base[0]+7*p[1]];return[p[3]*(base[0]+7*p[1]),p[3]*(p[2]+base[1]-4*p[1])]}},{}],8:[function(require,module,exports){"use strict";var memoize=require("../lib/memoize");var R=require("./regex");var BASES={C:[0,0],D:[2,-1],E:[4,-2],F:[-1,1],G:[1,0],A:[3,-1],B:[5,-2]};module.exports=memoize(function(str){var m=R.exec(str);if(!m||m[5])return null;var base=BASES[m[1].toUpperCase()];var alt=m[2].replace(/x/g,"##").length;if(m[2][0]==="b")alt*=-1;var fifths=base[0]+7*alt;if(!m[3])return[fifths];var oct=+m[3]+base[1]-4*alt;var dur=m[4]?+m[4].substring(1):null;return[fifths,oct,dur]})},{"../lib/memoize":6,"./regex":9}],9:[function(require,module,exports){"use strict";module.exports=/^([a-gA-G])(#{1,}|b{1,}|x{1,}|)(-?\d*)(\/\d+|)\s*(.*)\s*$/},{}],10:[function(require,module,exports){"use strict";var props=require("../lib/array-props");var cache={};module.exports=function(arr){if(!Array.isArray(arr)||arr.length<1||arr.length===2)return null;var str="|"+arr[0]+"|"+arr[1]+"|"+arr[2];return str in cache?cache[str]:cache[str]=build(arr)};function accidentals(num){if(num<0)return Array(-num+1).join("b");else if(num>0)return Array(num+1).join("#");else return""}var LETTER=["C","D","E","F","G","A","B"];function build(coord){var p=props(coord);return LETTER[p[0]]+accidentals(p[1])+(p[2]!==null?p[2]:"")+(p[3]!==null?"/"+p[3]:"")}},{"../lib/array-props":5}],11:[function(require,module,exports){var note=require("../note/parse");var interval=require("../interval/parse");module.exports=function(n){return note(n)||interval(n)}},{"../interval/parse":2,"../note/parse":8}],12:[function(require,module,exports){var note=require("../note/str");var interval=require("../interval/str");module.exports=function(n){return note(n)||interval(n)}},{"../interval/str":4,"../note/str":10}],13:[function(require,module,exports){"use strict";var memoize=require("../lib/memoize");var R=require("./regex");var coord=require("../lib/props-to-arr");var NUM={i:0,ii:1,iii:2,iv:3,v:4,vi:5,vii:6};module.exports=memoize(function(str){var m=R.exec(str);if(!m||m[3])return null;var num=NUM[m[2].toLowerCase()];var alt=m[1].length;if(m[1][0]==="b")alt=-alt;return coord([num,alt])})},{"../lib/memoize":6,"../lib/props-to-arr":7,"./regex":14}],14:[function(require,module,exports){"use strict";module.exports=/^\s*(b|bb|#|##|)(IV|III|II|I|VII|VI|V|iv|iii|ii|i|vii|vi|v)\s*(.*)\s*$/},{}],15:[function(require,module,exports){var A=require("../index");A.note=function(n){A.note.str(A.note.parse(n))};A.note.regex=require("../note/regex");A.note.parse=require("../note/parse");A.note.str=require("../note/str");A.interval=function(n){A.interval.str(A.interval.parse(n))};A.interval.regex=require("../interval/regex");A.interval.parse=require("../interval/parse");A.interval.str=require("../interval/str");A.pitch=function(n){A.pitch.str(A.pitch.parse(n))};A.pitch.parse=require("../pitch/parse");A.pitch.str=require("../pitch/str");A.roman=function(n){};A.roman.regex=require("../roman/regex");A.roman.parse=require("../roman/parse")},{"../index":1,"../interval/parse":2,"../interval/regex":3,"../interval/str":4,"../note/parse":8,"../note/regex":9,"../note/str":10,"../pitch/parse":11,"../pitch/str":12,"../roman/parse":13,"../roman/regex":14}]},{},[15]);

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc