@ryusei/code
Version:
<div align="center"> <a href="https://code.ryuseijs.com"> <img alt="RyuseiCode" src="https://code.ryuseijs.com/images/svg/logo.svg" width="70"> </a>
9 lines (8 loc) • 6.55 kB
JavaScript
!function(t,i){"function"==typeof define&&define.amd?define([],i):"undefined"!=typeof exports?i():(i(),t.unknown={})}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,function(){"use strict";function n(t,i){t.prototype=Object.create(i.prototype),o(t.prototype.constructor=t,i)}function o(t,i){return(o=Object.setPrototypeOf||function(t,i){return t.__proto__=i,t})(t,i)}function r(t,i){for(var n=0;n<i.length;n++){var o=i[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}
/*!
* RyuseiCode.js
* Version : 0.1.17
* License : MIT
* Copyright: 2021 Naotoshi Fujita
*/
function e(t){return null!==t&&"object"==typeof t}function s(t){return Array.isArray(t)}function h(t){return"string"==typeof t}function u(t){return void 0===t}function f(t,i){return void 0===i&&(i=!1),!s(t)||i&&!s(t[0])?[t]:t}function c(i,t,n){i&&f(t).forEach(function(t){t&&i.classList[n?"add":"remove"](t)})}function a(t,i){if(t)for(var n=Object.keys(t),o=0;o<n.length&&!1!==i(t[n[o]],n[o]);o++);return t}function l(o){for(var t=arguments.length,i=new Array(1<t?t-1:0),n=1;n<t;n++)i[n-1]=arguments[n];return i.forEach(function(n){e(n)&&a(n,function(t,i){u(n[i])||(o[i]=n[i])})}),o}function v(n,t){if(n){if(h(t))return n.getAttribute(t);e(t)&&a(t,function(t,i){null===t?n.removeAttribute(i):n.setAttribute(i,String(t))})}}function d(t,i,n){t=document.createElement(t);return i&&(h(i)||s(i)?c(t,i,!0):v(t,i)),n&&(n=n,f(t).forEach(n.appendChild.bind(n))),t}function w(t,i){return d("div",t,i)}var p=new WeakMap;function g(i,n,o,r){n.split(" ").forEach(function(t){i.addEventListener(t,o),r&&((t=p.get(r)||[]).push({elm:i,events:n,callback:o}),p.set(r,t))})}function y(i,t,n){"function"==typeof n?t.split(" ").forEach(function(t){i.removeEventListener(t,n)}):(t=p.get(n))&&(t.forEach(function(t){y(t.elm,t.events,t.callback)}),p.delete(n))}function b(t,i){t&&(t.cancelable&&t.preventDefault(),i&&t.stopPropagation())}var z="ryuseicode";Math.min,Math.max,Math.floor,Math.ceil,Math.abs;var m=Math.round;var t=function(){function t(t){this.Editor=t,this.event=t.event,this.options=t.options,this.language=t.language}var i,n,o=t.prototype;return o.mount=function(t){var n=this;this.elements=t,a(this.Editor.Components,function(t,i){n[i]=t})},o.destroy=function(){y(null,"",this)},o.on=function(t,i,n,o){this.event.on(t,n?i.bind(n):i,this,o)},o.off=function(t){this.event.off(t,this)},o.emit=function(t){for(var i,n=arguments.length,o=new Array(1<n?n-1:0),r=1;r<n;r++)o[r-1]=arguments[r];(i=this.event).emit.apply(i,[t].concat(o))},o.bind=function(t,i,n,o){g(t,i,o?n.bind(o):n,this)},o.getLanguage=function(t){t=t||this.Selection.focus;var i=this.language,t=this.lines.getInfoAt(t);return t&&t.language&&i.use&&i.use[t.language]?i.use[t.language].config:i},o.invoke=function(t,i){for(var n,o=arguments.length,r=new Array(2<o?o-2:0),e=2;e<o;e++)r[e-2]=arguments[e];return(n=this.Editor).invoke.apply(n,[t,i].concat(r))},o.require=function(t){return this.Editor.require(t)},o.addIcons=function(t){var i=this.options;i.icons=l({},t,i.icons)},o.addI18n=function(t){var i=this.options;i.i18n=l({},t,i.i18n)},o.addKeyBindings=function(t){var i=this.options;i.keymap=l({},t,i.keymap)},o.getOptions=function(t,i){t=this.options[t];return u(t)||!0===t?i||{}:e(t)?l({},i,t):void function(t,i){if(void 0===i&&(i=""),!t)throw new Error("["+z+"] "+i)}(!1)},i=t,(o=[{key:"lines",get:function(){return this.Code.Lines}},{key:"i18n",get:function(){return this.options.i18n}}])&&r(i.prototype,o),n&&r(i,n),t}(),M={horizontal:!0,vertical:!0},k={resizeBar:"Drag to Resize/Double Click to Reset"},_="is-dragging",j="pointerdown",W="pointerup",x="pointermove",A={vertical:"horizontal",scrollHeight:"scrollWidth",clientHeight:"clientWidth",scrollTop:"scrollLeft",minHeight:"minWidth",maxHeight:"maxWidth",height:"width",top:"left",pageY:"pageX",translateY:"translateX"},H=z+"__sizer__bar",O=function(o){function t(t,i,n){n=o.call(this,[H,H+"--"+(n?"vertical":"horizontal")],i,n)||this;return n.t=t,n.i(),n}n(t,o);var i=t.prototype;return i.i=function(){var t=this,i=this.t,n=i.options.i18n.resizeBar;v(this.elm,{role:"separator","aria-controls":i.elements.root.id,"aria-orientation":this.vertical?"horizontal":"vertical","aria-valuenow":0,"aria-label":n,title:n}),i.event.on("resize",this.n.bind(this)),g(this.elm,"dblclick",function(){i[t.names.height]=""})},i.onDrag=function(t){o.prototype.onDrag.call(this,t),this.o=this.t[this.names.height]},i.onDragging=function(t){o.prototype.onDragging.call(this,t);t=this.getCoord(t)-this.startCoord;this.t[this.names.height]=h(t=this.o+t)?t:t+"px"},i.n=function(){var t=this.names,i=this.r(t.minHeight)||0,n=this.r(t.maxHeight),t=this.t[t.height]-i;i<n&&v(this.elm,{"aria-valuenow":m(1e4*t/(n-i))/100})},i.r=function(t){var i=this.names,n=this.t.elements.root,o=function(n,t){if(h(t))return getComputedStyle(n)[t];a(t,function(t,i){u(t)||(n.style[i]=String(t))})}(n,t);return t="%",o.slice(-t.length)===t?parseFloat(o)*n.parentElement[i.scrollHeight]/100:parseFloat(o)},i.destroy=function(){y(null,"",this),o.prototype.destroy.call(this)},t}(function(){function t(t,i,n){var o=this;this.names={},this.elm=w(t,i),this.parent=i,this.vertical=n,a(A,function(t,i){o.names[i]=n?i:t}),this.bind()}var i=t.prototype;return i.bind=function(){this.onDrag=this.onDrag.bind(this),this.onDragging=this.onDragging.bind(this),this.onDragged=this.onDragged.bind(this),g(this.elm,j,this.onDrag)},i.onDrag=function(t){g(window,W,this.onDragged),g(window,x,this.onDragging),this.startCoord=this.getCoord(t),this.lastCoord=this.startCoord,this.toggleClass(!0),b(t)},i.onDragging=function(t){b(t)},i.onDragged=function(){y(window,W,this.onDragged),y(window,x,this.onDragging),this.toggleClass(!1)},i.getCoord=function(t){return t[this.names.pageY]},i.toggleClass=function(t){c(this.elm,_,t),c(this.parent,[_,_+"--"+this.names.vertical],t)},i.destroy=function(){y(this.elm,j,this.onDrag),y(window,W,this.onDragged),y(window,x,this.onDragging)},t}()),t=function(r){function t(){var t=r.apply(this,arguments)||this;return t.e=[],t}n(t,r);var i=t.prototype;return i.mount=function(t){r.prototype.mount.call(this,t);var i=this.Editor,n=this.e,o=w("ryuseicode__sizer",t.overlay),t=this.getOptions("resize",M);this.addI18n(k),t.horizontal&&n.push(new O(i,o,!1)),t.vertical&&n.push(new O(i,o,!0))},i.destroy=function(){this.e.forEach(function(t){t.destroy()}),r.prototype.destroy.call(this)},t}(t);"undefined"!=typeof window&&window.RyuseiCode&&window.RyuseiCode.compose({Resize:t})});