From 58b91dd3baaaf72ab65062a4804403cd4a5935b2 Mon Sep 17 00:00:00 2001 From: xudan Date: Thu, 5 Jul 2018 22:37:35 -0400 Subject: Move OVP web portal code to a separate repo The new repo for web portal is https://gerrit.opnfv.org/gerrit/dovetail-webportal JIRA: DOVETAIL-671 Change-Id: Iac085abc3d175b9a091d70d0448af56c7a6845e9 Signed-off-by: xudan --- .../assets/lib/bootstrap/grunt/.jshintrc | 7 - .../lib/bootstrap/grunt/bs-commonjs-generator.js | 23 -- .../grunt/bs-glyphicons-data-generator.js | 41 ---- .../lib/bootstrap/grunt/bs-lessdoc-parser.js | 238 --------------------- .../lib/bootstrap/grunt/bs-raw-files-generator.js | 46 ---- .../assets/lib/bootstrap/grunt/configBridge.json | 45 ---- .../assets/lib/bootstrap/grunt/sauce_browsers.yml | 82 ------- 7 files changed, 482 deletions(-) delete mode 100644 cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/.jshintrc delete mode 100644 cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-commonjs-generator.js delete mode 100644 cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-glyphicons-data-generator.js delete mode 100644 cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-lessdoc-parser.js delete mode 100644 cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-raw-files-generator.js delete mode 100644 cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/configBridge.json delete mode 100644 cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/sauce_browsers.yml (limited to 'cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt') diff --git a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/.jshintrc b/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/.jshintrc deleted file mode 100644 index 0ea0495e..00000000 --- a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/.jshintrc +++ /dev/null @@ -1,7 +0,0 @@ -{ - "extends" : "../js/.jshintrc", - "asi" : false, - "browser" : false, - "es3" : false, - "node" : true -} diff --git a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-commonjs-generator.js b/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-commonjs-generator.js deleted file mode 100644 index b0642cd8..00000000 --- a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-commonjs-generator.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var fs = require('fs'); -var path = require('path'); - -var COMMONJS_BANNER = '// This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment.\n'; - -module.exports = function generateCommonJSModule(grunt, srcFiles, destFilepath) { - var destDir = path.dirname(destFilepath); - - function srcPathToDestRequire(srcFilepath) { - var requirePath = path.relative(destDir, srcFilepath).replace(/\\/g, '/'); - return 'require(\'' + requirePath + '\')'; - } - - var moduleOutputJs = COMMONJS_BANNER + srcFiles.map(srcPathToDestRequire).join('\n'); - try { - fs.writeFileSync(destFilepath, moduleOutputJs); - } - catch (err) { - grunt.fail.warn(err); - } - grunt.log.writeln('File ' + destFilepath.cyan + ' created.'); -}; diff --git a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-glyphicons-data-generator.js b/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-glyphicons-data-generator.js deleted file mode 100644 index 339fd0ff..00000000 --- a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-glyphicons-data-generator.js +++ /dev/null @@ -1,41 +0,0 @@ -/*! - * Bootstrap Grunt task for Glyphicons data generation - * http://getbootstrap.com - * Copyright 2014 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -'use strict'; -var fs = require('fs'); - -module.exports = function generateGlyphiconsData(grunt) { - // Pass encoding, utf8, so `readFileSync` will return a string instead of a - // buffer - var glyphiconsFile = fs.readFileSync('less/glyphicons.less', 'utf8'); - var glyphiconsLines = glyphiconsFile.split('\n'); - - // Use any line that starts with ".glyphicon-" and capture the class name - var iconClassName = /^\.(glyphicon-[a-zA-Z0-9-]+)/; - var glyphiconsData = '# This file is generated via Grunt task. **Do not edit directly.**\n' + - '# See the \'build-glyphicons-data\' task in Gruntfile.js.\n\n'; - var glyphiconsYml = 'docs/_data/glyphicons.yml'; - for (var i = 0, len = glyphiconsLines.length; i < len; i++) { - var match = glyphiconsLines[i].match(iconClassName); - - if (match !== null) { - glyphiconsData += '- ' + match[1] + '\n'; - } - } - - // Create the `_data` directory if it doesn't already exist - if (!fs.existsSync('docs/_data')) { - fs.mkdirSync('docs/_data'); - } - - try { - fs.writeFileSync(glyphiconsYml, glyphiconsData); - } - catch (err) { - grunt.fail.warn(err); - } - grunt.log.writeln('File ' + glyphiconsYml.cyan + ' created.'); -}; diff --git a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-lessdoc-parser.js b/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-lessdoc-parser.js deleted file mode 100644 index 63ee65a0..00000000 --- a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-lessdoc-parser.js +++ /dev/null @@ -1,238 +0,0 @@ -/*! - * Bootstrap Grunt task for parsing Less docstrings - * http://getbootstrap.com - * Copyright 2014 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -'use strict'; - -var Remarkable = require('remarkable'); - -function markdown2html(markdownString) { - var md = new Remarkable(); - - // the slice removes the

...

wrapper output by Markdown processor - return md.render(markdownString.trim()).slice(3, -5); -} - - -/* -Mini-language: - //== This is a normal heading, which starts a section. Sections group variables together. - //## Optional description for the heading - - //=== This is a subheading. - - //** Optional description for the following variable. You **can** use Markdown in descriptions to discuss `` stuff. - @foo: #fff; - - //-- This is a heading for a section whose variables shouldn't be customizable - - All other lines are ignored completely. -*/ - - -var CUSTOMIZABLE_HEADING = /^[/]{2}={2}(.*)$/; -var UNCUSTOMIZABLE_HEADING = /^[/]{2}-{2}(.*)$/; -var SUBSECTION_HEADING = /^[/]{2}={3}(.*)$/; -var SECTION_DOCSTRING = /^[/]{2}#{2}(.+)$/; -var VAR_ASSIGNMENT = /^(@[a-zA-Z0-9_-]+):[ ]*([^ ;][^;]*);[ ]*$/; -var VAR_DOCSTRING = /^[/]{2}[*]{2}(.+)$/; - -function Section(heading, customizable) { - this.heading = heading.trim(); - this.id = this.heading.replace(/\s+/g, '-').toLowerCase(); - this.customizable = customizable; - this.docstring = null; - this.subsections = []; -} - -Section.prototype.addSubSection = function (subsection) { - this.subsections.push(subsection); -}; - -function SubSection(heading) { - this.heading = heading.trim(); - this.id = this.heading.replace(/\s+/g, '-').toLowerCase(); - this.variables = []; -} - -SubSection.prototype.addVar = function (variable) { - this.variables.push(variable); -}; - -function VarDocstring(markdownString) { - this.html = markdown2html(markdownString); -} - -function SectionDocstring(markdownString) { - this.html = markdown2html(markdownString); -} - -function Variable(name, defaultValue) { - this.name = name; - this.defaultValue = defaultValue; - this.docstring = null; -} - -function Tokenizer(fileContent) { - this._lines = fileContent.split('\n'); - this._next = undefined; -} - -Tokenizer.prototype.unshift = function (token) { - if (this._next !== undefined) { - throw new Error('Attempted to unshift twice!'); - } - this._next = token; -}; - -Tokenizer.prototype._shift = function () { - // returning null signals EOF - // returning undefined means the line was ignored - if (this._next !== undefined) { - var result = this._next; - this._next = undefined; - return result; - } - if (this._lines.length <= 0) { - return null; - } - var line = this._lines.shift(); - var match = null; - match = SUBSECTION_HEADING.exec(line); - if (match !== null) { - return new SubSection(match[1]); - } - match = CUSTOMIZABLE_HEADING.exec(line); - if (match !== null) { - return new Section(match[1], true); - } - match = UNCUSTOMIZABLE_HEADING.exec(line); - if (match !== null) { - return new Section(match[1], false); - } - match = SECTION_DOCSTRING.exec(line); - if (match !== null) { - return new SectionDocstring(match[1]); - } - match = VAR_DOCSTRING.exec(line); - if (match !== null) { - return new VarDocstring(match[1]); - } - var commentStart = line.lastIndexOf('//'); - var varLine = (commentStart === -1) ? line : line.slice(0, commentStart); - match = VAR_ASSIGNMENT.exec(varLine); - if (match !== null) { - return new Variable(match[1], match[2]); - } - return undefined; -}; - -Tokenizer.prototype.shift = function () { - while (true) { - var result = this._shift(); - if (result === undefined) { - continue; - } - return result; - } -}; - -function Parser(fileContent) { - this._tokenizer = new Tokenizer(fileContent); -} - -Parser.prototype.parseFile = function () { - var sections = []; - while (true) { - var section = this.parseSection(); - if (section === null) { - if (this._tokenizer.shift() !== null) { - throw new Error('Unexpected unparsed section of file remains!'); - } - return sections; - } - sections.push(section); - } -}; - -Parser.prototype.parseSection = function () { - var section = this._tokenizer.shift(); - if (section === null) { - return null; - } - if (!(section instanceof Section)) { - throw new Error('Expected section heading; got: ' + JSON.stringify(section)); - } - var docstring = this._tokenizer.shift(); - if (docstring instanceof SectionDocstring) { - section.docstring = docstring; - } - else { - this._tokenizer.unshift(docstring); - } - this.parseSubSections(section); - - return section; -}; - -Parser.prototype.parseSubSections = function (section) { - while (true) { - var subsection = this.parseSubSection(); - if (subsection === null) { - if (section.subsections.length === 0) { - // Presume an implicit initial subsection - subsection = new SubSection(''); - this.parseVars(subsection); - } - else { - break; - } - } - section.addSubSection(subsection); - } - - if (section.subsections.length === 1 && !(section.subsections[0].heading) && section.subsections[0].variables.length === 0) { - // Ignore lone empty implicit subsection - section.subsections = []; - } -}; - -Parser.prototype.parseSubSection = function () { - var subsection = this._tokenizer.shift(); - if (subsection instanceof SubSection) { - this.parseVars(subsection); - return subsection; - } - this._tokenizer.unshift(subsection); - return null; -}; - -Parser.prototype.parseVars = function (subsection) { - while (true) { - var variable = this.parseVar(); - if (variable === null) { - return; - } - subsection.addVar(variable); - } -}; - -Parser.prototype.parseVar = function () { - var docstring = this._tokenizer.shift(); - if (!(docstring instanceof VarDocstring)) { - this._tokenizer.unshift(docstring); - docstring = null; - } - var variable = this._tokenizer.shift(); - if (variable instanceof Variable) { - variable.docstring = docstring; - return variable; - } - this._tokenizer.unshift(variable); - return null; -}; - - -module.exports = Parser; diff --git a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-raw-files-generator.js b/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-raw-files-generator.js deleted file mode 100644 index ec8c5314..00000000 --- a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/bs-raw-files-generator.js +++ /dev/null @@ -1,46 +0,0 @@ -/*! - * Bootstrap Grunt task for generating raw-files.min.js for the Customizer - * http://getbootstrap.com - * Copyright 2014 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ - -/* global btoa: true */ - -'use strict'; -var fs = require('fs'); -var btoa = require('btoa'); -var glob = require('glob'); - -function getFiles(type) { - var files = {}; - var recursive = (type === 'less'); - var globExpr = (recursive ? '/**/*' : '/*'); - glob.sync(type + globExpr) - .filter(function (path) { - return type === 'fonts' ? true : new RegExp('\\.' + type + '$').test(path); - }) - .forEach(function (fullPath) { - var relativePath = fullPath.replace(/^[^/]+\//, ''); - files[relativePath] = (type === 'fonts' ? btoa(fs.readFileSync(fullPath)) : fs.readFileSync(fullPath, 'utf8')); - }); - return 'var __' + type + ' = ' + JSON.stringify(files) + '\n'; -} - -module.exports = function generateRawFilesJs(grunt, banner) { - if (!banner) { - banner = ''; - } - var dirs = ['js', 'less', 'fonts']; - var files = banner + dirs.map(getFiles).reduce(function (combined, file) { - return combined + file; - }, ''); - var rawFilesJs = 'docs/assets/js/raw-files.min.js'; - try { - fs.writeFileSync(rawFilesJs, files); - } - catch (err) { - grunt.fail.warn(err); - } - grunt.log.writeln('File ' + rawFilesJs.cyan + ' created.'); -}; diff --git a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/configBridge.json b/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/configBridge.json deleted file mode 100644 index 78e7aae5..00000000 --- a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/configBridge.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "paths": { - "customizerJs": [ - "../assets/js/vendor/autoprefixer.js", - "../assets/js/vendor/less.min.js", - "../assets/js/vendor/jszip.min.js", - "../assets/js/vendor/uglify.min.js", - "../assets/js/vendor/Blob.js", - "../assets/js/vendor/FileSaver.js", - "../assets/js/raw-files.min.js", - "../assets/js/src/customizer.js" - ], - "docsJs": [ - "../assets/js/vendor/holder.js", - "../assets/js/vendor/ZeroClipboard.min.js", - "../assets/js/src/application.js" - ] - }, - "config": { - "autoprefixerBrowsers": [ - "Android 2.3", - "Android >= 4", - "Chrome >= 20", - "Firefox >= 24", - "Explorer >= 8", - "iOS >= 6", - "Opera >= 12", - "Safari >= 6" - ], - "jqueryCheck": [ - "if (typeof jQuery === 'undefined') {", - " throw new Error('Bootstrap\\'s JavaScript requires jQuery')", - "}\n" - ], - "jqueryVersionCheck": [ - "+function ($) {", - " 'use strict';", - " var version = $.fn.jquery.split(' ')[0].split('.')", - " if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1)) {", - " throw new Error('Bootstrap\\'s JavaScript requires jQuery version 1.9.1 or higher')", - " }", - "}(jQuery);\n\n" - ] - } -} \ No newline at end of file diff --git a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/sauce_browsers.yml b/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/sauce_browsers.yml deleted file mode 100644 index 04e90928..00000000 --- a/cvp/3rd_party/static/testapi-ui/assets/lib/bootstrap/grunt/sauce_browsers.yml +++ /dev/null @@ -1,82 +0,0 @@ -[ - # Docs: https://saucelabs.com/docs/platforms/webdriver - - { - browserName: "safari", - platform: "OS X 10.10" - }, - { - browserName: "chrome", - platform: "OS X 10.10" - }, - { - browserName: "firefox", - platform: "OS X 10.10" - }, - - # Mac Opera not currently supported by Sauce Labs - - { - browserName: "internet explorer", - version: "11", - platform: "Windows 8.1" - }, - { - browserName: "internet explorer", - version: "10", - platform: "Windows 8" - }, - { - browserName: "internet explorer", - version: "9", - platform: "Windows 7" - }, - { - browserName: "internet explorer", - version: "8", - platform: "Windows 7" - }, - - # { # Unofficial - # browserName: "internet explorer", - # version: "7", - # platform: "Windows XP" - # }, - - { - browserName: "chrome", - platform: "Windows 8.1" - }, - { - browserName: "firefox", - platform: "Windows 8.1" - }, - - # Win Opera 15+ not currently supported by Sauce Labs - - { - browserName: "iphone", - platform: "OS X 10.9", - version: "8.1" - }, - - # iOS Chrome not currently supported by Sauce Labs - - # Linux (unofficial) - { - browserName: "chrome", - platform: "Linux" - }, - { - browserName: "firefox", - platform: "Linux" - } - - # Android Chrome not currently supported by Sauce Labs - - # { # Android Browser (super-unofficial) - # browserName: "android", - # version: "4.0", - # platform: "Linux" - # } -] -- cgit 1.2.3-korg