Commit 23339636 authored by 李维's avatar 李维

更新

parent c71b356e
No preview for this file type
import { asyncDelay, onHomeworkFinish } from "../script/util";
import { MyCocosSceneComponent } from "../script/MyCocosSceneComponent";
import { asyncDelay, onHomeworkFinish } from "../script/util_dpe_dubbing_editor";
import { MyCocosSceneComponent } from "../script/MyCocosSceneComponent_dpe_dubbing_editor";
const { ccclass, property } = cc._decorator;
......
import { defaultData } from "../script/defaultData";
import { defaultData } from "../script/defaultData_dpe_dubbing_editor";
export class MyCocosSceneComponent extends cc.Component {
......
This source diff could not be displayed because it is too large. You can view the blob instead.
define("ace/ext/menu_tools/overlay_page",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../../lib/dom"),i="#ace_settingsmenu, #kbshortcutmenu {background-color: #F7F7F7;color: black;box-shadow: -5px 4px 5px rgba(126, 126, 126, 0.55);padding: 1em 0.5em 2em 1em;overflow: auto;position: absolute;margin: 0;bottom: 0;right: 0;top: 0;z-index: 9991;cursor: default;}.ace_dark #ace_settingsmenu, .ace_dark #kbshortcutmenu {box-shadow: -20px 10px 25px rgba(126, 126, 126, 0.25);background-color: rgba(255, 255, 255, 0.6);color: black;}.ace_optionsMenuEntry:hover {background-color: rgba(100, 100, 100, 0.1);transition: all 0.3s}.ace_closeButton {background: rgba(245, 146, 146, 0.5);border: 1px solid #F48A8A;border-radius: 50%;padding: 7px;position: absolute;right: -8px;top: -8px;z-index: 100000;}.ace_closeButton{background: rgba(245, 146, 146, 0.9);}.ace_optionsMenuKey {color: darkslateblue;font-weight: bold;}.ace_optionsMenuCommand {color: darkcyan;font-weight: normal;}.ace_optionsMenuEntry input, .ace_optionsMenuEntry button {vertical-align: middle;}.ace_optionsMenuEntry button[ace_selected_button=true] {background: #e7e7e7;box-shadow: 1px 0px 2px 0px #adadad inset;border-color: #adadad;}.ace_optionsMenuEntry button {background: white;border: 1px solid lightgray;margin: 0px;}.ace_optionsMenuEntry button:hover{background: #f0f0f0;}";r.importCssString(i,"settings_menu.css",!1),n.exports.overlayPage=function(t,n,r){function o(e){e.keyCode===27&&u()}function u(){if(!i)return;document.removeEventListener("keydown",o),i.parentNode.removeChild(i),t&&t.focus(),i=null,r&&r()}function a(e){s=e,e&&(i.style.pointerEvents="none",n.style.pointerEvents="auto")}var i=document.createElement("div"),s=!1;return i.style.cssText="margin: 0; padding: 0; position: fixed; top:0; bottom:0; left:0; right:0;z-index: 9990; "+(t?"background-color: rgba(0, 0, 0, 0.3);":""),i.addEventListener("click",function(e){s||u()}),document.addEventListener("keydown",o),n.addEventListener("click",function(e){e.stopPropagation()}),i.appendChild(n),document.body.appendChild(i),t&&t.blur(),{close:u,setIgnoreFocusOut:a}}}),define("ace/ext/modelist",["require","exports","module"],function(e,t,n){"use strict";function i(e){var t=a.text,n=e.split(/[\/\\]/).pop();for(var i=0;i<r.length;i++)if(r[i].supportsFile(n)){t=r[i];break}return t}var r=[],s=function(e,t,n){this.name=e,this.caption=t,this.mode="ace/mode/"+e,this.extensions=n;var r;/\^/.test(n)?r=n.replace(/\|(\^)?/g,function(e,t){return"$|"+(t?"^":"^.*\\.")})+"$":r="^.*\\.("+n+")$",this.extRe=new RegExp(r,"gi")};s.prototype.supportsFile=function(e){return e.match(this.extRe)};var o={ABAP:["abap"],ABC:["abc"],ActionScript:["as"],ADA:["ada|adb"],Alda:["alda"],Apache_Conf:["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],Apex:["apex|cls|trigger|tgr"],AQL:["aql"],AsciiDoc:["asciidoc|adoc"],ASL:["dsl|asl|asl.json"],Assembly_x86:["asm|a"],AutoHotKey:["ahk"],BatchFile:["bat|cmd"],C_Cpp:["cpp|c|cc|cxx|h|hh|hpp|ino"],C9Search:["c9search_results"],Cirru:["cirru|cr"],Clojure:["clj|cljs"],Cobol:["CBL|COB"],coffee:["coffee|cf|cson|^Cakefile"],ColdFusion:["cfm"],Crystal:["cr"],CSharp:["cs"],Csound_Document:["csd"],Csound_Orchestra:["orc"],Csound_Score:["sco"],CSS:["css"],Curly:["curly"],D:["d|di"],Dart:["dart"],Diff:["diff|patch"],Dockerfile:["^Dockerfile"],Dot:["dot"],Drools:["drl"],Edifact:["edi"],Eiffel:["e|ge"],EJS:["ejs"],Elixir:["ex|exs"],Elm:["elm"],Erlang:["erl|hrl"],Forth:["frt|fs|ldr|fth|4th"],Fortran:["f|f90"],FSharp:["fsi|fs|ml|mli|fsx|fsscript"],FSL:["fsl"],FTL:["ftl"],Gcode:["gcode"],Gherkin:["feature"],Gitignore:["^.gitignore"],Glsl:["glsl|frag|vert"],Gobstones:["gbs"],golang:["go"],GraphQLSchema:["gql"],Groovy:["groovy"],HAML:["haml"],Handlebars:["hbs|handlebars|tpl|mustache"],Haskell:["hs"],Haskell_Cabal:["cabal"],haXe:["hx"],Hjson:["hjson"],HTML:["html|htm|xhtml|vue|we|wpy"],HTML_Elixir:["eex|html.eex"],HTML_Ruby:["erb|rhtml|html.erb"],INI:["ini|conf|cfg|prefs"],Io:["io"],Jack:["jack"],Jade:["jade|pug"],Java:["java"],JavaScript:["js|jsm|jsx"],JSON:["json"],JSON5:["json5"],JSONiq:["jq"],JSP:["jsp"],JSSM:["jssm|jssm_state"],JSX:["jsx"],Julia:["jl"],Kotlin:["kt|kts"],LaTeX:["tex|latex|ltx|bib"],Latte:["latte"],LESS:["less"],Liquid:["liquid"],Lisp:["lisp"],LiveScript:["ls"],LogiQL:["logic|lql"],LSL:["lsl"],Lua:["lua"],LuaPage:["lp"],Lucene:["lucene"],Makefile:["^Makefile|^GNUmakefile|^makefile|^OCamlMakefile|make"],Markdown:["md|markdown"],Mask:["mask"],MATLAB:["matlab"],Maze:["mz"],MediaWiki:["wiki|mediawiki"],MEL:["mel"],MIPS:["s|asm"],MIXAL:["mixal"],MUSHCode:["mc|mush"],MySQL:["mysql"],Nginx:["nginx|conf"],Nim:["nim"],Nix:["nix"],NSIS:["nsi|nsh"],Nunjucks:["nunjucks|nunjs|nj|njk"],ObjectiveC:["m|mm"],OCaml:["ml|mli"],Pascal:["pas|p"],Perl:["pl|pm"],pgSQL:["pgsql"],PHP:["php|inc|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp|module"],PHP_Laravel_blade:["blade.php"],Pig:["pig"],Powershell:["ps1"],Praat:["praat|praatscript|psc|proc"],Prisma:["prisma"],Prolog:["plg|prolog"],Properties:["properties"],Protobuf:["proto"],Puppet:["epp|pp"],Python:["py"],QML:["qml"],R:["r"],Raku:["raku|rakumod|rakutest|p6|pl6|pm6"],Razor:["cshtml|asp"],RDoc:["Rd"],Red:["red|reds"],RHTML:["Rhtml"],RST:["rst"],Ruby:["rb|ru|gemspec|rake|^Guardfile|^Rakefile|^Gemfile"],Rust:["rs"],SASS:["sass"],SCAD:["scad"],Scala:["scala|sbt"],Scheme:["scm|sm|rkt|oak|scheme"],Scrypt:["scrypt"],SCSS:["scss"],SH:["sh|bash|^.bashrc"],SJS:["sjs"],Slim:["slim|skim"],Smarty:["smarty|tpl"],Smithy:["smithy"],snippets:["snippets"],Soy_Template:["soy"],Space:["space"],SQL:["sql"],SQLServer:["sqlserver"],Stylus:["styl|stylus"],SVG:["svg"],Swift:["swift"],Tcl:["tcl"],Terraform:["tf","tfvars","terragrunt"],Tex:["tex"],Text:["txt"],Textile:["textile"],Toml:["toml"],TSX:["tsx"],Twig:["twig|swig"],Typescript:["ts|typescript|str"],Vala:["vala"],VBScript:["vbs|vb"],Velocity:["vm"],Verilog:["v|vh|sv|svh"],VHDL:["vhd|vhdl"],Visualforce:["vfp|component|page"],Wollok:["wlk|wpgm|wtest"],XML:["xml|rdf|rss|wsdl|xslt|atom|mathml|mml|xul|xbl|xaml"],XQuery:["xq"],YAML:["yaml|yml"],Zeek:["zeek|bro"],Django:["html"]},u={ObjectiveC:"Objective-C",CSharp:"C#",golang:"Go",C_Cpp:"C and C++",Csound_Document:"Csound Document",Csound_Orchestra:"Csound",Csound_Score:"Csound Score",coffee:"CoffeeScript",HTML_Ruby:"HTML (Ruby)",HTML_Elixir:"HTML (Elixir)",FTL:"FreeMarker",PHP_Laravel_blade:"PHP (Blade Template)",Perl6:"Perl 6",AutoHotKey:"AutoHotkey / AutoIt"},a={};for(var f in o){var l=o[f],c=(u[f]||f).replace(/_/g," "),h=f.toLowerCase(),p=new s(h,c,l[0]);a[h]=p,r.push(p)}n.exports={getModeForPath:i,modes:r,modesByName:a}}),define("ace/ext/themelist",["require","exports","module"],function(e,t,n){"use strict";var r=[["Chrome"],["Clouds"],["Crimson Editor"],["Dawn"],["Dreamweaver"],["Eclipse"],["GitHub"],["IPlastic"],["Solarized Light"],["TextMate"],["Tomorrow"],["Xcode"],["Kuroir"],["KatzenMilch"],["SQL Server","sqlserver","light"],["Ambiance","ambiance","dark"],["Chaos","chaos","dark"],["Clouds Midnight","clouds_midnight","dark"],["Dracula","","dark"],["Cobalt","cobalt","dark"],["Gruvbox","gruvbox","dark"],["Green on Black","gob","dark"],["idle Fingers","idle_fingers","dark"],["krTheme","kr_theme","dark"],["Merbivore","merbivore","dark"],["Merbivore Soft","merbivore_soft","dark"],["Mono Industrial","mono_industrial","dark"],["Monokai","monokai","dark"],["Nord Dark","nord_dark","dark"],["One Dark","one_dark","dark"],["Pastel on dark","pastel_on_dark","dark"],["Solarized Dark","solarized_dark","dark"],["Terminal","terminal","dark"],["Tomorrow Night","tomorrow_night","dark"],["Tomorrow Night Blue","tomorrow_night_blue","dark"],["Tomorrow Night Bright","tomorrow_night_bright","dark"],["Tomorrow Night 80s","tomorrow_night_eighties","dark"],["Twilight","twilight","dark"],["Vibrant Ink","vibrant_ink","dark"]];t.themesByName={},t.themes=r.map(function(e){var n=e[1]||e[0].replace(/ /g,"_").toLowerCase(),r={caption:e[0],theme:"ace/theme/"+n,isDark:e[2]=="dark",name:n};return t.themesByName[n]=r,r})}),define("ace/ext/options",["require","exports","module","ace/ext/menu_tools/overlay_page","ace/lib/dom","ace/lib/oop","ace/config","ace/lib/event_emitter","ace/ext/modelist","ace/ext/themelist"],function(e,t,n){"use strict";e("./menu_tools/overlay_page");var r=e("../lib/dom"),i=e("../lib/oop"),s=e("../config"),o=e("../lib/event_emitter").EventEmitter,u=r.buildDom,a=e("./modelist"),f=e("./themelist"),l={Bright:[],Dark:[]};f.themes.forEach(function(e){l[e.isDark?"Dark":"Bright"].push({caption:e.caption,value:e.theme})});var c=a.modes.map(function(e){return{caption:e.caption,value:e.mode}}),h={Main:{Mode:{path:"mode",type:"select",items:c},Theme:{path:"theme",type:"select",items:l},Keybinding:{type:"buttonBar",path:"keyboardHandler",items:[{caption:"Ace",value:null},{caption:"Vim",value:"ace/keyboard/vim"},{caption:"Emacs",value:"ace/keyboard/emacs"},{caption:"Sublime",value:"ace/keyboard/sublime"},{caption:"VSCode",value:"ace/keyboard/vscode"}]},"Font Size":{path:"fontSize",type:"number",defaultValue:12,defaults:[{caption:"12px",value:12},{caption:"24px",value:24}]},"Soft Wrap":{type:"buttonBar",path:"wrap",items:[{caption:"Off",value:"off"},{caption:"View",value:"free"},{caption:"margin",value:"printMargin"},{caption:"40",value:"40"}]},"Cursor Style":{path:"cursorStyle",items:[{caption:"Ace",value:"ace"},{caption:"Slim",value:"slim"},{caption:"Smooth",value:"smooth"},{caption:"Smooth And Slim",value:"smooth slim"},{caption:"Wide",value:"wide"}]},Folding:{path:"foldStyle",items:[{caption:"Manual",value:"manual"},{caption:"Mark begin",value:"markbegin"},{caption:"Mark begin and end",value:"markbeginend"}]},"Soft Tabs":[{path:"useSoftTabs"},{ariaLabel:"Tab Size",path:"tabSize",type:"number",values:[2,3,4,8,16]}],Overscroll:{type:"buttonBar",path:"scrollPastEnd",items:[{caption:"None",value:0},{caption:"Half",value:.5},{caption:"Full",value:1}]}},More:{"Atomic soft tabs":{path:"navigateWithinSoftTabs"},"Enable Behaviours":{path:"behavioursEnabled"},"Wrap with quotes":{path:"wrapBehavioursEnabled"},"Enable Auto Indent":{path:"enableAutoIndent"},"Full Line Selection":{type:"checkbox",values:"text|line",path:"selectionStyle"},"Highlight Active Line":{path:"highlightActiveLine"},"Show Invisibles":{path:"showInvisibles"},"Show Indent Guides":{path:"displayIndentGuides"},"Persistent HScrollbar":{path:"hScrollBarAlwaysVisible"},"Persistent VScrollbar":{path:"vScrollBarAlwaysVisible"},"Animate scrolling":{path:"animatedScroll"},"Show Gutter":{path:"showGutter"},"Show Line Numbers":{path:"showLineNumbers"},"Relative Line Numbers":{path:"relativeLineNumbers"},"Fixed Gutter Width":{path:"fixedWidthGutter"},"Show Print Margin":[{path:"showPrintMargin"},{ariaLabel:"Print Margin",type:"number",path:"printMarginColumn"}],"Indented Soft Wrap":{path:"indentedSoftWrap"},"Highlight selected word":{path:"highlightSelectedWord"},"Fade Fold Widgets":{path:"fadeFoldWidgets"},"Use textarea for IME":{path:"useTextareaForIME"},"Merge Undo Deltas":{path:"mergeUndoDeltas",items:[{caption:"Always",value:"always"},{caption:"Never",value:"false"},{caption:"Timed",value:"true"}]},"Elastic Tabstops":{path:"useElasticTabstops"},"Incremental Search":{path:"useIncrementalSearch"},"Read-only":{path:"readOnly"},"Copy without selection":{path:"copyWithEmptySelection"},"Live Autocompletion":{path:"enableLiveAutocompletion"}}},p=function(e,t){this.editor=e,this.container=t||document.createElement("div"),this.groups=[],this.options={}};(function(){i.implement(this,o),this.add=function(e){e.Main&&i.mixin(h.Main,e.Main),e.More&&i.mixin(h.More,e.More)},this.render=function(){this.container.innerHTML="",u(["table",{role:"presentation",id:"controls"},this.renderOptionGroup(h.Main),["tr",null,["td",{colspan:2},["table",{role:"presentation",id:"more-controls"},this.renderOptionGroup(h.More)]]],["tr",null,["td",{colspan:2},"version "+s.version]]],this.container)},this.renderOptionGroup=function(e){return Object.keys(e).map(function(t,n){var r=e[t];return r.position||(r.position=n/1e4),r.label||(r.label=t),r}).sort(function(e,t){return e.position-t.position}).map(function(e){return this.renderOption(e.label,e)},this)},this.renderOptionControl=function(e,t){var n=this;if(Array.isArray(t))return t.map(function(t){return n.renderOptionControl(e,t)});var r,i=n.getOption(t);t.values&&t.type!="checkbox"&&(typeof t.values=="string"&&(t.values=t.values.split("|")),t.items=t.values.map(function(e){return{value:e,name:e}}));if(t.type=="buttonBar")r=["div",{role:"group","aria-labelledby":t.path+"-label"},t.items.map(function(e){return["button",{value:e.value,ace_selected_button:i==e.value,"aria-pressed":i==e.value,onclick:function(){n.setOption(t,e.value);var r=this.parentNode.querySelectorAll("[ace_selected_button]");for(var i=0;i<r.length;i++)r[i].removeAttribute("ace_selected_button"),r[i].setAttribute("aria-pressed",!1);this.setAttribute("ace_selected_button",!0),this.setAttribute("aria-pressed",!0)}},e.desc||e.caption||e.name]})];else if(t.type=="number")r=["input",{type:"number",value:i||t.defaultValue,style:"width:3em",oninput:function(){n.setOption(t,parseInt(this.value))}}],t.ariaLabel?r[1]["aria-label"]=t.ariaLabel:r[1].id=e,t.defaults&&(r=[r,t.defaults.map(function(e){return["button",{onclick:function(){var t=this.parentNode.firstChild;t.value=e.value,t.oninput()}},e.caption]})]);else if(t.items){var s=function(e){return e.map(function(e){return["option",{value:e.value||e.name},e.desc||e.caption||e.name]})},o=Array.isArray(t.items)?s(t.items):Object.keys(t.items).map(function(e){return["optgroup",{label:e},s(t.items[e])]});r=["select",{id:e,value:i,onchange:function(){n.setOption(t,this.value)}},o]}else typeof t.values=="string"&&(t.values=t.values.split("|")),t.values&&(i=i==t.values[1]),r=["input",{type:"checkbox",id:e,checked:i||null,onchange:function(){var e=this.checked;t.values&&(e=t.values[e?1:0]),n.setOption(t,e)}}],t.type=="checkedNumber"&&(r=[r,[]]);return r},this.renderOption=function(e,t){if(t.path&&!t.onchange&&!this.editor.$options[t.path])return;var n=Array.isArray(t)?t[0].path:t.path;this.options[n]=t;var r="-"+n,i=n+"-label",s=this.renderOptionControl(r,t);return["tr",{"class":"ace_optionsMenuEntry"},["td",["label",{"for":r,id:i},e]],["td",s]]},this.setOption=function(e,t){typeof e=="string"&&(e=this.options[e]),t=="false"&&(t=!1),t=="true"&&(t=!0),t=="null"&&(t=null),t=="undefined"&&(t=undefined),typeof t=="string"&&parseFloat(t).toString()==t&&(t=parseFloat(t)),e.onchange?e.onchange(t):e.path&&this.editor.setOption(e.path,t),this._signal("setOption",{name:e.path,value:t})},this.getOption=function(e){return e.getValue?e.getValue():this.editor.getOption(e.path)}}).call(p.prototype),t.OptionPanel=p}); (function() {
window.require(["ace/ext/options"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"comment.doc.tag",regex:"@[\\w\\d_]+"},s.getTagRule(),{defaultToken:"comment.doc",caseInsensitive:!0}]}};r.inherits(s,i),s.getTagRule=function(e){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},s.getStartRule=function(e){return{token:"comment.doc",regex:"\\/\\*(?=\\*)",next:e}},s.getEndRule=function(e){return{token:"comment.doc",regex:"\\*\\/",next:e}},t.DocCommentHighlightRules=s}),define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/doc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";function a(){var e=o.replace("\\d","\\d\\-"),t={onMatch:function(e,t,n){var r=e.charAt(1)=="/"?2:1;if(r==1)t!=this.nextState?n.unshift(this.next,this.nextState,0):n.unshift(this.next),n[2]++;else if(r==2&&t==this.nextState){n[1]--;if(!n[1]||n[1]<0)n.shift(),n.shift()}return[{type:"meta.tag.punctuation."+(r==1?"":"end-")+"tag-open.xml",value:e.slice(0,r)},{type:"meta.tag.tag-name.xml",value:e.substr(r)}]},regex:"</?"+e+"",next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(t);var n={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[n,t,{include:"reference"},{defaultToken:"string"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(e,t,n){return t==n[0]&&n.shift(),e.length==2&&(n[0]==this.nextState&&n[1]--,(!n[1]||n[1]<0)&&n.splice(0,2)),this.next=n[0]||"start",[{type:this.token,value:e}]},nextState:"jsx"},n,f("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:e},{token:"keyword.operator.attribute-equals.xml",regex:"="},{token:"text.tag-whitespace.xml",regex:"\\s+"},{token:"string.attribute-value.xml",regex:"'",stateName:"jsx_attr_q",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',stateName:"jsx_attr_qq",push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},t],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}function f(e){return[{token:"comment",regex:/\/\*/,next:[i.getTagRule(),{token:"comment",regex:"\\*\\/",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[i.getTagRule(),{token:"comment",regex:"$|^",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var r=e("../lib/oop"),i=e("./doc_comment_highlight_rules").DocCommentHighlightRules,s=e("./text_highlight_rules").TextHighlightRules,o="[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*",u=function(e){var t=this.createKeywordMapper({"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Namespace|QName|XML|XMLList|ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|JSON|Math|this|arguments|prototype|window|document",keyword:"const|yield|import|get|set|async|await|break|case|catch|continue|default|delete|do|else|finally|for|function|if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|__parent__|__count__|escape|unescape|with|__proto__|class|enum|extends|super|export|implements|private|public|interface|package|protected|static","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},"identifier"),n="case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void",r="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u{[0-9a-fA-F]{1,6}}|[0-2][0-7]{0,2}|3[0-7][0-7]?|[4-7][0-7]?|.)";this.$rules={no_regex:[i.getStartRule("doc-start"),f("no_regex"),{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:["storage.type","punctuation.operator","support.function","punctuation.operator","entity.name.function","text","keyword.operator"],regex:"("+o+")(\\.)(prototype)(\\.)("+o+")(\\s*)(=)",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s+)(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","entity.name.function","text","paren.lparen"],regex:"(function)(\\s+)("+o+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:"from(?=\\s*('|\"))"},{token:"keyword",regex:"(?:"+n+")\\b",next:"start"},{token:["support.constant"],regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|time|trace|timeEnd|assert)\b/},{token:t,regex:o},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/,next:"start"},{token:"keyword.operator",regex:/--|\+\+|\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\|\||\?:|[!$%&*+\-~\/^]=?/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[\[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/},{token:"comment",regex:/^#!.*$/}],property:[{token:"text",regex:"\\s+"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(?:(\\s+)(\\w+))?(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:/(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/},{token:"support.function.dom",regex:/(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/},{token:"support.constant",regex:/(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/},{token:"identifier",regex:o},{regex:"",token:"empty",next:"no_regex"}],start:[i.getStartRule("doc-start"),f("start"),{token:"string.regexp",regex:"\\/",next:"regex"},{token:"text",regex:"\\s+|^$",next:"start"},{token:"empty",regex:"",next:"no_regex"}],regex:[{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:"/[sxngimy]*",next:"no_regex"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/},{token:"constant.language.escape",regex:/\(\?[:=!]|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"constant.language.escape",regex:/\[\^?/,next:"regex_character_class"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:"]",next:"regex"},{token:"constant.language.escape",regex:"-"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp.charachterclass"}],function_arguments:[{token:"variable.parameter",regex:o},{token:"punctuation.operator",regex:"[, ]+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]};if(!e||!e.noES6)this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(e,t,n){this.next=e=="{"?this.nextState:"";if(e=="{"&&n.length)n.unshift("start",t);else if(e=="}"&&n.length){n.shift(),this.next=n.shift();if(this.next.indexOf("string")!=-1||this.next.indexOf("jsx")!=-1)return"paren.quasi.end"}return e=="{"?"paren.lparen":"paren.rparen"},nextState:"start"},{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:r},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]}),(!e||e.jsx!=0)&&a.call(this);this.embedRules(i,"doc-",[i.getEndRule("no_regex")]),this.normalizeRules()};r.inherits(u,s),t.JavaScriptHighlightRules=u}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}},this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./javascript_highlight_rules").JavaScriptHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("../worker/worker_client").WorkerClient,a=e("./behaviour/cstyle").CstyleBehaviour,f=e("./folding/cstyle").FoldMode,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new a,this.foldingRules=new f};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e),s=i.tokens,o=i.state;if(s.length&&s[s.length-1].type=="comment")return r;if(e=="start"||e=="no_regex"){var u=t.match(/^.*(?:\bcase\b.*:|[\{\(\[])\s*$/);u&&(r+=n)}else if(e=="doc-start"){if(o=="start"||o=="no_regex")return"";var u=t.match(/^\s*(\/?)\*/);u&&(u[1]&&(r+=" "),r+="* ")}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new u(["ace"],"ace/mode/javascript_worker","JavaScriptWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/javascript",this.snippetFileId="ace/snippets/javascript"}.call(l.prototype),t.Mode=l}); (function() {
window.require(["ace/mode/javascript"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"text",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"comment",regex:"\\/\\/.*$"},{token:"comment.start",regex:"\\/\\*",next:"comment"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],comment:[{token:"comment.end",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]}};r.inherits(s,i),t.JsonHighlightRules=s}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}},this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./json_highlight_rules").JsonHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("./behaviour/cstyle").CstyleBehaviour,a=e("./folding/cstyle").FoldMode,f=e("../worker/worker_client").WorkerClient,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new u,this.foldingRules=new a};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t);if(e=="start"){var i=t.match(/^.*[\{\(\[]\s*$/);i&&(r+=n)}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new f(["ace"],"ace/mode/json_worker","JsonWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/json"}.call(l.prototype),t.Mode=l}); (function() {
window.require(["ace/mode/json"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"text",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"comment",regex:"\\/\\/.*$"},{token:"comment.start",regex:"\\/\\*",next:"comment"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],comment:[{token:"comment.end",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]}};r.inherits(s,i),t.JsonHighlightRules=s}),define("ace/mode/json5_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/json_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./json_highlight_rules").JsonHighlightRules,s=function(){i.call(this);var e=[{token:"variable",regex:/[a-zA-Z$_\u00a1-\uffff][\w$\u00a1-\uffff]*\s*(?=:)/},{token:"variable",regex:/['](?:(?:\\.)|(?:[^'\\]))*?[']\s*(?=:)/},{token:"constant.language.boolean",regex:/(?:null)\b/},{token:"string",regex:/'/,next:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\/bfnrt]|$)/,consumeLineEnd:!0},{token:"string",regex:/'|$/,next:"start"},{defaultToken:"string"}]},{token:"string",regex:/"(?![^"]*":)/,next:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\/bfnrt]|$)/,consumeLineEnd:!0},{token:"string",regex:/"|$/,next:"start"},{defaultToken:"string"}]},{token:"constant.numeric",regex:/[+-]?(?:Infinity|NaN)\b/}];for(var t in this.$rules)this.$rules[t].unshift.apply(this.$rules[t],e);this.normalizeRules()};r.inherits(s,i),t.Json5HighlightRules=s}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}},this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/json5",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json5_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./json5_highlight_rules").Json5HighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("./behaviour/cstyle").CstyleBehaviour,a=e("./folding/cstyle").FoldMode,f=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new u,this.foldingRules=new a};r.inherits(f,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.$id="ace/mode/json5"}.call(f.prototype),t.Mode=f}); (function() {
window.require(["ace/mode/json5"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/snippets/javascript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# Prototype\nsnippet proto\n ${1:class_name}.prototype.${2:method_name} = function(${3:first_argument}) {\n ${4:// body...}\n };\n# Function\nsnippet fun\n function ${1?:function_name}(${2:argument}) {\n ${3:// body...}\n }\n# Anonymous Function\nregex /((=)\\s*|(:)\\s*|(\\()|\\b)/f/(\\))?/\nsnippet f\n function${M1?: ${1:functionName}}($2) {\n ${0:$TM_SELECTED_TEXT}\n }${M2?;}${M3?,}${M4?)}\n# Immediate function\ntrigger \\(?f\\(\nendTrigger \\)?\nsnippet f(\n (function(${1}) {\n ${0:${TM_SELECTED_TEXT:/* code */}}\n }(${1}));\n# if\nsnippet if\n if (${1:true}) {\n ${0}\n }\n# if ... else\nsnippet ife\n if (${1:true}) {\n ${2}\n } else {\n ${0}\n }\n# tertiary conditional\nsnippet ter\n ${1:/* condition */} ? ${2:a} : ${3:b}\n# switch\nsnippet switch\n switch (${1:expression}) {\n case \'${3:case}\':\n ${4:// code}\n break;\n ${5}\n default:\n ${2:// code}\n }\n# case\nsnippet case\n case \'${1:case}\':\n ${2:// code}\n break;\n ${3}\n\n# while (...) {...}\nsnippet wh\n while (${1:/* condition */}) {\n ${0:/* code */}\n }\n# try\nsnippet try\n try {\n ${0:/* code */}\n } catch (e) {}\n# do...while\nsnippet do\n do {\n ${2:/* code */}\n } while (${1:/* condition */});\n# Object Method\nsnippet :f\nregex /([,{[])|^\\s*/:f/\n ${1:method_name}: function(${2:attribute}) {\n ${0}\n }${3:,}\n# setTimeout function\nsnippet setTimeout\nregex /\\b/st|timeout|setTimeo?u?t?/\n setTimeout(function() {${3:$TM_SELECTED_TEXT}}, ${1:10});\n# Get Elements\nsnippet gett\n getElementsBy${1:TagName}(\'${2}\')${3}\n# Get Element\nsnippet get\n getElementBy${1:Id}(\'${2}\')${3}\n# console.log (Firebug)\nsnippet cl\n console.log(${1});\n# return\nsnippet ret\n return ${1:result}\n# for (property in object ) { ... }\nsnippet fori\n for (var ${1:prop} in ${2:Things}) {\n ${0:$2[$1]}\n }\n# hasOwnProperty\nsnippet has\n hasOwnProperty(${1})\n# docstring\nsnippet /**\n /**\n * ${1:description}\n *\n */\nsnippet @par\nregex /^\\s*\\*\\s*/@(para?m?)?/\n @param {${1:type}} ${2:name} ${3:description}\nsnippet @ret\n @return {${1:type}} ${2:description}\n# JSON.parse\nsnippet jsonp\n JSON.parse(${1:jstr});\n# JSON.stringify\nsnippet jsons\n JSON.stringify(${1:object});\n# self-defining function\nsnippet sdf\n var ${1:function_name} = function(${2:argument}) {\n ${3:// initial code ...}\n\n $1 = function($2) {\n ${4:// main code}\n };\n }\n# singleton\nsnippet sing\n function ${1:Singleton} (${2:argument}) {\n // the cached instance\n var instance;\n\n // rewrite the constructor\n $1 = function $1($2) {\n return instance;\n };\n \n // carry over the prototype properties\n $1.prototype = this;\n\n // the instance\n instance = new $1();\n\n // reset the constructor pointer\n instance.constructor = $1;\n\n ${3:// code ...}\n\n return instance;\n }\n# class\nsnippet class\nregex /^\\s*/clas{0,2}/\n var ${1:class} = function(${20}) {\n $40$0\n };\n \n (function() {\n ${60:this.prop = ""}\n }).call(${1:class}.prototype);\n \n exports.${1:class} = ${1:class};\n# \nsnippet for-\n for (var ${1:i} = ${2:Things}.length; ${1:i}--; ) {\n ${0:${2:Things}[${1:i}];}\n }\n# for (...) {...}\nsnippet for\n for (var ${1:i} = 0; $1 < ${2:Things}.length; $1++) {\n ${3:$2[$1]}$0\n }\n# for (...) {...} (Improved Native For-Loop)\nsnippet forr\n for (var ${1:i} = ${2:Things}.length - 1; $1 >= 0; $1--) {\n ${3:$2[$1]}$0\n }\n\n\n#modules\nsnippet def\n define(function(require, exports, module) {\n "use strict";\n var ${1/.*\\///} = require("${1}");\n \n $TM_SELECTED_TEXT\n });\nsnippet req\nguard ^\\s*\n var ${1/.*\\///} = require("${1}");\n $0\nsnippet requ\nguard ^\\s*\n var ${1/.*\\/(.)/\\u$1/} = require("${1}").${1/.*\\/(.)/\\u$1/};\n $0\n',t.scope="javascript"}); (function() {
window.require(["ace/snippets/javascript"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
; (function() {
window.require(["ace/snippets/json"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
; (function() {
window.require(["ace/snippets/json5"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-chrome",t.cssText='.ace-chrome .ace_gutter {background: #ebebeb;color: #333;overflow : hidden;}.ace-chrome .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-chrome {background-color: #FFFFFF;color: black;}.ace-chrome .ace_cursor {color: black;}.ace-chrome .ace_invisible {color: rgb(191, 191, 191);}.ace-chrome .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-chrome .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-chrome .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-chrome .ace_invalid {background-color: rgb(153, 0, 0);color: white;}.ace-chrome .ace_fold {}.ace-chrome .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-chrome .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-chrome .ace_support.ace_type,.ace-chrome .ace_support.ace_class.ace-chrome .ace_support.ace_other {color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter {font-style:italic;color:#FD971F;}.ace-chrome .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-chrome .ace_comment {color: #236e24;}.ace-chrome .ace_comment.ace_doc {color: #236e24;}.ace-chrome .ace_comment.ace_doc.ace_tag {color: #236e24;}.ace-chrome .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-chrome .ace_variable {color: rgb(49, 132, 149);}.ace-chrome .ace_xml-pe {color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-chrome .ace_heading {color: rgb(12, 7, 255);}.ace-chrome .ace_list {color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-chrome .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_gutter-active-line {background-color : #dcdcdc;}.ace-chrome .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_keyword,.ace-chrome .ace_meta.ace_tag {color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-chrome .ace_string {color: #1A1AA6;}.ace-chrome .ace_entity.ace_other.ace_attribute-name {color: #994409;}.ace-chrome .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass,!1)}); (function() {
window.require(["ace/theme/chrome"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
"no use strict";!function(e){function t(e,t){var n=e,r="";while(n){var i=t[n];if(typeof i=="string")return i+r;if(i)return i.location.replace(/\/*$/,"/")+(r||i.main||i.name);if(i===!1)return"";var s=n.lastIndexOf("/");if(s===-1)break;r=n.substr(s)+r,n=n.slice(0,s)}return e}if(typeof e.window!="undefined"&&e.document)return;if(e.require&&e.define)return;e.console||(e.console=function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},e.console.error=e.console.warn=e.console.log=e.console.trace=e.console),e.window=e,e.ace=e,e.onerror=function(e,t,n,r,i){postMessage({type:"error",data:{message:e,data:i.data,file:t,line:n,col:r,stack:i.stack}})},e.normalizeModule=function(t,n){if(n.indexOf("!")!==-1){var r=n.split("!");return e.normalizeModule(t,r[0])+"!"+e.normalizeModule(t,r[1])}if(n.charAt(0)=="."){var i=t.split("/").slice(0,-1).join("/");n=(i?i+"/":"")+n;while(n.indexOf(".")!==-1&&s!=n){var s=n;n=n.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return n},e.require=function(r,i){i||(i=r,r=null);if(!i.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");i=e.normalizeModule(r,i);var s=e.require.modules[i];if(s)return s.initialized||(s.initialized=!0,s.exports=s.factory().exports),s.exports;if(!e.require.tlns)return console.log("unable to load "+i);var o=t(i,e.require.tlns);return o.slice(-3)!=".js"&&(o+=".js"),e.require.id=i,e.require.modules[i]={},importScripts(o),e.require(r,i)},e.require.modules={},e.require.tlns={},e.define=function(t,n,r){arguments.length==2?(r=n,typeof t!="string"&&(n=t,t=e.require.id)):arguments.length==1&&(r=t,n=[],t=e.require.id);if(typeof r!="function"){e.require.modules[t]={exports:r,initialized:!0};return}n.length||(n=["require","exports","module"]);var i=function(n){return e.require(t,n)};e.require.modules[t]={exports:{},factory:function(){var e=this,t=r.apply(this,n.slice(0,r.length).map(function(t){switch(t){case"require":return i;case"exports":return e.exports;case"module":return e;default:return i(t)}}));return t&&(e.exports=t),e}}},e.define.amd={},require.tlns={},e.initBaseUrls=function(t){for(var n in t)require.tlns[n]=t[n]},e.initSender=function(){var n=e.require("ace/lib/event_emitter").EventEmitter,r=e.require("ace/lib/oop"),i=function(){};return function(){r.implement(this,n),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(i.prototype),new i};var n=e.main=null,r=e.sender=null;e.onmessage=function(t){var i=t.data;if(i.event&&r)r._signal(i.event,i.data);else if(i.command)if(n[i.command])n[i.command].apply(n,i.args);else{if(!e[i.command])throw new Error("Unknown command:"+i.command);e[i.command].apply(e,i.args)}else if(i.init){e.initBaseUrls(i.tlns),r=e.sender=e.initSender();var s=require(i.module)[i.classname];n=e.main=new s(r)}}}(this),define("ace/lib/oop",[],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/range",[],function(e,t,n){"use strict";var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/apply_delta",[],function(e,t,n){"use strict";function r(e,t){throw console.log("Invalid Delta:",e),"Invalid Delta: "+t}function i(e,t){return t.row>=0&&t.row<e.length&&t.column>=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/lib/event_emitter",[],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;n=n.slice();for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;this.on(e,function r(){n.off(e,r),t.apply(null,arguments)});if(!t)return new Promise(function(e){t=e})},r.setDefaultHandler=function(e,t){var n=this._defaultHandlers;n||(n=this._defaultHandlers={_disabled_:{}});if(n[e]){var r=n[e],i=n._disabled_[e];i||(n._disabled_[e]=i=[]),i.push(r);var s=i.indexOf(t);s!=-1&&i.splice(s,1)}n[e]=t},r.removeDefaultHandler=function(e,t){var n=this._defaultHandlers;if(!n)return;var r=n._disabled_[e];if(n[e]==t)r&&this.setDefaultHandler(e,r.pop());else if(r){var i=r.indexOf(t);i!=-1&&r.splice(i,1)}},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){e||(this._eventRegistry=this._defaultHandlers=undefined),this._eventRegistry&&(this._eventRegistry[e]=undefined),this._defaultHandlers&&(this._defaultHandlers[e]=undefined)},t.EventEmitter=r}),define("ace/anchor",[],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.$onChange=this.onChange.bind(this),this.attach(e),typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n)};(function(){function e(e,t,n){var r=n?e.column<=t.column:e.column<t.column;return e.row<t.row||e.row==t.row&&r}function t(t,n,r){var i=t.action=="insert",s=(i?1:-1)*(t.end.row-t.start.row),o=(i?1:-1)*(t.end.column-t.start.column),u=t.start,a=i?u:t.end;return e(n,u,r)?{row:n.row,column:n.column}:e(a,n,!r)?{row:n.row+s,column:n.column+(n.row==a.row?o:0)}:{row:u.row,column:u.column}}r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){if(e.start.row==e.end.row&&e.start.row!=this.row)return;if(e.start.row>this.row)return;var n=t(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(n.row,n.column,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},this.detach=function(){this.document.off("change",this.$onChange)},this.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/document",[],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)};(function(){r.implement(this,s),this.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new u(this,e,t)},"aaa".split(/a/).length===0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},this.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},this.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},this.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},this.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},this.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},this.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},this.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},this.clonePos=function(e){return{row:e.row,column:e.column}},this.pos=function(e,t){return{row:e,column:t}},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},this.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e<this.getLength()?(t=t.concat([""]),n=0):(t=[""].concat(t),e--,n=this.$lines[e].length),this.insertMergedLines({row:e,column:n},t)},this.insertMergedLines=function(e,t){var n=this.clippedPos(e.row,e.column),r={row:n.row+t.length-1,column:(t.length==1?n.column:0)+t[t.length-1].length};return this.applyDelta({start:n,end:r,action:"insert",lines:t}),this.clonePos(r)},this.remove=function(e){var t=this.clippedPos(e.start.row,e.start.column),n=this.clippedPos(e.end.row,e.end.column);return this.applyDelta({start:t,end:n,action:"remove",lines:this.getLinesForRange({start:t,end:n})}),this.clonePos(t)},this.removeInLine=function(e,t,n){var r=this.clippedPos(e,t),i=this.clippedPos(e,n);return this.applyDelta({start:r,end:i,action:"remove",lines:this.getLinesForRange({start:r,end:i})},!0),this.clonePos(r)},this.removeFullLines=function(e,t){e=Math.min(Math.max(0,e),this.getLength()-1),t=Math.min(Math.max(0,t),this.getLength()-1);var n=t==this.getLength()-1&&e>0,r=t<this.getLength()-1,i=n?e-1:e,s=n?this.getLine(i).length:0,u=r?t+1:t,a=r?0:this.getLine(u).length,f=new o(i,s,u,a),l=this.$lines.slice(e,t+1);return this.applyDelta({start:f.start,end:f.end,action:"remove",lines:this.getLinesForRange(f)}),l},this.removeNewLine=function(e){e<this.getLength()-1&&e>=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},this.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++)this.applyDelta(e[t])},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--)this.revertDelta(e[t])},this.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},this.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row<t&&e.end.row<t||e.action=="insert"&&e.start.row<=t)&&this.applyDelta(e)},this.$splitAndapplyLargeDelta=function(e,t){var n=e.lines,r=n.length-t+1,i=e.start.row,s=e.start.column;for(var o=0,u=0;o<r;o=u){u+=t-1;var a=n.slice(o,u);a.push(""),this.applyDelta({start:this.pos(i+o,s),end:this.pos(i+u,s=0),action:e.action,lines:a},!0)}e.lines=n.slice(o),e.start.row=i+o,e.start.column=s,this.applyDelta(e,!0)},this.revertDelta=function(e){this.$safeApplyDelta({start:this.clonePos(e.start),end:this.clonePos(e.end),action:e.action=="insert"?"remove":"insert",lines:e.lines.slice()})},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:e+n[s-1].length+r}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length+r;return i+e.column}}).call(a.prototype),t.Document=a}),define("ace/lib/lang",[],function(e,t,n){"use strict";t.last=function(e){return e[e.length-1]},t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function s(e){if(typeof e!="object"||!e)return e;var t;if(Array.isArray(e)){t=[];for(var n=0;n<e.length;n++)t[n]=s(e[n]);return t}if(Object.prototype.toString.call(e)!=="[object Object]")return e;t={};for(var n in e)t[n]=s(e[n]);return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return(""+e).replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r.isPending=function(){return t},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n==null&&(n=setTimeout(r,e||t))};return i.delay=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)},i.schedule=i,i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/worker/mirror",[],function(e,t,n){"use strict";var r=e("../range").Range,i=e("../document").Document,s=e("../lib/lang"),o=t.Mirror=function(e){this.sender=e;var t=this.doc=new i(""),n=this.deferredUpdate=s.delayedCall(this.onUpdate.bind(this)),r=this;e.on("change",function(e){var i=e.data;if(i[0].start)t.applyDeltas(i);else for(var s=0;s<i.length;s+=2){if(Array.isArray(i[s+1]))var o={action:"insert",start:i[s],lines:i[s+1]};else var o={action:"remove",start:i[s],end:i[s+1]};t.applyDelta(o,!0)}if(r.$timeout)return n.schedule(r.$timeout);r.onUpdate()})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(o.prototype)}),define("ace/mode/json/json_parse",[],function(e,t,n){"use strict";var r,i,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:" "},o,u=function(e){throw{name:"SyntaxError",message:e,at:r,text:o}},a=function(e){return e&&e!==i&&u("Expected '"+e+"' instead of '"+i+"'"),i=o.charAt(r),r+=1,i},f=function(){var e,t="";i==="-"&&(t="-",a("-"));while(i>="0"&&i<="9")t+=i,a();if(i==="."){t+=".";while(a()&&i>="0"&&i<="9")t+=i}if(i==="e"||i==="E"){t+=i,a();if(i==="-"||i==="+")t+=i,a();while(i>="0"&&i<="9")t+=i,a()}e=+t;if(!isNaN(e))return e;u("Bad number")},l=function(){var e,t,n="",r;if(i==='"')while(a()){if(i==='"')return a(),n;if(i==="\\"){a();if(i==="u"){r=0;for(t=0;t<4;t+=1){e=parseInt(a(),16);if(!isFinite(e))break;r=r*16+e}n+=String.fromCharCode(r)}else{if(typeof s[i]!="string")break;n+=s[i]}}else{if(i=="\n"||i=="\r")break;n+=i}}u("Bad string")},c=function(){while(i&&i<=" ")a()},h=function(){switch(i){case"t":return a("t"),a("r"),a("u"),a("e"),!0;case"f":return a("f"),a("a"),a("l"),a("s"),a("e"),!1;case"n":return a("n"),a("u"),a("l"),a("l"),null}u("Unexpected '"+i+"'")},p,d=function(){var e=[];if(i==="["){a("["),c();if(i==="]")return a("]"),e;while(i){e.push(p()),c();if(i==="]")return a("]"),e;a(","),c()}}u("Bad array")},v=function(){var e,t={};if(i==="{"){a("{"),c();if(i==="}")return a("}"),t;while(i){e=l(),c(),a(":"),Object.hasOwnProperty.call(t,e)&&u('Duplicate key "'+e+'"'),t[e]=p(),c();if(i==="}")return a("}"),t;a(","),c()}}u("Bad object")};return p=function(){c();switch(i){case"{":return v();case"[":return d();case'"':return l();case"-":return f();default:return i>="0"&&i<="9"?f():h()}},function(e,t){var n;return o=e,r=0,i=" ",n=p(),c(),i&&u("Syntax error"),typeof t=="function"?function s(e,n){var r,i,o=e[n];if(o&&typeof o=="object")for(r in o)Object.hasOwnProperty.call(o,r)&&(i=s(o,r),i!==undefined?o[r]=i:delete o[r]);return t.call(e,n,o)}({"":n},""):n}}),define("ace/mode/json_worker",[],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("./json/json_parse"),o=t.JsonWorker=function(e){i.call(this,e),this.setTimeout(200)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue(),t=[];try{e&&s(e)}catch(n){var r=this.doc.indexToPosition(n.at-1);t.push({row:r.row,column:r.column,text:n.message,type:"error"})}this.sender.emit("annotate",t)}}.call(o.prototype)})
\ No newline at end of file
.com-trs[data-v-291eb56d]{width:100%;height:50px}.chart-slider[data-v-291eb56d]{width:100%;height:100%}body,html{margin:0;padding:0;height:100%;overflow:hidden}.cascader-item{width:150px}.button-item{margin-left:10px}.current-selected-text{float:left;font-size:small}.video-panel{margin-left:320px}.center-container{width:768px;margin-left:320px;padding:20px 10px;margin:0 auto}.button-group{margin-left:320px;text-align:center}.dubbing-items{width:300px;height:calc(100% - 90px);background-color:#f0f0f0;position:absolute;left:0;overflow:auto;padding:10px}.box-card{margin-bottom:10px}::v-deep .el-card__body{padding:0!important}.item-index{font-size:20px;font-weight:700;margin-right:10px}.main-header{height:70px;line-height:70px;position:fixed;z-index:99;top:0;background-color:#fff;width:calc(100% - 40px);border-bottom:1px solid #dcdfe6;padding:0 20px;box-shadow:0 0 20px rgba(0,0,0,.2)}.main-body{margin-top:70px;height:calc(100% - 70px);overflow:auto}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>NgOne</title>
<!-- <base href="/"> -->
<!-- <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">-->
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="ace/ace.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" src="//staging-teach.cdn.ireadabc.com/h5template/h5-static-lib/js/air.js"></script>
<style>
#saveDataTextarea {
margin: 0;
position: absolute;
top: 0;
left: 0;
right: 180px;
height: 100%;
}
.upload-container {
width: 100px;
height: 40px;
position: absolute;
right: 40px;
border-radius: 2px;
border: 1px solid #dcdfe6;
line-height: 100px;
margin: 10px;
text-align: center;
display:flex;
align-items:center;
justify-content:center;
}
.hide-fileinput {
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
opacity: 0;
cursor: pointer;
}
</style>
</head>
<body onload="loadData();" style="background-color: white;">
<pre id="saveDataTextarea"></pre>
<div class="upload-container">
<div class="upload-file">上传文件</div>
<input class="hide-fileinput" type="file" name="file" onchange="uploadFile()">
</div>
</body>
<script>
var editor = ace.edit("saveDataTextarea");
editor.setTheme("ace/theme/chrome");
editor.session.setMode("ace/mode/json");
editor.session.on('change', function(delta) {
try {
const data = JSON.parse(editor.getValue());
window.courseware.setData(data, null, "cocos_001");
} catch (error) {}
});
let saveDataStr = '';
function loadData() {
window.courseware.getData((data) => {
try {
editor.setValue(JSON.stringify(data, null, 2));
editor.gotoLine(editor.session.getLength());
} catch (error) {}
}, "cocos_001");
}
function uploadFile(){
const dom = document.querySelector(".hide-fileinput");
const file = dom.files[0];
dom.setAttribute("disabled", true);
document.querySelector(".upload-file").innerHTML = "上传中...";
commonUploadFile(file, (data) => {
try {
const d = JSON.parse(data);
const protocolStr = document.location.protocol;
const url = d.url
.replace(/http:/g, protocolStr)
.replace(/https:/g, protocolStr);
editor.insert(url);
} catch (error) {}
dom.removeAttribute("disabled");
document.querySelector(".upload-file").innerHTML = "上传文件";
});
}
function commonUploadFile(file, callback) {
const uploadUrl = window.courseware.uploadUrl(); //上传文件的路径
const uploadData = window.courseware.uploadData(); //上传文件必须要的参数
const formData = new FormData();
formData.append("file", file);
for (const key in uploadData) {
formData.append(key, uploadData[key]);
}
var xhr = new XMLHttpRequest();
xhr.open("post",uploadUrl);
//回调
xhr.onreadystatechange = function () {
if (xhr.readyState==4 && xhr.status==200){
callback && callback(xhr.responseText);
}
}
//获取上传的进度
xhr.upload.onprogress = function (event) {
if(event.lengthComputable){
var percent = event.loaded/event.total *100;
document.querySelector(".upload-file").innerHTML = Math.floor(percent)+"%";
}
}
//将formdata上传
xhr.send(formData);
}
</script>
</html>
\ No newline at end of file
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>form_vue</title><script defer="defer" src="js/chunk-vendors.18bbe7ed.js"></script><script defer="defer" src="js/app.02d5f445.js"></script><link href="css/chunk-vendors.77489a8d.css" rel="stylesheet"><link href="css/app.7e46bedb.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but form_vue doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><script src="https://staging-teach.cdn.ireadabc.com/h5template/h5-static-lib/js/air.js"></script><script>if (document.domain.indexOf("iteachabc.com") > 0) {
document.domain = "iteachabc.com";
}</script><div id="app"></div></body></html>
\ No newline at end of file
(function(){"use strict";var e={8698:function(e,t,i){var n=i(5471),a=i(1052),r=i.n(a),s=function(){var e=this,t=e._self._c;return t("div",{attrs:{id:"app"}},[t("div",{staticClass:"main-header"},[t("div",{staticStyle:{float:"left"}},[t("span",[e._v("当前编辑视频:")]),t("el-button",{attrs:{type:"text"},on:{click:e.handleClickSelectSyllabus}},[e._v("在库中选择视频")])],1),t("div",{staticStyle:{float:"right"}},[t("el-button",{attrs:{type:"primary"},on:{click:e.handleClickSave}},[e._v("保存")])],1)]),t("div",{staticClass:"main-body"},[t("div",{ref:"refDubbingScrollList",staticClass:"dubbing-items"},[e._l(e.dubbintItems,(function(i,n){return t("el-card",{key:n,staticClass:"box-card"},[t("div",{staticStyle:{position:"relative"}},[t("span",{staticClass:"item-index",staticStyle:{position:"absolute"}},[e._v(e._s(n+1)+" "),t("span",{staticStyle:{"font-size":"medium","line-height":"normal"}},[e._v(e._s(e.currentSelectDubbingIndex==n?"正在编辑":""))])]),t("div",{staticStyle:{"text-align":"right"}},[t("el-button",{attrs:{size:"mini",type:"danger"},on:{click:function(t){return e.handleClickDelete(n)}}},[e._v("删除")]),t("el-button",{attrs:{size:"mini",type:"primary"},on:{click:function(t){return e.handleClickSetCurrent(n)}}},[e._v("编辑")])],1)]),t("el-divider"),t("el-form",{attrs:{"label-width":"50px"}},[t("el-form-item",{attrs:{label:"原文"}},[t("el-input",{attrs:{type:"text"},model:{value:i.orgText,callback:function(t){e.$set(i,"orgText",t)},expression:"item.orgText"}})],1),t("el-form-item",{attrs:{label:"开始"}},[t("el-input",{attrs:{type:"text"},model:{value:i.timelineIn,callback:function(t){e.$set(i,"timelineIn",t)},expression:"item.timelineIn"}},[t("template",{slot:"append"},[e._v("(秒)")])],2)],1),t("el-form-item",{attrs:{label:"结束"}},[t("el-input",{attrs:{type:"text"},model:{value:i.timelineOut,callback:function(t){e.$set(i,"timelineOut",t)},expression:"item.timelineOut"}},[t("template",{slot:"append"},[e._v("(秒)")])],2)],1)],1)],1)})),t("el-card",{staticClass:"box-card"},[t("el-button",{staticStyle:{width:"100%"},attrs:{type:"primary"},on:{click:e.handelClickAdd}},[e._v("新建")])],1)],2),t("div",{staticClass:"video-panel"},[t("div",{staticClass:"center-container"},[e.updateVideoSource?e._e():t("video",{ref:"refVideo",attrs:{controls:"",width:"768px"}},[t("source",{attrs:{src:e.videoUrl,type:"video/mp4"}}),e._v(" Your browser does not support the video tag. ")]),t("TimeRangeSelector",{on:{change:e.handleRangeChange},model:{value:e.timeRange,callback:function(t){e.timeRange=t},expression:"timeRange"}})],1)]),t("el-collapse-transition",[t("div",{directives:[{name:"show",rawName:"v-show",value:e.currentSelectDubbingIndex>=0,expression:"currentSelectDubbingIndex >= 0"}],staticClass:"button-group"},[t("el-button",{attrs:{type:"",size:"medium",icon:"el-icon-refresh"},on:{click:e.handleClickPlayRange}},[e._v("播放区间")]),t("el-button",{directives:[{name:"show",rawName:"v-show",value:!e.isPlaying,expression:"!isPlaying"}],attrs:{type:"",size:"medium",icon:"el-icon-video-play"},on:{click:e.handleClickPlay}},[e._v("播放")]),t("el-button",{directives:[{name:"show",rawName:"v-show",value:e.isPlaying,expression:"isPlaying"}],attrs:{type:"",size:"medium",icon:"el-icon-video-pause"},on:{click:e.handleClickPause}},[e._v("暂停")]),t("el-button",{attrs:{type:"",size:"medium"},on:{click:e.handelClickRre10s}},[e._v("向前1秒")]),t("el-button",{attrs:{type:"",size:"medium"},on:{click:e.handleClickSetStart}},[e._v("设置为起点")]),t("el-button",{attrs:{type:"",size:"medium"},on:{click:e.handleClickSetEnd}},[e._v("设置为结束点")])],1)])],1),t("el-dialog",{attrs:{title:"选择内容",visible:e.dialogSelectShow,width:"500px"},on:{"update:visible":function(t){e.dialogSelectShow=t}}},[t("div",{staticClass:"el-main",staticStyle:{height:"300px"}},[t("el-tree",{attrs:{data:e.treeListData,props:e.treeProps,lazy:!0,load:e.handleLazyLoadTreeData},on:{"node-click":e.handleClickTreeNode}})],1),t("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[t("span",{staticClass:"current-selected-text"},[e._v("当前选择:"+e._s(e.currentSelectTreeNode?e.currentSelectTreeNode.name:"")+" - "+e._s(e.currentSelectTreeNode?e.currentSelectTreeNode.id:""))]),t("el-button",{on:{click:e.handleClickCancelSelect}},[e._v("取 消")]),t("el-button",{attrs:{type:"primary"},on:{click:e.handleClickConfirmSelect}},[e._v("确 定")])],1)])],1)},l=[],o=function(){var e=this,t=e._self._c;return t("div",{staticClass:"com-trs"},[t("div",{ref:"refEcharts",staticClass:"chart-slider"})])},c=[],d={name:"TimeRangeSelector",props:{value:{type:Object,default:()=>({start:0,end:100})}},watch:{value:{handler(e){this.parentValueChange=!0,this.setTimeRange(100*e.start,100*e.end)},deep:!0}},data(){return{insECharts:null,parentValueChange:!1}},mounted(){this.initEcharts()},methods:{initEcharts(){this.insECharts||(this.insECharts=this.$echarts.init(this.$refs.refEcharts));const e={grid:{left:10,right:10,top:10,bottom:10},tooltip:{},dataZoom:[{type:"slider"}],xAxis:{show:!1},yAxis:{show:!1}};this.insECharts.on("dataZoom",(e=>{this.parentValueChange?this.parentValueChange=!1:(this.$emit("change",{start:e.start/100,end:e.end/100}),this.$emit("input",{start:e.start/100,end:e.end/100}))})),this.insECharts.setOption(e)},setTimeRange(e,t){this.insECharts.dispatchAction({type:"dataZoom",dataZoomIndex:0,start:e,end:t})}}},u=d,h=i(1656),f=(0,h.A)(u,o,c,!1,null,"291eb56d",null),m=f.exports,p=i(4335);const b=523,g=275931,v="https://ema.iteachabc.com/api/syllabus/v1",y=e=>new Promise((async(t,i)=>{const n=await p.A.get(`${v}/list?orgid=${b}&pid=${e||g}`);t(n.data)})),S=e=>new Promise((async(t,i)=>{const n=await p.A.get(`${v}/getdata?syllabusid=${e}`);t(n.data)}));var C={name:"App",components:{TimeRangeSelector:m},data(){return{isPlaying:!1,videoUrl:"https://teach.cdn.ireadabc.com/3d13b9a7b2cb777836a3d5b29c38384b.mp4",timeRange:{start:0,end:1},dubbintItems:[],dialogSelectShow:!1,treeListData:[],currentSelectTreeNode:null,treeProps:{children:"children",label:"name",isLeaf:function(e,t){return"1"==e.has_courseware}},updateVideoSource:!1,currentSelectDubbingIndex:-1}},async mounted(){this.getData()},methods:{async getData(){const e=await this.$getData();console.log("====getData====",e),this.dubbintItems=e},handleRangeChange(e){this.$refs.refVideo.currentTime=e.start*this.$refs.refVideo.duration;const t=this.timeRange.start*this.$refs.refVideo.duration,i=this.timeRange.end*this.$refs.refVideo.duration;this.dubbintItems[this.currentSelectDubbingIndex].timelineIn=t,this.dubbintItems[this.currentSelectDubbingIndex].timelineOut=i},handleClickPlayRange(){const e=this.timeRange.start*this.$refs.refVideo.duration,t=this.timeRange.end*this.$refs.refVideo.duration;this.$refs.refVideo.currentTime=e,this.$refs.refVideo.play().then((()=>{this.isPlaying=!0;const e=()=>{this.$refs.refVideo.currentTime>=t&&(this.$refs.refVideo.pause(),this.isPlaying=!1,this.$refs.refVideo.removeEventListener("timeupdate",e))};this.$refs.refVideo.addEventListener("timeupdate",e,!1)})).catch((e=>{console.log(e)}))},handleClickPlay(){this.$refs.refVideo.play(),this.isPlaying=!0},handleClickPause(){this.$refs.refVideo.pause(),this.isPlaying=!1},handelClickRre10s(){this.$refs.refVideo.currentTime-=1},handleClickSetStart(){this.timeRange.start=this.$refs.refVideo.currentTime/this.$refs.refVideo.duration,this.dubbintItems[this.currentSelectDubbingIndex].timelineIn=this.$refs.refVideo.currentTime},handleClickSetEnd(){this.timeRange.end=this.$refs.refVideo.currentTime/this.$refs.refVideo.duration,this.dubbintItems[this.currentSelectDubbingIndex].timelineOut=this.$refs.refVideo.currentTime},handleClickSetCurrent(e,t=!1){const i=this.dubbintItems[e].timelineIn/this.$refs.refVideo.duration,n=this.dubbintItems[e].timelineOut/this.$refs.refVideo.duration;this.currentSelectDubbingIndex=e,this.timeRange={start:i,end:n},t&&this.handleClickPlayRange()},handleClickDelete(e){this.$confirm("确定要删除吗?").then((t=>{this.dubbintItems.splice(e,1)})).catch((e=>""))},handelClickAdd(){this.dubbintItems.push({orgText:"",transText:"",timelineIn:0,timelineOut:1}),this.$nextTick((()=>{this.$refs.refDubbingScrollList.scrollTop=this.$refs.refDubbingScrollList.scrollHeight}))},async handleClickSelectSyllabus(){this.dialogSelectShow=!0;const e=await y();this.treeListData=e.rows},handleClickTreeNode(e){"1"==e.has_courseware&&(this.currentSelectTreeNode=e)},handleLazyLoadTreeData(e,t){y(e.data.id).then((e=>{t(e.rows)}))},handleClickCancelSelect(){this.dialogSelectShow=!1,this.currentSelectTreeNode=null,this.treeListData=[]},async handleClickConfirmSelect(){const e=await S(this.currentSelectTreeNode.id);let t=null;try{t=JSON.parse(e.data)}catch(i){}this.videoUrl=t?t.url:"",this.updateVideoSource=!0,this.$nextTick((()=>{this.updateVideoSource=!1})),this.handleClickCancelSelect()},async handleClickSave(){this.$setData(this.dubbintItems)}}},k=C,w=(0,h.A)(k,s,l,!1,null,null,null),x=w.exports,$=i(9393);n["default"].use(r()),n["default"].config.productionTip=!1,n["default"].prototype.$getData=()=>new Promise(((e,t)=>{window.courseware.getData((t=>{e(t)}),"default_key")})),n["default"].prototype.$setData=e=>{window.courseware.setData(e,null,"default_key")},n["default"].prototype.$echarts=$,new n["default"]({render:function(e){return e(x)}}).$mount("#app")}},t={};function i(n){var a=t[n];if(void 0!==a)return a.exports;var r=t[n]={id:n,loaded:!1,exports:{}};return e[n](r,r.exports,i),r.loaded=!0,r.exports}i.m=e,function(){i.amdO={}}(),function(){var e=[];i.O=function(t,n,a,r){if(!n){var s=1/0;for(d=0;d<e.length;d++){n=e[d][0],a=e[d][1],r=e[d][2];for(var l=!0,o=0;o<n.length;o++)(!1&r||s>=r)&&Object.keys(i.O).every((function(e){return i.O[e](n[o])}))?n.splice(o--,1):(l=!1,r<s&&(s=r));if(l){e.splice(d--,1);var c=a();void 0!==c&&(t=c)}}return t}r=r||0;for(var d=e.length;d>0&&e[d-1][2]>r;d--)e[d]=e[d-1];e[d]=[n,a,r]}}(),function(){i.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return i.d(t,{a:t}),t}}(),function(){i.d=function(e,t){for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}}(),function(){i.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}}(),function(){i.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e}}(),function(){var e={524:0};i.O.j=function(t){return 0===e[t]};var t=function(t,n){var a,r,s=n[0],l=n[1],o=n[2],c=0;if(s.some((function(t){return 0!==e[t]}))){for(a in l)i.o(l,a)&&(i.m[a]=l[a]);if(o)var d=o(i)}for(t&&t(n);c<s.length;c++)r=s[c],i.o(e,r)&&e[r]&&e[r][0](),e[r]=0;return i.O(d)},n=self["webpackChunkform_vue"]=self["webpackChunkform_vue"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))}();var n=i.O(void 0,[504],(function(){return i(8698)}));n=i.O(n)})();
//# sourceMappingURL=app.02d5f445.js.map
\ No newline at end of file
{"version":3,"file":"js/app.02d5f445.js","mappings":"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","sources":["webpack://form_vue/./src/App.vue?9ad0","webpack://form_vue/./src/components/TimeRangeSelector.vue?7787","webpack://form_vue/src/components/TimeRangeSelector.vue","webpack://form_vue/./src/components/TimeRangeSelector.vue?a7a2","webpack://form_vue/./src/components/TimeRangeSelector.vue","webpack://form_vue/./src/api/syllabus.js","webpack://form_vue/src/App.vue","webpack://form_vue/./src/App.vue?6a4a","webpack://form_vue/./src/App.vue","webpack://form_vue/./src/main.js","webpack://form_vue/webpack/bootstrap","webpack://form_vue/webpack/runtime/amd options","webpack://form_vue/webpack/runtime/chunk loaded","webpack://form_vue/webpack/runtime/compat get default export","webpack://form_vue/webpack/runtime/define property getters","webpack://form_vue/webpack/runtime/global","webpack://form_vue/webpack/runtime/hasOwnProperty shorthand","webpack://form_vue/webpack/runtime/make namespace object","webpack://form_vue/webpack/runtime/node module decorator","webpack://form_vue/webpack/runtime/jsonp chunk loading","webpack://form_vue/webpack/startup"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app\"}},[_c('div',{staticClass:\"main-header\"},[_c('div',{staticStyle:{\"float\":\"left\"}},[_c('span',[_vm._v(\"当前编辑视频:\")]),_c('el-button',{attrs:{\"type\":\"text\"},on:{\"click\":_vm.handleClickSelectSyllabus}},[_vm._v(\"在库中选择视频\")])],1),_c('div',{staticStyle:{\"float\":\"right\"}},[_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.handleClickSave}},[_vm._v(\"保存\")])],1)]),_c('div',{staticClass:\"main-body\"},[_c('div',{ref:\"refDubbingScrollList\",staticClass:\"dubbing-items\"},[_vm._l((_vm.dubbintItems),function(item,index){return _c('el-card',{key:index,staticClass:\"box-card\"},[_c('div',{staticStyle:{\"position\":\"relative\"}},[_c('span',{staticClass:\"item-index\",staticStyle:{\"position\":\"absolute\"}},[_vm._v(_vm._s(index + 1)+\" \"),_c('span',{staticStyle:{\"font-size\":\"medium\",\"line-height\":\"normal\"}},[_vm._v(_vm._s(_vm.currentSelectDubbingIndex==index ? '正在编辑' : ''))])]),_c('div',{staticStyle:{\"text-align\":\"right\"}},[_c('el-button',{attrs:{\"size\":\"mini\",\"type\":\"danger\"},on:{\"click\":function($event){return _vm.handleClickDelete(index)}}},[_vm._v(\"删除\")]),_c('el-button',{attrs:{\"size\":\"mini\",\"type\":\"primary\"},on:{\"click\":function($event){return _vm.handleClickSetCurrent(index)}}},[_vm._v(\"编辑\")])],1)]),_c('el-divider'),_c('el-form',{attrs:{\"label-width\":\"50px\"}},[_c('el-form-item',{attrs:{\"label\":\"原文\"}},[_c('el-input',{attrs:{\"type\":\"text\"},model:{value:(item.orgText),callback:function ($$v) {_vm.$set(item, \"orgText\", $$v)},expression:\"item.orgText\"}})],1),_c('el-form-item',{attrs:{\"label\":\"开始\"}},[_c('el-input',{attrs:{\"type\":\"text\"},model:{value:(item.timelineIn),callback:function ($$v) {_vm.$set(item, \"timelineIn\", $$v)},expression:\"item.timelineIn\"}},[_c('template',{slot:\"append\"},[_vm._v(\"(秒)\")])],2)],1),_c('el-form-item',{attrs:{\"label\":\"结束\"}},[_c('el-input',{attrs:{\"type\":\"text\"},model:{value:(item.timelineOut),callback:function ($$v) {_vm.$set(item, \"timelineOut\", $$v)},expression:\"item.timelineOut\"}},[_c('template',{slot:\"append\"},[_vm._v(\"(秒)\")])],2)],1)],1)],1)}),_c('el-card',{staticClass:\"box-card\"},[_c('el-button',{staticStyle:{\"width\":\"100%\"},attrs:{\"type\":\"primary\"},on:{\"click\":_vm.handelClickAdd}},[_vm._v(\"新建\")])],1)],2),_c('div',{staticClass:\"video-panel\"},[_c('div',{staticClass:\"center-container\"},[(!_vm.updateVideoSource)?_c('video',{ref:\"refVideo\",attrs:{\"controls\":\"\",\"width\":\"768px\"}},[_c('source',{attrs:{\"src\":_vm.videoUrl,\"type\":\"video/mp4\"}}),_vm._v(\" Your browser does not support the video tag. \")]):_vm._e(),_c('TimeRangeSelector',{on:{\"change\":_vm.handleRangeChange},model:{value:(_vm.timeRange),callback:function ($$v) {_vm.timeRange=$$v},expression:\"timeRange\"}})],1)]),_c('el-collapse-transition',[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentSelectDubbingIndex >= 0),expression:\"currentSelectDubbingIndex >= 0\"}],staticClass:\"button-group\"},[_c('el-button',{attrs:{\"type\":\"\",\"size\":\"medium\",\"icon\":\"el-icon-refresh\"},on:{\"click\":_vm.handleClickPlayRange}},[_vm._v(\"播放区间\")]),_c('el-button',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isPlaying),expression:\"!isPlaying\"}],attrs:{\"type\":\"\",\"size\":\"medium\",\"icon\":\"el-icon-video-play\"},on:{\"click\":_vm.handleClickPlay}},[_vm._v(\"播放\")]),_c('el-button',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isPlaying),expression:\"isPlaying\"}],attrs:{\"type\":\"\",\"size\":\"medium\",\"icon\":\"el-icon-video-pause\"},on:{\"click\":_vm.handleClickPause}},[_vm._v(\"暂停\")]),_c('el-button',{attrs:{\"type\":\"\",\"size\":\"medium\"},on:{\"click\":_vm.handelClickRre10s}},[_vm._v(\"向前1秒\")]),_c('el-button',{attrs:{\"type\":\"\",\"size\":\"medium\"},on:{\"click\":_vm.handleClickSetStart}},[_vm._v(\"设置为起点\")]),_c('el-button',{attrs:{\"type\":\"\",\"size\":\"medium\"},on:{\"click\":_vm.handleClickSetEnd}},[_vm._v(\"设置为结束点\")])],1)])],1),_c('el-dialog',{attrs:{\"title\":\"选择内容\",\"visible\":_vm.dialogSelectShow,\"width\":\"500px\"},on:{\"update:visible\":function($event){_vm.dialogSelectShow=$event}}},[_c('div',{staticClass:\"el-main\",staticStyle:{\"height\":\"300px\"}},[_c('el-tree',{attrs:{\"data\":_vm.treeListData,\"props\":_vm.treeProps,\"lazy\":true,\"load\":_vm.handleLazyLoadTreeData},on:{\"node-click\":_vm.handleClickTreeNode}})],1),_c('div',{staticClass:\"dialog-footer\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('span',{staticClass:\"current-selected-text\"},[_vm._v(\"当前选择:\"+_vm._s(_vm.currentSelectTreeNode ? _vm.currentSelectTreeNode.name : \"\")+\" - \"+_vm._s(_vm.currentSelectTreeNode ? _vm.currentSelectTreeNode.id : \"\"))]),_c('el-button',{on:{\"click\":_vm.handleClickCancelSelect}},[_vm._v(\"取 消\")]),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.handleClickConfirmSelect}},[_vm._v(\"确 定\")])],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"com-trs\"},[_c('div',{ref:\"refEcharts\",staticClass:\"chart-slider\"})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"com-trs\">\n <div ref=\"refEcharts\" class=\"chart-slider\"></div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'TimeRangeSelector',\n props: {\n value: {\n type: Object,\n default: () => {\n return {\n start: 0,\n end: 100\n }\n }\n }\n },\n watch: {\n value: {\n handler(val) {\n this.parentValueChange = true;\n this.setTimeRange(val.start * 100, val.end * 100);\n },\n deep: true\n }\n },\n data() {\n return {\n insECharts: null,\n parentValueChange: false\n }\n },\n mounted() {\n this.initEcharts();\n },\n methods: {\n initEcharts() {\n if(!this.insECharts) {\n this.insECharts = this.$echarts.init(this.$refs.refEcharts);\n }\n\n const option = {\n grid: {\n left: 10,\n right: 10,\n top: 10,\n bottom: 10\n },\n tooltip: {},\n\n dataZoom: [\n {\n type: 'slider'\n },\n ],\n xAxis: { show: false } ,\n yAxis: { show: false },\n\n };\n\n this.insECharts.on('dataZoom', (evt) => {\n if(this.parentValueChange) {\n this.parentValueChange = false;\n return;\n }\n this.$emit('change', {\n start: evt.start / 100,\n end: evt.end / 100\n })\n this.$emit('input', {\n start: evt.start / 100,\n end: evt.end / 100\n })\n })\n\n this.insECharts.setOption(option);\n },\n setTimeRange(start, end) {\n this.insECharts.dispatchAction({\n type: 'dataZoom',\n // 可选,dataZoom 组件的 index,多个 dataZoom 组件时有用,默认为 0\n dataZoomIndex: 0,\n // 开始位置的百分比,0 - 100\n start: start,\n // 结束位置的百分比,0 - 100\n end: end,\n // // 开始位置的数值\n // startValue: number,\n // // 结束位置的数值\n // endValue: number\n });\n\n }\n },\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.com-trs {\n width: 100%;\n height: 50px;\n}\n\n.chart-slider {\n width: 100%;\n height: 100%;\n}\n</style>","import mod from \"-!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TimeRangeSelector.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TimeRangeSelector.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TimeRangeSelector.vue?vue&type=template&id=291eb56d&scoped=true\"\nimport script from \"./TimeRangeSelector.vue?vue&type=script&lang=js\"\nexport * from \"./TimeRangeSelector.vue?vue&type=script&lang=js\"\nimport style0 from \"./TimeRangeSelector.vue?vue&type=style&index=0&id=291eb56d&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"291eb56d\",\n null\n \n)\n\nexport default component.exports","import axios from \"axios\";\nconst org = 523;\nconst dpe_root = 275931;\nconst base_url = \"https://ema.iteachabc.com/api/syllabus/v1\";\n\nexport const getSyllabusListById = (syllabus_id) => {\n return new Promise(async (resolve, reject) => {\n const res = await axios.get(`${base_url}/list?orgid=${org}&pid=${syllabus_id?syllabus_id:dpe_root}`);\n resolve(res.data);\n })\n}\n\nexport const getFirstCoursewareBySyllId = (syllabus_id) => {\n return new Promise(async (resolve, reject) => {\n const res = await axios.get(`${base_url}/getdata?syllabusid=${syllabus_id}`);\n resolve(res.data);\n })\n}\n\nexport const getCoursewarePageBySyllId = (syllabus_id, page) => {\n return new Promise(async (resolve, reject) => {\n const res = await axios.get(`${base_url}/getpagedata?syllabusid=${syllabus_id}&page=${page}`);\n resolve(res.data);\n })\n}\n\nexport const getAllCoursewareBySyllId = (syllabus_id) => {\n return new Promise(async (resolve, reject) => {\n const res = await axios.get(`${base_url}/getdatalist?syllabusids=${syllabus_id}`);\n resolve(res.data);\n })\n}\n\nexport const getPidPathName = (pid_path) => {\n return new Promise(async (resolve, reject) => {\n const res = await axios.get(`${base_url}/pathname?pid_path=${pid_path}`);\n resolve(res.data);\n })\n}","<template>\n <div id=\"app\">\n <div class=\"main-header\">\n <div style=\"float: left;\">\n <span>当前编辑视频:</span>\n <el-button type=\"text\" @click=\"handleClickSelectSyllabus\">在库中选择视频</el-button>\n </div>\n <div style=\"float: right;\">\n <el-button type=\"primary\" @click=\"handleClickSave\">保存</el-button>\n </div>\n </div>\n <div class=\"main-body\">\n <div ref=\"refDubbingScrollList\" class=\"dubbing-items\">\n <el-card v-for=\"item, index in dubbintItems\" :key=\"index\" class=\"box-card\">\n <div style=\"position: relative;\">\n <span style=\"position: absolute;\" class=\"item-index\">{{ index + 1 }} <span\n style=\"font-size: medium; line-height: normal;\">{{ currentSelectDubbingIndex==index ?\n '正在编辑' : '' }}</span></span>\n <div style=\"text-align: right;\">\n <el-button size=\"mini\" type=\"danger\" @click=\"handleClickDelete(index)\">删除</el-button>\n <el-button size=\"mini\" type=\"primary\" @click=\"handleClickSetCurrent(index)\">编辑</el-button>\n </div>\n </div>\n <el-divider></el-divider>\n <el-form label-width=\"50px\">\n <el-form-item label=\"原文\">\n <el-input type=\"text\" v-model=\"item.orgText\" />\n </el-form-item>\n <!-- <el-form-item label=\"译文\">\n <el-input type=\"text\" v-model=\"item.transText\"/>\n </el-form-item> -->\n <el-form-item label=\"开始\">\n <el-input type=\"text\" v-model=\"item.timelineIn\">\n <template slot=\"append\">(秒)</template>\n </el-input>\n </el-form-item>\n <el-form-item label=\"结束\">\n <el-input type=\"text\" v-model=\"item.timelineOut\">\n <template slot=\"append\">(秒)</template>\n </el-input>\n </el-form-item>\n </el-form>\n </el-card>\n <el-card class=\"box-card\">\n <el-button type=\"primary\" @click=\"handelClickAdd\" style=\"width: 100%;\">新建</el-button>\n </el-card>\n </div>\n <div class=\"video-panel\">\n <div class=\"center-container\">\n <video v-if=\"!updateVideoSource\" ref=\"refVideo\" controls width=\"768px\">\n <source :src=\"videoUrl\" type=\"video/mp4\">\n Your browser does not support the video tag.\n </video>\n <TimeRangeSelector v-model=\"timeRange\" @change=\"handleRangeChange\"></TimeRangeSelector>\n </div>\n </div>\n <el-collapse-transition>\n <div v-show=\"currentSelectDubbingIndex >= 0\" class=\"button-group\">\n <el-button type=\"\" size=\"medium\" icon=\"el-icon-refresh\" @click=\"handleClickPlayRange\">播放区间</el-button>\n <el-button v-show=\"!isPlaying\" type=\"\" size=\"medium\" icon=\"el-icon-video-play\" @click=\"handleClickPlay\">播放</el-button>\n <el-button v-show=\"isPlaying\" type=\"\" size=\"medium\" icon=\"el-icon-video-pause\" @click=\"handleClickPause\">暂停</el-button>\n <el-button type=\"\" size=\"medium\" @click=\"handelClickRre10s\">向前1秒</el-button>\n <el-button type=\"\" size=\"medium\" @click=\"handleClickSetStart\">设置为起点</el-button>\n <el-button type=\"\" size=\"medium\" @click=\"handleClickSetEnd\">设置为结束点</el-button>\n </div>\n </el-collapse-transition>\n </div>\n\n <el-dialog title=\"选择内容\" :visible.sync=\"dialogSelectShow\" width=\"500px\">\n <div class=\"el-main\" style=\"height: 300px;\">\n <el-tree :data=\"treeListData\" :props=\"treeProps\" @node-click=\"handleClickTreeNode\" :lazy=\"true\"\n :load=\"handleLazyLoadTreeData\"></el-tree>\n </div>\n <div slot=\"footer\" class=\"dialog-footer\">\n <span class=\"current-selected-text\">当前选择:{{ currentSelectTreeNode ? currentSelectTreeNode.name : \"\" }} -\n {{ currentSelectTreeNode ? currentSelectTreeNode.id : \"\" }}</span>\n <el-button @click=\"handleClickCancelSelect\">取 消</el-button>\n <el-button type=\"primary\" @click=\"handleClickConfirmSelect\">确 定</el-button>\n </div>\n </el-dialog>\n\n </div>\n</template>\n\n<script>\nimport TimeRangeSelector from './components/TimeRangeSelector.vue'\nimport { getSyllabusListById, getFirstCoursewareBySyllId, getPidPathName } from '@/api/syllabus'\n\nexport default {\n name: 'App',\n components: {\n TimeRangeSelector\n },\n data() {\n return {\n // 是否正在播放\n isPlaying: false,\n\n // 视频地址\n videoUrl: 'https://teach.cdn.ireadabc.com/3d13b9a7b2cb777836a3d5b29c38384b.mp4',\n\n // 时间区间\n timeRange: {\n start: 0,\n end: 1\n },\n\n // 配音列表\n dubbintItems: [],\n\n // 选择内容对话框显示隐藏控制\n dialogSelectShow: false,\n\n // 树形列表数据\n treeListData: [],\n\n // 当前选择的节点信息\n currentSelectTreeNode: null,\n\n // 树形列表配置\n treeProps: {\n children: 'children',\n label: 'name',\n isLeaf: function (data, node) {\n return data.has_courseware == \"1\";\n }\n },\n\n // 是否更新视频资源\n updateVideoSource: false,\n\n // 当前选择的配音秀索引\n currentSelectDubbingIndex: -1\n };\n },\n async mounted() {\n this.getData();\n // this.$setData([\n // {\n // \"orgText\": \"Apple.\",\n // \"transText\": \"\",\n // \"timelineIn\": \"0.352728\",\n // \"timelineOut\": \"2.349307\"\n // },\n // {\n // \"orgText\": \"Green apple.\",\n // \"transText\": \"\",\n // \"timelineIn\": \"4.938305\",\n // \"timelineOut\": \"7.2651\"\n // },\n // {\n // \"orgText\": \"Red apple.\",\n // \"transText\": \"\",\n // \"timelineIn\": \"10.687003\",\n // \"timelineOut\": \"13.054597\"\n // },\n // {\n // \"orgText\": \"Juicy apple.\",\n // \"transText\": \"\",\n // \"timelineIn\": \"16.128933\",\n // \"timelineOut\": \"20.358868\"\n // },\n // {\n // \"orgText\": \"Gulp,gulp,hic!\",\n // \"transText\": \"\",\n // \"timelineIn\": \"20.674126\",\n // \"timelineOut\": \"23.316044\"\n // },\n // {\n // \"orgText\": \"BOTH:apples!\",\n // \"transText\": \"\",\n // \"timelineIn\": \"26.360674\",\n // \"timelineOut\": \"29.569075\"\n // },\n // {\n // \"orgText\": \"Shiny apple.\",\n // \"transText\": \"\",\n // \"timelineIn\": \"34.97507\",\n // \"timelineOut\": \"37.929512\"\n // },\n // {\n // \"orgText\": \"Crunchy apple.\",\n // \"transText\": \"\",\n // \"timelineIn\": \"41.66807\",\n // \"timelineOut\": \"44.267387\"\n // },\n // {\n // \"orgText\": \"Bobbing apple.\",\n // \"transText\": \"\",\n // \"timelineIn\": \"48.00274\",\n // \"timelineOut\": \"50.683136\"\n // },\n // {\n // \"orgText\": \"Way-hay!Apples!\",\n // \"transText\": \"\",\n // \"timelineIn\": \"53.787037\",\n // \"timelineOut\": \"57.842\"\n // }\n // ])\n },\n methods: {\n async getData() {\n const res = await this.$getData();\n console.log(\"====getData====\", res)\n this.dubbintItems = res\n },\n\n handleRangeChange(event) {\n this.$refs.refVideo.currentTime = event.start * this.$refs.refVideo.duration;\n const sTime = this.timeRange.start * this.$refs.refVideo.duration;\n const eTime = this.timeRange.end * this.$refs.refVideo.duration;\n\n this.dubbintItems[this.currentSelectDubbingIndex].timelineIn = sTime;\n this.dubbintItems[this.currentSelectDubbingIndex].timelineOut = eTime;\n },\n\n // 点击区间播放\n handleClickPlayRange() {\n const sTime = this.timeRange.start * this.$refs.refVideo.duration;\n const eTime = this.timeRange.end * this.$refs.refVideo.duration;\n\n this.$refs.refVideo.currentTime = sTime;\n this.$refs.refVideo.play().then(() => {\n this.isPlaying = true;\n const checkTime = () => {\n if (this.$refs.refVideo.currentTime >= eTime) {\n this.$refs.refVideo.pause();\n this.isPlaying = false;\n this.$refs.refVideo.removeEventListener('timeupdate', checkTime);\n }\n }\n this.$refs.refVideo.addEventListener('timeupdate', checkTime, false);\n })\n .catch(error => {\n console.log(error);\n });\n\n },\n\n handleClickPlay() {\n this.$refs.refVideo.play();\n this.isPlaying = true;\n },\n\n handleClickPause() {\n this.$refs.refVideo.pause();\n this.isPlaying = false;\n },\n\n handelClickRre10s() {\n this.$refs.refVideo.currentTime -= 1;\n },\n\n handleClickSetStart() {\n this.timeRange.start = this.$refs.refVideo.currentTime / this.$refs.refVideo.duration;\n this.dubbintItems[this.currentSelectDubbingIndex].timelineIn = this.$refs.refVideo.currentTime;\n \n },\n\n handleClickSetEnd() {\n this.timeRange.end = this.$refs.refVideo.currentTime / this.$refs.refVideo.duration;\n this.dubbintItems[this.currentSelectDubbingIndex].timelineOut = this.$refs.refVideo.currentTime;\n },\n\n handleClickSetCurrent(index, play = false) {\n const timelineIn = this.dubbintItems[index].timelineIn / this.$refs.refVideo.duration;\n const timelineOut = this.dubbintItems[index].timelineOut / this.$refs.refVideo.duration;\n\n this.currentSelectDubbingIndex = index;\n\n this.timeRange = {\n start: timelineIn,\n end: timelineOut\n }\n\n play && this.handleClickPlayRange()\n },\n\n // 删除配音秀\n handleClickDelete(index) {\n this.$confirm(\"确定要删除吗?\").then(res=>{\n this.dubbintItems.splice(index, 1)\n }).catch(_=>\"\")\n },\n\n // 添加配音\n handelClickAdd() {\n this.dubbintItems.push({\n orgText: '',\n transText: '',\n timelineIn: 0,\n timelineOut: 1\n })\n this.$nextTick(() => {\n this.$refs.refDubbingScrollList.scrollTop = this.$refs.refDubbingScrollList.scrollHeight;\n })\n },\n\n // 点击切换配音资源\n async handleClickSelectSyllabus() {\n this.dialogSelectShow = true;\n const resData = await getSyllabusListById();\n this.treeListData = resData.rows;\n },\n\n // 点击树形列表节点\n handleClickTreeNode(node) {\n if (node.has_courseware == \"1\") {\n this.currentSelectTreeNode = node;\n }\n },\n\n // 懒加载树形列表数据\n handleLazyLoadTreeData(node, resolve) {\n getSyllabusListById(node.data.id).then(data => {\n resolve(data.rows)\n })\n },\n\n // 取消选择\n handleClickCancelSelect() {\n this.dialogSelectShow = false;\n this.currentSelectTreeNode = null;\n this.treeListData = [];\n },\n\n // 确定选择节点\n async handleClickConfirmSelect() {\n // 获取视频课件信息\n const resData = await getFirstCoursewareBySyllId(this.currentSelectTreeNode.id);\n\n let jsonData = null;\n try {\n jsonData = JSON.parse(resData.data);\n } catch (error) {\n \n }\n\n // 获取视频地址\n this.videoUrl = jsonData ? jsonData.url : '';\n\n // 重新加载视频组件\n this.updateVideoSource = true;\n this.$nextTick(() => {\n this.updateVideoSource = false;\n })\n\n // 关闭对话框\n this.handleClickCancelSelect();\n },\n\n // 保存数据\n async handleClickSave() {\n this.$setData(this.dubbintItems)\n }\n }\n}\n</script>\n\n<style>\nbody,\nhtml {\n margin: 0;\n padding: 0;\n height: 100%;\n overflow: hidden;\n}\n\n#app {}\n\n.cascader-item {\n width: 150px;\n}\n\n.button-item {\n margin-left: 10px;\n}\n\n.current-selected-text {\n float: left;\n font-size: small;\n}\n\n.video-panel {\n margin-left: 320px;\n}\n\n.center-container {\n width: 768px;\n margin-left: 320px;\n padding: 20px 10px;\n margin: 0 auto;\n}\n\n.button-group {\n margin-left: 320px;\n text-align: center;\n}\n\n.dubbing-items {\n width: 300px;\n height: calc(100% - 90px);\n background-color: #f0f0f0;\n position: absolute;\n left: 0;\n overflow: auto;\n padding: 10px;\n}\n\n.box-card {\n margin-bottom: 10px;\n}\n\n::v-deep .el-card__body {\n padding: 0 !important;\n}\n\n.item-index {\n font-size: 20px;\n font-weight: bold;\n margin-right: 10px;\n}\n\n.main-header {\n height: 70px;\n line-height: 70px;\n position: fixed;\n z-index: 99;\n top: 0;\n background-color: #FFFFFF;\n width: calc(100% - 40px);\n border-bottom: 1px solid #dcdfe6;\n padding: 0 20px;\n box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);\n}\n\n.main-body {\n margin-top: 70px;\n height: calc(100% - 70px);\n overflow: auto;\n}\n</style>\n","import mod from \"-!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=ab3b01f4\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=ab3b01f4&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport ElementUI from 'element-ui';\nimport 'element-ui/lib/theme-chalk/index.css';\nimport App from './App.vue'\nimport * as echarts from 'echarts';\n\nVue.use(ElementUI);\n\nVue.config.productionTip = false\nVue.prototype.$getData = () => {\n return new Promise((resolve, reject) => {\n (window).courseware.getData((data) => {\n resolve(data)\n }, \"default_key\")\n })\n}\n\nVue.prototype.$setData = (data) => {\n (window).courseware.setData(data, null, \"default_key\")\n}\n\nVue.prototype.$echarts = echarts\n\nnew Vue({\n render: function (h) { return h(App) },\n}).$mount('#app')\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdO = {};","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t524: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkform_vue\"] = self[\"webpackChunkform_vue\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], function() { return __webpack_require__(8698); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["render","_vm","this","_c","_self","attrs","staticClass","staticStyle","_v","on","handleClickSelectSyllabus","handleClickSave","ref","_l","item","index","key","_s","currentSelectDubbingIndex","$event","handleClickDelete","handleClickSetCurrent","model","value","callback","$$v","$set","expression","slot","handelClickAdd","updateVideoSource","_e","videoUrl","handleRangeChange","timeRange","directives","name","rawName","handleClickPlayRange","isPlaying","handleClickPlay","handleClickPause","handelClickRre10s","handleClickSetStart","handleClickSetEnd","dialogSelectShow","treeListData","treeProps","handleLazyLoadTreeData","handleClickTreeNode","currentSelectTreeNode","id","handleClickCancelSelect","handleClickConfirmSelect","staticRenderFns","props","type","Object","default","start","end","watch","handler","val","parentValueChange","setTimeRange","deep","data","insECharts","mounted","initEcharts","methods","$echarts","init","$refs","refEcharts","option","grid","left","right","top","bottom","tooltip","dataZoom","xAxis","show","yAxis","evt","$emit","setOption","dispatchAction","dataZoomIndex","component","org","dpe_root","base_url","getSyllabusListById","syllabus_id","Promise","async","resolve","reject","res","get","getFirstCoursewareBySyllId","components","TimeRangeSelector","dubbintItems","children","label","isLeaf","node","has_courseware","getData","$getData","console","log","event","refVideo","currentTime","duration","sTime","eTime","timelineIn","timelineOut","play","then","checkTime","pause","removeEventListener","addEventListener","catch","error","$confirm","splice","_","push","orgText","transText","$nextTick","refDubbingScrollList","scrollTop","scrollHeight","resData","rows","jsonData","JSON","parse","url","$setData","use","config","productionTip","prototype","courseware","setData","echarts","h","App","$mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","loaded","__webpack_modules__","m","amdO","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","every","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","g","globalThis","Function","e","window","obj","prop","hasOwnProperty","call","Symbol","toStringTag","nmd","paths","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","forEach","bind","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
.DS_Store
node_modules
/dist
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# form_vue
## Project setup
```
npm install
```
### Compiles and hot-reloads for development
```
npm run serve
```
### Compiles and minifies for production
```
npm run build
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).
{
"compilerOptions": {
"target": "es5",
"module": "esnext",
"baseUrl": "./",
"moduleResolution": "node",
"paths": {
"@/*": [
"src/*"
]
},
"lib": [
"esnext",
"dom",
"dom.iterable",
"scripthost"
]
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
{
"name": "form_vue",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve --open",
"build": "vue-cli-service build"
},
"dependencies": {
"axios": "^1.7.2",
"echarts": "^5.5.0",
"element-ui": "^2.15.14",
"vue": "^2.6.14"
},
"devDependencies": {
"@vue/cli-service": "~5.0.0",
"vue-template-compiler": "^2.6.14"
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
]
}
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= htmlWebpackPlugin.options.title %></title>
</head>
<body>
<noscript>
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
</noscript>
<script type="text/javascript" src="https://staging-teach.cdn.ireadabc.com/h5template/h5-static-lib/js/air.js"></script>
<script>
if (document.domain.indexOf("iteachabc.com") > 0) {
document.domain = "iteachabc.com";
}
</script>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>
<template>
<div id="app">
<div class="main-header">
<div style="float: left;">
<span>当前编辑视频:</span>
<el-button type="text" @click="handleClickSelectSyllabus">在库中选择视频</el-button>
</div>
<div style="float: right;">
<el-button type="primary" @click="handleClickSave">保存</el-button>
</div>
</div>
<div class="main-body">
<div ref="refDubbingScrollList" class="dubbing-items">
<el-card v-for="item, index in dubbintItems" :key="index" class="box-card">
<div style="position: relative;">
<span style="position: absolute;" class="item-index">{{ index + 1 }} <span
style="font-size: medium; line-height: normal;">{{ currentSelectDubbingIndex==index ?
'正在编辑' : '' }}</span></span>
<div style="text-align: right;">
<el-button size="mini" type="danger" @click="handleClickDelete(index)">删除</el-button>
<el-button size="mini" type="primary" @click="handleClickSetCurrent(index)">编辑</el-button>
</div>
</div>
<el-divider></el-divider>
<el-form label-width="50px">
<el-form-item label="原文">
<el-input type="text" v-model="item.orgText" />
</el-form-item>
<!-- <el-form-item label="译文">
<el-input type="text" v-model="item.transText"/>
</el-form-item> -->
<el-form-item label="开始">
<el-input type="text" v-model="item.timelineIn">
<template slot="append">(秒)</template>
</el-input>
</el-form-item>
<el-form-item label="结束">
<el-input type="text" v-model="item.timelineOut">
<template slot="append">(秒)</template>
</el-input>
</el-form-item>
</el-form>
</el-card>
<el-card class="box-card">
<el-button type="primary" @click="handelClickAdd" style="width: 100%;">新建</el-button>
</el-card>
</div>
<div class="video-panel">
<div class="center-container">
<video v-if="!updateVideoSource" ref="refVideo" controls width="768px">
<source :src="videoUrl" type="video/mp4">
Your browser does not support the video tag.
</video>
<TimeRangeSelector v-model="timeRange" @change="handleRangeChange"></TimeRangeSelector>
</div>
</div>
<el-collapse-transition>
<div v-show="currentSelectDubbingIndex >= 0" class="button-group">
<el-button type="" size="medium" icon="el-icon-refresh" @click="handleClickPlayRange">播放区间</el-button>
<el-button v-show="!isPlaying" type="" size="medium" icon="el-icon-video-play" @click="handleClickPlay">播放</el-button>
<el-button v-show="isPlaying" type="" size="medium" icon="el-icon-video-pause" @click="handleClickPause">暂停</el-button>
<el-button type="" size="medium" @click="handelClickRre10s">向前1秒</el-button>
<el-button type="" size="medium" @click="handleClickSetStart">设置为起点</el-button>
<el-button type="" size="medium" @click="handleClickSetEnd">设置为结束点</el-button>
</div>
</el-collapse-transition>
</div>
<el-dialog title="选择内容" :visible.sync="dialogSelectShow" width="500px">
<div class="el-main" style="height: 300px;">
<el-tree :data="treeListData" :props="treeProps" @node-click="handleClickTreeNode" :lazy="true"
:load="handleLazyLoadTreeData"></el-tree>
</div>
<div slot="footer" class="dialog-footer">
<span class="current-selected-text">当前选择:{{ currentSelectTreeNode ? currentSelectTreeNode.name : "" }} -
{{ currentSelectTreeNode ? currentSelectTreeNode.id : "" }}</span>
<el-button @click="handleClickCancelSelect">取 消</el-button>
<el-button type="primary" @click="handleClickConfirmSelect">确 定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import TimeRangeSelector from './components/TimeRangeSelector.vue'
import { getSyllabusListById, getFirstCoursewareBySyllId, getPidPathName } from '@/api/syllabus'
export default {
name: 'App',
components: {
TimeRangeSelector
},
data() {
return {
// 是否正在播放
isPlaying: false,
// 视频地址
videoUrl: 'https://teach.cdn.ireadabc.com/3d13b9a7b2cb777836a3d5b29c38384b.mp4',
// 时间区间
timeRange: {
start: 0,
end: 1
},
// 配音列表
dubbintItems: [],
// 选择内容对话框显示隐藏控制
dialogSelectShow: false,
// 树形列表数据
treeListData: [],
// 当前选择的节点信息
currentSelectTreeNode: null,
// 树形列表配置
treeProps: {
children: 'children',
label: 'name',
isLeaf: function (data, node) {
return data.has_courseware == "1";
}
},
// 是否更新视频资源
updateVideoSource: false,
// 当前选择的配音秀索引
currentSelectDubbingIndex: -1
};
},
async mounted() {
this.getData();
// this.$setData([
// {
// "orgText": "Apple.",
// "transText": "",
// "timelineIn": "0.352728",
// "timelineOut": "2.349307"
// },
// {
// "orgText": "Green apple.",
// "transText": "",
// "timelineIn": "4.938305",
// "timelineOut": "7.2651"
// },
// {
// "orgText": "Red apple.",
// "transText": "",
// "timelineIn": "10.687003",
// "timelineOut": "13.054597"
// },
// {
// "orgText": "Juicy apple.",
// "transText": "",
// "timelineIn": "16.128933",
// "timelineOut": "20.358868"
// },
// {
// "orgText": "Gulp,gulp,hic!",
// "transText": "",
// "timelineIn": "20.674126",
// "timelineOut": "23.316044"
// },
// {
// "orgText": "BOTH:apples!",
// "transText": "",
// "timelineIn": "26.360674",
// "timelineOut": "29.569075"
// },
// {
// "orgText": "Shiny apple.",
// "transText": "",
// "timelineIn": "34.97507",
// "timelineOut": "37.929512"
// },
// {
// "orgText": "Crunchy apple.",
// "transText": "",
// "timelineIn": "41.66807",
// "timelineOut": "44.267387"
// },
// {
// "orgText": "Bobbing apple.",
// "transText": "",
// "timelineIn": "48.00274",
// "timelineOut": "50.683136"
// },
// {
// "orgText": "Way-hay!Apples!",
// "transText": "",
// "timelineIn": "53.787037",
// "timelineOut": "57.842"
// }
// ])
},
methods: {
async getData() {
const res = await this.$getData();
console.log("====getData====", res)
this.dubbintItems = res
},
handleRangeChange(event) {
this.$refs.refVideo.currentTime = event.start * this.$refs.refVideo.duration;
const sTime = this.timeRange.start * this.$refs.refVideo.duration;
const eTime = this.timeRange.end * this.$refs.refVideo.duration;
this.dubbintItems[this.currentSelectDubbingIndex].timelineIn = sTime;
this.dubbintItems[this.currentSelectDubbingIndex].timelineOut = eTime;
},
// 点击区间播放
handleClickPlayRange() {
const sTime = this.timeRange.start * this.$refs.refVideo.duration;
const eTime = this.timeRange.end * this.$refs.refVideo.duration;
this.$refs.refVideo.currentTime = sTime;
this.$refs.refVideo.play().then(() => {
this.isPlaying = true;
const checkTime = () => {
if (this.$refs.refVideo.currentTime >= eTime) {
this.$refs.refVideo.pause();
this.isPlaying = false;
this.$refs.refVideo.removeEventListener('timeupdate', checkTime);
}
}
this.$refs.refVideo.addEventListener('timeupdate', checkTime, false);
})
.catch(error => {
console.log(error);
});
},
handleClickPlay() {
this.$refs.refVideo.play();
this.isPlaying = true;
},
handleClickPause() {
this.$refs.refVideo.pause();
this.isPlaying = false;
},
handelClickRre10s() {
this.$refs.refVideo.currentTime -= 1;
},
handleClickSetStart() {
this.timeRange.start = this.$refs.refVideo.currentTime / this.$refs.refVideo.duration;
this.dubbintItems[this.currentSelectDubbingIndex].timelineIn = this.$refs.refVideo.currentTime;
},
handleClickSetEnd() {
this.timeRange.end = this.$refs.refVideo.currentTime / this.$refs.refVideo.duration;
this.dubbintItems[this.currentSelectDubbingIndex].timelineOut = this.$refs.refVideo.currentTime;
},
handleClickSetCurrent(index, play = false) {
const timelineIn = this.dubbintItems[index].timelineIn / this.$refs.refVideo.duration;
const timelineOut = this.dubbintItems[index].timelineOut / this.$refs.refVideo.duration;
this.currentSelectDubbingIndex = index;
this.timeRange = {
start: timelineIn,
end: timelineOut
}
play && this.handleClickPlayRange()
},
// 删除配音秀
handleClickDelete(index) {
this.$confirm("确定要删除吗?").then(res=>{
this.dubbintItems.splice(index, 1)
}).catch(_=>"")
},
// 添加配音
handelClickAdd() {
this.dubbintItems.push({
orgText: '',
transText: '',
timelineIn: 0,
timelineOut: 1
})
this.$nextTick(() => {
this.$refs.refDubbingScrollList.scrollTop = this.$refs.refDubbingScrollList.scrollHeight;
})
},
// 点击切换配音资源
async handleClickSelectSyllabus() {
this.dialogSelectShow = true;
const resData = await getSyllabusListById();
this.treeListData = resData.rows;
},
// 点击树形列表节点
handleClickTreeNode(node) {
if (node.has_courseware == "1") {
this.currentSelectTreeNode = node;
}
},
// 懒加载树形列表数据
handleLazyLoadTreeData(node, resolve) {
getSyllabusListById(node.data.id).then(data => {
resolve(data.rows)
})
},
// 取消选择
handleClickCancelSelect() {
this.dialogSelectShow = false;
this.currentSelectTreeNode = null;
this.treeListData = [];
},
// 确定选择节点
async handleClickConfirmSelect() {
// 获取视频课件信息
const resData = await getFirstCoursewareBySyllId(this.currentSelectTreeNode.id);
let jsonData = null;
try {
jsonData = JSON.parse(resData.data);
} catch (error) {
}
// 获取视频地址
this.videoUrl = jsonData ? jsonData.url : '';
// 重新加载视频组件
this.updateVideoSource = true;
this.$nextTick(() => {
this.updateVideoSource = false;
})
// 关闭对话框
this.handleClickCancelSelect();
},
// 保存数据
async handleClickSave() {
this.$setData(this.dubbintItems)
}
}
}
</script>
<style>
body,
html {
margin: 0;
padding: 0;
height: 100%;
overflow: hidden;
}
#app {}
.cascader-item {
width: 150px;
}
.button-item {
margin-left: 10px;
}
.current-selected-text {
float: left;
font-size: small;
}
.video-panel {
margin-left: 320px;
}
.center-container {
width: 768px;
margin-left: 320px;
padding: 20px 10px;
margin: 0 auto;
}
.button-group {
margin-left: 320px;
text-align: center;
}
.dubbing-items {
width: 300px;
height: calc(100% - 90px);
background-color: #f0f0f0;
position: absolute;
left: 0;
overflow: auto;
padding: 10px;
}
.box-card {
margin-bottom: 10px;
}
::v-deep .el-card__body {
padding: 0 !important;
}
.item-index {
font-size: 20px;
font-weight: bold;
margin-right: 10px;
}
.main-header {
height: 70px;
line-height: 70px;
position: fixed;
z-index: 99;
top: 0;
background-color: #FFFFFF;
width: calc(100% - 40px);
border-bottom: 1px solid #dcdfe6;
padding: 0 20px;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}
.main-body {
margin-top: 70px;
height: calc(100% - 70px);
overflow: auto;
}
</style>
import axios from "axios";
const org = 523;
const dpe_root = 275931;
const base_url = "https://ema.iteachabc.com/api/syllabus/v1";
export const getSyllabusListById = (syllabus_id) => {
return new Promise(async (resolve, reject) => {
const res = await axios.get(`${base_url}/list?orgid=${org}&pid=${syllabus_id?syllabus_id:dpe_root}`);
resolve(res.data);
})
}
export const getFirstCoursewareBySyllId = (syllabus_id) => {
return new Promise(async (resolve, reject) => {
const res = await axios.get(`${base_url}/getdata?syllabusid=${syllabus_id}`);
resolve(res.data);
})
}
export const getCoursewarePageBySyllId = (syllabus_id, page) => {
return new Promise(async (resolve, reject) => {
const res = await axios.get(`${base_url}/getpagedata?syllabusid=${syllabus_id}&page=${page}`);
resolve(res.data);
})
}
export const getAllCoursewareBySyllId = (syllabus_id) => {
return new Promise(async (resolve, reject) => {
const res = await axios.get(`${base_url}/getdatalist?syllabusids=${syllabus_id}`);
resolve(res.data);
})
}
export const getPidPathName = (pid_path) => {
return new Promise(async (resolve, reject) => {
const res = await axios.get(`${base_url}/pathname?pid_path=${pid_path}`);
resolve(res.data);
})
}
\ No newline at end of file
<template>
<div class="hello">
<h1>{{ msg }}</h1>
<p>
For a guide and recipes on how to configure / customize this project,<br>
check out the
<a href="https://cli.vuejs.org" target="_blank" rel="noopener">vue-cli documentation</a>.
</p>
<h3>Installed CLI Plugins</h3>
<ul>
</ul>
<h3>Essential Links</h3>
<ul>
<li><a href="https://vuejs.org" target="_blank" rel="noopener">Core Docs</a></li>
<li><a href="https://forum.vuejs.org" target="_blank" rel="noopener">Forum</a></li>
<li><a href="https://chat.vuejs.org" target="_blank" rel="noopener">Community Chat</a></li>
<li><a href="https://twitter.com/vuejs" target="_blank" rel="noopener">Twitter</a></li>
<li><a href="https://news.vuejs.org" target="_blank" rel="noopener">News</a></li>
</ul>
<h3>Ecosystem</h3>
<ul>
<li><a href="https://router.vuejs.org" target="_blank" rel="noopener">vue-router</a></li>
<li><a href="https://vuex.vuejs.org" target="_blank" rel="noopener">vuex</a></li>
<li><a href="https://github.com/vuejs/vue-devtools#vue-devtools" target="_blank" rel="noopener">vue-devtools</a></li>
<li><a href="https://vue-loader.vuejs.org" target="_blank" rel="noopener">vue-loader</a></li>
<li><a href="https://github.com/vuejs/awesome-vue" target="_blank" rel="noopener">awesome-vue</a></li>
</ul>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
props: {
msg: String
}
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
h3 {
margin: 40px 0 0;
}
ul {
list-style-type: none;
padding: 0;
}
li {
display: inline-block;
margin: 0 10px;
}
a {
color: #42b983;
}
</style>
<template>
<div class="com-trs">
<div ref="refEcharts" class="chart-slider"></div>
</div>
</template>
<script>
export default {
name: 'TimeRangeSelector',
props: {
value: {
type: Object,
default: () => {
return {
start: 0,
end: 100
}
}
}
},
watch: {
value: {
handler(val) {
this.parentValueChange = true;
this.setTimeRange(val.start * 100, val.end * 100);
},
deep: true
}
},
data() {
return {
insECharts: null,
parentValueChange: false
}
},
mounted() {
this.initEcharts();
},
methods: {
initEcharts() {
if(!this.insECharts) {
this.insECharts = this.$echarts.init(this.$refs.refEcharts);
}
const option = {
grid: {
left: 10,
right: 10,
top: 10,
bottom: 10
},
tooltip: {},
dataZoom: [
{
type: 'slider'
},
],
xAxis: { show: false } ,
yAxis: { show: false },
};
this.insECharts.on('dataZoom', (evt) => {
if(this.parentValueChange) {
this.parentValueChange = false;
return;
}
this.$emit('change', {
start: evt.start / 100,
end: evt.end / 100
})
this.$emit('input', {
start: evt.start / 100,
end: evt.end / 100
})
})
this.insECharts.setOption(option);
},
setTimeRange(start, end) {
this.insECharts.dispatchAction({
type: 'dataZoom',
// 可选,dataZoom 组件的 index,多个 dataZoom 组件时有用,默认为 0
dataZoomIndex: 0,
// 开始位置的百分比,0 - 100
start: start,
// 结束位置的百分比,0 - 100
end: end,
// // 开始位置的数值
// startValue: number,
// // 结束位置的数值
// endValue: number
});
}
},
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
.com-trs {
width: 100%;
height: 50px;
}
.chart-slider {
width: 100%;
height: 100%;
}
</style>
\ No newline at end of file
import Vue from 'vue'
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import App from './App.vue'
import * as echarts from 'echarts';
Vue.use(ElementUI);
Vue.config.productionTip = false
Vue.prototype.$getData = () => {
return new Promise((resolve, reject) => {
(window).courseware.getData((data) => {
resolve(data)
}, "default_key")
})
}
Vue.prototype.$setData = (data) => {
(window).courseware.setData(data, null, "default_key")
}
Vue.prototype.$echarts = echarts
new Vue({
render: function (h) { return h(App) },
}).$mount('#app')
module.exports = {
publicPath: './',
// 其他配置...
};
\ No newline at end of file
......@@ -4,5 +4,6 @@
"name": "play",
"id": "9af72fd2-44a6-4131-8ea3-3e1b3fa22231",
"version": "2.4.5",
"isNew": false
"isNew": false,
"description": ""
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment