This commit is contained in:
Felix Roos 2022-03-06 20:04:55 +01:00
parent 1dda16c010
commit 76760fc85f
5 changed files with 26 additions and 7 deletions

View File

@ -3,6 +3,7 @@ import "./tone.js";
import "./midi.js";
import "./voicings.js";
import "./tonal.js";
import gist from "./gist.js";
import shapeshifter from "./shapeshifter.js";
import {minify} from "./parse.js";
import * as Tone from "../_snowpack/pkg/tone.js";
@ -19,7 +20,7 @@ function hackLiteral(literal, names, func) {
}
hackLiteral(String, ["mini", "m"], bootstrapped.mini);
hackLiteral(String, ["pure", "p"], bootstrapped.pure);
Object.assign(globalThis, bootstrapped, Tone, toneHelpers);
Object.assign(globalThis, bootstrapped, Tone, toneHelpers, {gist});
export const evaluate = async (code) => {
const shapeshifted = shapeshifter(code);
let evaluated = await eval(shapeshifted);

6
docs/dist/gist.js vendored Normal file
View File

@ -0,0 +1,6 @@
// this is a shortcut to eval code from a gist
// why? to be able to shorten strudel code + e.g. be able to change instruments after links have been generated
export default (route) =>
fetch(`https://gist.githubusercontent.com/${route}?cachebust=${Date.now()}`)
.then((res) => res.text())
.then((code) => eval(code));

View File

@ -41810,6 +41810,8 @@ var _tone = require("./tone");
var _midi = require("./midi");
var _voicings = require("./voicings");
var _tonal = require("./tonal");
var _gistJs = require("./gist.js");
var _gistJsDefault = parcelHelpers.interopDefault(_gistJs);
var _shapeshifter = require("./shapeshifter");
var _shapeshifterDefault = parcelHelpers.interopDefault(_shapeshifter);
var _parse = require("./parse");
@ -41839,7 +41841,9 @@ hackLiteral(String, [
'p'
], bootstrapped.pure); // comment out this line if you panic
// this will add everything to global scope, which is accessed by eval
Object.assign(globalThis, bootstrapped, _tone1, _tone);
Object.assign(globalThis, bootstrapped, _tone1, _tone, {
gist: _gistJsDefault.default
});
const evaluate = async (code)=>{
const shapeshifted = _shapeshifterDefault.default(code); // transform syntactically correct js code to semantically usable code
// console.log('shapeshifted', shapeshifted);
@ -41861,7 +41865,7 @@ const evaluate = async (code)=>{
};
};
},{"../../strudel.mjs":"ggZqJ","./tone":"aBpVm","./midi":"kToux","./voicings":"bexb4","./tonal":"kya9H","./shapeshifter":"67UCx","./parse":"dddDq","tone":"2tCfN","@parcel/transformer-js/src/esmodule-helpers.js":"gkKU3"}],"ggZqJ":[function(require,module,exports) {
},{"../../strudel.mjs":"ggZqJ","./tone":"aBpVm","./midi":"kToux","./voicings":"bexb4","./tonal":"kya9H","./gist.js":"fYZxP","./shapeshifter":"67UCx","./parse":"dddDq","tone":"2tCfN","@parcel/transformer-js/src/esmodule-helpers.js":"gkKU3"}],"ggZqJ":[function(require,module,exports) {
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
parcelHelpers.defineInteropFlag(exports);
parcelHelpers.export(exports, "curry", ()=>curry
@ -64196,7 +64200,15 @@ Pattern.prototype.define('scaleTranspose', (a, pat)=>pat.scaleTranspose(a)
patternified: true
});
},{"@tonaljs/tonal":"4q9Lu","../../strudel.mjs":"ggZqJ","@parcel/transformer-js/src/esmodule-helpers.js":"gkKU3"}],"67UCx":[function(require,module,exports) {
},{"@tonaljs/tonal":"4q9Lu","../../strudel.mjs":"ggZqJ","@parcel/transformer-js/src/esmodule-helpers.js":"gkKU3"}],"fYZxP":[function(require,module,exports) {
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
parcelHelpers.defineInteropFlag(exports);
exports.default = (route)=>fetch(`https://gist.githubusercontent.com/${route}?cachebust=${Date.now()}`).then((res)=>res.text()
).then((code)=>eval(code)
)
;
},{"@parcel/transformer-js/src/esmodule-helpers.js":"gkKU3"}],"67UCx":[function(require,module,exports) {
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
parcelHelpers.defineInteropFlag(exports);
parcelHelpers.export(exports, "addMiniLocations", ()=>addMiniLocations
@ -110958,4 +110970,4 @@ exports.default = cx;
},{"@parcel/transformer-js/src/esmodule-helpers.js":"gkKU3"}]},["3uVTb"], "3uVTb", "parcelRequire94c2")
//# sourceMappingURL=index.23fc2d31.js.map
//# sourceMappingURL=index.d9bcaff1.js.map

File diff suppressed because one or more lines are too long

View File

@ -11,6 +11,6 @@
<body>
<div id="root"></div>
<noscript>You need to enable JavaScript to run this app.</noscript>
<script src="/tutorial/index.23fc2d31.js" defer=""></script>
<script src="/tutorial/index.d9bcaff1.js" defer=""></script>
</body>
</html>