mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-04 05:18:25 +00:00 
			
		
		
		
	* Cleaning up public/ and documenting js/css libs. This commit mostly addresses #1484 by moving vendor'ed plugins into a vendor/ directory and documenting their upstream source and license in vendor/librejs.html. This also proves gitea is using only open source js/css libraries which helps toward reaching #1524. * Removing unused css file. The version of this file in use is located at: vendor/plugins/highlight/github.css * Cleaned up librejs.html and added javascript header A SafeJS function was added to templates/helper.go to allow keeping comments inside of javascript. A javascript comment was added in the header of templates/base/head.tmpl to mark all non-inline source as free. The librejs.html file was updated to meet the current librejs spec. I have now verified that the librejs plugin detects most of the scripts included in gitea and suspect the non-free detections are the result of a bug in the plugin. I believe this commit is enough to meet the C0.0 requirement of #1534. * Updating SafeJS function per lint suggestion * Added VERSIONS file, per request
		
			
				
	
	
		
			70 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
// CodeMirror, copyright (c) by Marijn Haverbeke and others
 | 
						|
// Distributed under an MIT license: http://codemirror.net/LICENSE
 | 
						|
 | 
						|
(function (mod) {
 | 
						|
  "use strict";
 | 
						|
  if (typeof exports === "object" && typeof module === "object") {// CommonJS
 | 
						|
    mod(require("../../lib/codemirror"),
 | 
						|
        require("../../addon/mode/overlay"),
 | 
						|
        require("../xml/xml"),
 | 
						|
        require("../javascript/javascript"),
 | 
						|
        require("../coffeescript/coffeescript"),
 | 
						|
        require("../css/css"),
 | 
						|
        require("../sass/sass"),
 | 
						|
        require("../stylus/stylus"),
 | 
						|
        require("../jade/jade"),
 | 
						|
        require("../handlebars/handlebars"));
 | 
						|
  } else if (typeof define === "function" && define.amd) { // AMD
 | 
						|
    define(["../../lib/codemirror",
 | 
						|
            "../../addon/mode/overlay",
 | 
						|
            "../xml/xml",
 | 
						|
            "../javascript/javascript",
 | 
						|
            "../coffeescript/coffeescript",
 | 
						|
            "../css/css",
 | 
						|
            "../sass/sass",
 | 
						|
            "../stylus/stylus",
 | 
						|
            "../jade/jade",
 | 
						|
            "../handlebars/handlebars"], mod);
 | 
						|
  } else { // Plain browser env
 | 
						|
    mod(CodeMirror);
 | 
						|
  }
 | 
						|
})(function (CodeMirror) {
 | 
						|
  var tagLanguages = {
 | 
						|
    script: [
 | 
						|
      ["lang", /coffee(script)?/, "coffeescript"],
 | 
						|
      ["type", /^(?:text|application)\/(?:x-)?coffee(?:script)?$/, "coffeescript"]
 | 
						|
    ],
 | 
						|
    style: [
 | 
						|
      ["lang", /^stylus$/i, "stylus"],
 | 
						|
      ["lang", /^sass$/i, "sass"],
 | 
						|
      ["type", /^(text\/)?(x-)?styl(us)?$/i, "stylus"],
 | 
						|
      ["type", /^text\/sass/i, "sass"]
 | 
						|
    ],
 | 
						|
    template: [
 | 
						|
      ["lang", /^vue-template$/i, "vue"],
 | 
						|
      ["lang", /^jade$/i, "jade"],
 | 
						|
      ["lang", /^handlebars$/i, "handlebars"],
 | 
						|
      ["type", /^(text\/)?(x-)?jade$/i, "jade"],
 | 
						|
      ["type", /^text\/x-handlebars-template$/i, "handlebars"],
 | 
						|
      [null, null, "vue-template"]
 | 
						|
    ]
 | 
						|
  };
 | 
						|
 | 
						|
  CodeMirror.defineMode("vue-template", function (config, parserConfig) {
 | 
						|
    var mustacheOverlay = {
 | 
						|
      token: function (stream) {
 | 
						|
        if (stream.match(/^\{\{.*?\}\}/)) return "meta mustache";
 | 
						|
        while (stream.next() && !stream.match("{{", false)) {}
 | 
						|
        return null;
 | 
						|
      }
 | 
						|
    };
 | 
						|
    return CodeMirror.overlayMode(CodeMirror.getMode(config, parserConfig.backdrop || "text/html"), mustacheOverlay);
 | 
						|
  });
 | 
						|
 | 
						|
  CodeMirror.defineMode("vue", function (config) {
 | 
						|
    return CodeMirror.getMode(config, {name: "htmlmixed", tags: tagLanguages});
 | 
						|
  }, "htmlmixed", "xml", "javascript", "coffeescript", "css", "sass", "stylus", "jade", "handlebars");
 | 
						|
 | 
						|
  CodeMirror.defineMIME("script/x-vue", "vue");
 | 
						|
});
 |