Browse Source

Better Search; JSONEditor; Vertical View; Minor Fixes

main
Levi Olson 3 years ago
parent
commit
915178d28a
14 changed files with 57726 additions and 722 deletions
  1. +1
    -0
      .gitignore
  2. +23
    -0
      Makefile
  3. +233
    -0
      package-lock.json
  4. +1
    -1
      unpacked/manifest.json
  5. +28
    -6
      unpacked/panel/assets/javascripts/app.js
  6. +238
    -150
      unpacked/panel/assets/javascripts/panel.js
  7. +349
    -336
      unpacked/panel/assets/stylesheets/panel.css
  8. +1
    -0
      unpacked/panel/assets/stylesheets/panel.css.map
  9. +424
    -0
      unpacked/panel/assets/stylesheets/panel.scss
  10. +244
    -229
      unpacked/panel/panel.html
  11. +749
    -0
      unpacked/panel/vendor/assets/javascripts/img/jsoneditor-icons.svg
  12. +52682
    -0
      unpacked/panel/vendor/assets/javascripts/jsoneditor.js
  13. +749
    -0
      unpacked/panel/vendor/assets/stylesheets/img/jsoneditor-icons.svg
  14. +2004
    -0
      unpacked/panel/vendor/assets/stylesheets/jsoneditor.css

+ 1
- 0
.gitignore View File

@ -1 +1,2 @@
*.zip *.zip
node_modules

+ 23
- 0
Makefile View File

@ -0,0 +1,23 @@
COMMAND_COLOR = \033[36m
DESC_COLOR = \033[32m
CLEAR_COLOR = \033[0m
.PHONY: help
help: ## prints this message ##
@echo ""; \
echo "Usage: make <command>"; \
echo ""; \
echo "where <command> is one of the following:"; \
echo ""; \
grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | \
perl -nle '/(.*?): ## (.*?) ## (.*$$)/; if ($$3 eq "") { printf ( "$(COMMAND_COLOR)%-20s$(DESC_COLOR)%s$(CLEAR_COLOR)\n\n", $$1, $$2) } else { printf ( "$(COMMAND_COLOR)%-20s$(DESC_COLOR)%s$(CLEAR_COLOR)\n%-20s%s\n\n", $$1, $$2, " ", $$3) }';
.PHONY: install
install: ## Install npm packages ##
@echo "Installing Dependencies..."; \
npm install;
.PHONY: sass
sass: ## sass --watch input.scss output.css ##
@echo "Compiling Sass..."; \
./node_modules/.bin/sass --watch unpacked/panel/assets/stylesheets/panel.scss unpacked/panel/assets/stylesheets/panel.css;

+ 233
- 0
package-lock.json View File

@ -0,0 +1,233 @@
{
"requires": true,
"lockfileVersion": 1,
"dependencies": {
"@sphinxxxx/color-conversion": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/@sphinxxxx/color-conversion/-/color-conversion-2.2.2.tgz",
"integrity": "sha512-XExJS3cLqgrmNBIP3bBw6+1oQ1ksGjFh0+oClDKFYpCCqx/hlqwWO5KO/S63fzUo67SxI9dMrF0y5T/Ey7h8Zw=="
},
"ace-builds": {
"version": "1.4.12",
"resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.4.12.tgz",
"integrity": "sha512-G+chJctFPiiLGvs3+/Mly3apXTcfgE45dT5yp12BcWZ1kUs+gm0qd3/fv4gsz6fVag4mM0moHVpjHDIgph6Psg=="
},
"ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
"requires": {
"fast-deep-equal": "^3.1.1",
"fast-json-stable-stringify": "^2.0.0",
"json-schema-traverse": "^0.4.1",
"uri-js": "^4.2.2"
}
},
"anymatch": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
"integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
"requires": {
"normalize-path": "^3.0.0",
"picomatch": "^2.0.4"
}
},
"binary-extensions": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA=="
},
"braces": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
"requires": {
"fill-range": "^7.0.1"
}
},
"chokidar": {
"version": "3.5.1",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz",
"integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==",
"requires": {
"anymatch": "~3.1.1",
"braces": "~3.0.2",
"fsevents": "~2.3.1",
"glob-parent": "~5.1.0",
"is-binary-path": "~2.1.0",
"is-glob": "~4.0.1",
"normalize-path": "~3.0.0",
"readdirp": "~3.5.0"
}
},
"fast-deep-equal": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
},
"fast-json-stable-stringify": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
},
"fill-range": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
"requires": {
"to-regex-range": "^5.0.1"
}
},
"fsevents": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz",
"integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==",
"optional": true
},
"glob-parent": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
"integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
"requires": {
"is-glob": "^4.0.1"
}
},
"is-binary-path": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
"requires": {
"binary-extensions": "^2.0.0"
}
},
"is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
},
"is-glob": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
"integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
"requires": {
"is-extglob": "^2.1.1"
}
},
"is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
},
"javascript-natural-sort": {
"version": "0.7.1",
"resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz",
"integrity": "sha1-+eIwPUUH9tdDVac2ZNFED7Wg71k="
},
"jmespath": {
"version": "0.15.0",
"resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.15.0.tgz",
"integrity": "sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc="
},
"jquery": {
"version": "3.5.1",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz",
"integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg=="
},
"json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
},
"json-source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/json-source-map/-/json-source-map-0.6.1.tgz",
"integrity": "sha512-1QoztHPsMQqhDq0hlXY5ZqcEdUzxQEIxgFkKl4WUp2pgShObl+9ovi4kRh2TfvAfxAoHOJ9vIMEqk3k4iex7tg=="
},
"jsoneditor": {
"version": "9.1.8",
"resolved": "https://registry.npmjs.org/jsoneditor/-/jsoneditor-9.1.8.tgz",
"integrity": "sha512-T7iZjrYdtFqVuUFelwni9UKp6jXklYa0O0VmohMhYjBBx356h9S7qHZnxoVenXBSmLrYA4SthIt8cY+4zKvFRQ==",
"requires": {
"ace-builds": "^1.4.12",
"ajv": "^6.12.6",
"javascript-natural-sort": "^0.7.1",
"jmespath": "^0.15.0",
"json-source-map": "^0.6.1",
"jsonrepair": "^2.0.0",
"mobius1-selectr": "^2.4.13",
"picomodal": "^3.0.0",
"vanilla-picker": "^2.11.0"
}
},
"jsonrepair": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/jsonrepair/-/jsonrepair-2.0.0.tgz",
"integrity": "sha512-beGD14VPmrQNt/Sspi12sCGT+N3w7FWM1T2UJx7biEMfGIUUpqBBPjHq8ETKA992+JS+fSnrSHxKHq7AIgdgcA=="
},
"mobius1-selectr": {
"version": "2.4.13",
"resolved": "https://registry.npmjs.org/mobius1-selectr/-/mobius1-selectr-2.4.13.tgz",
"integrity": "sha512-Mk9qDrvU44UUL0EBhbAA1phfQZ7aMZPjwtL7wkpiBzGh8dETGqfsh50mWoX9EkjDlkONlErWXArHCKfoxVg0Bw=="
},
"normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="
},
"picomatch": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
"integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg=="
},
"picomodal": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/picomodal/-/picomodal-3.0.0.tgz",
"integrity": "sha1-+s0w9PvzSoCcHgTqUl8ATzmcC4I="
},
"punycode": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
},
"readdirp": {
"version": "3.5.0",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz",
"integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==",
"requires": {
"picomatch": "^2.2.1"
}
},
"sass": {
"version": "1.32.5",
"resolved": "https://registry.npmjs.org/sass/-/sass-1.32.5.tgz",
"integrity": "sha512-kU1yJ5zUAmPxr7f3q0YXTAd1oZjSR1g3tYyv+xu0HZSl5JiNOaE987eiz7wCUvbm4I9fGWGU2TgApTtcP4GMNQ==",
"requires": {
"chokidar": ">=2.0.0 <4.0.0"
}
},
"to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
"requires": {
"is-number": "^7.0.0"
}
},
"uri-js": {
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
"requires": {
"punycode": "^2.1.0"
}
},
"vanilla-picker": {
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/vanilla-picker/-/vanilla-picker-2.11.0.tgz",
"integrity": "sha512-MsTAyROQRN3yoUdToiQtfnW752wC9DpnXbOhAMGJgBi+TMDZ0IUfbmIVB5u3P1ltBDlqy8TjY59a4lOioSlgZw==",
"requires": {
"@sphinxxxx/color-conversion": "^2.2.2"
}
}
}
}

+ 1
- 1
unpacked/manifest.json View File

@ -1,6 +1,6 @@
{ {
"name": "Better Network Panel", "name": "Better Network Panel",
"version": "0.9.1",
"version": "1.0.0",
"minimum_chrome_version": "44.0", "minimum_chrome_version": "44.0",
"description": "Extends the Developer Tools, adding a new Network Panel in the Developer Tools window with better searching and response previews.", "description": "Extends the Developer Tools, adding a new Network Panel in the Developer Tools window with better searching and response previews.",
"devtools_page": "devtools.html", "devtools_page": "devtools.html",

+ 28
- 6
unpacked/panel/assets/javascripts/app.js View File

@ -63,12 +63,6 @@ var BNPChrome = angular
} else if (typeof data === "string" && (data[0] === "{" || data[0] === "[")) { } else if (typeof data === "string" && (data[0] === "{" || data[0] === "[")) {
$el = $("<pre></pre>"); $el = $("<pre></pre>");
data = JSON.stringify(parse(data, 0), null, 4); data = JSON.stringify(parse(data, 0), null, 4);
// try {
// data = JSON.stringify(JSON.parse(data), null, 4);
// // $el.text()
// } catch (e) {
// console.debug("Error parsing", data);
// }
} else if (typeof data === "string") { } else if (typeof data === "string") {
// i.e. a string but not a JSON stringified string // i.e. a string but not a JSON stringified string
data = $("<div>").text(data).html(); data = $("<div>").text(data).html();
@ -110,6 +104,12 @@ var BNPChrome = angular
$target.data("resizableColumns").syncHandleWidths(); $target.data("resizableColumns").syncHandleWidths();
$target.data("resizableColumns").saveColumnWidths(); $target.data("resizableColumns").saveColumnWidths();
}); });
// $(window).on("resize", function () {
// // console.log('resize event');
// // var $target = $($(element).data("resizable-columns-sync"));
// // $target.data("resizableColumns").refreshHeaders();
// // $(element).resizableColumns(options);
// })
} }
$(element).resizableColumns(options); $(element).resizableColumns(options);
@ -125,4 +125,26 @@ var BNPChrome = angular
$container.scrollTop($parent.height()); $container.scrollTop($parent.height());
} }
}; };
}).directive('onSearch', function () {
return function (scope, element, attrs) {
element.bind("keypress", function (event) {
if((event.shiftKey && event.which === 220) || event.which === 13 || event.which === 44 || event.which === 124) {
scope.$apply(function (){
scope.$eval(attrs.onSearch);
});
event.preventDefault();
}
});
};
}).directive('ngRightClick', function($parse) {
return function(scope, element, attrs) {
element.bind('contextmenu', function(event) {
scope.$apply(function() {
scope.$eval(attrs.ngRightClick);
});
event.preventDefault();
});
};
}); });

+ 238
- 150
unpacked/panel/assets/javascripts/panel.js View File

@ -28,18 +28,39 @@ Console.addMessage = function (type, format, args) {
} }
})(); })();
BNPChrome.controller("PanelController", function PanelController($scope, toolbar, parse) {
$scope.uniqueid = 1000000;
BNPChrome.controller("PanelController", function PanelController($scope, toolbar, parse, $timeout) {
const LOCALSTORAGE = window.localStorage;
const MAXBODYSIZE = 20000;
const HOST = "http://localhost:3000" // "https://leviolson.com"
const CHANGELOG = {
"What's New": {
"v1.0.0:": {
"Improved Search": HOST + "/posts/bnp-changelog#improved-search",
"JSON Editor BUILT IN": HOST + "/posts/bnp-changelog#json-editor-built-in",
"Vertical Chrome Panel": HOST + "/posts/bnp-changelog#vertical-chrome-panel",
"Download JSON": HOST + "/posts/bnp-changelog#download-json"
}
}
}
$scope.search = "";
$scope.searchTerms = [];
$scope.oldSearchTerms = [];
$scope.andFilter = true;
$scope.uniqueId = 100000;
$scope.activeId = null; $scope.activeId = null;
$scope.requests = {}; $scope.requests = {};
$scope.masterRequests = []; $scope.masterRequests = [];
$scope.filteredRequests = []; $scope.filteredRequests = [];
$scope.showAll = true; $scope.showAll = true;
$scope.limitNetworkRequests = true;
$scope.limitNetworkRequests = false;
$scope.showOriginal = false; $scope.showOriginal = false;
$scope.currentDetailTab = "tab-response"; $scope.currentDetailTab = "tab-response";
$scope.showIncomingRequests = true;
$scope.myResponseCodeMirror = null; $scope.myResponseCodeMirror = null;
$scope.filter = "";
$scope.editor = null;
$scope.activeCookies = []; $scope.activeCookies = [];
$scope.activeHeaders = []; $scope.activeHeaders = [];
@ -50,19 +71,60 @@ BNPChrome.controller("PanelController", function PanelController($scope, toolbar
$scope.activeResponseHeaders = []; $scope.activeResponseHeaders = [];
$scope.activeCode = null; $scope.activeCode = null;
$scope.filter = "";
$scope.showIncomingRequests = true;
$scope.init = function (type) { $scope.init = function (type) {
$("#tabs").tabs(); $("#tabs").tabs();
$scope.initChrome(); $scope.initChrome();
this.createToolbar();
$scope.createToolbar();
const options = {
mode: 'view',
modes: ['code', 'view'],
onEditable: function (node) {
if (!node.path) {
// In modes code and text, node is empty: no path, field, or value
// returning false makes the text area read-only
return false;
}
return true
}
}
const response = document.getElementById('response-jsoneditor')
const request = document.getElementById('request-jsoneditor')
$scope.responseJsonEditor = new JSONEditor(response, options)
$scope.requestJsonEditor = new JSONEditor(request, options)
$timeout(() => {
$scope.responseJsonEditor.set(CHANGELOG);
$scope.responseJsonEditor.expandAll();
})
}; };
$scope.initChrome = function () { $scope.initChrome = function () {
try {
let oldSearchTerms = JSON.parse(LOCALSTORAGE.getItem('bnp-oldsearchterms'));
$scope.oldSearchTerms = oldSearchTerms || [];
} catch (e) {
$scope.oldSearchTerms = [];
}
try {
let searchTerms = JSON.parse(LOCALSTORAGE.getItem('bnp-searchterms'));
$scope.searchTerms = searchTerms || [];
} catch (e) {
$scope.searchTerms = [];
}
try {
let andFilter = JSON.parse(LOCALSTORAGE.getItem('bnp-andfilter'));
$scope.andFilter = andFilter || false;
} catch (e) {
$scope.andFilter = false;
}
console.debug('Retrieving', $scope.andFilter, $scope.searchTerms, $scope.oldSearchTerms);
chrome.devtools.network.onRequestFinished.addListener(function (request) { chrome.devtools.network.onRequestFinished.addListener(function (request) {
// do not show requests to chrome extension resources // do not show requests to chrome extension resources
if (request.request.url.startsWith("chrome-extension://")) { if (request.request.url.startsWith("chrome-extension://")) {
@ -70,30 +132,109 @@ BNPChrome.controller("PanelController", function PanelController($scope, toolbar
} }
$scope.handleRequest(request); $scope.handleRequest(request);
}); });
chrome.devtools.network.onNavigated.addListener(function (event) {
console.log("Event", event);
$scope.masterRequests.push({
id: $scope.uniqueId,
separator: true,
event: event
});
$scope.uniqueId++;
$scope.cleanRequests();
});
}; };
$scope.filterRequests = function () { $scope.filterRequests = function () {
const searchString = $scope.filter.toLowerCase();
if (!searchString) $scope.filteredRequests = $scope.masterRequests;
if (!$scope.searchTerms || $scope.searchTerms.length === 0) {
$scope.filteredRequests = $scope.masterRequests;
return;
}
// console.log("Filtering for: ", $scope.searchTerms);
let negTerms = [];
let posTerms = [];
for (let term of $scope.searchTerms) {
term = term.toLowerCase();
if (term && term[0] === '-') negTerms.push(term.substring(1));
else posTerms.push(term);
}
$scope.filteredRequests = $scope.masterRequests.filter(function (x) { $scope.filteredRequests = $scope.masterRequests.filter(function (x) {
if (x && x.searchIndex && x.searchIndex.includes(searchString)) return true;
if (x.separator) return true;
for (let term of negTerms) {
// if neg
if (x && x.searchIndex && x.searchIndex.includes(term)) return false;
}
if ($scope.andFilter) {
// AND condition
for (let term of posTerms) {
// if pos
if (x && x.searchIndex && !x.searchIndex.includes(term)) {
return false;
}
}
return true;
} else {
// OR condition
for (let term of posTerms) {
// if pos
if (x && x.searchIndex && x.searchIndex.includes(term)) {
return true;
}
}
return false;
}
}); });
}; };
$scope.toggleSearchType = function() {
$scope.andFilter = !$scope.andFilter;
_setLocalStorage();
$scope.filterRequests();
};
$scope.customSearch = function() {
if (!$scope.searchTerms.includes($scope.search)) {
$scope.searchTerms.push($scope.search);
$scope.search = "";
_setLocalStorage();
$scope.filterRequests()
}
};
_setLocalStorage = function() {
// do some sort of comparison to searchTerms and oldSearchTerms to make sure there is only one.
// although, now that I think about it... this comparison shouldn't be necessary... /shrug
LOCALSTORAGE.setItem('bnp-andfilter', JSON.stringify($scope.andFilter));
LOCALSTORAGE.setItem('bnp-searchterms', JSON.stringify($scope.searchTerms));
LOCALSTORAGE.setItem('bnp-oldsearchterms', JSON.stringify($scope.oldSearchTerms));
console.debug('Saving', $scope.andFilter, $scope.searchTerms, $scope.oldSearchTerms);
}
$scope.addSearchTerm = function(index) {
$scope.searchTerms.push($scope.oldSearchTerms.splice(index, 1)[0]);
_setLocalStorage();
$scope.filterRequests();
};
$scope.removeSearchTerm = function(index) {
$scope.oldSearchTerms.push($scope.searchTerms.splice(index, 1)[0]);
_setLocalStorage();
$scope.filterRequests();
};
$scope.deleteSearchTerm = function(index) {
$scope.oldSearchTerms.splice(index, 1);
_setLocalStorage();
};
$scope.handleRequest = function (har_entry) { $scope.handleRequest = function (har_entry) {
$scope.addRequest(har_entry, har_entry.request.method, har_entry.request.url, har_entry.response.status, null); $scope.addRequest(har_entry, har_entry.request.method, har_entry.request.url, har_entry.response.status, null);
}; };
$scope.createToolbar = function () { $scope.createToolbar = function () {
toolbar.createButton("search", "Search Code", false, function () {
// ga('send', 'event', 'button', 'click', 'Search Code');
$scope.$apply(function () {
if ($scope.myResponseCodeMirror) {
$scope.myResponseCodeMirror.execCommand("find");
}
});
});
toolbar.createToggleButton( toolbar.createToggleButton(
"embed", "embed",
"JSON Parsing", "JSON Parsing",
@ -111,28 +252,21 @@ BNPChrome.controller("PanelController", function PanelController($scope, toolbar
toolbar.createButton("download3", "Download", false, function () { toolbar.createButton("download3", "Download", false, function () {
// ga('send', 'event', 'button', 'click', 'Download'); // ga('send', 'event', 'button', 'click', 'Download');
$scope.$apply(function () { $scope.$apply(function () {
var blob = new Blob([JSON.stringify($scope.requests)], { type: "application/json;charset=utf-8" });
saveAs(blob, "BNPChromeExport.json");
});
});
toolbar.createButton("upload3", "Import", true, function () {
// ga('send', 'event', 'button', 'click', 'Import');
$scope.$apply(function () {
$("#ImportInput").click();
const panel = $scope.currentDetailTab;
if (panel === "tab-response") {
var blob = new Blob([JSON.parse(JSON.stringify($scope.activeCode, null, 4))], { type: "application/json;charset=utf-8" });
saveAs(blob, "export_response.json");
} else {
try {
var blob = new Blob([JSON.stringify($scope.activePostData)], { type: "application/json;charset=utf-8" });
saveAs(blob, "export_request.json");
} catch (e) {
console.log(e)
}
}
}); });
}); });
toolbar.createToggleButton(
"meter",
"Limit network requests to 500",
false,
function () {
// ga('send', 'event', 'button', 'click', 'Toggle Limit Network Request');
$scope.$apply(function () {
$scope.limitNetworkRequests = !$scope.limitNetworkRequests;
});
},
true
);
toolbar.createButton("blocked", "Clear", false, function () { toolbar.createButton("blocked", "Clear", false, function () {
// ga('send', 'event', 'button', 'click', 'Clear'); // ga('send', 'event', 'button', 'click', 'Clear');
$scope.$apply(function () { $scope.$apply(function () {
@ -141,40 +275,12 @@ BNPChrome.controller("PanelController", function PanelController($scope, toolbar
}); });
$(".toolbar").replaceWith(toolbar.render()); $(".toolbar").replaceWith(toolbar.render());
//clears the input value so you can reload the same file
document.getElementById("ImportInput").addEventListener(
"click",
function () {
this.value = null;
},
false
);
document.getElementById("ImportInput").addEventListener("change", readFile, false);
function readFile(evt) {
const files = evt.target.files;
const file = files[0];
const reader = new FileReader();
reader.onload = function () {
$scope.importFile(this.result);
};
reader.readAsText(file);
}
};
$scope.importFile = function (data) {
$scope.$apply(function () {
const importHar = JSON.parse(data);
for (i in importHar) {
$scope.handleRequest(importHar[i]);
}
});
}; };
$scope.addRequest = function (data, request_method, request_url, response_status) { $scope.addRequest = function (data, request_method, request_url, response_status) {
$scope.$apply(function () { $scope.$apply(function () {
const requestId = $scope.uniqueid;
$scope.uniqueid = $scope.uniqueid + 1;
const requestId = data.id || $scope.uniqueId;
$scope.uniqueId++
if (data.request != null) { if (data.request != null) {
data["request_data"] = $scope.createKeypairs(data.request); data["request_data"] = $scope.createKeypairs(data.request);
@ -202,35 +308,25 @@ BNPChrome.controller("PanelController", function PanelController($scope, toolbar
data["request_method"] = request_method; data["request_method"] = request_method;
if (request_url.includes("apexremote")) { if (request_url.includes("apexremote")) {
try { try {
let text =
data && data.request && data.request.postData && data.request.postData.text
? JSON.parse(data.request.postData.text)
: "";
data["request_apex_type"] =
text.data && typeof text.data[1] === "string" ? text.data[1] : JSON.stringify(text.data);
let text = data && data.request && data.request.postData && data.request.postData.text ? JSON.parse(data.request.postData.text) : "";
data["request_apex_type"] = text.data && typeof text.data[1] === "string" ? text.data[1] : JSON.stringify(text.data);
data["request_apex_method"] = text.method || ""; data["request_apex_method"] = text.method || "";
} catch (e) { } catch (e) {
console.debug("Error", e); console.debug("Error", e);
} }
} }
data["request_url"] = request_url;
data["response_status"] = response_status;
data["id"] = requestId;
data.request_url = request_url;
data.response_status = response_status;
data['id'] = requestId;
let ctObj = data.response_headers.find(x => x.name == "Content-Type")
data.content_type = ctObj && ctObj.value || null;
$scope.requests[requestId] = data; // master $scope.requests[requestId] = data; // master
data.searchIndex = JSON.stringify(data).toLowerCase();
// console.debug('SearchIndex', data.searchIndex)
data.searchIndex = JSON.stringify(data.request).toLowerCase();
$scope.masterRequests.push(data); $scope.masterRequests.push(data);
$scope.filteredRequests.push(data);
data.getContent(function (content, encoding) { data.getContent(function (content, encoding) {
try {
$scope.requests[requestId].response_data.response_body = JSON.stringify(
JSON.parse(content),
null,
4
);
} catch (e) {}
$scope.requests[requestId].response_data.response_body = content;
}); });
$scope.cleanRequests(); $scope.cleanRequests();
@ -286,13 +382,19 @@ BNPChrome.controller("PanelController", function PanelController($scope, toolbar
$scope.activeCode = $scope.requests[requestId].response_data.response_body; $scope.activeCode = $scope.requests[requestId].response_data.response_body;
}; };
$scope.getClass = function (requestId) {
$scope.getClass = function (requestId, separator) {
if (separator) return "separator"
if (requestId === $scope.activeId) { if (requestId === $scope.activeId) {
return "selected"; return "selected";
} else { } else {
return ""; return "";
} }
}; };
$scope.titleIfSeparator = function(separator) {
if (separator)
return "Page reloaded here"
return ""
};
$scope.createKeypairs = function (data) { $scope.createKeypairs = function (data) {
let keypairs = []; let keypairs = [];
@ -330,8 +432,12 @@ BNPChrome.controller("PanelController", function PanelController($scope, toolbar
}; };
$scope.$watch("activeCode", function (newVal, oldVal) { $scope.$watch("activeCode", function (newVal, oldVal) {
$scope.displayCode("tab-response-codemirror", $scope.activeCode, "myResponseCodeMirror", 3);
$scope.displayCode("tab-request-codemirror", $scope.flatten($scope.activePostData), "myRequestCodeMirror", 6);
if (newVal === null) {
$scope.responseJsonEditor.set(null)
$scope.requestJsonEditor.set(null)
}
$scope.displayCode("responseJsonEditor", $scope.activeCode, 3);
$scope.displayCode("requestJsonEditor", $scope.activePostData, 6);
}); });
$scope.selectDetailTab = function (tabId, external) { $scope.selectDetailTab = function (tabId, external) {
@ -339,73 +445,55 @@ BNPChrome.controller("PanelController", function PanelController($scope, toolbar
if (external) { if (external) {
$("#tabs a[href='#" + tabId + "']").trigger("click"); $("#tabs a[href='#" + tabId + "']").trigger("click");
} }
if (tabId === "tab-response")
$scope.displayCode("tab-response-codemirror", $scope.activeCode, "myResponseCodeMirror", 3);
if (tabId === "tab-request")
$scope.displayCode(
"tab-request-codemirror",
$scope.flatten($scope.activePostData),
"myRequestCodeMirror",
6
);
};
$scope.flatten = function (input) {
if (input && typeof input === "object")
return input.map(function (x) {
var tmp = {};
tmp[x.name] = x.value;
return tmp;
});
if (tabId === "tab-response") {
$scope.displayCode("responseJsonEditor", $scope.activeCode, 3);
}
if (tabId === "tab-request") {
$scope.displayCode("requestJsonEditor", $scope.activePostData, 6);
}
}; };
$scope.displayCode = function (elementId, input, scopeVar, depth) {
if (input != null) {
document.getElementById(elementId).style.visibility = "visible";
$scope.displayCode = function (elementId, input, depth) {
if (input) {
let content; let content;
if ($scope.showOriginal) { if ($scope.showOriginal) {
content = JSON.stringify(parse(input, 0, 1), null, 4);
content = parse(input, 0, 1);
} else { } else {
content = JSON.stringify(parse(input, 0, depth), null, 4);
content = parse(input, 0, depth);
} }
if ($scope[scopeVar]) {
$scope[scopeVar].getDoc().setValue(content);
$scope[scopeVar].refresh();
return;
if (typeof input === 'object' || Array.isArray(input)) {
// JSON
$scope[elementId].setMode("view");
$scope[elementId].set(content);
} else {
// Something else
try {
let json = JSON.parse(input)
$scope[elementId].setMode("view");
$scope[elementId].set(content);
} catch (e) {
$scope[elementId].setMode("code");
$scope[elementId].set(content);
}
} }
document.getElementById(elementId).innerHTML = "";
const codeMirror = CodeMirror(document.getElementById(elementId), {
value: content,
mode: "application/json",
theme: "neat",
lineNumbers: true,
lineWrapping: false,
readOnly: true,
foldGutter: true,
gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter"]
});
$scope[scopeVar] = codeMirror;
if (elementId === "responseJsonEditor") {
var bodySize = $scope.activeResponseData.find(x => x.name === "bodySize");
if (bodySize && bodySize.value < MAXBODYSIZE) { // an arbitrary number that I picked so there is HUGE lag
if ($scope[elementId].getMode() === 'tree' || $scope[elementId].getMode() === 'view')
$scope[elementId].expandAll();
}
} else if (elementId === "requestJsonEditor") {
var bodySize = $scope.activeRequest.find(x => x.name === "bodySize");
if (bodySize && bodySize.value < MAXBODYSIZE) {
if ($scope[elementId].getMode() === 'tree' || $scope[elementId].getMode() === 'view')
$scope[elementId].expandAll();
}
}
} else {
$scope[elementId].set(null);
$scope[elementId].expandAll();
} }
}; };
$scope.getPretty = function (source) {
let code = JSON.stringify(parse(source, 0, 1), null, 4);
return code;
const options = {
source: code,
mode: "beautify", // beautify, diff, minify, parse
lang: "auto",
inchar: " " // indent character
};
const pd = prettydiff(options); // returns and array: [beautified, report]
const pretty = pd[0];
return pretty;
};
}); });

+ 349
- 336
unpacked/panel/assets/stylesheets/panel.css View File

@ -1,426 +1,439 @@
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
display: none !important;
}
* { * {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
} }
body { body {
background: #fff;
background: #fff;
margin: 0;
position: relative;
} }
th, td {
text-align: left;
div.wrap {
margin: 0px;
background-color: #EFEFEF;
} }
.toolbar {
padding: 2px 4px;
text-align: right;
div.wrap input {
border: 1px solid darkgray;
width: 260px;
border-radius: 0px;
margin: 0;
padding: 2px 8px;
} }
.toolbar a {
color: rgb(105, 105, 105);
cursor: default;
font-size: 15px;
padding: 0 5px;
text-decoration: none;
div.wrap span.label {
margin: 0 10px;
} }
.toolbar a:hover {
color: rgb(59, 59, 59);
text-decoration: none;
div.wrap span.searchterm {
background-color: #8aff75;
border-radius: 3px;
padding: 3px 6px;
margin: 1px 0;
display: inline-block;
} }
.toolbar a.selected {
color: rgb(62, 130, 240);
text-decoration: none;
}
.toolbar a.selected:hover {
color: rgb(25, 108, 251);
text-decoration: none;
}
.split-view {
bottom: 0;
left: 0;
overflow: hidden;
position: absolute;
right: 0;
top: 0;
div.wrap span.searchterm.neg {
background-color: #ec7b79;
} }
.split-view-contents {
bottom: 0;
cursor: default;
overflow: auto;
position: absolute;
top: 0;
div.wrap span.operator {
font: normal normal bold 11px/25px sans-serif;
cursor: pointer;
display: inline-block;
width: 25px;
text-align: center;
} }
@media screen and (max-width: 900px) {
.split-view-contents-requests {
bottom: 50%;
width: 100%;
}
.split-view-contents-details {
top: 50%;
width: 100%;
}
div.wrap span.recent {
padding-left: 75px;
} }
@media screen and (min-width: 900px) {
.split-view-contents-requests {
width: 50%;
}
.split-view-contents-details {
left: 50%;
right: 0;
}
div.wrap div#recent-searches {
display: inline;
} }
.data-grid {
border: none;
bottom: 0;
left: 0;
position: absolute;
right: 0;
top: 0;
div.wrap span.recents {
background-color: #a8ff99;
border-radius: 3px;
padding: 3px 6px;
margin: 1px 10px 2px 0px;
display: inline-block;
color: gray;
} }
.data-grid table {
border-collapse: collapse;
border-spacing: 0;
font-size: 11px;
table-layout: fixed;
width: 100%;
div.wrap span.recents.neg {
background-color: #ffbdbd;
} }
.data-grid th {
border-bottom: 1px solid rgb(205, 205, 205);
border-right: 1px solid rgb(205, 205, 205);
height: 25px;
padding: 0 4px;
white-space: nowrap;
table.styled th,
table.styled td {
text-align: left;
} }
.data-grid td {
border-right: 1px solid rgb(205, 205, 205);
overflow: hidden;
padding: 0px 5px;
vertical-align: middle;
white-space: nowrap;
.toolbar {
padding: 2px 4px;
text-align: right;
} }
.data-grid tr:first-child td {
border-top: 1px solid rgb(205, 205, 205);
.toolbar a {
color: dimgray;
cursor: default;
font-size: 15px;
padding: 0 5px;
text-decoration: none;
} }
/* requests list */
.data-container {
bottom: 0;
left: 0;
overflow-x: hidden;
overflow-y: overlay;
position: absolute;
right: 0;
top: 25px;
.toolbar a:hover {
color: #3b3b3b;
text-decoration: none;
} }
.data-container table {
height: 100%;
.toolbar a.selected {
color: #3e82f0;
text-decoration: none;
} }
.data-container tr {
height: 20px;
.toolbar a.selected:hover {
color: #196cfb;
text-decoration: none;
} }
.data-container tr.sizing {
height: 0;
.top-border {
border-top: 1px solid #ddd;
} }
.data-container tr.sizing td {
padding: 0;
.split-view {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
} }
.data-container tr.filler {
display: table-row !important;
height: auto !important;
.split-view-contents {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
.split-view-contents-details {
top: 34%;
}
@media screen and (max-width: 1200px) {
div.wrap span.recent {
display: inline-block;
padding: 0px 10px 0 273px;
margin: 8px 0 0 0;
}
.split-view-contents-requests {
bottom: 66%;
}
}
@media screen and (min-width: 1200px) {
.split-view-contents {
width: 50%;
}
.split-view-contents-requests {
right: unset;
}
.split-view-contents-details {
top: 0;
left: unset;
border-left: 1px solid #555;
}
br.mobile {
display: none;
}
} }
.data-container tr.filler td {
padding: 0;
.data-grid {
border: none;
height: 100%;
}
.data-grid table.styled {
border-collapse: collapse;
border-spacing: 0;
font-size: 11px;
table-layout: fixed;
width: 100%;
}
.data-grid table.styled th {
border-bottom: 1px solid #cdcdcd;
border-right: 1px solid #cdcdcd;
height: 25px;
padding: 0 4px;
white-space: nowrap;
}
.data-grid table.styled td {
border-right: 1px solid #cdcdcd;
overflow: hidden;
padding: 0px 5px;
vertical-align: middle;
white-space: nowrap;
}
.data-grid table.styled tr:first-child td {
border-top: 1px solid #cdcdcd;
} }
.data-grid-requests { .data-grid-requests {
cursor: unset;
}
.clickable {
cursor: pointer;
cursor: unset;
}
.data-grid-requests table.styled {
line-height: 1.4;
}
.data-grid-requests table.styled th {
font-weight: normal;
overflow: hidden;
}
.data-grid-requests table.styled td.duration {
text-align: right;
}
.data-grid-requests table.styled td.method,
.data-grid-requests table.styled td.time,
.data-grid-requests table.styled td.datetime,
.data-grid-requests table.styled td.format,
.data-grid-requests table.styled td.status,
.data-grid-requests table.styled td.duration {
background: #f1f1f1;
}
.data-grid-requests table.styled tr:nth-child(even):not(.filler) {
background: #f3f3f3;
}
.data-grid-requests table.styled tr:nth-child(even) td.method,
.data-grid-requests table.styled tr:nth-child(even) td.time,
.data-grid-requests table.styled tr:nth-child(even) td.datetime,
.data-grid-requests table.styled tr:nth-child(even) td.format,
.data-grid-requests table.styled tr:nth-child(even) td.status,
.data-grid-requests table.styled tr:nth-child(even) td.duration {
background: #f1f1f1;
}
.data-grid-requests table.styled tr.selected td {
background: #3883fa !important;
color: white;
}
.data-grid-requests table.styled tr.selected td small {
color: white;
}
.data-grid-requests table.styled tr.separator {
cursor: pointer;
max-height: 6px;
height: 6px;
line-height: 6px;
}
.data-grid-requests table.styled tr.separator td {
background-color: #d6e6ff !important;
color: #d6e6ff !important;
border-right: 1px solid #d6e6ff !important;
} }
.data-grid-requests table {
line-height: 1.4;
}
.data-grid-requests th {
font-weight: normal;
overflow: hidden;
}
.data-grid-requests small { .data-grid-requests small {
color: rgb(128, 128, 128);
font-size: 100%;
}
.data-grid-requests .selected td {
background: #3879D9 !important;
color: white;
}
.data-grid-requests .selected td small {
color: white;
color: gray;
font-size: 100%;
} }
.data-grid-requests .apextype { .data-grid-requests .apextype {
width: 170px;
width: 15%;
} }
.data-grid-requests .apexmethod { .data-grid-requests .apexmethod {
width: 130px;
width: 12%;
} }
.data-grid-requests .method, .data-grid-requests .method,
.data-grid-requests .time, .data-grid-requests .time,
.data-grid-requests .format, .data-grid-requests .format,
.data-grid-requests .status { .data-grid-requests .status {
text-align: center;
width: 50px;
text-align: center;
width: 6%;
}
.data-grid-requests .datetime {
text-align: center;
width: 9%;
} }
.data-grid-requests .duration { .data-grid-requests .duration {
width: 80px;
width: 80px;
} }
.data-grid-requests td.duration {
text-align: right;
.data-grid-requests .notificationsCount {
background: rgba(255, 255, 255, 0.8);
float: right;
height: 100%;
letter-spacing: -0.5px;
line-height: 29px;
padding-left: 4px;
padding-right: 4px;
position: relative;
right: -4px;
} }
.data-grid-requests td.method,
.data-grid-requests td.time,
.data-grid-requests td.format,
.data-grid-requests td.status,
.data-grid-requests td.duration {
background: rgb(237, 237, 237);
.data-grid-requests .notificationsCount .errorsCount i {
color: #cd492e;
margin-left: 2px;
} }
.data-grid-requests tr:nth-child(even):not(.filler) {
background: rgb(243, 243, 243);
.data-grid-requests .notificationsCount .warningsCount i {
color: #f4bd00;
margin-left: 2px;
} }
.data-grid-requests tr:nth-child(even) td.method,
.data-grid-requests tr:nth-child(even) td.time,
.data-grid-requests tr:nth-child(even) td.format,
.data-grid-requests tr:nth-child(even) td.status,
.data-grid-requests tr:nth-child(even) td.duration {
background: rgb(225, 225, 225);
.data-grid-requests .selected .notificationsCount {
background: inherit;
} }
.data-grid-requests .notificationsCount {
background: rgba(255, 255, 255, 0.8);
float: right;
height: 100%;
letter-spacing: -0.5px;
line-height: 29px;
padding-left: 4px;
padding-right: 4px;
position: relative;
right: -4px;
.data-grid-requests .selected .notificationsCount .errorsCount i {
color: #fff;
} }
.data-grid-requests .selected .notificationsCount {
background: inherit;
.data-grid-requests .selected .notificationsCount .warningsCount i {
color: #fff;
}
.data-grid-requests .data .saml {
font-weight: bold;
}
.data-grid-details table.styled {
font-size: 12px;
margin-bottom: 6px;
table-layout: fixed;
border: 1px solid #cdcdcd;
}
.data-grid-details table.styled tr:nth-child(even) {
background: #eaf3ff;
}
.data-grid-details table.styled th {
border-bottom: none;
border-right: none;
font-size: 12px;
font-weight: bold;
height: 18px;
padding: 0 4px;
white-space: nowrap;
}
.data-grid-details table.styled td {
border-right: 1px solid #e5e5e5;
border-top: 1px solid #e5e5e5;
height: auto;
line-height: 16px;
vertical-align: top;
white-space: normal;
word-wrap: break-word;
}
.data-grid-details table.styled th:last-child,
.data-grid-details table.styled td:last-child {
border-right: none;
} }
.data-grid-requests .notificationsCount .errorsCount i {
color: rgb(205, 73, 46);
margin-left: 2px;
.data-grid-details .key {
font-size: 12px;
font-weight: bold;
white-space: nowrap;
} }
.data-grid-requests .selected .notificationsCount .errorsCount i {
color: #fff;
.data-container {
overflow-x: hidden;
overflow-y: overlay;
height: calc(100% - 25px);
} }
.data-grid-requests .notificationsCount .warningsCount i {
color: rgb(244, 189, 0);
margin-left: 2px;
.data-container table.styled {
height: 100%;
} }
.data-grid-requests .selected .notificationsCount .warningsCount i {
color: #fff;
.data-container table.styled tr {
height: 20px;
} }
.data-grid-requests .data-container .data .saml {
font-weight: bold;
.data-container table.styled tr.sizing {
height: 0;
}
.data-container table.styled tr.sizing td {
padding: 0;
}
.data-container table.styled tr.filler {
display: table-row;
height: auto;
}
.data-container table.styled tr.filler td {
padding: 0;
}
.data-container .data .saml {
font-weight: bold;
} }
/* request details */
.clickable {
cursor: pointer;
}
.tabbed-pane { .tabbed-pane {
-webkit-box-orient: vertical;
-moz-box-orient: vertical;
-ms-box-orient: vertical;
box-orient: vertical;
display: -webkit-box;
display: -moz-box;
display: -ms-box;
display: box;
height: 100%;
width: 100%;
-webkit-box-orient: vertical;
-moz-box-orient: vertical;
-ms-box-orient: vertical;
box-orient: vertical;
display: -webkit-box;
display: -moz-box;
display: -ms-box;
display: box;
height: 100%;
width: 100%;
} }
.tabbed-pane-header { .tabbed-pane-header {
border-bottom: 1px solid rgb(205, 205, 205);
padding-left: 0;
padding-top: 1px;
white-space: nowrap;
border-bottom: 1px solid #cdcdcd;
padding-left: 0;
padding-top: 1px;
white-space: nowrap;
height: 26px;
background: #efefef;
} }
.tabbed-pane-header-contents { .tabbed-pane-header-contents {
margin: 0 10px;
margin: 0 10px;
} }
.tabbed-pane-header-tabs { .tabbed-pane-header-tabs {
margin: 0;
min-width: 300px;
padding: 0;
position: relative;
top: 1px;
margin: 0;
min-width: 300px;
padding: 0;
position: relative;
top: 1px;
} }
.tabbed-pane-header-tab { .tabbed-pane-header-tab {
border: 1px solid transparent;
border-bottom: none;
float: left;
font-size: 11px;
height: 21px;
margin-top: 2px;
overflow: hidden;
padding: 1px 6px 1px 6px;
text-overflow: ellipsis;
vertical-align: middle;
white-space: nowrap;
border: 1px solid transparent;
border-bottom: none;
float: left;
font-size: 11px;
height: 21px;
margin-top: 2px;
overflow: hidden;
padding: 1px 6px 1px 6px;
text-overflow: ellipsis;
vertical-align: middle;
white-space: nowrap;
} }
.tabbed-pane-header-tab-title { .tabbed-pane-header-tab-title {
color: #000;
display: block;
font-size: 12px;
min-width: 40px;
text-align: center;
text-decoration: none;
white-space: nowrap;
color: #000;
display: block;
font-size: 12px;
min-width: 40px;
text-align: center;
text-decoration: none;
white-space: nowrap;
} }
.tabbed-pane-header .ui-tabs-active { .tabbed-pane-header .ui-tabs-active {
background-color: white;
border: 1px solid rgb(205, 205, 205);
border-bottom: none;
background-color: white;
border: 1px solid #cdcdcd;
border-bottom: none;
} }
.tabbed-pane-header-tab, .tabbed-pane-header-tab a, .tabbed-pane-header-tab a:active { .tabbed-pane-header-tab, .tabbed-pane-header-tab a, .tabbed-pane-header-tab a:active {
outline: none;
outline: none;
} }
.tabbed-pane-content { .tabbed-pane-content {
-webkit-box-flex: 1;
-moz-box-flex: 1;
-ms-box-flex: 1;
box-flex: 1;
overflow: auto;
padding: 0px;
position: relative;
-webkit-box-flex: 1;
-moz-box-flex: 1;
-ms-box-flex: 1;
box-flex: 1;
overflow: auto;
padding: 0px;
position: relative;
height: calc(100% - 24px);
} }
#tab-request-stats, #tab-request-stats,
#tab-response-stats { #tab-response-stats {
padding: 10px;
}
.data-grid-details table {
/*font-size: 12px;*/
margin-bottom: 6px;
table-layout: fixed;
border: 1px solid rgb(205, 205, 205);
}
.data-grid-details table tr:nth-child(even) {
background: rgb(234, 243, 255);
}
.data-grid-details th {
border-bottom: none;
border-right: none;
font-size: 12px;
font-weight: bold;
height: 18px;
padding: 0 4px;
white-space: nowrap;
}
.data-grid-details td {
border-right: 1px solid #e5e5e5;
border-top: 1px solid #e5e5e5;
height: auto;
line-height: 16px;
vertical-align: top;
white-space: normal;
word-wrap: break-word;
padding: 10px;
} }
.data-grid-details th:last-child,
.data-grid-details td:last-child {
border-right: none;
}
.data-grid-details .key {
/*font-size: 12px;*/
font-weight: bold;
white-space: nowrap;
}
/* request details - request */
th.request { th.request {
position:relative;
}
#tab-request table {
margin-bottom: 20px;
}
#tab-response table {
margin-bottom: 20px;
position: relative;
} }
#tab-saml {
bottom: 0px;
left: 0px;
overflow-x: hidden;
overflow-y: overlay;
position: absolute;
right: 0px;
top: 0px;
padding: 1px;
font-size: 12px;
#tab-response table.styled {
margin-bottom: 20px;
} }
#tab-saml-codemirror {
height: 100%;
}
input[type="file"] {
display: none;
input[type=file] {
display: none;
} }
.CodeMirror { .CodeMirror {
height: calc(100% - 26px) !important;
height: calc(100% - 26px);
} }
/*# sourceMappingURL=panel.css.map */

+ 1
- 0
unpacked/panel/assets/stylesheets/panel.css.map View File

@ -0,0 +1 @@
{"version":3,"sourceRoot":"","sources":["panel.scss"],"names":[],"mappings":"AAAA;EACI;;;AAGJ;EACI;EACA;EACA;;;AAEJ;EACI;EACA;EACA;;;AAEJ;EACI;EACA;;AACA;EACF;EACA;EACA;EACA;EACA;;AAED;EACC;;AAEE;EACI;EACA;EACA;EACA;EACN;;AACA;EACC;;AAGF;EACC;EACA;EACA;EACA;EACA;;AAEE;EACF;;AAEE;EACI;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACN;;AACA;EACC;;;AAIH;AAAA;EAEI;;;AAEJ;EACI;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AAEJ;EACI;EACA;;AACA;EACI;EACA;;;AAKhB;EACI;;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;;AACA;EACI;;;AAIZ;EAEQ;IACI;IACA;IACA;;;EAGR;IACI;;;AAGR;EACI;IACI;;EACA;IACI;;EAEJ;IACI;IACA;IACA;;;EAGR;IACI;;;AAGR;EACI;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;;AAGR;EACI;;AACA;EACI;;AACA;EACI;EACA;;AAEJ;EACI;;AAEJ;AAAA;AAAA;AAAA;AAAA;AAAA;EAMI;;AAEJ;EACI;;AAEJ;AAAA;AAAA;AAAA;AAAA;AAAA;EAMI;;AAEb;EACC;EACA;;AACA;EACC;;AAGO;EACI;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;;AAIZ;EACI;EACA;;AAEJ;EACI;;AAEJ;EACI;;AAEJ;AAAA;AAAA;AAAA;EAII;EACA;;AAEJ;EACI;EACA;;AAEJ;EACI;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AAEJ;EACI;EACA;;AAGR;EACI;;AACA;EACI;;AAEJ;EACI;;AAGR;EACI;;AAGR;EACI;EACA;EACA;EACA;;AACA;EACI;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;AAAA;EAEI;;AAGR;EACI;EACA;EACA;;;AAGR;EACI;EACA;EACA;;AACA;EACI;;AACA;EACI;;AACA;EACI;;AACA;EACI;;AAGR;EACI;EACA;;AACA;EACI;;AAKhB;EACI;;;AAGR;EACI;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGR;EACI;EACA;EACA;;AAEJ;EAGI;;AAGR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGR;AAAA;EAEI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAEJ;EACI","file":"panel.css"}

+ 424
- 0
unpacked/panel/assets/stylesheets/panel.scss View File

@ -0,0 +1,424 @@
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
display: none !important;
}
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
body {
background: #fff;
margin: 0;
position: relative;
}
div.wrap {
margin: 0px;
background-color: #EFEFEF;
input {
border: 1px solid darkgray;
width: 260px;
border-radius: 0px;
margin: 0;
padding: 2px 8px;
}
span.label {
margin: 0 10px;
}
span.searchterm {
background-color: hsl(111, 100%, 73%); // #bfb;
border-radius: 3px;
padding: 3px 6px;
margin: 1px 0;
display: inline-block;
&.neg {
background-color: hsl(1, 75%, 70%);
}
}
span.operator {
font: normal normal bold 11px/25px sans-serif;
cursor: pointer;
display: inline-block;
width: 25px;
text-align: center;
}
span.recent {
padding-left: 75px;
}
div#recent-searches {
display: inline;
}
span.recents {
background-color: hsl(111, 100%, 80%); // #efe;
border-radius: 3px;
padding: 3px 6px;
margin: 1px 10px 2px 0px;
display: inline-block;
color: hsl(1, 0%, 50%);
&.neg {
background-color: hsl(0, 100%, 87%);
}
}
}
table.styled th,
table.styled td {
text-align: left;
}
.toolbar {
padding: 2px 4px;
text-align: right;
a {
color: rgb(105, 105, 105);
cursor: default;
font-size: 15px;
padding: 0 5px;
text-decoration: none;
&:hover {
color: rgb(59, 59, 59);
text-decoration: none;
}
&.selected {
color: rgb(62, 130, 240);
text-decoration: none;
&:hover {
color: rgb(25, 108, 251);
text-decoration: none;
}
}
}
}
.top-border {
border-top: 1px solid #ddd;
}
.split-view {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
&-contents {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
&-details {
top: 34%;
}
}
}
@media screen and (max-width: 1200px) {
div.wrap {
span.recent {
display: inline-block;
padding: 0px 10px 0 273px;
margin: 8px 0 0 0;
}
}
.split-view-contents-requests {
bottom: 66%;
}
}
@media screen and (min-width: 1200px) {
.split-view-contents {
width: 50%;
&-requests {
right: unset;
}
&-details {
top: 0;
left: unset;
border-left: 1px solid #555;
}
}
br.mobile {
display: none;
}
}
.data-grid {
border: none;
height: 100%;
table.styled {
border-collapse: collapse;
border-spacing: 0;
font-size: 11px;
table-layout: fixed;
width: 100%;
th {
border-bottom: 1px solid rgb(205, 205, 205);
border-right: 1px solid rgb(205, 205, 205);
height: 25px;
padding: 0 4px;
white-space: nowrap;
}
td {
border-right: 1px solid rgb(205, 205, 205);
overflow: hidden;
padding: 0px 5px;
vertical-align: middle;
white-space: nowrap;
}
tr:first-child td {
border-top: 1px solid rgb(205, 205, 205);
}
}
&-requests {
cursor: unset;
table.styled {
line-height: 1.4;
th {
font-weight: normal;
overflow: hidden;
}
td.duration {
text-align: right;
}
td.method,
td.time,
td.datetime,
td.format,
td.status,
td.duration {
background: rgb(241, 241, 241);
}
tr:nth-child(even):not(.filler) {
background: rgb(243, 243, 243);
}
tr:nth-child(even) td.method,
tr:nth-child(even) td.time,
tr:nth-child(even) td.datetime,
tr:nth-child(even) td.format,
tr:nth-child(even) td.status,
tr:nth-child(even) td.duration {
background: rgb(241, 241, 241);
}
tr.selected td {
background: #3883fa !important;
color: white;
small {
color: white;
}
}
tr.separator {
cursor: pointer;
max-height: 6px;
height: 6px;
line-height: 6px;
td {
background-color: hsl(217, 100%, 92%) !important;
color: hsl(217, 100%, 92%) !important;
border-right: 1px solid hsl(217, 100%, 92%) !important;
}
}
}
small {
color: rgb(128, 128, 128);
font-size: 100%;
}
.apextype {
width: 15%;
}
.apexmethod {
width: 12%;
}
.method,
.time,
.format,
.status {
text-align: center;
width: 6%;
}
.datetime {
text-align: center;
width: 9%;
}
.duration {
width: 80px;
}
.notificationsCount {
background: rgba(255, 255, 255, 0.8);
float: right;
height: 100%;
letter-spacing: -0.5px;
line-height: 29px;
padding-left: 4px;
padding-right: 4px;
position: relative;
right: -4px;
.errorsCount i {
color: rgb(205, 73, 46);
margin-left: 2px;
}
.warningsCount i {
color: rgb(244, 189, 0);
margin-left: 2px;
}
}
.selected .notificationsCount {
background: inherit;
.errorsCount i {
color: #fff;
}
.warningsCount i {
color: #fff;
}
}
.data .saml {
font-weight: bold;
}
}
&-details table.styled {
font-size: 12px;
margin-bottom: 6px;
table-layout: fixed;
border: 1px solid rgb(205, 205, 205);
tr:nth-child(even) {
background: rgb(234, 243, 255);
}
th {
border-bottom: none;
border-right: none;
font-size: 12px;
font-weight: bold;
height: 18px;
padding: 0 4px;
white-space: nowrap;
}
td {
border-right: 1px solid #e5e5e5;
border-top: 1px solid #e5e5e5;
height: auto;
line-height: 16px;
vertical-align: top;
white-space: normal;
word-wrap: break-word;
}
th:last-child,
td:last-child {
border-right: none;
}
}
&-details .key {
font-size: 12px;
font-weight: bold;
white-space: nowrap;
}
}
.data-container {
overflow-x: hidden;
overflow-y: overlay;
height: calc(100% - 25px);
table.styled {
height: 100%;
tr {
height: 20px;
&.sizing {
height: 0;
td {
padding: 0;
}
}
&.filler {
display: table-row;
height: auto;
td {
padding: 0;
}
}
}
}
.data .saml {
font-weight: bold;
}
}
.clickable {
cursor: pointer;
}
.tabbed-pane {
-webkit-box-orient: vertical;
-moz-box-orient: vertical;
-ms-box-orient: vertical;
box-orient: vertical;
display: -webkit-box;
display: -moz-box;
display: -ms-box;
display: box;
height: 100%;
width: 100%;
&-header {
border-bottom: 1px solid rgb(205, 205, 205);
padding-left: 0;
padding-top: 1px;
white-space: nowrap;
height: 26px;
background: #efefef;
&-contents {
margin: 0 10px;
}
&-tabs {
margin: 0;
min-width: 300px;
padding: 0;
position: relative;
top: 1px;
}
&-tab {
border: 1px solid transparent;
border-bottom: none;
float: left;
font-size: 11px;
height: 21px;
margin-top: 2px;
overflow: hidden;
padding: 1px 6px 1px 6px;
text-overflow: ellipsis;
vertical-align: middle;
white-space: nowrap;
&-title {
color: #000;
display: block;
font-size: 12px;
min-width: 40px;
text-align: center;
text-decoration: none;
white-space: nowrap;
}
}
.ui-tabs-active {
background-color: white;
border: 1px solid rgb(205, 205, 205);
border-bottom: none;
}
&-tab,
&-tab a,
&-tab a:active {
outline: none;
}
}
&-content {
-webkit-box-flex: 1;
-moz-box-flex: 1;
-ms-box-flex: 1;
box-flex: 1;
overflow: auto;
padding: 0px;
position: relative;
height: calc(100% - 24px);
}
}
#tab-request-stats,
#tab-response-stats {
padding: 10px;
}
th.request {
position: relative;
}
#tab-response table.styled {
margin-bottom: 20px;
}
input[type="file"] {
display: none;
}
.CodeMirror {
height: calc(100% - 26px);
}

+ 244
- 229
unpacked/panel/panel.html View File

@ -1,22 +1,15 @@
<html ng-app="BNPChrome" ng-csp=""> <html ng-app="BNPChrome" ng-csp="">
<head> <head>
<link rel="stylesheet" type="text/css" href="vendor/assets/stylesheets/jquery.resizableColumns.css"> <link rel="stylesheet" type="text/css" href="vendor/assets/stylesheets/jquery.resizableColumns.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/stylesheets/style.css"> <link rel="stylesheet" type="text/css" href="vendor/assets/stylesheets/style.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/lib/codemirror.css">
<link rel="stylesheet" type="text/css" href="assets/stylesheets/panel.css">
<link href="vendor/assets/stylesheets/jsoneditor.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/theme/3024-day.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/theme/base16-light.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/theme/elegant.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/theme/neat.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/theme/material.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/theme/material-ocean.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/addon/dialog/dialog.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/addon/search/matchesonscrollbar.css">
<link rel="stylesheet" type="text/css" href="vendor/assets/codemirror/addon/fold/foldgutter.css">
<script src="vendor/assets/javascripts/jsoneditor.js"></script>
<link rel="stylesheet" type="text/css" href="assets/stylesheets/panel.css">
<script src="vendor/assets/javascripts/jquery-2.2.4.min.js"></script> <script src="vendor/assets/javascripts/jquery-2.2.4.min.js"></script>
<script src="vendor/assets/javascripts/jquery-ui-1.10.3.custom.min.js"></script> <script src="vendor/assets/javascripts/jquery-ui-1.10.3.custom.min.js"></script>
<script src="vendor/assets/javascripts/keymaster.min.js"></script> <script src="vendor/assets/javascripts/keymaster.min.js"></script>
@ -25,248 +18,270 @@
<script src="vendor/assets/javascripts/prettydiff.min.js"></script> <script src="vendor/assets/javascripts/prettydiff.min.js"></script>
<script src="vendor/assets/javascripts/rawinflate.js"></script> <script src="vendor/assets/javascripts/rawinflate.js"></script>
<script src="vendor/assets/codemirror/lib/codemirror.js"></script>
<script src="vendor/assets/codemirror/mode/javascript/javascript.js"></script>
<script src="vendor/assets/codemirror/addon/dialog/dialog.js"></script>
<script src="vendor/assets/codemirror/addon/search/search.js"></script>
<script src="vendor/assets/codemirror/addon/search/jump-to-line.js"></script>
<script src="vendor/assets/codemirror/addon/search/searchcursor.js"></script>
<script src="vendor/assets/codemirror/addon/scroll/annotatescrollbar.js"></script>
<script src="vendor/assets/codemirror/addon/search/matchesonscrollbar.js"></script>
<script src="vendor/assets/codemirror/addon/fold/foldcode.js"></script>
<script src="vendor/assets/codemirror/addon/fold/foldgutter.js"></script>
<script src="vendor/assets/codemirror/addon/fold/brace-fold.js"></script>
<script src="vendor/assets/codemirror/addon/fold/indent-fold.js"></script>
<script src="vendor/assets/javascripts/FileSaver.min.js"></script> <script src="vendor/assets/javascripts/FileSaver.min.js"></script>
<script src="assets/javascripts/app.js"></script>
<script src="assets/javascripts/panel.js"></script>
<script src="assets/javascripts/toolbar.js"></script>
</head> </head>
<body>
<div class="split-view" ng-controller='PanelController' ng-init="init('chrome-extension')">
<div class="split-view-contents split-view-contents-requests">
<div class="data-grid data-grid-requests">
<table class="header" id="requests-header" resizable-columns data-resizable-columns-sync="#requests">
<thead>
<tr>
<th class='request'>
Path
<input class="request-filter" ng-model="filter" placeholder="Filter" ng-change="filterRequests()" />
<button ng-click="filter = 'apexremote'; filterRequests()">Apex</button>
<button ng-click="filter = 'carts'; filterRequests()">CartsAPI</button>
</th>
<th class='apextype'>
Apex Type
</th>
<th class='apexmethod'>
Apex Method
</th>
<th class='method'>
Method
</th>
<th class='status'>
Status
</th>
<th class='time'>
Time
</th>
</tr>
</thead>
</table>
<div class="data-container">
<table id="requests" resizable-columns data-resizable-columns-sync="#requests-header">
<tr class="sizing">
<td class='request'></td>
<td class='apextype'></td>
<td class='apexmethod'></td>
<td class='method'></td>
<td class='status'></td>
<td class='time'></td>
</tr>
<tr class="data clickable" ng-repeat="request in filteredRequests | orderBy:'id'" ng-click="setActive(request.id)" ng-class="getClass(request.id)">
<!-- scroll-to-new -->
<td class='request {{getTrafficStyle(request)}}' title="{{request.request_url}}">{{request.request_url}}</td>
<td class='apextype' title="{{request.request_apex_type}}">{{request.request_apex_type}}</td>
<td class='apexmethod' title="{{request.request_apex_method}}">{{request.request_apex_method}}</td>
<td class='method' title="{{request.request_method}}">{{request.request_method}}</td>
<td class='status' title="{{request.response_status}}">{{request.response_status}}</td>
<td class='time' title="{{request.time}}">{{ request.time / 1000 | number : 2 }} s</td>
</tr>
<tr class="filler">
<td class='request'></td>
<td class='apextype'></td>
<td class='apexmethod'></td>
<td class='method'></td>
<td class='status'></td>
<td class='time'></td>
</tr>
</table>
</div>
</div>
</div>
<div class="split-view-contents split-view-contents-details">
<div id="tabs" class="tabbed-pane">
<div class="tabbed-pane-header">
<div class="tabbed-pane-header-contents">
<ul class="tabbed-pane-header-tabs">
<li class="tabbed-pane-header-tab">
<a href="#tab-response" class="tabbed-pane-header-tab-title" ng-click="selectDetailTab('tab-response')">
<span ng-show="showOriginal">Raw</span>
<span ng-hide="showOriginal">Formatted</span>
Response</a>
</li>
<li class="tabbed-pane-header-tab">
<a href="#tab-request" class="tabbed-pane-header-tab-title" ng-click="selectDetailTab('tab-request')">
<span ng-show="showOriginal">Raw</span>
<span ng-hide="showOriginal">Formatted</span>
Request</a>
</li>
<li class="tabbed-pane-header-tab">
<a href="#tab-request-stats" class="tabbed-pane-header-tab-title" ng-click="selectDetailTab('tab-request-stats')">Request</a>
</li>
<li class="tabbed-pane-header-tab">
<a href="#tab-response-stats" class="tabbed-pane-header-tab-title" ng-click="selectDetailTab('tab-response-stats')">Response</a>
</li>
</ul>
</div>
<div class="toolbar"></div>
<body ng-controller='PanelController' ng-init="init('chrome-extension')" ng-cloak>
<div class="split-view">
<div class="split-view-contents split-view-contents-requests top-border">
<div class="wrap">
<input ng-model="search" type="text" placeholder='Add search term then ENTER' title='prefix with "-" to remove from search results' on-search="customSearch()" />
<span class="label">Filtering for:</span>
<span ng-repeat="term in searchTerms">
<span title="Click to remove"
class="searchterm"
ng-class="{ neg: term[0] == '-'}"
ng-click="removeSearchTerm($index)">{{term}}</span>
<span class="operator" ng-hide="$last" ng-click="toggleSearchType()">{{ andFilter && 'and' || 'or' }}</span>
</span>
<br class="mobile" />
<div id="recent-searches">
<span class="recent">Recent searches:</span>
<span ng-repeat="term in oldSearchTerms"
title="Click to Search, right click to permanently remove from history"
class="recents"
ng-class="{ neg: term[0] == '-'}"
ng-click="addSearchTerm($index)"
ng-right-click="deleteSearchTerm($index)">{{term}}</span>
</div>
</div> </div>
<div class="tabbed-pane-content data-grid data-grid-details">
<div id="tab-request-stats">
<table id="postData" ng-show="activePostData.length" title="Click to open Request preview tab">
<thead>
<div class="data-grid data-grid-requests">
<table class="header styled" id="requests-header" resizable-columns data-resizable-columns-sync="#requests">
<thead>
<tr> <tr>
<th colspan="2">Request POST Data</th>
<th class='request'>
Path
</th>
<th class='apextype'>
Apex Type
</th>
<th class='apexmethod'>
Apex Method
</th>
<th class='method'>
Method
</th>
<th class='status'>
Status
</th>
<th class='time'>
Time
</th>
<th class='datetime'>
Started
</th>
</tr> </tr>
</thead>
<tbody>
<tr ng-repeat="param in activePostData" ng-click="selectDetailTab('tab-request', true)">
<td class="key">{{param.name}}</td>
<td><pretty-print data="param.value"/></td>
</thead>
</table>
<div class="data-container">
<table id="requests" class="styled" resizable-columns data-resizable-columns-sync="#requests-header">
<tr class="sizing">
<td class='request'></td>
<td class='apextype'></td>
<td class='apexmethod'></td>
<td class='method'></td>
<td class='status'></td>
<td class='time'></td>
<td class='datetime'></td>
</tr> </tr>
</tbody>
</table>
<table id="request-data" ng-show="activeRequest.length">
<thead>
<tr>
<th colspan="2">Request Data</th>
<tr class="data clickable" ng-repeat="request in filteredRequests | orderBy:'id'"
ng-click="!request.separator && setActive(request.id)" ng-class="getClass(request.id, request.separator)">
<!-- scroll-to-new -->
<td class='request' title="{{request.request_url || titleIfSeparator(request.separator) }}">{{request.request_url}}</td>
<td class='apextype' title="{{request.request_apex_type || titleIfSeparator(request.separator) }}">{{request.request_apex_type}}</td>
<td class='apexmethod' title="{{request.request_apex_method || titleIfSeparator(request.separator) }}">{{request.request_apex_method}}</td>
<td class='method' title="{{request.request_method || titleIfSeparator(request.separator) }}">{{request.request_method}}</td>
<td class='status' title="{{request.response_status || titleIfSeparator(request.separator) }}">{{request.response_status}}</td>
<td class='time' title="{{request.time || titleIfSeparator(request.separator) }}">{{ request.time / 1000 | number : 2 }} s</td>
<td class='datetime' title="{{request.startedDateTime || titleIfSeparator(request.separator) }}">{{ request.startedDateTime | date: "mediumTime" }}</td>
</tr> </tr>
</thead>
<tbody>
<tr ng-repeat="param in activeRequest">
<td class="key">{{param.name}}</td>
<td class="value"><pretty-print data="param.value"/></td>
<tr class="filler">
<td class='request'></td>
<td class='apextype'></td>
<td class='apexmethod'></td>
<td class='method'></td>
<td class='status'></td>
<td class='time'></td>
<td class='datetime'></td>
</tr> </tr>
</tbody>
</table> </table>
</div>
</div>
</div>
<table id="headers" ng-show="activeHeaders.length">
<thead>
<tr>
<th colspan="2">Request Headers</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeHeaders">
<td class="key">{{param.name}}</td>
<td class="value"><pretty-print data="param.value"/></td>
</tr>
</tbody>
</table>
<div class="split-view-contents split-view-contents-details top-border">
<div id="tabs" class="tabbed-pane">
<div class="tabbed-pane-header">
<div class="tabbed-pane-header-contents">
<ul class="tabbed-pane-header-tabs">
<li class="tabbed-pane-header-tab">
<a href="#tab-response" class="tabbed-pane-header-tab-title"
ng-click="selectDetailTab('tab-response')">
<span ng-show="showOriginal">Raw</span>
<span ng-hide="showOriginal">Formatted</span>
Response</a>
</li>
<li class="tabbed-pane-header-tab">
<a href="#tab-request" class="tabbed-pane-header-tab-title"
ng-click="selectDetailTab('tab-request')">
<span ng-show="showOriginal">Raw</span>
<span ng-hide="showOriginal">Formatted</span>
Request</a>
</li>
<li class="tabbed-pane-header-tab">
<a href="#tab-request-stats" class="tabbed-pane-header-tab-title"
ng-click="selectDetailTab('tab-request-stats')">Request</a>
</li>
<li class="tabbed-pane-header-tab">
<a href="#tab-response-stats" class="tabbed-pane-header-tab-title"
ng-click="selectDetailTab('tab-response-stats')">Response</a>
</li>
</ul>
</div>
<div class="toolbar"></div>
<table id="request-cookies" ng-show="activeResponseCookies.length">
<thead>
<tr>
<th colspan="2">Request Cookies</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeCookies">
<td class="key">{{param.name}}</td>
<td><pretty-print data="param.value"/></td>
</tr>
</tbody>
</table>
</div> </div>
<div id="tab-response-stats">
<table id="response-data" ng-show="activeResponseData.length">
<thead>
<tr>
<th colspan="2">Response Data</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeResponseData">
<td class="key">{{param.name}}</td>
<td class="value"><pretty-print data="param.value"/></td>
</tr>
</tbody>
</table>
<div class="tabbed-pane-content data-grid data-grid-details">
<table id="response-headers" ng-show="activeResponseHeaders.length">
<thead>
<tr>
<th colspan="2">Response Headers</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeResponseHeaders">
<td class="key">{{param.name}}</td>
<td class="value"><pretty-print data="param.value"/></td>
</tr>
</tbody>
</table>
<table id="response-cookies" ng-show="activeResponseCookies.length">
<thead>
<tr>
<th colspan="2">Response Cookies</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeResponseCookies">
<td class="key">{{param.name}}</td>
<td><pretty-print data="param.value"/></td>
</tr>
</tbody>
</table>
</div>
<div id="tab-request-stats">
<table id="postData" class="styled" ng-show="activePostData.length" title="Click to open Request preview tab">
<thead>
<tr>
<th colspan="2">Request POST Data</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activePostData" ng-click="selectDetailTab('tab-request', true)">
<td class="key">{{param.name}}</td>
<td>
<pretty-print data="param.value" />
</td>
</tr>
</tbody>
</table>
<table id="request-data" class="styled" ng-show="activeRequest.length">
<thead>
<tr>
<th colspan="2">Request Data</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeRequest">
<td class="key">{{param.name}}</td>
<td class="value">
<pretty-print data="param.value" />
</td>
</tr>
</tbody>
</table>
<table id="headers" class="styled" ng-show="activeHeaders.length">
<thead>
<tr>
<th colspan="2">Request Headers</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeHeaders">
<td class="key">{{param.name}}</td>
<td class="value">
<pretty-print data="param.value" />
</td>
</tr>
</tbody>
</table>
<div id="tab-response">
<div id="tab-response-codemirror">
<table id="request-cookies" class="styled" ng-show="activeResponseCookies.length">
<thead>
<tr>
<th colspan="2">Request Cookies</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeCookies">
<td class="key">{{param.name}}</td>
<td>
<pretty-print data="param.value" />
</td>
</tr>
</tbody>
</table>
</div> </div>
</div>
<div id="tab-request">
<div id="tab-request-codemirror">
<div id="tab-response-stats">
<table id="response-data" class="styled" ng-show="activeResponseData.length">
<thead>
<tr>
<th colspan="2">Response Data</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeResponseData">
<td class="key">{{param.name}}</td>
<td class="value">
<pretty-print data="param.value" />
</td>
</tr>
</tbody>
</table>
<table id="response-headers" class="styled" ng-show="activeResponseHeaders.length">
<thead>
<tr>
<th colspan="2">Response Headers</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeResponseHeaders">
<td class="key">{{param.name}}</td>
<td class="value">
<pretty-print data="param.value" />
</td>
</tr>
</tbody>
</table>
<table id="response-cookies" class="styled" ng-show="activeResponseCookies.length">
<thead>
<tr>
<th colspan="2">Response Cookies</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="param in activeResponseCookies">
<td class="key">{{param.name}}</td>
<td>
<pretty-print data="param.value" />
</td>
</tr>
</tbody>
</table>
</div> </div>
</div>
<!-- <div id="tab-raw-res">
<pre ng-show="activeCode">{{getPretty(activeCode)}}</pre>
<pre ng-hide="activeCode">loading...</pre>
</div>
<div id="tab-raw-req">
<pre ng-show="(activePostData | filter:{name:'text'}).length">{{activePostData | filter: {name:'text'} | json}}</pre>
<pre ng-hide="(activePostData | filter:{name:'text'}).length">loading...</pre>
</div> -->
<div id="tab-response">
<div id="response-jsoneditor"></div>
<!-- <div id="tab-response-codemirror"></div> -->
</div>
<div id="tab-request">
<div id="request-jsoneditor"></div>
<!-- <div id="tab-request-codemirror"></div> -->
</div>
<script src="assets/javascripts/app.js"></script>
<script src="assets/javascripts/panel.js"></script>
<script src="assets/javascripts/toolbar.js"></script>
</div>
</div> </div>
</div> </div>
</div> </div>
</div>
</body> </body>
</html>
</html>

+ 749
- 0
unpacked/panel/vendor/assets/javascripts/img/jsoneditor-icons.svg View File

@ -0,0 +1,749 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="240"
height="144"
id="svg4136"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="jsoneditor-icons.svg">
<title
id="title6512">JSON Editor Icons</title>
<metadata
id="metadata4148">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>JSON Editor Icons</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs4146" />
<sodipodi:namedview
pagecolor="#ff63ff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1026"
id="namedview4144"
showgrid="true"
inkscape:zoom="4"
inkscape:cx="13.229181"
inkscape:cy="119.82429"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg4136"
showguides="false"
borderlayer="false"
inkscape:showpageshadow="true"
showborder="true">
<inkscape:grid
type="xygrid"
id="grid4640"
empspacing="24" />
</sodipodi:namedview>
<!-- Created with SVG-edit - http://svg-edit.googlecode.com/ -->
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0"
id="svg_1"
height="16"
width="16"
y="4"
x="4" />
<rect
id="svg_1-7"
height="16"
width="16"
y="3.999995"
x="28.000006"
style="fill:#ec3f29;fill-opacity:0.94117647;stroke:none;stroke-width:0" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0"
x="52.000004"
y="3.999995"
width="16"
height="16"
id="rect4165" />
<rect
id="rect4175"
height="16"
width="16"
y="3.9999852"
x="172.00002"
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0" />
<rect
id="rect4175-3"
height="16"
width="16"
y="3.999995"
x="196"
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0" />
<g
id="g4299"
style="stroke:none">
<rect
x="7.0000048"
y="10.999998"
width="9.9999924"
height="1.9999986"
id="svg_1-1"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0" />
<rect
x="11.000005"
y="7.0000114"
width="1.9999955"
height="9.9999838"
id="svg_1-1-1"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0" />
</g>
<g
id="g4299-3"
transform="matrix(0.70710678,-0.70710678,0.70710678,0.70710678,19.029435,12.000001)"
style="stroke:none">
<rect
x="7.0000048"
y="10.999998"
width="9.9999924"
height="1.9999986"
id="svg_1-1-0"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0" />
<rect
x="11.000005"
y="7.0000114"
width="1.9999955"
height="9.9999838"
id="svg_1-1-1-9"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0" />
</g>
<rect
id="svg_1-7-5"
height="6.9999905"
width="6.9999909"
y="7.0000048"
x="55.000004"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#4c4c4c;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
x="58"
y="10.00001"
width="6.9999909"
height="6.9999905"
id="rect4354" />
<rect
id="svg_1-7-5-7"
height="6.9999905"
width="6.9999909"
y="10.000005"
x="58.000004"
style="fill:#ffffff;fill-opacity:1;stroke:#3c80df;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.94117647" />
<g
id="g4378">
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0"
x="198"
y="10.999999"
width="7.9999909"
height="1.9999965"
id="svg_1-7-5-3" />
<rect
id="rect4374"
height="1.9999946"
width="11.999995"
y="7.0000005"
x="198"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0" />
<rect
id="rect4376"
height="1.9999995"
width="3.9999928"
y="14.999996"
x="198"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0" />
</g>
<g
transform="matrix(1,0,0,-1,-23.999995,23.999995)"
id="g4383">
<rect
id="rect4385"
height="1.9999965"
width="7.9999909"
y="10.999999"
x="198"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0"
x="198"
y="7.0000005"
width="11.999995"
height="1.9999946"
id="rect4387" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0"
x="198"
y="14.999996"
width="3.9999928"
height="1.9999995"
id="rect4389" />
</g>
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
id="rect3754-4"
width="16"
height="16"
x="76"
y="3.9999199" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:0.2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 85.10447,6.0157384 -0.0156,1.4063 c 3.02669,-0.2402 0.33008,3.6507996 2.48438,4.5780996 -2.18694,1.0938 0.49191,4.9069 -2.45313,4.5781 l -0.0156,1.4219 c 5.70828,0.559 1.03264,-5.1005 4.70313,-5.2656 l 0,-1.4063 c -3.61303,-0.027 1.11893,-5.7069996 -4.70313,-5.3124996 z"
id="path4351"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:0.2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 82.78125,5.9984384 0.0156,1.4063 c -3.02668,-0.2402 -0.33007,3.6506996 -2.48437,4.5780996 2.18694,1.0938 -0.49192,4.9069 2.45312,4.5781 l 0.0156,1.4219 c -5.70827,0.559 -1.03263,-5.1004 -4.70312,-5.2656 l 0,-1.4063 c 3.61303,-0.027 -1.11894,-5.7070996 4.70312,-5.3124996 z"
id="path4351-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
id="rect3754-25"
width="16"
height="16"
x="100"
y="3.9999199" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 103.719,5.6719384 0,12.7187996 3.03125,0 0,-1.5313 -1.34375,0 0,-9.6249996 1.375,0 0,-1.5625 z"
id="path2987"
inkscape:connector-curvature="0" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 112.2185,5.6721984 0,12.7187996 -3.03125,0 0,-1.5313 1.34375,0 0,-9.6249996 -1.375,0 0,-1.5625 z"
id="path2987-1"
inkscape:connector-curvature="0" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
id="rect3754-73"
width="16"
height="16"
x="124"
y="3.9999199" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 126.2824,17.602938 1.78957,0 1.14143,-2.8641 5.65364,0 1.14856,2.8641 1.76565,0 -4.78687,-11.1610996 -1.91903,0 z"
id="path3780"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccccc" />
<path
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
d="m 129.72704,13.478838 4.60852,0.01 -2.30426,-5.5497996 z"
id="path3782"
inkscape:connector-curvature="0" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
id="rect3754-35"
width="16"
height="16"
x="148"
y="3.9999199" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 156.47655,5.8917384 0,2.1797 0.46093,2.3983996 1.82813,0 0.39844,-2.3983996 0,-2.1797 z"
id="path5008-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccc" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 152.51561,5.8906384 0,2.1797 0.46094,2.3983996 1.82812,0 0.39844,-2.3983996 0,-2.1797 z"
id="path5008-2-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccc" />
<rect
id="svg_1-7-2"
height="1.9999961"
width="11.999996"
y="64"
x="54"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
id="svg_1-7-2-2"
height="2.9999905"
width="2.9999907"
y="52"
x="80.000008"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="85.000008"
y="52"
width="2.9999907"
height="2.9999905"
id="rect4561" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="80.000008"
y="58"
width="2.9999907"
height="2.9999905"
id="rect4563" />
<rect
id="rect4565"
height="2.9999905"
width="2.9999907"
y="58"
x="85.000008"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
id="rect4567"
height="2.9999905"
width="2.9999907"
y="64"
x="80.000008"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="85.000008"
y="64"
width="2.9999907"
height="2.9999905"
id="rect4569" />
<circle
style="opacity:1;fill:none;fill-opacity:1;stroke:#4c4c4c;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="path4571"
cx="110.06081"
cy="57.939209"
r="4.7438836" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="116.64566"
y="-31.79752"
width="4.229713"
height="6.4053884"
id="rect4563-2"
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)" />
<path
style="fill:#4c4c4c;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 125,56 138.77027,56.095 132,64 Z"
id="path4613"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
sodipodi:nodetypes="cccc"
inkscape:connector-curvature="0"
id="path4615"
d="M 149,64 162.77027,63.905 156,56 Z"
style="fill:#4c4c4c;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="54"
y="53"
width="11.999996"
height="1.9999961"
id="rect4638" />
<rect
id="svg_1-7-2-24"
height="1.9999957"
width="12.99999"
y="-56"
x="53"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
transform="matrix(0,1,-1,0,0,0)" />
<rect
transform="matrix(0,1,-1,0,0,0)"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="53"
y="-66"
width="12.99999"
height="1.9999957"
id="rect4657" />
<rect
id="rect4659"
height="0.99999291"
width="11.999999"
y="57"
x="54"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="54"
y="88.000122"
width="11.999996"
height="1.9999961"
id="rect4661" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="80.000008"
y="76.000122"
width="2.9999907"
height="2.9999905"
id="rect4663" />
<rect
id="rect4665"
height="2.9999905"
width="2.9999907"
y="76.000122"
x="85.000008"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1" />
<rect
id="rect4667"
height="2.9999905"
width="2.9999907"
y="82.000122"
x="80.000008"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="85.000008"
y="82.000122"
width="2.9999907"
height="2.9999905"
id="rect4669" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="80.000008"
y="88.000122"
width="2.9999907"
height="2.9999905"
id="rect4671" />
<rect
id="rect4673"
height="2.9999905"
width="2.9999907"
y="88.000122"
x="85.000008"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1" />
<circle
r="4.7438836"
cy="81.939331"
cx="110.06081"
id="circle4675"
style="opacity:1;fill:none;fill-opacity:1;stroke:#d3d3d3;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<rect
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)"
id="rect4677"
height="6.4053884"
width="4.229713"
y="-14.826816"
x="133.6163"
style="fill:#d3d3d3;fill-opacity:1;stroke:#d3d3d3;stroke-width:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccc"
inkscape:connector-curvature="0"
id="path4679"
d="m 125,80.000005 13.77027,0.09499 L 132,87.999992 Z"
style="fill:#d3d3d3;fill-opacity:1;fill-rule:evenodd;stroke:#d3d3d3;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:#d3d3d3;fill-opacity:1;fill-rule:evenodd;stroke:#d3d3d3;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 149,88.0002 162.77027,87.9052 156,80.0002 Z"
id="path4681"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<rect
id="rect4683"
height="1.9999961"
width="11.999996"
y="77.000122"
x="54"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1" />
<rect
transform="matrix(0,1,-1,0,0,0)"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="77.000122"
y="-56"
width="12.99999"
height="1.9999957"
id="rect4685" />
<rect
id="rect4687"
height="1.9999957"
width="12.99999"
y="-66"
x="77.000122"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
transform="matrix(0,1,-1,0,0,0)" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="54"
y="81.000122"
width="11.999999"
height="0.99999291"
id="rect4689" />
<rect
id="rect4761-1"
height="1.9999945"
width="15.99999"
y="101"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-0"
height="1.9999945"
width="15.99999"
y="105"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-7"
height="1.9999945"
width="9"
y="109"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-1-1"
height="1.9999945"
width="12"
y="125"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-1-1-4"
height="1.9999945"
width="10"
y="137"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-1-1-4-4"
height="1.9999945"
width="10"
y="129"
x="82"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-1-1-4-4-3"
height="1.9999945"
width="9"
y="133"
x="82"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<path
inkscape:connector-curvature="0"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.8;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.66157866;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 36.398438,100.0254 c -0.423362,-0.013 -0.846847,0.01 -1.265626,0.062 -1.656562,0.2196 -3.244567,0.9739 -4.507812,2.2266 L 29,100.5991 l -2.324219,7.7129 7.826172,-1.9062 -1.804687,-1.9063 c 1.597702,-1.5308 4.048706,-1.8453 5.984375,-0.7207 1.971162,1.1452 2.881954,3.3975 2.308593,5.5508 -0.573361,2.1533 -2.533865,3.6953 -4.830078,3.6953 l 0,3.0742 c 3.550756,0 6.710442,-2.4113 7.650391,-5.9414 0.939949,-3.5301 -0.618463,-7.2736 -3.710938,-9.0703 -1.159678,-0.6738 -2.431087,-1.0231 -3.701171,-1.0625 z"
id="path4138" />
<path
inkscape:connector-curvature="0"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.8;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.66157866;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 59.722656,99.9629 c -1.270084,0.039 -2.541493,0.3887 -3.701172,1.0625 -3.092475,1.7967 -4.650886,5.5402 -3.710937,9.0703 0.939949,3.5301 4.09768,5.9414 7.648437,5.9414 l 0,-3.0742 c -2.296214,0 -4.256717,-1.542 -4.830078,-3.6953 -0.573361,-2.1533 0.337432,-4.4056 2.308594,-5.5508 1.935731,-1.1246 4.38863,-0.8102 5.986326,0.7207 l -1.806638,1.9063 7.828128,1.9062 -2.32422,-7.7129 -1.62696,1.7168 c -1.26338,-1.2531 -2.848917,-2.0088 -4.505855,-2.2285 -0.418778,-0.055 -0.842263,-0.076 -1.265625,-0.062 z"
id="path4138-1" />
<path
inkscape:connector-curvature="0"
style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.96599996;stroke-miterlimit:4;stroke-dasharray:none"
d="m 10.5,100 0,2 -2.4999996,0 L 12,107 l 4,-5 -2.5,0 0,-2 -3,0 z"
id="path3055-0-77" />
<path
style="opacity:0.8;fill:none;stroke:#ffffff;stroke-width:1.96599996;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 4.9850574,108.015 14.0298856,-0.03"
id="path5244-5-0-5"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="opacity:0.8;fill:none;stroke:#ffffff;stroke-width:1.96599996;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 4.9849874,132.015 14.0298866,-0.03"
id="path5244-5-0-5-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.4;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.66157866;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 36.398438,123.9629 c -0.423362,-0.013 -0.846847,0.01 -1.265626,0.062 -1.656562,0.2196 -3.244567,0.9739 -4.507812,2.2266 L 29,124.5366 l -2.324219,7.7129 7.826172,-1.9062 -1.804687,-1.9063 c 1.597702,-1.5308 4.048706,-1.8453 5.984375,-0.7207 1.971162,1.1453 2.881954,3.3975 2.308593,5.5508 -0.573361,2.1533 -2.533864,3.6953 -4.830078,3.6953 l 0,3.0742 c 3.550757,0 6.710442,-2.4093 7.650391,-5.9394 0.939949,-3.5301 -0.618463,-7.2756 -3.710938,-9.0723 -1.159678,-0.6737 -2.431087,-1.0231 -3.701171,-1.0625 z"
id="path4138-12" />
<path
inkscape:connector-curvature="0"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.4;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.66157866;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 59.722656,123.9629 c -1.270084,0.039 -2.541493,0.3888 -3.701172,1.0625 -3.092475,1.7967 -4.650886,5.5422 -3.710937,9.0723 0.939949,3.5301 4.09768,5.9394 7.648437,5.9394 l 0,-3.0742 c -2.296214,0 -4.256717,-1.542 -4.830078,-3.6953 -0.573361,-2.1533 0.337432,-4.4055 2.308594,-5.5508 1.935731,-1.1246 4.38863,-0.8102 5.986326,0.7207 l -1.806638,1.9063 7.828128,1.9062 -2.32422,-7.7129 -1.62696,1.7168 c -1.26338,-1.2531 -2.848917,-2.0088 -4.505855,-2.2285 -0.418778,-0.055 -0.842263,-0.076 -1.265625,-0.062 z"
id="path4138-1-3" />
<path
id="path6191"
d="m 10.5,116 0,-2 -2.4999996,0 L 12,109 l 4,5 -2.5,0 0,2 -3,0 z"
style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.96599996;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0" />
<path
inkscape:connector-curvature="0"
style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.96599996;stroke-miterlimit:4;stroke-dasharray:none"
d="m 10.5,129 0,-2 -2.4999996,0 L 12,122 l 4,5 -2.5,0 0,2 -3,0 z"
id="path6193" />
<path
id="path6195"
d="m 10.5,135 0,2 -2.4999996,0 L 12,142 l 4,-5 -2.5,0 0,-2 -3,0 z"
style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.96599996;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0" />
<path
sodipodi:type="star"
style="fill:#4d4d4d;fill-opacity:0.90196078;stroke:#d3d3d3;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="path4500"
sodipodi:sides="3"
sodipodi:cx="11.55581"
sodipodi:cy="60.073242"
sodipodi:r1="5.1116104"
sodipodi:r2="2.5558052"
sodipodi:arg1="0"
sodipodi:arg2="1.0471976"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 16.66742,60.073242 -3.833708,2.213392 -3.8337072,2.213393 0,-4.426785 0,-4.426784 3.8337082,2.213392 z"
inkscape:transform-center-x="-1.2779026" />
<path
inkscape:transform-center-x="1.277902"
d="m -31.500004,60.073242 -3.833708,2.213392 -3.833707,2.213393 0,-4.426785 0,-4.426784 3.833707,2.213392 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="false"
sodipodi:arg2="1.0471976"
sodipodi:arg1="0"
sodipodi:r2="2.5558052"
sodipodi:r1="5.1116104"
sodipodi:cy="60.073242"
sodipodi:cx="-36.611614"
sodipodi:sides="3"
id="path4502"
style="fill:#4d4d4d;fill-opacity:0.90196078;stroke:#d3d3d3;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
sodipodi:type="star"
transform="scale(-1,1)" />
<path
d="m 16.66742,60.073212 -3.833708,2.213392 -3.8337072,2.213392 0,-4.426784 0,-4.426785 3.8337082,2.213392 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="false"
sodipodi:arg2="1.0471976"
sodipodi:arg1="0"
sodipodi:r2="2.5558052"
sodipodi:r1="5.1116104"
sodipodi:cy="60.073212"
sodipodi:cx="11.55581"
sodipodi:sides="3"
id="path4504"
style="fill:#4d4d4d;fill-opacity:0.90196078;stroke:#d3d3d3;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
sodipodi:type="star"
transform="matrix(0,1,-1,0,72.0074,71.7877)"
inkscape:transform-center-y="1.2779029" />
<path
inkscape:transform-center-y="-1.2779026"
transform="matrix(0,-1,-1,0,96,96)"
sodipodi:type="star"
style="fill:#4d4d4d;fill-opacity:0.90196078;stroke:#d3d3d3;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="path4506"
sodipodi:sides="3"
sodipodi:cx="11.55581"
sodipodi:cy="60.073212"
sodipodi:r1="5.1116104"
sodipodi:r2="2.5558052"
sodipodi:arg1="0"
sodipodi:arg2="1.0471976"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 16.66742,60.073212 -3.833708,2.213392 -3.8337072,2.213392 0,-4.426784 0,-4.426785 3.8337082,2.213392 z" />
<path
sodipodi:nodetypes="cccc"
inkscape:connector-curvature="0"
id="path4615-5"
d="m 171.82574,65.174193 16.34854,0 -8.17427,-13.348454 z"
style="fill:#fbb917;fill-opacity:1;fill-rule:evenodd;stroke:#fbb917;stroke-width:1.65161395;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 179,55 0,6 2,0 0,-6"
id="path4300"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 179,62 0,2 2,0 0,-2"
id="path4300-6"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="fill:#ffffff;fill-opacity:0.8;fill-rule:evenodd;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:0.8"
d="M 99.994369,113.0221 102,114.98353 l 7,-6.9558 3,0.97227 2,-1 1,-2 0,-3 -3,3 -3,-3 3,-3 -3,0 -2,1 -1,2 0.99437,3.0221 z"
id="path4268"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccccccccccc" />
<rect
id="rect4175-3-5"
height="16"
width="16"
y="4"
x="220"
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0" />
<path
style="fill:#ffffff;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 234,6 0,2 -5,5 0,5 -2,0 0,-5 -5,-5 0,-2"
id="path3546"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<g
transform="matrix(1.3333328,0,0,-1.5999992,-139.9999,127.19999)"
id="g4383-6">
<rect
id="rect4385-2"
height="1.2499905"
width="5.9999924"
y="12.625005"
x="198.00002"
style="fill:#ffffff;fill-opacity:0.8;stroke:#000000;stroke-width:0" />
<rect
style="fill:#ffffff;fill-opacity:0.8;stroke:#000000;stroke-width:0"
x="198.00002"
y="15.125007"
width="7.4999928"
height="1.2499949"
id="rect4387-9" />
<rect
style="fill:#ffffff;fill-opacity:0.8;stroke:#000000;stroke-width:0"
x="198.00002"
y="7.6250024"
width="2.9999909"
height="1.2499905"
id="rect4389-1-0" />
<rect
style="fill:#ffffff;fill-opacity:0.8;stroke:#000000;stroke-width:0"
x="198.00002"
y="10.125004"
width="4.4999919"
height="1.2499905"
id="rect4389-1-9" />
<path
style="fill:#ffffff;fill-opacity:0.8;fill-rule:evenodd;stroke:none;stroke-width:0.68465352px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 207.00001,16.375004 0,-5.625005 -2.25,0 3,-3.1250014 3,3.1250014 -2.25,0 0,5.625005 -1.5,0"
id="path4402"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
</g>
<path
style="fill:#ffffff;fill-opacity:0.8;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 164,100 0,3 -6,6 0,7 -4,0 0,-7 -6,-6 0,-3"
id="path3546-2-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0"
id="svg_1-3"
height="16"
width="16"
y="28"
x="4" />
<path
sodipodi:nodetypes="ccccccccc"
inkscape:connector-curvature="0"
id="path4402-5-7"
d="m 15,41 0,-7 -4,0 0,3 -5,-4 5,-4 0,3 6,0 0,9"
style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.68465352px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</svg>

+ 52682
- 0
unpacked/panel/vendor/assets/javascripts/jsoneditor.js
File diff suppressed because it is too large
View File


+ 749
- 0
unpacked/panel/vendor/assets/stylesheets/img/jsoneditor-icons.svg View File

@ -0,0 +1,749 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="240"
height="144"
id="svg4136"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="jsoneditor-icons.svg">
<title
id="title6512">JSON Editor Icons</title>
<metadata
id="metadata4148">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>JSON Editor Icons</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs4146" />
<sodipodi:namedview
pagecolor="#ff63ff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1026"
id="namedview4144"
showgrid="true"
inkscape:zoom="4"
inkscape:cx="13.229181"
inkscape:cy="119.82429"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg4136"
showguides="false"
borderlayer="false"
inkscape:showpageshadow="true"
showborder="true">
<inkscape:grid
type="xygrid"
id="grid4640"
empspacing="24" />
</sodipodi:namedview>
<!-- Created with SVG-edit - http://svg-edit.googlecode.com/ -->
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0"
id="svg_1"
height="16"
width="16"
y="4"
x="4" />
<rect
id="svg_1-7"
height="16"
width="16"
y="3.999995"
x="28.000006"
style="fill:#ec3f29;fill-opacity:0.94117647;stroke:none;stroke-width:0" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0"
x="52.000004"
y="3.999995"
width="16"
height="16"
id="rect4165" />
<rect
id="rect4175"
height="16"
width="16"
y="3.9999852"
x="172.00002"
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0" />
<rect
id="rect4175-3"
height="16"
width="16"
y="3.999995"
x="196"
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0" />
<g
id="g4299"
style="stroke:none">
<rect
x="7.0000048"
y="10.999998"
width="9.9999924"
height="1.9999986"
id="svg_1-1"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0" />
<rect
x="11.000005"
y="7.0000114"
width="1.9999955"
height="9.9999838"
id="svg_1-1-1"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0" />
</g>
<g
id="g4299-3"
transform="matrix(0.70710678,-0.70710678,0.70710678,0.70710678,19.029435,12.000001)"
style="stroke:none">
<rect
x="7.0000048"
y="10.999998"
width="9.9999924"
height="1.9999986"
id="svg_1-1-0"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0" />
<rect
x="11.000005"
y="7.0000114"
width="1.9999955"
height="9.9999838"
id="svg_1-1-1-9"
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0" />
</g>
<rect
id="svg_1-7-5"
height="6.9999905"
width="6.9999909"
y="7.0000048"
x="55.000004"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#4c4c4c;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
x="58"
y="10.00001"
width="6.9999909"
height="6.9999905"
id="rect4354" />
<rect
id="svg_1-7-5-7"
height="6.9999905"
width="6.9999909"
y="10.000005"
x="58.000004"
style="fill:#ffffff;fill-opacity:1;stroke:#3c80df;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.94117647" />
<g
id="g4378">
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0"
x="198"
y="10.999999"
width="7.9999909"
height="1.9999965"
id="svg_1-7-5-3" />
<rect
id="rect4374"
height="1.9999946"
width="11.999995"
y="7.0000005"
x="198"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0" />
<rect
id="rect4376"
height="1.9999995"
width="3.9999928"
y="14.999996"
x="198"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0" />
</g>
<g
transform="matrix(1,0,0,-1,-23.999995,23.999995)"
id="g4383">
<rect
id="rect4385"
height="1.9999965"
width="7.9999909"
y="10.999999"
x="198"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0"
x="198"
y="7.0000005"
width="11.999995"
height="1.9999946"
id="rect4387" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0"
x="198"
y="14.999996"
width="3.9999928"
height="1.9999995"
id="rect4389" />
</g>
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
id="rect3754-4"
width="16"
height="16"
x="76"
y="3.9999199" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:0.2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 85.10447,6.0157384 -0.0156,1.4063 c 3.02669,-0.2402 0.33008,3.6507996 2.48438,4.5780996 -2.18694,1.0938 0.49191,4.9069 -2.45313,4.5781 l -0.0156,1.4219 c 5.70828,0.559 1.03264,-5.1005 4.70313,-5.2656 l 0,-1.4063 c -3.61303,-0.027 1.11893,-5.7069996 -4.70313,-5.3124996 z"
id="path4351"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:0.2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 82.78125,5.9984384 0.0156,1.4063 c -3.02668,-0.2402 -0.33007,3.6506996 -2.48437,4.5780996 2.18694,1.0938 -0.49192,4.9069 2.45312,4.5781 l 0.0156,1.4219 c -5.70827,0.559 -1.03263,-5.1004 -4.70312,-5.2656 l 0,-1.4063 c 3.61303,-0.027 -1.11894,-5.7070996 4.70312,-5.3124996 z"
id="path4351-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
id="rect3754-25"
width="16"
height="16"
x="100"
y="3.9999199" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 103.719,5.6719384 0,12.7187996 3.03125,0 0,-1.5313 -1.34375,0 0,-9.6249996 1.375,0 0,-1.5625 z"
id="path2987"
inkscape:connector-curvature="0" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 112.2185,5.6721984 0,12.7187996 -3.03125,0 0,-1.5313 1.34375,0 0,-9.6249996 -1.375,0 0,-1.5625 z"
id="path2987-1"
inkscape:connector-curvature="0" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
id="rect3754-73"
width="16"
height="16"
x="124"
y="3.9999199" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 126.2824,17.602938 1.78957,0 1.14143,-2.8641 5.65364,0 1.14856,2.8641 1.76565,0 -4.78687,-11.1610996 -1.91903,0 z"
id="path3780"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccccc" />
<path
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
d="m 129.72704,13.478838 4.60852,0.01 -2.30426,-5.5497996 z"
id="path3782"
inkscape:connector-curvature="0" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none"
id="rect3754-35"
width="16"
height="16"
x="148"
y="3.9999199" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 156.47655,5.8917384 0,2.1797 0.46093,2.3983996 1.82813,0 0.39844,-2.3983996 0,-2.1797 z"
id="path5008-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccc" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 152.51561,5.8906384 0,2.1797 0.46094,2.3983996 1.82812,0 0.39844,-2.3983996 0,-2.1797 z"
id="path5008-2-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccc" />
<rect
id="svg_1-7-2"
height="1.9999961"
width="11.999996"
y="64"
x="54"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
id="svg_1-7-2-2"
height="2.9999905"
width="2.9999907"
y="52"
x="80.000008"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="85.000008"
y="52"
width="2.9999907"
height="2.9999905"
id="rect4561" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="80.000008"
y="58"
width="2.9999907"
height="2.9999905"
id="rect4563" />
<rect
id="rect4565"
height="2.9999905"
width="2.9999907"
y="58"
x="85.000008"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
id="rect4567"
height="2.9999905"
width="2.9999907"
y="64"
x="80.000008"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="85.000008"
y="64"
width="2.9999907"
height="2.9999905"
id="rect4569" />
<circle
style="opacity:1;fill:none;fill-opacity:1;stroke:#4c4c4c;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="path4571"
cx="110.06081"
cy="57.939209"
r="4.7438836" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="116.64566"
y="-31.79752"
width="4.229713"
height="6.4053884"
id="rect4563-2"
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)" />
<path
style="fill:#4c4c4c;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 125,56 138.77027,56.095 132,64 Z"
id="path4613"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
sodipodi:nodetypes="cccc"
inkscape:connector-curvature="0"
id="path4615"
d="M 149,64 162.77027,63.905 156,56 Z"
style="fill:#4c4c4c;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<rect
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="54"
y="53"
width="11.999996"
height="1.9999961"
id="rect4638" />
<rect
id="svg_1-7-2-24"
height="1.9999957"
width="12.99999"
y="-56"
x="53"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
transform="matrix(0,1,-1,0,0,0)" />
<rect
transform="matrix(0,1,-1,0,0,0)"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0"
x="53"
y="-66"
width="12.99999"
height="1.9999957"
id="rect4657" />
<rect
id="rect4659"
height="0.99999291"
width="11.999999"
y="57"
x="54"
style="fill:#4c4c4c;fill-opacity:0.98431373;stroke:none;stroke-width:0" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="54"
y="88.000122"
width="11.999996"
height="1.9999961"
id="rect4661" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="80.000008"
y="76.000122"
width="2.9999907"
height="2.9999905"
id="rect4663" />
<rect
id="rect4665"
height="2.9999905"
width="2.9999907"
y="76.000122"
x="85.000008"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1" />
<rect
id="rect4667"
height="2.9999905"
width="2.9999907"
y="82.000122"
x="80.000008"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="85.000008"
y="82.000122"
width="2.9999907"
height="2.9999905"
id="rect4669" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="80.000008"
y="88.000122"
width="2.9999907"
height="2.9999905"
id="rect4671" />
<rect
id="rect4673"
height="2.9999905"
width="2.9999907"
y="88.000122"
x="85.000008"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1" />
<circle
r="4.7438836"
cy="81.939331"
cx="110.06081"
id="circle4675"
style="opacity:1;fill:none;fill-opacity:1;stroke:#d3d3d3;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<rect
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)"
id="rect4677"
height="6.4053884"
width="4.229713"
y="-14.826816"
x="133.6163"
style="fill:#d3d3d3;fill-opacity:1;stroke:#d3d3d3;stroke-width:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccc"
inkscape:connector-curvature="0"
id="path4679"
d="m 125,80.000005 13.77027,0.09499 L 132,87.999992 Z"
style="fill:#d3d3d3;fill-opacity:1;fill-rule:evenodd;stroke:#d3d3d3;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="fill:#d3d3d3;fill-opacity:1;fill-rule:evenodd;stroke:#d3d3d3;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 149,88.0002 162.77027,87.9052 156,80.0002 Z"
id="path4681"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<rect
id="rect4683"
height="1.9999961"
width="11.999996"
y="77.000122"
x="54"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1" />
<rect
transform="matrix(0,1,-1,0,0,0)"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="77.000122"
y="-56"
width="12.99999"
height="1.9999957"
id="rect4685" />
<rect
id="rect4687"
height="1.9999957"
width="12.99999"
y="-66"
x="77.000122"
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
transform="matrix(0,1,-1,0,0,0)" />
<rect
style="fill:#d3d3d3;fill-opacity:1;stroke:none;stroke-width:0;stroke-opacity:1"
x="54"
y="81.000122"
width="11.999999"
height="0.99999291"
id="rect4689" />
<rect
id="rect4761-1"
height="1.9999945"
width="15.99999"
y="101"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-0"
height="1.9999945"
width="15.99999"
y="105"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-7"
height="1.9999945"
width="9"
y="109"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-1-1"
height="1.9999945"
width="12"
y="125"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-1-1-4"
height="1.9999945"
width="10"
y="137"
x="76.000008"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-1-1-4-4"
height="1.9999945"
width="10"
y="129"
x="82"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<rect
id="rect4761-1-1-4-4-3"
height="1.9999945"
width="9"
y="133"
x="82"
style="fill:#ffffff;fill-opacity:0.8;stroke:none;stroke-width:0" />
<path
inkscape:connector-curvature="0"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.8;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.66157866;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 36.398438,100.0254 c -0.423362,-0.013 -0.846847,0.01 -1.265626,0.062 -1.656562,0.2196 -3.244567,0.9739 -4.507812,2.2266 L 29,100.5991 l -2.324219,7.7129 7.826172,-1.9062 -1.804687,-1.9063 c 1.597702,-1.5308 4.048706,-1.8453 5.984375,-0.7207 1.971162,1.1452 2.881954,3.3975 2.308593,5.5508 -0.573361,2.1533 -2.533865,3.6953 -4.830078,3.6953 l 0,3.0742 c 3.550756,0 6.710442,-2.4113 7.650391,-5.9414 0.939949,-3.5301 -0.618463,-7.2736 -3.710938,-9.0703 -1.159678,-0.6738 -2.431087,-1.0231 -3.701171,-1.0625 z"
id="path4138" />
<path
inkscape:connector-curvature="0"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.8;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.66157866;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 59.722656,99.9629 c -1.270084,0.039 -2.541493,0.3887 -3.701172,1.0625 -3.092475,1.7967 -4.650886,5.5402 -3.710937,9.0703 0.939949,3.5301 4.09768,5.9414 7.648437,5.9414 l 0,-3.0742 c -2.296214,0 -4.256717,-1.542 -4.830078,-3.6953 -0.573361,-2.1533 0.337432,-4.4056 2.308594,-5.5508 1.935731,-1.1246 4.38863,-0.8102 5.986326,0.7207 l -1.806638,1.9063 7.828128,1.9062 -2.32422,-7.7129 -1.62696,1.7168 c -1.26338,-1.2531 -2.848917,-2.0088 -4.505855,-2.2285 -0.418778,-0.055 -0.842263,-0.076 -1.265625,-0.062 z"
id="path4138-1" />
<path
inkscape:connector-curvature="0"
style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.96599996;stroke-miterlimit:4;stroke-dasharray:none"
d="m 10.5,100 0,2 -2.4999996,0 L 12,107 l 4,-5 -2.5,0 0,-2 -3,0 z"
id="path3055-0-77" />
<path
style="opacity:0.8;fill:none;stroke:#ffffff;stroke-width:1.96599996;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 4.9850574,108.015 14.0298856,-0.03"
id="path5244-5-0-5"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="opacity:0.8;fill:none;stroke:#ffffff;stroke-width:1.96599996;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 4.9849874,132.015 14.0298866,-0.03"
id="path5244-5-0-5-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.4;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.66157866;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 36.398438,123.9629 c -0.423362,-0.013 -0.846847,0.01 -1.265626,0.062 -1.656562,0.2196 -3.244567,0.9739 -4.507812,2.2266 L 29,124.5366 l -2.324219,7.7129 7.826172,-1.9062 -1.804687,-1.9063 c 1.597702,-1.5308 4.048706,-1.8453 5.984375,-0.7207 1.971162,1.1453 2.881954,3.3975 2.308593,5.5508 -0.573361,2.1533 -2.533864,3.6953 -4.830078,3.6953 l 0,3.0742 c 3.550757,0 6.710442,-2.4093 7.650391,-5.9394 0.939949,-3.5301 -0.618463,-7.2756 -3.710938,-9.0723 -1.159678,-0.6737 -2.431087,-1.0231 -3.701171,-1.0625 z"
id="path4138-12" />
<path
inkscape:connector-curvature="0"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.4;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.66157866;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 59.722656,123.9629 c -1.270084,0.039 -2.541493,0.3888 -3.701172,1.0625 -3.092475,1.7967 -4.650886,5.5422 -3.710937,9.0723 0.939949,3.5301 4.09768,5.9394 7.648437,5.9394 l 0,-3.0742 c -2.296214,0 -4.256717,-1.542 -4.830078,-3.6953 -0.573361,-2.1533 0.337432,-4.4055 2.308594,-5.5508 1.935731,-1.1246 4.38863,-0.8102 5.986326,0.7207 l -1.806638,1.9063 7.828128,1.9062 -2.32422,-7.7129 -1.62696,1.7168 c -1.26338,-1.2531 -2.848917,-2.0088 -4.505855,-2.2285 -0.418778,-0.055 -0.842263,-0.076 -1.265625,-0.062 z"
id="path4138-1-3" />
<path
id="path6191"
d="m 10.5,116 0,-2 -2.4999996,0 L 12,109 l 4,5 -2.5,0 0,2 -3,0 z"
style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.96599996;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0" />
<path
inkscape:connector-curvature="0"
style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.96599996;stroke-miterlimit:4;stroke-dasharray:none"
d="m 10.5,129 0,-2 -2.4999996,0 L 12,122 l 4,5 -2.5,0 0,2 -3,0 z"
id="path6193" />
<path
id="path6195"
d="m 10.5,135 0,2 -2.4999996,0 L 12,142 l 4,-5 -2.5,0 0,-2 -3,0 z"
style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.96599996;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0" />
<path
sodipodi:type="star"
style="fill:#4d4d4d;fill-opacity:0.90196078;stroke:#d3d3d3;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="path4500"
sodipodi:sides="3"
sodipodi:cx="11.55581"
sodipodi:cy="60.073242"
sodipodi:r1="5.1116104"
sodipodi:r2="2.5558052"
sodipodi:arg1="0"
sodipodi:arg2="1.0471976"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 16.66742,60.073242 -3.833708,2.213392 -3.8337072,2.213393 0,-4.426785 0,-4.426784 3.8337082,2.213392 z"
inkscape:transform-center-x="-1.2779026" />
<path
inkscape:transform-center-x="1.277902"
d="m -31.500004,60.073242 -3.833708,2.213392 -3.833707,2.213393 0,-4.426785 0,-4.426784 3.833707,2.213392 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="false"
sodipodi:arg2="1.0471976"
sodipodi:arg1="0"
sodipodi:r2="2.5558052"
sodipodi:r1="5.1116104"
sodipodi:cy="60.073242"
sodipodi:cx="-36.611614"
sodipodi:sides="3"
id="path4502"
style="fill:#4d4d4d;fill-opacity:0.90196078;stroke:#d3d3d3;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
sodipodi:type="star"
transform="scale(-1,1)" />
<path
d="m 16.66742,60.073212 -3.833708,2.213392 -3.8337072,2.213392 0,-4.426784 0,-4.426785 3.8337082,2.213392 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="false"
sodipodi:arg2="1.0471976"
sodipodi:arg1="0"
sodipodi:r2="2.5558052"
sodipodi:r1="5.1116104"
sodipodi:cy="60.073212"
sodipodi:cx="11.55581"
sodipodi:sides="3"
id="path4504"
style="fill:#4d4d4d;fill-opacity:0.90196078;stroke:#d3d3d3;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
sodipodi:type="star"
transform="matrix(0,1,-1,0,72.0074,71.7877)"
inkscape:transform-center-y="1.2779029" />
<path
inkscape:transform-center-y="-1.2779026"
transform="matrix(0,-1,-1,0,96,96)"
sodipodi:type="star"
style="fill:#4d4d4d;fill-opacity:0.90196078;stroke:#d3d3d3;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="path4506"
sodipodi:sides="3"
sodipodi:cx="11.55581"
sodipodi:cy="60.073212"
sodipodi:r1="5.1116104"
sodipodi:r2="2.5558052"
sodipodi:arg1="0"
sodipodi:arg2="1.0471976"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 16.66742,60.073212 -3.833708,2.213392 -3.8337072,2.213392 0,-4.426784 0,-4.426785 3.8337082,2.213392 z" />
<path
sodipodi:nodetypes="cccc"
inkscape:connector-curvature="0"
id="path4615-5"
d="m 171.82574,65.174193 16.34854,0 -8.17427,-13.348454 z"
style="fill:#fbb917;fill-opacity:1;fill-rule:evenodd;stroke:#fbb917;stroke-width:1.65161395;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 179,55 0,6 2,0 0,-6"
id="path4300"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 179,62 0,2 2,0 0,-2"
id="path4300-6"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="fill:#ffffff;fill-opacity:0.8;fill-rule:evenodd;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:0.8"
d="M 99.994369,113.0221 102,114.98353 l 7,-6.9558 3,0.97227 2,-1 1,-2 0,-3 -3,3 -3,-3 3,-3 -3,0 -2,1 -1,2 0.99437,3.0221 z"
id="path4268"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccccccccccc" />
<rect
id="rect4175-3-5"
height="16"
width="16"
y="4"
x="220"
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0" />
<path
style="fill:#ffffff;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 234,6 0,2 -5,5 0,5 -2,0 0,-5 -5,-5 0,-2"
id="path3546"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<g
transform="matrix(1.3333328,0,0,-1.5999992,-139.9999,127.19999)"
id="g4383-6">
<rect
id="rect4385-2"
height="1.2499905"
width="5.9999924"
y="12.625005"
x="198.00002"
style="fill:#ffffff;fill-opacity:0.8;stroke:#000000;stroke-width:0" />
<rect
style="fill:#ffffff;fill-opacity:0.8;stroke:#000000;stroke-width:0"
x="198.00002"
y="15.125007"
width="7.4999928"
height="1.2499949"
id="rect4387-9" />
<rect
style="fill:#ffffff;fill-opacity:0.8;stroke:#000000;stroke-width:0"
x="198.00002"
y="7.6250024"
width="2.9999909"
height="1.2499905"
id="rect4389-1-0" />
<rect
style="fill:#ffffff;fill-opacity:0.8;stroke:#000000;stroke-width:0"
x="198.00002"
y="10.125004"
width="4.4999919"
height="1.2499905"
id="rect4389-1-9" />
<path
style="fill:#ffffff;fill-opacity:0.8;fill-rule:evenodd;stroke:none;stroke-width:0.68465352px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 207.00001,16.375004 0,-5.625005 -2.25,0 3,-3.1250014 3,3.1250014 -2.25,0 0,5.625005 -1.5,0"
id="path4402"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
</g>
<path
style="fill:#ffffff;fill-opacity:0.8;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 164,100 0,3 -6,6 0,7 -4,0 0,-7 -6,-6 0,-3"
id="path3546-2-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<rect
style="fill:#4c4c4c;fill-opacity:1;stroke:none;stroke-width:0"
id="svg_1-3"
height="16"
width="16"
y="28"
x="4" />
<path
sodipodi:nodetypes="ccccccccc"
inkscape:connector-curvature="0"
id="path4402-5-7"
d="m 15,41 0,-7 -4,0 0,3 -5,-4 5,-4 0,3 6,0 0,9"
style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.68465352px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</svg>

+ 2004
- 0
unpacked/panel/vendor/assets/stylesheets/jsoneditor.css
File diff suppressed because it is too large
View File


Loading…
Cancel
Save