diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/editor/config/axis.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/editor/config/axis.js index 756c0347de3c..5c78d3dbdebc 100644 --- a/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/editor/config/axis.js +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/editor/config/axis.js @@ -41,6 +41,25 @@ var PROPS = [ 'gridColor', 'gridDashOffset', 'gridOpacity', + 'labelAlign', + 'labelAngle', + 'labelBaseline', + 'labelBound', + 'labelColor', + 'labelFlush', + 'labelFlushOffset', + 'labelFont', + 'labelFontSize', + 'labelFontStyle', + 'labelFontWeight', + 'labelLimit', + 'labelLineHeight', + 'labelOffset', + 'labelOpacity', + 'labelOverlap', + 'labelPadding', + 'labelSeparation', + 'labels', 'tickBand', 'tickCap', 'tickColor', @@ -109,6 +128,10 @@ function config( conf, schema ) { for ( i = 0; i < PROPS.length; i++ ) { resolveValue( schema, def, conf, PROPS[ i ] ); } + // Convert `labelBound` from a boolean to a string so that lil-gui renders a text input instead of a checkbox: + if ( conf.labelBound === false ) { + conf.labelBound = ''; + } for ( i = 0; i < SCHEMA_PROPS.length; i++ ) { resolveSchemaValue( schema, def, conf, SCHEMA_PROPS[ i ] ); } diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/editor/menus/axis.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/editor/menus/axis.js index 69bee475c2fe..83427636ea20 100644 --- a/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/editor/menus/axis.js +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/editor/menus/axis.js @@ -16,6 +16,8 @@ * limitations under the License. */ +/* eslint-disable max-statements, max-lines-per-function */ + 'use strict'; // MODULES // @@ -106,6 +108,61 @@ function addMenu( parent, conf, schema, name ) { controller = folder.add( conf, k ) .min( d.min ); controller.name( format( '%s (%s)', k, d.units ) ); + } else if ( k === 'labelAlign' ) { + controller = folder.add( conf, k, EMPTY_STRING.concat( d.values ) ); + } else if ( k === 'labelAngle' ) { + controller = folder.add( conf, k ) + .min( d.min ) + .max( d.max ); + controller.name( format( '%s (%s)', k, d.units ) ); + } else if ( k === 'labelBaseline' ) { + controller = folder.add( conf, k, EMPTY_STRING.concat( d.values ) ); + } else if ( k === 'labelBound' ) { + controller = folder.add( conf, k ); + } else if ( k === 'labelColor' ) { + controller = folder.addColor( conf, k ); + } else if ( k === 'labelFlush' ) { + controller = folder.add( conf, k ); + } else if ( k === 'labelFlushOffset' ) { + controller = folder.add( conf, k ); + controller.name( format( '%s (%s)', k, d.units ) ); + } else if ( k === 'labelFont' ) { + controller = folder.add( conf, k ); + } else if ( k === 'labelFontSize' ) { + controller = folder.add( conf, k ) + .min( d.min ) + .step( d.step ); + controller.name( format( '%s (%s)', k, d.units ) ); + } else if ( k === 'labelFontStyle' ) { + controller = folder.add( conf, k, EMPTY_STRING.concat( d.values ) ); + } else if ( k === 'labelFontWeight' ) { + controller = folder.add( conf, k, EMPTY_STRING.concat( d.values ) ); + } else if ( k === 'labelLimit' ) { + controller = folder.add( conf, k ) + .min( d.min ) + .step( d.step ); + controller.name( format( '%s (%s)', k, d.units ) ); + } else if ( k === 'labelLineHeight' ) { + controller = folder.add( conf, k ) + .min( d.min ); + } else if ( k === 'labelOffset' ) { + controller = folder.add( conf, k ); + controller.name( format( '%s (%s)', k, d.units ) ); + } else if ( k === 'labelOpacity' ) { + controller = folder.add( conf, k ) + .min( d.min ) + .max( d.max ); + } else if ( k === 'labelOverlap' ) { + controller = folder.add( conf, k, EMPTY_STRING.concat( d.values ) ); + } else if ( k === 'labelPadding' ) { + controller = folder.add( conf, k ); + controller.name( format( '%s (%s)', k, d.units ) ); + } else if ( k === 'labelSeparation' ) { + controller = folder.add( conf, k ) + .min( d.min ) + .step( d.step ); + } else if ( k === 'labels' ) { + controller = folder.add( conf, k ); } else if ( k === 'tickBand' ) { controller = folder.add( conf, k, EMPTY_STRING.concat( d.values ) ); } else if ( k === 'tickCap' ) { diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/schema/transforms/axis.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/schema/transforms/axis.js index b28c170e9cb3..1a66883a65db 100644 --- a/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/schema/transforms/axis.js +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/app/schema/transforms/axis.js @@ -22,6 +22,7 @@ var isSignalReference = require( '@stdlib/plot/vega/base/assert/is-signal-reference' ); var isUndefined = require( '@stdlib/assert/is-undefined' ); +var contains = require( '@stdlib/array/base/assert/contains' ).factory; var copyJSON = require( './../../utils/copy_json.js' ); var signalName = require( './../../utils/signal_name.js' ); @@ -43,6 +44,25 @@ var PROPS = [ 'gridDashOffset', 'gridOpacity', 'gridWidth', + 'labelAlign', + 'labelAngle', + 'labelBaseline', + 'labelBound', + 'labelColor', + 'labelFlush', + 'labelFlushOffset', + 'labelFont', + 'labelFontSize', + 'labelFontStyle', + 'labelFontWeight', + 'labelLimit', + 'labelLineHeight', + 'labelOffset', + 'labelOpacity', + 'labelOverlap', + 'labelPadding', + 'labelSeparation', + 'labels', 'tickBand', 'tickCap', 'tickColor', @@ -73,6 +93,44 @@ var PROPS = [ 'titleY' ]; +// Define a list of properties which need to be made explicitly "undefined" when set to falsy values: +var SPECIAL_PROPS = [ + 'labelAlign', + 'labelBaseline', + 'labelBound', + 'labelFlush', + 'labelOverlap', + 'titleAngle', + 'titleBaseline', + 'titleX', + 'titleY' +]; +var isSpecialProp = contains( SPECIAL_PROPS ); + +// FIXME: preferrably Vega would support signal updates here. For now, define a list of "structural" properties, as Vega does not currently support signal updates for toggling `domain`, `grid`, `labels`, and `ticks`. As a workaround, we keep them statically `true` and dynamically hide them by dropping their respective opacities to `0` when they are set to `false`. +var STRUCTURAL_PROPS = [ + 'domain', + 'grid', + 'labels', + 'ticks +]; +var isStructuralProp = contains( STRUCTURAL_PROPS ); + +var OPACITY_PROPS = [ + 'domainOpacity', + 'gridOpacity', + 'labelOpacity', + 'tickOpacity' +]; +var isOpacityProp = contains( OPACITY_PROPS ); + +var OPACITY_TO_STRUCTURAL = { + 'domainOpacity': 'domain', + 'gridOpacity': 'grid', + 'labelOpacity': 'labels', + 'tickOpacity': 'ticks' +}; + // MAIN // @@ -106,17 +164,18 @@ function transform( schema, signals, defaults, prefix ) { name = signalName( prefix+k ); value = ( isUndefined( v ) ) ? defaults[ k ].default : v; - if ( k === 'titleAngle' || k === 'titleBaseline' || k === 'titleX' || k === 'titleY' ) { - if ( isUndefined( v ) || v === '' ) { + if ( isSpecialProp( k ) ) { + if ( isUndefined( v ) || v === '' || v === false ) { out[ k ] = void 0; signals.push({ 'name': name, 'value': void 0 }); + + // Skip further processing... continue; } } - if ( k === 'tickCount' ) { signals.push({ 'name': name, @@ -128,25 +187,11 @@ function transform( schema, signals, defaults, prefix ) { 'value': value }); } - - // FIXME: Vega does not currently support signal updates for structural properties like `domain`, `grid` & `ticks`. As a workaround, we keep them statically `true` and dynamically hide them by dropping their respective opacities to 0 when unchecked. - if ( k === 'domain' ) { - out[ k ] = true; - } else if ( k === 'domainOpacity' ) { - out[ k ] = { - 'signal': signalName( prefix+'domain' ) + ' ? ' + name + ' : 0' - }; - } else if ( k === 'grid' ) { - out[ k ] = true; - } else if ( k === 'gridOpacity' ) { - out[ k ] = { - 'signal': signalName( prefix+'grid' ) + ' ? ' + name + ' : 0' - }; - } else if ( k === 'ticks' ) { + if ( isStructuralProp( k ) ) { out[ k ] = true; - } else if ( k === 'tickOpacity' ) { + } else if ( isOpacityProp( k ) ) { out[ k ] = { - 'signal': signalName( prefix+'ticks' ) + ' ? ' + name + ' : 0' + 'signal': signalName( prefix+OPACITY_TO_STRUCTURAL[ k ] ) + ' ? ' + name + ' : 0' }; } else { out[ k ] = { diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/app/bundle.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/app/bundle.js index 2c66a409a788..5a32fc946e39 100644 --- a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/app/bundle.js +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/app/bundle.js @@ -3,4 +3,4 @@ /* eslint-disable */ /* editorconfig-checker-disable-file */ -!function(){B=function(t,e){var r=Object.prototype.toString;t.exports=function(t){var e=r.call(t);return"[object Arguments]"===e||"[object Array]"!==e&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&0<=t.length&&"[object Function]"===r.call(t.callee)}};var B,C,M=function(t){return C||B(C={exports:{},parent:t},C.exports),C.exports},U="function"==typeof Object.defineProperty?Object.defineProperty:null;var D=function(){try{return U({},"x",{}),!0}catch(t){return!1}},z=Object.defineProperty;var N=function(t){return"number"==typeof t};function W(t){for(var e="",r=0;rn.maxWidth&&(n.arg=n.arg.substring(0,n.maxWidth)),n.padZeros?n.arg=$(n.arg,n.width||n.precision,n.padRight):n.width&&(n.arg=st(n.arg,n.width,n.padRight)),o+=n.arg||"",a+=1}return o},ht=/%(?:([1-9]\d*)\$)?([0 +\-#]*)(\*|\d+)?(?:(\.)(\*|\d+)?)?[hlL]?([%A-Za-z])/g;var yt=function(t){for(var e,r,n,i=[],o=0,a=ht.exec(t);a;)(e=t.slice(o,ht.lastIndex-a[0].length)).length&&i.push(e),"%"===a[6]?i.push("%"):i.push((n=void 0,n={mapping:(r=a)[1]?parseInt(r[1],10):void 0,flags:r[2],width:r[3],precision:r[5],specifier:r[6]},"."===r[4]&&void 0===r[5]&&(n.precision="1"),n)),o=ht.lastIndex,a=ht.exec(t);return(e=t.slice(o)).length&&i.push(e),i};var dt=function(t){return"string"==typeof t};var h=function t(e){var r,n;if(!dt(e))throw new TypeError(t("invalid argument. First argument must be a string. Value: `%s`.",e));for(r=[yt(e)],n=1;n=r.length?(s=!!(c=d(o,l)))&&"get"in c&&!("originalValue"in c.get)?c.get:o[l]:(s=Ye(o,l),o[l]),s&&!a&&(Ke[f]=o)}}return o},Er=We([wr("%String.prototype.indexOf%")]),_r=pe(),xr=Qe("Object.prototype.toString"),Tr=function(t){return!(_r&&t&&"object"==typeof t&&Symbol.toStringTag in t)&&"[object Arguments]"===xr(t)},me=function(){return Tr(arguments)}(),ve=(Tr.isLegacyArguments=tr,me?Tr:tr),Ar=pe()?(er=Qe("RegExp.prototype.exec"),rr={},nr={toString:be=function(){throw rr},valueOf:be},"symbol"==typeof Symbol.toPrimitive&&(nr[Symbol.toPrimitive]=be),function(t){if(!t||"object"!=typeof t)return!1;var e=d(t,"lastIndex");if(!(e&&Ye(e,"value")))return!1;try{er(t,nr)}catch(t){return t===rr}}):(ir=Qe("Object.prototype.toString"),or="[object RegExp]",function(t){return!(!t||"object"!=typeof t&&"function"!=typeof t)&&ir(t)===or}),Sr=Qe("RegExp.prototype.exec"),Or=function(){if(void 0===ar)try{ar=Function("return function* () {}")().constructor}catch(t){ar=!1}return ar},jr=(e=>{if(Ar(e))return function(t){return null!==Sr(e,t)};throw new p("`regex` must be a RegExp")})(/^\s*(?:function)?\*/),kr=pe(),Fr=Qe("Object.prototype.toString"),Pr=Qe("Function.prototype.toString"),Vr=Function.prototype.toString,Ir="object"==typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"==typeof Ir&&"function"==typeof Object.defineProperty)try{ur=Object.defineProperty({},"length",{get:function(){throw sr}}),sr={},Ir(function(){throw 42},null,ur)}catch(t){t!==sr&&(Ir=null)}else Ir=null;function Lr(t){try{return Br(t)?!1:(Vr.call(t),!0)}catch(t){return!1}}var Rr=/^\s*class\b/,Br=function(t){try{var e=Vr.call(t);return Rr.test(e)}catch(t){return!1}},Cr=Object.prototype.toString,Mr="[object Object]",Ur="[object HTMLAllCollection]",Dr="[object HTML document.all class]",zr="[object HTMLCollection]",Nr="function"==typeof Symbol&&!!Symbol.toStringTag,Wr=!(0 in[,]),$r=function(){return!1},Gr=("object"==typeof document&&Cr.call(document.all)===Cr.call(document.all)&&($r=function(t){if((Wr||!t)&&(void 0===t||"object"==typeof t))try{var e=Cr.call(t);return(e===Ur||e===Dr||e===zr||e===Mr)&&null==t("")}catch(t){}return!1}),Ir?function(t){if($r(t))return!0;if(!t)return!1;if("function"!=typeof t&&"object"!=typeof t)return!1;try{Ir(t,null,ur)}catch(t){if(t!==sr)return!1}return!Br(t)&&Lr(t)}:function(t){var e;return!!$r(t)||!!t&&!("function"!=typeof t&&"object"!=typeof t||!Nr&&(Br(t)||"[object Function]"!==(e=Cr.call(t))&&"[object GeneratorFunction]"!==e&&!/^\[object HTML/.test(e)))&&Lr(t)}),qr=Object.prototype.toString,Hr=Object.prototype.hasOwnProperty,Yr=function(t,e,r){for(var n=0,i=t.length;n{var r;return v(e)?t.stylize("undefined","undefined"):m(e)?(r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'",t.stylize(r,"string")):g(e)?t.stylize(""+e,"number"):y(e)?t.stylize(""+e,"boolean"):d(e)?t.stylize("null","null"):void 0})(e,r);if(t)return t;var i,t=Object.keys(r),o=(i={},t.forEach(function(t,e){i[t]=!0}),i);if(e.showHidden&&(t=Object.getOwnPropertyNames(r)),E(r)&&(0<=t.indexOf("message")||0<=t.indexOf("description")))return c(r);if(0===t.length){if(_(r))return a=r.name?": "+r.name:"",e.stylize("[Function"+a+"]","special");if(b(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(w(r))return e.stylize(Date.prototype.toString.call(r),"date");if(E(r))return c(r)}var a="",u=!1,s=["{","}"];if(h(r)&&(u=!0,s=["[","]"]),_(r)&&(a=" [Function"+(r.name?": "+r.name:"")+"]"),b(r)&&(a=" "+RegExp.prototype.toString.call(r)),w(r)&&(a=" "+Date.prototype.toUTCString.call(r)),E(r)&&(a=" "+c(r)),0===t.length&&(!u||0==r.length))return s[0]+a+s[1];if(n<0)return b(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r),l=u?((e,r,n,i,t)=>{for(var o=[],a=0,u=r.length;a{if("undefined"!=typeof window)for(var t in window)try{if(!oi["$"+t]&&Kn.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{ii(window[t])}catch(t){return!0}}catch(t){return!0}return!1})(),ui=function(t){if("undefined"==typeof window||!ai)return ii(t);try{return ii(t)}catch(t){return!1}},No=function(t){var e=null!==t&&"object"==typeof t,r="[object Function]"===Qn.call(t),n=ti(t),i=e&&"[object String]"===Qn.call(t),o=[];if(!e&&!r&&!n)throw new TypeError("Object.keys called on a non-object");var a=ri&&r;if(i&&0{var r;return v(e)?t.stylize("undefined","undefined"):m(e)?(r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'",t.stylize(r,"string")):g(e)?t.stylize(""+e,"number"):y(e)?t.stylize(""+e,"boolean"):d(e)?t.stylize("null","null"):void 0})(e,r);if(t)return t;var i,t=Object.keys(r),o=(i={},t.forEach(function(t,e){i[t]=!0}),i);if(e.showHidden&&(t=Object.getOwnPropertyNames(r)),E(r)&&(0<=t.indexOf("message")||0<=t.indexOf("description")))return c(r);if(0===t.length){if(_(r))return a=r.name?": "+r.name:"",e.stylize("[Function"+a+"]","special");if(b(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(w(r))return e.stylize(Date.prototype.toString.call(r),"date");if(E(r))return c(r)}var a="",u=!1,s=["{","}"];if(h(r)&&(u=!0,s=["[","]"]),_(r)&&(a=" [Function"+(r.name?": "+r.name:"")+"]"),b(r)&&(a=" "+RegExp.prototype.toString.call(r)),w(r)&&(a=" "+Date.prototype.toUTCString.call(r)),E(r)&&(a=" "+c(r)),0===t.length&&(!u||0==r.length))return s[0]+a+s[1];if(n<0)return b(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special");e.seen.push(r),l=u?((e,r,n,i,t)=>{for(var o=[],a=0,u=r.length;a{var e;try{t()}catch(t){e=t}return e})(e),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),t&&!e&&s(e,r,"Missing expected exception"+n);var i="string"==typeof n,o=!t&&e&&!r;if((!t&&S.isError(e)&&i&&f(e,r)||o)&&s(e,r,"Got unwanted exception"+n),t&&e&&r&&!f(e,r)||!t&&e)throw e}o.AssertionError=function(t){this.name="AssertionError",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=a(u((r=this).actual),128)+" "+r.operator+" "+a(u(r.expected),128),this.generatedMessage=!0);var e,r=t.stackStartFunction||s;Error.captureStackTrace?Error.captureStackTrace(this,r):(t=new Error).stack&&(t=t.stack,e=i(r),0<=(e=t.indexOf("\n"+e))&&(e=t.indexOf("\n",e+1),t=t.substring(e+1)),this.stack=t)},S.inherits(o.AssertionError,Error),o.fail=s,o.ok=l,o.equal=function(t,e,r){t!=e&&s(t,e,r,"==",o.equal)},o.notEqual=function(t,e,r){t==e&&s(t,e,r,"!=",o.notEqual)},o.deepEqual=function(t,e,r){v(t,e,!1)||s(t,e,r,"deepEqual",o.deepEqual)},o.deepStrictEqual=function(t,e,r){v(t,e,!0)||s(t,e,r,"deepStrictEqual",o.deepStrictEqual)},o.notDeepEqual=function(t,e,r){v(t,e,!1)&&s(t,e,r,"notDeepEqual",o.notDeepEqual)},o.notDeepStrictEqual=function t(e,r,n){v(e,r,!0)&&s(e,r,n,"notDeepStrictEqual",t)},o.strictEqual=function(t,e,r){t!==e&&s(t,e,r,"===",o.strictEqual)},o.notStrictEqual=function(t,e,r){t===e&&s(t,e,r,"!==",o.notStrictEqual)},o.throws=function(t,e,r){c(!0,t,e,r)},o.doesNotThrow=function(t,e,r){c(!1,t,e,r)},o.ifError=function(t){if(t)throw t},o.strict=t(function t(e,r){e||s(e,!0,r,"==",t)},o,{equal:o.strictEqual,deepEqual:o.deepStrictEqual,notEqual:o.notStrictEqual,notDeepEqual:o.notDeepStrictEqual}),o.strict.strict=o.strict;var w=Object.keys||function(t){var e,r=[];for(e in t)n.call(t,e)&&r.push(e);return r}}.call(this)}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),{}),Ti=(!function(s){!function(){function r(){return(new Date).getTime()}for(var e=Array.prototype.slice,n={},i=void 0!==s&&s.console?s.console:"undefined"!=typeof window&&window.console?window.console:{},t=[[function(){},"log"],[function(){i.log.apply(i,arguments)},"info"],[function(){i.log.apply(i,arguments)},"warn"],[function(){i.warn.apply(i,arguments)},"error"],[function(t){n[t]=r()},"time"],[function(t){var e=n[t];if(!e)throw new Error("No such label: "+t);delete n[t];e=r()-e;i.log(t+": "+e+"ms")},"timeEnd"],[function(){var t=new Error;t.name="Trace",t.message=k.format.apply(null,arguments),i.error(t.stack)},"trace"],[function(t){i.log(k.inspect(t)+"\n")},"dir"],[function(t){t||(t=e.call(arguments,1),_i.ok(!1,k.format.apply(null,t)))},"assert"]],o=0;oe.byteLength-t)throw new RangeError(h("invalid arguments. ArrayBuffer has insufficient capacity. Either decrease the array length or provide a bigger buffer. Minimum capacity: `%u`.",r*iu));e=new g(e,t,2*r)}}return u(this,"_buffer",e),u(this,"_length",e.length/2),this}u(x,"BYTES_PER_ELEMENT",iu),u(x,"name","Complex64Array"),u(x,"from",function(t){var e,r,n,i,o,a,u,s,l,f,c,p;if(!y(this))throw new TypeError("invalid invocation. `this` context must be a constructor.");if(!au(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(1<(r=arguments.length)){if(!y(n=arguments[1]))throw new TypeError(h("invalid argument. Second argument must be a function. Value: `%s`.",n));2=this._length))return _(this._buffer,t)}),t(x.prototype,"buffer",function(){return this._buffer.buffer}),t(x.prototype,"byteLength",function(){return this._buffer.byteLength}),t(x.prototype,"byteOffset",function(){return this._buffer.byteOffset}),u(x.prototype,"BYTES_PER_ELEMENT",x.BYTES_PER_ELEMENT),u(x.prototype,"copyWithin",function(t,e){if(E(this))return 2===arguments.length?this._buffer.copyWithin(2*t,2*e):this._buffer.copyWithin(2*t,2*e,2*arguments[2]),this;throw new TypeError("invalid invocation. `this` is not a complex number array.")}),u(x.prototype,"entries",function(){var t,e,r,n,i,o;if(E(this))return n=(t=this)._buffer,r=this._length,o=-1,u(e={},"next",function(){if(o+=1,i||r<=o)return{done:!0};return{value:[o,_(n,o)],done:!1}}),u(e,"return",function(t){if(i=!0,arguments.length)return{value:t,done:!0};return{done:!0}}),v&&u(e,v,function(){return t.entries()}),e;throw new TypeError("invalid invocation. `this` is not a complex number array.")}),u(x.prototype,"every",function(t,e){var r,n;if(!E(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!y(t))throw new TypeError(h("invalid argument. First argument must be a function. Value: `%s`.",t));for(r=this._buffer,n=0;n=this._length))return _(this._buffer,t)}),u(x.prototype,"includes",function(t,e){var r,n,i,o,a;if(!E(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!m(t))throw new TypeError(h("invalid argument. First argument must be a complex number. Value: `%s`.",t));if(1=this._length?e=this._length-1:e<0&&(e+=this._length)}else e=this._length-1;for(i=b(t),o=w(t),r=this._buffer,a=e;0<=a;a--)if(i===r[n=2*a]&&o===r[1+n])return a;return-1}),t(x.prototype,"length",function(){return this._length}),u(x.prototype,"map",function(t,e){var r,n,i,o,a;if(!E(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!y(t))throw new TypeError(h("invalid argument. First argument must be a function. Value: `%s`.",t));for(n=this._buffer,r=(i=new this.constructor(this._length))._buffer,o=0;o=this._length)throw new RangeError(h("invalid argument. Index argument is out-of-bounds. Value: `%u`.",r));n[r*=2]=b(t),n[r+1]=w(t)}else if(E(t)){if(r+(a=t._length)>this._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(l=n.byteOffset+r*iu,(e=t._buffer).buffer===n.buffer&&e.byteOffsetl){for(i=new g(e.length),s=0;sthis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(l=n.byteOffset+r*iu,(e=t).buffer===n.buffer&&e.byteOffsetl){for(i=new g(a),s=0;sthis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");for(r*=2,s=0;se.byteLength-t)throw new RangeError(h("invalid arguments. ArrayBuffer has insufficient capacity. Either decrease the array length or provide a bigger buffer. Minimum capacity: `%u`.",r*pu));e=new yo(e,t,2*r)}}return u(this,"_buffer",e),u(this,"_length",e.length/2),this}u(P,"BYTES_PER_ELEMENT",pu),u(P,"name","Complex128Array"),u(P,"from",function(t){var e,r,n,i,o,a,u,s,l,f,c,p;if(!y(this))throw new TypeError("invalid invocation. `this` context must be a constructor.");if(!yu(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(1<(r=arguments.length)){if(!y(n=arguments[1]))throw new TypeError(h("invalid argument. Second argument must be a function. Value: `%s`.",n));2=this._length))return F(this._buffer,t)}),t(P.prototype,"buffer",function(){return this._buffer.buffer}),t(P.prototype,"byteLength",function(){return this._buffer.byteLength}),t(P.prototype,"byteOffset",function(){return this._buffer.byteOffset}),u(P.prototype,"BYTES_PER_ELEMENT",P.BYTES_PER_ELEMENT),u(P.prototype,"copyWithin",function(t,e){if(O(this))return 2===arguments.length?this._buffer.copyWithin(2*t,2*e):this._buffer.copyWithin(2*t,2*e,2*arguments[2]),this;throw new TypeError("invalid invocation. `this` is not a complex number array.")}),u(P.prototype,"entries",function(){var e,t,r,n,i,o,a;if(O(this))return e=(t=this)._buffer,n=this._length,o=-1,a=-2,u(r={},"next",function(){var t;if(o+=1,i||n<=o)return{done:!0};return t=new Ma(e[a+=2],e[a+1]),{value:[o,t],done:!1}}),u(r,"return",function(t){if(i=!0,arguments.length)return{value:t,done:!0};return{done:!0}}),v&&u(r,v,function(){return t.entries()}),r;throw new TypeError("invalid invocation. `this` is not a complex number array.")}),u(P.prototype,"every",function(t,e){var r,n;if(!O(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!y(t))throw new TypeError(h("invalid argument. First argument must be a function. Value: `%s`.",t));for(r=this._buffer,n=0;n=this._length))return F(this._buffer,t)}),t(P.prototype,"length",function(){return this._length}),u(P.prototype,"includes",function(t,e){var r,n,i,o,a;if(!O(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!m(t))throw new TypeError(h("invalid argument. First argument must be a complex number. Value: `%s`.",t));if(1=this._length?e=this._length-1:e<0&&(e+=this._length)}else e=this._length-1;for(i=T(t),o=A(t),r=this._buffer,a=e;0<=a;a--)if(i===r[n=2*a]&&o===r[1+n])return a;return-1}),u(P.prototype,"map",function(t,e){var r,n,i,o,a;if(!O(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!y(t))throw new TypeError(h("invalid argument. First argument must be a function. Value: `%s`.",t));for(n=this._buffer,r=(i=new this.constructor(this._length))._buffer,o=0;o=this._length)throw new RangeError(h("invalid argument. Index argument is out-of-bounds. Value: `%u`.",r));n[r*=2]=T(t),n[r+1]=A(t)}else if(O(t)){if(r+(a=t._length)>this._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(l=n.byteOffset+r*pu,(e=t._buffer).buffer===n.buffer&&e.byteOffsetl){for(i=new yo(e.length),s=0;sthis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(l=n.byteOffset+r*pu,(e=t).buffer===n.buffer&&e.byteOffsetl){for(i=new yo(a),s=0;sthis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");for(r*=2,s=0;st.byteLength-e)throw new RangeError(h("invalid arguments. ArrayBuffer has insufficient capacity. Either decrease the array length or provide a bigger buffer. Minimum capacity: `%u`.",r*xu));t=new Jo(t,e,r)}}return u(this,"_buffer",t),u(this,"_length",t.length),this}u(I,"BYTES_PER_ELEMENT",xu),u(I,"name","BooleanArray"),u(I,"from",function(t){var e,r,n,i,o,a,u,s,l;if(!y(this))throw new TypeError("invalid invocation. `this` context must be a constructor.");if(!Au(this))throw new TypeError("invalid invocation. `this` is not a boolean array.");if(1<(r=arguments.length)){if(!y(n=arguments[1]))throw new TypeError(h("invalid argument. Second argument must be a function. Value: `%s`.",n));2=this._length))return f(this._buffer[t])}),u(I.prototype,"includes",function(t,e){var r,n;if(!V(this))throw new TypeError("invalid invocation. `this` is not a boolean array.");if(!bu(t))throw new TypeError(h("invalid argument. First argument must be a boolean. Value: `%s`.",t));if(1=this._length?e=this._length-1:e<0&&(e+=this._length)}else e=this._length-1;for(r=this._buffer,n=e;0<=n;n--)if(t===f(r[n]))return n;return-1}),t(I.prototype,"length",function(){return this._length}),u(I.prototype,"map",function(t,e){var r,n,i,o;if(!V(this))throw new TypeError("invalid invocation. `this` is not a boolean array.");if(!y(t))throw new TypeError("invalid argument. First argument must be a function. Value: `%s`.",t);for(i=this._buffer,r=(n=new this.constructor(this._length))._buffer,o=0;othis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(e=V(t)?t._buffer:t,u=n.byteOffset+r*xu,e.buffer===n.buffer&&e.byteOffsetu){for(i=new Jo(e.length),a=0;a=this._length)throw new RangeError(h("invalid argument. Index argument is out-of-bounds. Value: `%u`.",r));n[r]=t?1:0}}),u(I.prototype,"slice",function(t,e){var r,n,i,o,a;if(!V(this))throw new TypeError("invalid invocation. `this` is not a boolean array.");if(i=this._buffer,o=this._length,0===arguments.length)t=0,e=o;else{if(!wu(t))throw new TypeError(h("invalid argument. First argument must be an integer. Value: `%s`.",t));if(t<0&&(t+=o)<0&&(t=0),1===arguments.length)e=o;else{if(!wu(e))throw new TypeError(h("invalid argument. Second argument must be an integer. Value: `%s`.",e));e<0?(e+=o)<0&&(e=0):oi&&!o.warned&&(o.warned=!0,(n=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit")).name="MaxListenersExceededWarning",n.emitter=t,n.type=e,n.count=o.length,r=n,console)&&console.warn&&console.warn(r)),t}function as(t,e,r){t={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},e=function(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}.bind(t);return e.listener=r,t.wrapFn=e}function us(t,e,r){t=t._events;if(void 0===t)return[];t=t[e];if(void 0===t)return[];if("function"==typeof t)return r?[t.listener||t]:[t];if(r){for(var n=t,i=new Array(n.length),o=0;o{if("undefined"!==le(rl))for(var t in rl)try{-1===Qs(el,t)&&kt(rl,t)&&null!==rl[t]&&"object"===le(rl[t])&&tl(rl[t])}catch(t){return!0}return!1})(),il="undefined"!=typeof window;var ol=function(t){if(!1===il&&!nl)return tl(t);try{return tl(t)}catch(t){return!1}},al=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];function ul(t){var e,r,n,i,o,a,u=[];if(qs(t))for(a=0;a=e.length)return r();e[n](t)}()},R={editor:null,schema:null,sse:null,viz:null};function Kl(t){R.schema=new Ku(R),R.schema.resolve(t)}function Ql(t){R.editor=new Zl(R),R.editor.init(),R.editor.on("change",rf),t()}function tf(t){R.sse=new gs(R),R.sse.on("refresh",nf),R.sse.on("patch",of),R.sse.on("data",af),R.sse.connect(t)}function ef(t){R.view=new Fs(R),R.view.init(t)}function rf(t){c("Updating rendered visualization..."),R.view.onSignal(t.path,t.value)}function nf(t){R.schema.raw=ce(t.data),R.view.init(),R.editor.refresh()}function of(){}function af(){}function uf(t){t?console.error(t.message):c("Successfully booted application.")}c("Booting application..."),Ee([Kl,ef,tf,Ql],uf)}(); +!function(){R=function(e,t){var r=Object.prototype.toString;e.exports=function(e){var t=r.call(e);return"[object Arguments]"===t||"[object Array]"!==t&&null!==e&&"object"==typeof e&&"number"==typeof e.length&&0<=e.length&&"[object Function]"===r.call(e.callee)}};var R,C,M=function(e){return C||R(C={exports:{},parent:e},C.exports),C.exports},U="function"==typeof Object.defineProperty?Object.defineProperty:null;var z=function(){try{return U({},"x",{}),!0}catch(e){return!1}},D=Object.defineProperty;var N=function(e){return"number"==typeof e};function W(e){for(var t="",r=0;rn.maxWidth&&(n.arg=n.arg.substring(0,n.maxWidth)),n.padZeros?n.arg=$(n.arg,n.width||n.precision,n.padRight):n.width&&(n.arg=le(n.arg,n.width,n.padRight)),o+=n.arg||"",a+=1}return o},he=/%(?:([1-9]\d*)\$)?([0 +\-#]*)(\*|\d+)?(?:(\.)(\*|\d+)?)?[hlL]?([%A-Za-z])/g;var ye=function(e){for(var t,r,n,i=[],o=0,a=he.exec(e);a;)(t=e.slice(o,he.lastIndex-a[0].length)).length&&i.push(t),"%"===a[6]?i.push("%"):i.push((n=void 0,n={mapping:(r=a)[1]?parseInt(r[1],10):void 0,flags:r[2],width:r[3],precision:r[5],specifier:r[6]},"."===r[4]&&void 0===r[5]&&(n.precision="1"),n)),o=he.lastIndex,a=he.exec(e);return(t=e.slice(o)).length&&i.push(t),i};var de=function(e){return"string"==typeof e};var h=function e(t){var r,n;if(!de(t))throw new TypeError(e("invalid argument. First argument must be a string. Value: `%s`.",t));for(r=[ye(t)],n=1;n=r.length?(l=!!(c=d(o,s)))&&"get"in c&&!("originalValue"in c.get)?c.get:o[s]:(l=Jt(o,s),o[s]),l&&!a&&(Qt[f]=o)}}return o},_r=$t([Er("%String.prototype.indexOf%")]),xr=ht(),Tr=er("Object.prototype.toString"),Sr=function(e){return!(xr&&e&&"object"==typeof e&&Symbol.toStringTag in e)&&"[object Arguments]"===Tr(e)},vt=function(){return Sr(arguments)}(),bt=(Sr.isLegacyArguments=tr,vt?Sr:tr),Ar=ht()?(rr=er("RegExp.prototype.exec"),nr={},ir={toString:wt=function(){throw nr},valueOf:wt},"symbol"==typeof Symbol.toPrimitive&&(ir[Symbol.toPrimitive]=wt),function(e){if(!e||"object"!=typeof e)return!1;var t=d(e,"lastIndex");if(!(t&&Jt(t,"value")))return!1;try{rr(e,ir)}catch(e){return e===nr}}):(or=er("Object.prototype.toString"),ar="[object RegExp]",function(e){return!(!e||"object"!=typeof e&&"function"!=typeof e)&&or(e)===ar}),Or=er("RegExp.prototype.exec"),jr=function(){if(void 0===ur)try{ur=Function("return function* () {}")().constructor}catch(e){ur=!1}return ur},kr=(t=>{if(Ar(t))return function(e){return null!==Or(t,e)};throw new p("`regex` must be a RegExp")})(/^\s*(?:function)?\*/),Fr=ht(),Pr=er("Object.prototype.toString"),Vr=er("Function.prototype.toString"),Lr=Function.prototype.toString,Ir="object"==typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"==typeof Ir&&"function"==typeof Object.defineProperty)try{lr=Object.defineProperty({},"length",{get:function(){throw sr}}),sr={},Ir(function(){throw 42},null,lr)}catch(e){e!==sr&&(Ir=null)}else Ir=null;function Br(e){try{return Cr(e)?!1:(Lr.call(e),!0)}catch(e){return!1}}var Rr=/^\s*class\b/,Cr=function(e){try{var t=Lr.call(e);return Rr.test(t)}catch(e){return!1}},Mr=Object.prototype.toString,Ur="[object Object]",zr="[object HTMLAllCollection]",Dr="[object HTML document.all class]",Nr="[object HTMLCollection]",Wr="function"==typeof Symbol&&!!Symbol.toStringTag,$r=!(0 in[,]),Gr=function(){return!1},Hr=("object"==typeof document&&Mr.call(document.all)===Mr.call(document.all)&&(Gr=function(e){if(($r||!e)&&(void 0===e||"object"==typeof e))try{var t=Mr.call(e);return(t===zr||t===Dr||t===Nr||t===Ur)&&null==e("")}catch(e){}return!1}),Ir?function(e){if(Gr(e))return!0;if(!e)return!1;if("function"!=typeof e&&"object"!=typeof e)return!1;try{Ir(e,null,lr)}catch(e){if(e!==sr)return!1}return!Cr(e)&&Br(e)}:function(e){var t;return!!Gr(e)||!!e&&!("function"!=typeof e&&"object"!=typeof e||!Wr&&(Cr(e)||"[object Function]"!==(t=Mr.call(e))&&"[object GeneratorFunction]"!==t&&!/^\[object HTML/.test(t)))&&Br(e)}),qr=Object.prototype.toString,Yr=Object.prototype.hasOwnProperty,Jr=function(e,t,r){for(var n=0,i=e.length;n{var r;return v(t)?e.stylize("undefined","undefined"):m(t)?(r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'",e.stylize(r,"string")):g(t)?e.stylize(""+t,"number"):y(t)?e.stylize(""+t,"boolean"):d(t)?e.stylize("null","null"):void 0})(t,r);if(e)return e;var i,e=Object.keys(r),o=(i={},e.forEach(function(e,t){i[e]=!0}),i);if(t.showHidden&&(e=Object.getOwnPropertyNames(r)),E(r)&&(0<=e.indexOf("message")||0<=e.indexOf("description")))return c(r);if(0===e.length){if(_(r))return a=r.name?": "+r.name:"",t.stylize("[Function"+a+"]","special");if(b(r))return t.stylize(RegExp.prototype.toString.call(r),"regexp");if(w(r))return t.stylize(Date.prototype.toString.call(r),"date");if(E(r))return c(r)}var a="",u=!1,l=["{","}"];if(h(r)&&(u=!0,l=["[","]"]),_(r)&&(a=" [Function"+(r.name?": "+r.name:"")+"]"),b(r)&&(a=" "+RegExp.prototype.toString.call(r)),w(r)&&(a=" "+Date.prototype.toUTCString.call(r)),E(r)&&(a=" "+c(r)),0===e.length&&(!u||0==r.length))return l[0]+a+l[1];if(n<0)return b(r)?t.stylize(RegExp.prototype.toString.call(r),"regexp"):t.stylize("[Object]","special");t.seen.push(r),s=u?((t,r,n,i,e)=>{for(var o=[],a=0,u=r.length;a{if("undefined"!=typeof window)for(var e in window)try{if(!ai["$"+e]&&Qn.call(window,e)&&null!==window[e]&&"object"==typeof window[e])try{oi(window[e])}catch(e){return!0}}catch(e){return!0}return!1})(),li=function(e){if("undefined"==typeof window||!ui)return oi(e);try{return oi(e)}catch(e){return!1}},Go=function(e){var t=null!==e&&"object"==typeof e,r="[object Function]"===ei.call(e),n=ti(e),i=t&&"[object String]"===ei.call(e),o=[];if(!t&&!r&&!n)throw new TypeError("Object.keys called on a non-object");var a=ni&&r;if(i&&0{var r;return v(t)?e.stylize("undefined","undefined"):m(t)?(r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'",e.stylize(r,"string")):g(t)?e.stylize(""+t,"number"):y(t)?e.stylize(""+t,"boolean"):d(t)?e.stylize("null","null"):void 0})(t,r);if(e)return e;var i,e=Object.keys(r),o=(i={},e.forEach(function(e,t){i[e]=!0}),i);if(t.showHidden&&(e=Object.getOwnPropertyNames(r)),E(r)&&(0<=e.indexOf("message")||0<=e.indexOf("description")))return c(r);if(0===e.length){if(_(r))return a=r.name?": "+r.name:"",t.stylize("[Function"+a+"]","special");if(b(r))return t.stylize(RegExp.prototype.toString.call(r),"regexp");if(w(r))return t.stylize(Date.prototype.toString.call(r),"date");if(E(r))return c(r)}var a="",u=!1,l=["{","}"];if(h(r)&&(u=!0,l=["[","]"]),_(r)&&(a=" [Function"+(r.name?": "+r.name:"")+"]"),b(r)&&(a=" "+RegExp.prototype.toString.call(r)),w(r)&&(a=" "+Date.prototype.toUTCString.call(r)),E(r)&&(a=" "+c(r)),0===e.length&&(!u||0==r.length))return l[0]+a+l[1];if(n<0)return b(r)?t.stylize(RegExp.prototype.toString.call(r),"regexp"):t.stylize("[Object]","special");t.seen.push(r),s=u?((t,r,n,i,e)=>{for(var o=[],a=0,u=r.length;a{var t;try{e()}catch(e){t=e}return t})(t),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),e&&!t&&l(t,r,"Missing expected exception"+n);var i="string"==typeof n,o=!e&&t&&!r;if((!e&&A.isError(t)&&i&&f(t,r)||o)&&l(t,r,"Got unwanted exception"+n),e&&t&&r&&!f(t,r)||!e&&t)throw t}o.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=a(u((r=this).actual),128)+" "+r.operator+" "+a(u(r.expected),128),this.generatedMessage=!0);var t,r=e.stackStartFunction||l;Error.captureStackTrace?Error.captureStackTrace(this,r):(e=new Error).stack&&(e=e.stack,t=i(r),0<=(t=e.indexOf("\n"+t))&&(t=e.indexOf("\n",t+1),e=e.substring(t+1)),this.stack=e)},A.inherits(o.AssertionError,Error),o.fail=l,o.ok=s,o.equal=function(e,t,r){e!=t&&l(e,t,r,"==",o.equal)},o.notEqual=function(e,t,r){e==t&&l(e,t,r,"!=",o.notEqual)},o.deepEqual=function(e,t,r){v(e,t,!1)||l(e,t,r,"deepEqual",o.deepEqual)},o.deepStrictEqual=function(e,t,r){v(e,t,!0)||l(e,t,r,"deepStrictEqual",o.deepStrictEqual)},o.notDeepEqual=function(e,t,r){v(e,t,!1)&&l(e,t,r,"notDeepEqual",o.notDeepEqual)},o.notDeepStrictEqual=function e(t,r,n){v(t,r,!0)&&l(t,r,n,"notDeepStrictEqual",e)},o.strictEqual=function(e,t,r){e!==t&&l(e,t,r,"===",o.strictEqual)},o.notStrictEqual=function(e,t,r){e===t&&l(e,t,r,"!==",o.notStrictEqual)},o.throws=function(e,t,r){c(!0,e,t,r)},o.doesNotThrow=function(e,t,r){c(!1,e,t,r)},o.ifError=function(e){if(e)throw e},o.strict=e(function e(t,r){t||l(t,!0,r,"==",e)},o,{equal:o.strictEqual,deepEqual:o.deepStrictEqual,notEqual:o.notStrictEqual,notDeepEqual:o.notDeepStrictEqual}),o.strict.strict=o.strict;var w=Object.keys||function(e){var t,r=[];for(t in e)n.call(e,t)&&r.push(t);return r}}.call(this)}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),{}),Si=(!function(l){!function(){function r(){return(new Date).getTime()}for(var t=Array.prototype.slice,n={},i=void 0!==l&&l.console?l.console:"undefined"!=typeof window&&window.console?window.console:{},e=[[function(){},"log"],[function(){i.log.apply(i,arguments)},"info"],[function(){i.log.apply(i,arguments)},"warn"],[function(){i.warn.apply(i,arguments)},"error"],[function(e){n[e]=r()},"time"],[function(e){var t=n[e];if(!t)throw new Error("No such label: "+e);delete n[e];t=r()-t;i.log(e+": "+t+"ms")},"timeEnd"],[function(){var e=new Error;e.name="Trace",e.message=k.format.apply(null,arguments),i.error(e.stack)},"trace"],[function(e){i.log(k.inspect(e)+"\n")},"dir"],[function(e){e||(e=t.call(arguments,1),xi.ok(!1,k.format.apply(null,e)))},"assert"]],o=0;ot.byteLength-e)throw new RangeError(h("invalid arguments. ArrayBuffer has insufficient capacity. Either decrease the array length or provide a bigger buffer. Minimum capacity: `%u`.",r*uu));t=new g(t,e,2*r)}}return u(this,"_buffer",t),u(this,"_length",t.length/2),this}u(_,"BYTES_PER_ELEMENT",uu),u(_,"name","Complex64Array"),u(_,"from",function(e){var t,r,n,i,o,a,u,l,s,f,c,p;if(!y(this))throw new TypeError("invalid invocation. `this` context must be a constructor.");if(!su(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(1<(r=arguments.length)){if(!y(n=arguments[1]))throw new TypeError(h("invalid argument. Second argument must be a function. Value: `%s`.",n));2=this._length))return l(this._buffer,e)}),e(_.prototype,"buffer",function(){return this._buffer.buffer}),e(_.prototype,"byteLength",function(){return this._buffer.byteLength}),e(_.prototype,"byteOffset",function(){return this._buffer.byteOffset}),u(_.prototype,"BYTES_PER_ELEMENT",_.BYTES_PER_ELEMENT),u(_.prototype,"copyWithin",function(e,t){if(E(this))return 2===arguments.length?this._buffer.copyWithin(2*e,2*t):this._buffer.copyWithin(2*e,2*t,2*arguments[2]),this;throw new TypeError("invalid invocation. `this` is not a complex number array.")}),u(_.prototype,"entries",function(){var e,t,r,n,i,o;if(E(this))return n=(e=this)._buffer,r=this._length,o=-1,u(t={},"next",function(){if(o+=1,i||r<=o)return{done:!0};return{value:[o,l(n,o)],done:!1}}),u(t,"return",function(e){if(i=!0,arguments.length)return{value:e,done:!0};return{done:!0}}),v&&u(t,v,function(){return e.entries()}),t;throw new TypeError("invalid invocation. `this` is not a complex number array.")}),u(_.prototype,"every",function(e,t){var r,n;if(!E(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!y(e))throw new TypeError(h("invalid argument. First argument must be a function. Value: `%s`.",e));for(r=this._buffer,n=0;n=this._length))return l(this._buffer,e)}),u(_.prototype,"includes",function(e,t){var r,n,i,o,a;if(!E(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!m(e))throw new TypeError(h("invalid argument. First argument must be a complex number. Value: `%s`.",e));if(1=this._length?t=this._length-1:t<0&&(t+=this._length)}else t=this._length-1;for(i=b(e),o=w(e),r=this._buffer,a=t;0<=a;a--)if(i===r[n=2*a]&&o===r[1+n])return a;return-1}),e(_.prototype,"length",function(){return this._length}),u(_.prototype,"map",function(e,t){var r,n,i,o,a;if(!E(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!y(e))throw new TypeError(h("invalid argument. First argument must be a function. Value: `%s`.",e));for(n=this._buffer,r=(i=new this.constructor(this._length))._buffer,o=0;o=this._length)throw new RangeError(h("invalid argument. Index argument is out-of-bounds. Value: `%u`.",r));n[r*=2]=b(e),n[r+1]=w(e)}else if(E(e)){if(r+(a=e._length)>this._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(s=n.byteOffset+r*uu,(t=e._buffer).buffer===n.buffer&&t.byteOffsets){for(i=new g(t.length),l=0;lthis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(s=n.byteOffset+r*uu,(t=e).buffer===n.buffer&&t.byteOffsets){for(i=new g(a),l=0;lthis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");for(r*=2,l=0;lt.byteLength-e)throw new RangeError(h("invalid arguments. ArrayBuffer has insufficient capacity. Either decrease the array length or provide a bigger buffer. Minimum capacity: `%u`.",r*du));t=new vo(t,e,2*r)}}return u(this,"_buffer",t),u(this,"_length",t.length/2),this}u(F,"BYTES_PER_ELEMENT",du),u(F,"name","Complex128Array"),u(F,"from",function(e){var t,r,n,i,o,a,u,l,s,f,c,p;if(!y(this))throw new TypeError("invalid invocation. `this` context must be a constructor.");if(!mu(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(1<(r=arguments.length)){if(!y(n=arguments[1]))throw new TypeError(h("invalid argument. Second argument must be a function. Value: `%s`.",n));2=this._length))return O(this._buffer,e)}),e(F.prototype,"buffer",function(){return this._buffer.buffer}),e(F.prototype,"byteLength",function(){return this._buffer.byteLength}),e(F.prototype,"byteOffset",function(){return this._buffer.byteOffset}),u(F.prototype,"BYTES_PER_ELEMENT",F.BYTES_PER_ELEMENT),u(F.prototype,"copyWithin",function(e,t){if(S(this))return 2===arguments.length?this._buffer.copyWithin(2*e,2*t):this._buffer.copyWithin(2*e,2*t,2*arguments[2]),this;throw new TypeError("invalid invocation. `this` is not a complex number array.")}),u(F.prototype,"entries",function(){var t,e,r,n,i,o,a;if(S(this))return t=(e=this)._buffer,n=this._length,o=-1,a=-2,u(r={},"next",function(){var e;if(o+=1,i||n<=o)return{done:!0};return e=new Da(t[a+=2],t[a+1]),{value:[o,e],done:!1}}),u(r,"return",function(e){if(i=!0,arguments.length)return{value:e,done:!0};return{done:!0}}),v&&u(r,v,function(){return e.entries()}),r;throw new TypeError("invalid invocation. `this` is not a complex number array.")}),u(F.prototype,"every",function(e,t){var r,n;if(!S(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!y(e))throw new TypeError(h("invalid argument. First argument must be a function. Value: `%s`.",e));for(r=this._buffer,n=0;n=this._length))return O(this._buffer,e)}),e(F.prototype,"length",function(){return this._length}),u(F.prototype,"includes",function(e,t){var r,n,i,o,a;if(!S(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!m(e))throw new TypeError(h("invalid argument. First argument must be a complex number. Value: `%s`.",e));if(1=this._length?t=this._length-1:t<0&&(t+=this._length)}else t=this._length-1;for(i=x(e),o=T(e),r=this._buffer,a=t;0<=a;a--)if(i===r[n=2*a]&&o===r[1+n])return a;return-1}),u(F.prototype,"map",function(e,t){var r,n,i,o,a;if(!S(this))throw new TypeError("invalid invocation. `this` is not a complex number array.");if(!y(e))throw new TypeError(h("invalid argument. First argument must be a function. Value: `%s`.",e));for(n=this._buffer,r=(i=new this.constructor(this._length))._buffer,o=0;o=this._length)throw new RangeError(h("invalid argument. Index argument is out-of-bounds. Value: `%u`.",r));n[r*=2]=x(e),n[r+1]=T(e)}else if(S(e)){if(r+(a=e._length)>this._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(s=n.byteOffset+r*du,(t=e._buffer).buffer===n.buffer&&t.byteOffsets){for(i=new vo(t.length),l=0;lthis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(s=n.byteOffset+r*du,(t=e).buffer===n.buffer&&t.byteOffsets){for(i=new vo(a),l=0;lthis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");for(r*=2,l=0;le.byteLength-t)throw new RangeError(h("invalid arguments. ArrayBuffer has insufficient capacity. Either decrease the array length or provide a bigger buffer. Minimum capacity: `%u`.",r*Au));e=new Ko(e,t,r)}}return u(this,"_buffer",e),u(this,"_length",e.length),this}u(V,"BYTES_PER_ELEMENT",Au),u(V,"name","BooleanArray"),u(V,"from",function(e){var t,r,n,i,o,a,u,l,s;if(!y(this))throw new TypeError("invalid invocation. `this` context must be a constructor.");if(!ju(this))throw new TypeError("invalid invocation. `this` is not a boolean array.");if(1<(r=arguments.length)){if(!y(n=arguments[1]))throw new TypeError(h("invalid argument. Second argument must be a function. Value: `%s`.",n));2=this._length))return f(this._buffer[e])}),u(V.prototype,"includes",function(e,t){var r,n;if(!P(this))throw new TypeError("invalid invocation. `this` is not a boolean array.");if(!_u(e))throw new TypeError(h("invalid argument. First argument must be a boolean. Value: `%s`.",e));if(1=this._length?t=this._length-1:t<0&&(t+=this._length)}else t=this._length-1;for(r=this._buffer,n=t;0<=n;n--)if(e===f(r[n]))return n;return-1}),e(V.prototype,"length",function(){return this._length}),u(V.prototype,"map",function(e,t){var r,n,i,o;if(!P(this))throw new TypeError("invalid invocation. `this` is not a boolean array.");if(!y(e))throw new TypeError("invalid argument. First argument must be a function. Value: `%s`.",e);for(i=this._buffer,r=(n=new this.constructor(this._length))._buffer,o=0;othis._length)throw new RangeError("invalid arguments. Target array lacks sufficient storage to accommodate source values.");if(t=P(e)?e._buffer:e,u=n.byteOffset+r*Au,t.buffer===n.buffer&&t.byteOffsetu){for(i=new Ko(t.length),a=0;a=this._length)throw new RangeError(h("invalid argument. Index argument is out-of-bounds. Value: `%u`.",r));n[r]=e?1:0}}),u(V.prototype,"slice",function(e,t){var r,n,i,o,a;if(!P(this))throw new TypeError("invalid invocation. `this` is not a boolean array.");if(i=this._buffer,o=this._length,0===arguments.length)e=0,t=o;else{if(!xu(e))throw new TypeError(h("invalid argument. First argument must be an integer. Value: `%s`.",e));if(e<0&&(e+=o)<0&&(e=0),1===arguments.length)t=o;else{if(!xu(t))throw new TypeError(h("invalid argument. Second argument must be an integer. Value: `%s`.",t));t<0?(t+=o)<0&&(t=0):oi&&!o.warned&&(o.warned=!0,(n=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit")).name="MaxListenersExceededWarning",n.emitter=e,n.type=t,n.count=o.length,r=n,console)&&console.warn&&console.warn(r)),e}function sl(e,t,r){e={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},t=function(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}.bind(e);return t.listener=r,e.wrapFn=t}function fl(e,t,r){e=e._events;if(void 0===e)return[];e=e[t];if(void 0===e)return[];if("function"==typeof e)return r?[e.listener||e]:[e];if(r){for(var n=e,i=new Array(n.length),o=0;o{if("undefined"!==ft(os))for(var e in os)try{-1===rs(is,e)&&ke(os,e)&&null!==os[e]&&"object"===ft(os[e])&&ns(os[e])}catch(e){return!0}return!1})(),us="undefined"!=typeof window;var ls=function(e){if(!1===us&&!as)return ns(e);try{return ns(e)}catch(e){return!1}},ss=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];function fs(e){var t,r,n,i,o,a,u=[];if(Jl(e))for(a=0;a=t.length)return r();t[n](e)}()},B={editor:null,schema:null,sse:null,viz:null};function ef(e){B.schema=new tl(B),B.schema.resolve(e)}function tf(e){B.editor=new Qs(B),B.editor.init(),B.editor.on("change",of),e()}function rf(e){B.sse=new bl(B),B.sse.on("refresh",af),B.sse.on("patch",uf),B.sse.on("data",lf),B.sse.connect(e)}function nf(e){B.view=new Ll(B),B.view.init(e)}function of(e){c("Updating rendered visualization..."),B.view.onSignal(e.path,e.value)}function af(e){B.schema.raw=pt(e.data),B.view.init(),B.editor.refresh()}function uf(){}function lf(){}function sf(e){e?console.error(e.message):c("Successfully booted application.")}c("Booting application..."),_t([ef,nf,rf,tf],sf)}(); diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/main.js new file mode 100644 index 000000000000..5a09f4dd2f39 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).empty2undefined; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelAlign', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/schema.json new file mode 100644 index 000000000000..efe772c984d0 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-align/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelAlign", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/main.js new file mode 100644 index 000000000000..3eb2358d9a01 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumberOrUndefined; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelAngle', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/schema.json new file mode 100644 index 000000000000..94b75477407e --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-angle/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelAngle", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/main.js new file mode 100644 index 000000000000..3a312208e487 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).empty2undefined; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelBaseline', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/schema.json new file mode 100644 index 000000000000..a537ed64106c --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-baseline/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelBaseline", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/main.js new file mode 100644 index 000000000000..98d778640bbd --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toBooleanOrNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelBound', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/schema.json new file mode 100644 index 000000000000..24029697fb6e --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-bound/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelBound", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/main.js new file mode 100644 index 000000000000..46f10c7eb6cb --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/main.js @@ -0,0 +1,57 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelColor' ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/schema.json new file mode 100644 index 000000000000..951ed7e8064e --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-color/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelColor", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/main.js new file mode 100644 index 000000000000..9e9d31207f41 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelFlushOffset', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/schema.json new file mode 100644 index 000000000000..98c1eaa13880 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush-offset/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelFlushOffset", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/main.js new file mode 100644 index 000000000000..09b74e75d783 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toBooleanOrNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelFlush', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/schema.json new file mode 100644 index 000000000000..b1e7f5868f23 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-flush/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelFlush", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/main.js new file mode 100644 index 000000000000..ce273c4201ae --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelFontSize', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/schema.json new file mode 100644 index 000000000000..bb4d995371ff --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-size/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelFontSize", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/main.js new file mode 100644 index 000000000000..1ac887c84859 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).empty2undefined; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelFontStyle', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/schema.json new file mode 100644 index 000000000000..4382bb58fece --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-style/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelFontStyle", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/main.js new file mode 100644 index 000000000000..2dc57fb5e149 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toFontWeight; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelFontWeight', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/schema.json new file mode 100644 index 000000000000..282e4ba86447 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font-weight/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelFontWeight", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/main.js new file mode 100644 index 000000000000..ed4b436ff14d --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).empty2undefined; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelFont', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/schema.json new file mode 100644 index 000000000000..120fb2fc2c1c --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-font/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelFont", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/main.js new file mode 100644 index 000000000000..f75ae8d542c7 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelLimit', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/schema.json new file mode 100644 index 000000000000..e7e43e04b761 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-limit/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelLimit", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/main.js new file mode 100644 index 000000000000..5baded708bdb --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelLineHeight', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/schema.json new file mode 100644 index 000000000000..b7428985d200 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-line-height/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelLineHeight", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/main.js new file mode 100644 index 000000000000..08a8721a8c7b --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelOffset', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/schema.json new file mode 100644 index 000000000000..cd70c882eb5b --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-offset/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelOffset", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/main.js new file mode 100644 index 000000000000..228c6fb018eb --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelOpacity', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/schema.json new file mode 100644 index 000000000000..6d271c688f0f --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-opacity/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelOpacity", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/main.js new file mode 100644 index 000000000000..a93775556bcc --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toBooleanOrString; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelOverlap', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/schema.json new file mode 100644 index 000000000000..a8f9576047c5 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-overlap/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelOverlap", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/main.js new file mode 100644 index 000000000000..dc5ba94e10f8 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelPadding', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/schema.json new file mode 100644 index 000000000000..103d8d06164a --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-padding/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelPadding", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/index.js new file mode 100644 index 000000000000..3d563c0612f1 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/index.js @@ -0,0 +1,43 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var schema = require( './schema.json' ); +var handler = require( './main.js' ); + + +// MAIN // + +/** +* Defines a route handler for receiving updating a plot configuration. +* +* @private +* @returns {Object} route declaration +*/ +function route() { + schema.handler = handler; + return schema; +} + + +// EXPORTS // + +module.exports = route; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/main.js new file mode 100644 index 000000000000..056707dcb633 --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/main.js @@ -0,0 +1,58 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2026 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var middleware = require( './../../../../middleware_sequence.js' ); +var allowCredentials = require( './../../../../middleware/allow-credentials' ); +var tryAssign = require( './../../../../middleware/plot-try-assign' ); +var body = require( './../../../../middleware/body' ); +var ok = require( './../../../../middleware/ok' ); +var onError = require( './../../../../middleware/error' ); +var transform = require( './../../transforms.js' ).toNumber; + + +// VARIABLES // + +var steps = [ + allowCredentials, + body, + tryAssign( [ 'config', 'axes', ':axis' ], 'labelSeparation', transform ), + ok +]; + + +// MAIN // + +/** +* Request handler for updating a plot configuration. +* +* @private +* @name handler +* @type {Function} +* @param {Object} request - request object +* @param {Object} response - response object +*/ +var handler = middleware( steps, onError ); + + +// EXPORTS // + +module.exports = handler; diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/schema.json b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/schema.json new file mode 100644 index 000000000000..7e34b25f4a2c --- /dev/null +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/axes/label-seperation/schema.json @@ -0,0 +1,40 @@ +{ + "method": "POST", + "url": "/config/axes/:axis/labelSeparation", + "schema": { + "response": { + "200": { + "type": "string" + }, + "400": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "413": { + "type": "object", + "properties": { + "statusCode": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + }, + "handler": null +} diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/transforms.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/transforms.js index 19deff140c86..cc480fd71904 100644 --- a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/transforms.js +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/config/transforms.js @@ -48,6 +48,52 @@ function toBoolean( value ) { throw new TypeError( format( 'invalid argument. Must provide a boolean string. Value: `%s`.', value ) ); } +/** +* Transforms a request body to either a boolean or a number. +* +* @private +* @param {string} value - raw request body +* @throws {TypeError} unable to parse as a boolean or a number +* @returns {(boolean|number)} transformed value +*/ +function toBooleanOrNumber( value ) { + var n; + var v; + + v = trim( value ); + if ( v === '' || v === 'false' ) { + return false; + } + if ( v === 'true' ) { + return true; + } + n = Number( v ); + if ( isnan( n ) ) { + throw new TypeError( format( 'invalid argument. Must provide a number or a boolean. Value: `%s`.', value ) ); + } + return n; +} + +/** +* Transforms a request body to either a boolean or a string. +* +* @private +* @param {string} value - raw request body +* @returns {(boolean|string)} transformed value +*/ +function toBooleanOrString( value ) { + var v; + + v = trim( value ); + if ( v === '' || v === 'false' ) { + return false; + } + if ( v === 'true' ) { + return true; + } + return v; +} + /** * Transforms a request body to an integer. * @@ -224,6 +270,8 @@ function empty2undefined( value ) { */ var transforms = { // eslint-disable-line vars-on-top 'toBoolean': toBoolean, + 'toBooleanOrNumber': toBooleanOrNumber, + 'toBooleanOrString': toBooleanOrString, 'toInteger': toInteger, 'toJSON': toJSON, 'toNumber': toNumber, diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/events/main.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/events/main.js index de6272b32b0c..dc5f0dddb11d 100644 --- a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/events/main.js +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/events/main.js @@ -92,6 +92,11 @@ function handler( request, response ) { event.property === 'width' || event.property === 'height' || event.source === 'padding' || + event.property === 'labelAlign' || + event.property === 'labelBaseline' || + event.property === 'labelBound' || + event.property === 'labelFlush' || + event.property === 'labelOverlap' || event.property === 'titleAngle' || event.property === 'titleBaseline' || event.property === 'titleX' || diff --git a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/index.js b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/index.js index c78966460036..80c234896b88 100644 --- a/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/index.js +++ b/lib/node_modules/@stdlib/plot/base/view/lib/browser/routes/index.js @@ -16,6 +16,8 @@ * limitations under the License. */ +/* eslint-disable max-statements */ + 'use strict'; // MODULES // @@ -49,7 +51,25 @@ var axesGridDashOffset = require( './config/axes/grid-dash-offset' ); var axesGridOpacity = require( './config/axes/grid-opacity' ); var axesGridScale = require( './config/axes/grid-scale' ); var axesGridWidth = require( './config/axes/grid-width' ); +var axesLabelAlign = require( './config/axes/label-align' ); +var axesLabelAngle = require( './config/axes/label-angle' ); +var axesLabelBaseline = require( './config/axes/label-baseline' ); +var axesLabelBound = require( './config/axes/label-bound' ); +var axesLabelColor = require( './config/axes/label-color' ); +var axesLabelFlush = require( './config/axes/label-flush' ); +var axesLabelFlushOffset = require( './config/axes/label-flush-offset' ); +var axesLabelFont = require( './config/axes/label-font' ); +var axesLabelFontSize = require( './config/axes/label-font-size' ); +var axesLabelFontStyle = require( './config/axes/label-font-style' ); +var axesLabelFontWeight = require( './config/axes/label-font-weight' ); +var axesLabelLimit = require( './config/axes/label-limit' ); +var axesLabelLineHeight = require( './config/axes/label-line-height' ); +var axesLabelOffset = require( './config/axes/label-offset' ); +var axesLabelOpacity = require( './config/axes/label-opacity' ); +var axesLabelOverlap = require( './config/axes/label-overlap' ); +var axesLabelPadding = require( './config/axes/label-padding' ); var axesLabels = require( './config/axes/labels' ); +var axesLabelSeparation = require( './config/axes/label-separation' ); var axesOrient = require( './config/axes/orient' ); var axesTickBand = require( './config/axes/tick-band' ); var axesTickCap = require( './config/axes/tick-cap' ); @@ -164,7 +184,25 @@ function register( router ) { router.route( axesGridOpacity() ); // /config/axes/:axis/gridOpacity router.route( axesGridScale() ); // /config/axes/:axis/gridScale router.route( axesGridWidth() ); // /config/axes/:axis/gridWidth + router.route( axesLabelAlign() ); // /config/axes/:axis/labelAlign + router.route( axesLabelAngle() ); // /config/axes/:axis/labelAngle + router.route( axesLabelBaseline() ); // /config/axes/:axis/labelBaseline + router.route( axesLabelBound() ); // /config/axes/:axis/labelBound + router.route( axesLabelColor() ); // /config/axes/:axis/labelColor + router.route( axesLabelFlush() ); // /config/axes/:axis/labelFlush + router.route( axesLabelFlushOffset() ); // /config/axes/:axis/labelFlushOffset + router.route( axesLabelFont() ); // /config/axes/:axis/labelFont + router.route( axesLabelFontSize() ); // /config/axes/:axis/labelFontSize + router.route( axesLabelFontStyle() ); // /config/axes/:axis/labelFontStyle + router.route( axesLabelFontWeight() ); // /config/axes/:axis/labelFontWeight + router.route( axesLabelLimit() ); // /config/axes/:axis/labelLimit + router.route( axesLabelLineHeight() ); // /config/axes/:axis/labelLineHeight + router.route( axesLabelOffset() ); // /config/axes/:axis/labelOffset + router.route( axesLabelOpacity() ); // /config/axes/:axis/labelOpacity + router.route( axesLabelOverlap() ); // /config/axes/:axis/labelOverlap + router.route( axesLabelPadding() ); // /config/axes/:axis/labelPadding router.route( axesLabels() ); // /config/axes/:axis/labels + router.route( axesLabelSeparation() ); // /config/axes/:axis/labelSeparation router.route( axesOrient() ); // /config/axes/:axis/orient router.route( axesTickBand() ); // /config/axes/:axis/tickBand router.route( axesTickCap() ); // /config/axes/:axis/tickCap diff --git a/lib/node_modules/@stdlib/plot/vega/editor-config/axis/lib/main.js b/lib/node_modules/@stdlib/plot/vega/editor-config/axis/lib/main.js index 725dc6927602..5e02b9cafae0 100644 --- a/lib/node_modules/@stdlib/plot/vega/editor-config/axis/lib/main.js +++ b/lib/node_modules/@stdlib/plot/vega/editor-config/axis/lib/main.js @@ -16,7 +16,7 @@ * limitations under the License. */ -/* eslint-disable max-lines-per-function */ +/* eslint-disable max-lines-per-function, max-lines */ 'use strict'; @@ -24,6 +24,7 @@ var strokeCaps = require( '@stdlib/plot/vega/base/stroke-caps' ); var axisTickStyles = require( '@stdlib/plot/vega/axis/tick-styles' ); +var axisLabelOverlaps = require( '@stdlib/plot/vega/axis/label-overlaps' ); var textAlignments = require( '@stdlib/plot/vega/base/text-alignments' ); var anchorPositions = require( '@stdlib/plot/vega/base/anchor-positions' ); var verticalBaselines = require( '@stdlib/plot/vega/base/vertical-baselines' ); @@ -146,6 +147,144 @@ function config() { 'min': 0, 'units': 'px' }, + 'labelAlign': { + 'description': '', + 'property': 'labelAlign', + 'default': '', + 'type': 'oneOf', + 'values': textAlignments() + }, + 'labelAngle': { + 'description': '', + 'property': 'labelAngle', + 'default': 0, + 'type': 'number', + 'units': 'degrees', + 'min': -360, + 'max': 360 + }, + 'labelBaseline': { + 'description': '', + 'property': 'labelBaseline', + 'default': '', + 'type': 'oneOf', + 'values': verticalBaselines() + }, + 'labelBound': { + 'description': '', + 'property': 'labelBound', + 'default': 'false', + 'type': 'string' + }, + 'labelColor': { + 'description': '', + 'property': 'labelColor', + 'default': '#000', + 'type': 'color' + }, + 'labelFlush': { + 'description': '', + 'property': 'labelFlush', + 'default': '', + 'type': 'string' + }, + 'labelFlushOffset': { + 'description': '', + 'property': 'labelFlushOffset', + 'default': 0, + 'type': 'number', + 'units': 'px' + }, + 'labelFont': { + 'description': '', + 'property': 'labelFont', + 'default': 'sans-serif', + 'type': 'string' + }, + 'labelFontSize': { + 'description': '', + 'property': 'labelFontSize', + 'default': 10, + 'type': 'number', + 'min': 0, + 'step': 1, + 'units': 'px' + }, + 'labelFontStyle': { + 'description': '', + 'property': 'labelFontStyle', + 'default': 'normal', + 'type': 'oneOf', + 'values': fontStyles() + }, + 'labelFontWeight': { + 'description': '', + 'property': 'labelFontWeight', + 'default': 'normal', + 'type': 'oneOf', + 'values': fontWeights() + }, + 'labelLimit': { + 'description': '', + 'property': 'labelLimit', + 'default': 10000, + 'type': 'number', + 'min': 0, + 'step': 1, + 'units': 'px' + }, + 'labelLineHeight': { + 'description': 'line height for multi-line axis title', + 'property': 'labelLineHeight', + 'default': 1, + 'type': 'number', + 'min': 0, + 'units': 'px' + }, + 'labelOffset': { + 'description': '', + 'property': 'labelOffset', + 'default': 0, + 'type': 'number', + 'units': 'px' + }, + 'labelOpacity': { + 'description': '', + 'property': 'labelOpacity', + 'default': 1, + 'type': 'number', + 'min': 0, + 'max': 1 + }, + 'labelOverlap': { + 'description': '', + 'property': 'labelOverlap', + 'default': '', + 'type': 'oneOf', + 'values': axisLabelOverlaps() + }, + 'labelPadding': { + 'description': '', + 'property': 'labelPadding', + 'default': 2, + 'type': 'number', + 'units': 'px' + }, + 'labelSeparation': { + 'description': '', + 'property': 'labelSeparation', + 'default': 0, + 'type': 'number', + 'min': 0, + 'step': 1, + 'units': 'px' + }, + 'labels': { + 'description': '', + 'property': 'labels', + 'default': true, + 'type': 'boolean' + }, 'tickBand': { 'description': 'axis tick style to use in conjunction with band scales', 'property': 'tickBand',