openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

yaml-lint.min.js (1251B)


      1 // CodeMirror, copyright (c) by Marijn Haverbeke and others
      2 // Distributed under an MIT license: http://codemirror.net/LICENSE
      3 
      4 (function(mod) {
      5   if (typeof exports == "object" && typeof module == "object") // CommonJS
      6     mod(require("../../lib/codemirror"));
      7   else if (typeof define == "function" && define.amd) // AMD
      8     define(["../../lib/codemirror"], mod);
      9   else // Plain browser env
     10     mod(CodeMirror);
     11 })(function(CodeMirror) {
     12 "use strict";
     13 
     14 // Depends on js-yaml.js from https://github.com/nodeca/js-yaml
     15 
     16 // declare global: jsyaml
     17 
     18 CodeMirror.registerHelper("lint", "yaml", function(text) {
     19   var found = [];
     20   if (!window.jsyaml) {
     21     if (window.console) {
     22       window.console.error("Error: window.jsyaml not defined, CodeMirror YAML linting cannot run.");
     23     }
     24     return found;
     25   }
     26   try { jsyaml.load(text); }
     27   catch(e) {
     28       var loc = e.mark,
     29           // js-yaml YAMLException doesn't always provide an accurate lineno
     30           // e.g., when there are multiple yaml docs
     31           // ---
     32           // ---
     33           // foo:bar
     34           from = loc ? CodeMirror.Pos(loc.line, loc.column) : CodeMirror.Pos(0, 0),
     35           to = from;
     36       found.push({ from: from, to: to, message: e.message });
     37   }
     38   return found;
     39 });
     40 
     41 });