diff --git a/jsdoc/undocumented.mjs b/jsdoc/undocumented.mjs index 9376a8b6a..48bc1c8b2 100644 --- a/jsdoc/undocumented.mjs +++ b/jsdoc/undocumented.mjs @@ -10,7 +10,7 @@ function getExports(code) { let ast; try { ast = parse(code, { - ecmaVersion: 11, + ecmaVersion: 'latest', sourceType: 'module', }); } catch (err) { @@ -49,9 +49,7 @@ function getExports(code) { } function isDocumented(name, docs) { - return docs.find( - (d) => d.name === name || d.tags?.find((t) => t.title === 'synonyms' && t.value.split(', ').includes(name)), - ); + return docs.find((d) => d.name === name || d.synonyms?.includes(name)); } async function getUndocumented(path, docs) { diff --git a/packages/core/pattern.mjs b/packages/core/pattern.mjs index c1e95211d..c5918de91 100644 --- a/packages/core/pattern.mjs +++ b/packages/core/pattern.mjs @@ -3119,6 +3119,7 @@ export const striate = register('striate', function (n, pat) { /** * Makes the sample fit the given number of cycles by changing the speed. * @name loopAt + * @synonyms loopat * @memberof Pattern * @returns Pattern * @example @@ -3232,6 +3233,7 @@ export const fit = register('fit', (pat) => * given by a global clock and this function will be * deprecated/removed. * @name loopAtCps + * @synonyms loopatcps * @memberof Pattern * @returns Pattern * @example diff --git a/packages/core/signal.mjs b/packages/core/signal.mjs index 5348173d3..f1f1422fc 100644 --- a/packages/core/signal.mjs +++ b/packages/core/signal.mjs @@ -10,11 +10,27 @@ import Fraction from './fraction.mjs'; import { id, keyAlias, getCurrentKeyboardState } from './util.mjs'; +/** + * A `signal` consisting of a constant value. Similar to `pure`, except that function + * creates a pattern with one event per cycle, whereas this pattern doesn't have an intrinsic + * structure. + * + * @param {*} value The constant value of the resulting pattern + * @returns Pattern + */ export function steady(value) { // A continuous value return new Pattern((state) => [new Hap(undefined, state.span, value)]); } +/** + * Creates a "signal", an unstructured pattern consisting of a single value that changes + * over time. + * + * + * @param {*} func + * @returns Pattern + */ export const signal = (func) => { const query = (state) => [new Hap(undefined, state.span, func(state.span.begin))]; return new Pattern(query); @@ -23,7 +39,7 @@ export const signal = (func) => { /** * A sawtooth signal between 0 and 1. * - * @return {Pattern} + * @type {Pattern} * @example * note("*8") * .clip(saw.slow(2)) @@ -159,6 +175,7 @@ export const time = signal(id); /** * The mouse's x position value ranges from 0 to 1. * @name mousex + * @synonyms mouseX * @return {Pattern} * @example * n(mousex.segment(4).range(0,7)).scale("C:minor") @@ -168,6 +185,7 @@ export const time = signal(id); /** * The mouse's y position value ranges from 0 to 1. * @name mousey + * @synonyms mouseY * @return {Pattern} * @example * n(mousey.segment(4).range(0,7)).scale("C:minor") @@ -217,10 +235,6 @@ const timeToRandsPrime = (seed, n) => { const timeToRands = (t, n) => timeToRandsPrime(timeToIntSeed(t), n); -/** - * - */ - /** * A discrete pattern of numbers from 0 to n-1 * @example diff --git a/undocumented.json b/undocumented.json index 8a38f205f..3363e3d3d 100644 --- a/undocumented.json +++ b/undocumented.json @@ -61,7 +61,12 @@ "activateTheme" ], "/packages/codemirror/slider.mjs": [ - "acorn parse error: SyntaxError: undefined" + "sliderValues", + "SliderWidget", + "setSliderWidgets", + "updateSliderWidgets", + "sliderPlugin", + "sliderWithID" ], "/packages/codemirror/widget.mjs": [ "addWidget", @@ -78,19 +83,6 @@ "StrudelMirror" ], "/packages/codemirror/index.mjs": [], - "/packages/core/fraction.mjs": [ - "gcd", - "lcm" - ], - "/packages/core/timespan.mjs": [ - "TimeSpan" - ], - "/packages/core/hap.mjs": [ - "Hap" - ], - "/packages/core/state.mjs": [ - "State" - ], "/packages/core/logger.mjs": [ "logKey", "logger" @@ -103,7 +95,9 @@ "midiToFreq", "freqToMidi", "valueToMidi", + "getEventOffsetMs", "_mod", + "averageArray", "nanFallback", "getSoundIndex", "getPlayableNoteValue", @@ -112,6 +106,7 @@ "pipe", "compose", "flatten", + "id", "constant", "listRange", "curry", @@ -122,13 +117,35 @@ "fractionalArgs", "splitAt", "zipWith", + "pairs", "clamp", "sol2note", + "uniq", + "uniqsort", + "uniqsortr", "unicodeToBase64", "base64ToUnicode", "code2hash", "hash2code", - "objectMap" + "objectMap", + "cycleToSeconds", + "ClockCollator", + "getPerformanceTimeSeconds", + "keyAlias", + "getCurrentKeyboardState" + ], + "/packages/core/fraction.mjs": [ + "gcd", + "lcm" + ], + "/packages/core/timespan.mjs": [ + "TimeSpan" + ], + "/packages/core/hap.mjs": [ + "Hap" + ], + "/packages/core/state.mjs": [ + "State" ], "/packages/core/value.mjs": [ "unionWithObj", @@ -138,10 +155,8 @@ ], "/packages/core/drawLine.mjs": [], "/packages/core/pattern.mjs": [ + "calculateTactus", "setStringParser", - "polyrhythm", - "pr", - "pm", "nothing", "isPattern", "reify", @@ -149,8 +164,12 @@ "stackRight", "stackCentre", "stackBy", - "fastcat", - "_polymeterListSteps", + "bind", + "innerBind", + "outerBind", + "squeezeBind", + "stepBind", + "polyBind", "set", "keep", "keepif", @@ -174,96 +193,39 @@ "func", "compressSpan", "compressspan", - "fastgap", "focusSpan", "focusspan", - "density", - "sparsity", "zoomArc", "zoomarc", - "inv", - "juxby", - "echowith", - "stutWith", - "stutwith", - "iterback", - "slowchunk", - "slowChunk", - "chunkback", - "fastchunk", "bypass", "hsla", "hsl", - "loopat", - "loopatcps" + "_retime", + "_slices", + "_fitslice", + "_match", + "_polymeterListSteps", + "s_extend", + "s_expand", + "s_contract" ], "/packages/core/controls.mjs": [ "createParam", - "sound", - "src", - "att", - "fmi", + "registerControl", "fmrelease", "fmvelocity", "analyze", "fft", "dec", - "sus", - "rel", "hold", - "bandf", - "bp", - "bandq", - "loopb", - "loope", - "ch", "phaserrate", - "phasr", - "ph", - "phs", - "phc", - "phd", "phasdp", - "cutoff", - "ctf", - "lp", - "lpe", - "hpe", - "bpe", - "lpa", - "hpa", - "bpa", - "lpd", - "hpd", - "bpd", - "lps", - "hps", - "bps", - "lpr", - "hpr", - "bpr", - "fanchor", - "vibrato", - "v", - "vmod", - "hcutoff", - "hp", - "hresonance", - "resonance", - "delayfb", - "dfb", - "delayt", - "dt", "lock", - "det", "fadeTime", "fadeOutTime", "fadeInTime", - "patt", - "pdec", "psustain", "psus", - "prel", "gate", "gat", "activeLabel", @@ -291,20 +253,11 @@ "offset", "octaves", "mode", - "rlp", - "rdim", - "rfade", - "ir", - "size", - "sz", - "rsize", - "dist", "compressorKnee", "compressorRatio", "compressorAttack", "compressorRelease", "waveloss", - "density", "expression", "sustainpedal", "tremolodepth", @@ -355,8 +308,6 @@ "uid", "val", "cps", - "legato", - "dur", "zrand", "curve", "deltaSlide", @@ -370,7 +321,6 @@ "zdelay", "tremolo", "zzfx", - "colour", "createParams", "ad", "ds", @@ -382,26 +332,17 @@ ], "/packages/core/zyklus.mjs": [], "/packages/core/signal.mjs": [ - "steady", - "signal", - "isaw", - "isaw2", - "saw2", - "sine2", - "cosine2", - "square2", - "tri2", - "time", + "randrun", + "shuffle", + "scramble", "_brandBy", "_irand", - "pickSqueeze", - "pickmodSqueeze", "__chooseWith", - "randcat", - "wrandcat", "perlinWith", - "degradeByWith" + "degradeByWith", + "_keyDown" ], + "/packages/core/pick.mjs": [], "/packages/core/speak.mjs": [ "speak" ], @@ -440,13 +381,18 @@ "isTauri" ], "/packages/desktopbridge/midibridge.mjs": [], - "/packages/desktopbridge/oscbridge.mjs": [], + "/packages/desktopbridge/oscbridge.mjs": [ + "oscTriggerTauri" + ], "/packages/desktopbridge/index.mjs": [], "/packages/draw/draw.mjs": [ "getDrawContext", "cleanupDraw", "Framer", - "Drawer" + "Drawer", + "getComputedPropertyValue", + "getTheme", + "setTheme" ], "/packages/draw/animate.mjs": [ "x", @@ -472,6 +418,7 @@ "drawPianoroll" ], "/packages/draw/spiral.mjs": [], + "/packages/draw/pitchwheel.mjs": [], "/packages/draw/index.mjs": [], "/packages/midi/midi.mjs": [ "WebMidi", @@ -496,9 +443,7 @@ "/packages/repl/prebake.mjs": [ "prebake" ], - "/packages/repl/repl-component.mjs": [ - "acorn parse error: SyntaxError: undefined" - ], + "/packages/repl/repl-component.mjs": [], "/packages/repl/index.mjs": [], "/packages/soundfonts/gm.mjs": [], "/packages/soundfonts/fontloader.mjs": [ @@ -538,6 +483,7 @@ ], "/packages/superdough/helpers.mjs": [ "gainNode", + "getWorklet", "getParamADSR", "getCompressor", "getADSRValues", @@ -550,6 +496,8 @@ ], "/packages/superdough/sampler.mjs": [ "getCachedBuffer", + "getSampleInfo", + "getSampleBuffer", "getSampleBufferSource", "loadBuffer", "reverseBuffer", @@ -562,10 +510,15 @@ "soundMap", "registerSound", "getSound", + "setDefaultValue", + "getDefaultValue", + "setDefaultValues", + "resetDefaultValues", + "setVersionDefaults", "resetLoadedSounds", "setDefaultAudioContext", "getAudioContext", - "getWorklet", + "getAudioContextCurrentTime", "initAudio", "initAudioOnFirstClick", "initializeAudioOutput", @@ -589,7 +542,7 @@ "getOscillator" ], "/packages/superdough/zzfx_fork.mjs": [ - "acorn parse error: SyntaxError: undefined" + "buildSamples" ], "/packages/superdough/zzfx.mjs": [ "getZZFX", @@ -655,6 +608,7 @@ "drawTimeScope", "drawFrequencyScope" ], + "/packages/webaudio/spectrum.mjs": [], "/packages/webaudio/index.mjs": [], "/packages/xen/xen.mjs": [ "edo",