From b123f54b3c7328537510ed085b65a18bdae5bd51 Mon Sep 17 00:00:00 2001 From: Krzysztof Chrapka Date: Sun, 10 Apr 2016 12:06:26 +0200 Subject: [PATCH 1/3] Use spread operator instead of apply when supported Closes #181 --- lib/es5Apply.js | 45 ++++++++++ lib/es6Apply.js | 28 ++++++ lib/instantiate.js | 54 +++++------- lib/invoker.js | 8 +- lib/plugin/basePlugin.js | 6 +- lib/universalApply.js | 45 ++++++++++ test/buster.js | 38 ++++++++- test/node-es6/lib/plugin/basePlugin-test.js | 95 +++++++++++++++++++++ 8 files changed, 277 insertions(+), 42 deletions(-) create mode 100644 lib/es5Apply.js create mode 100644 lib/es6Apply.js create mode 100644 lib/universalApply.js create mode 100644 test/node-es6/lib/plugin/basePlugin-test.js diff --git a/lib/es5Apply.js b/lib/es5Apply.js new file mode 100644 index 0000000..bef234f --- /dev/null +++ b/lib/es5Apply.js @@ -0,0 +1,45 @@ +(function(define) { +'use strict'; +define(function() { + /** + * Carefully sets the instance's constructor property to the supplied + * constructor, using Object.defineProperty if available. If it can't + * set the constructor in a safe way, it will do nothing. + * + * @param instance {Object} component instance + * @param ctor {Function} constructor + */ + function defineConstructorIfPossible(instance, ctor) { + try { + Object.defineProperty(instance, 'constructor', { + value: ctor, + enumerable: false + }); + } catch(e) { + // If we can't define a constructor, oh well. + // This can happen if in envs where Object.defineProperty is not + // available, or when using cujojs/poly or other ES5 shims + } + } + + return function(func, thisObj, args) { + var result = null; + + if(thisObj && typeof thisObj[func] === 'function') { + func = thisObj[func]; + } + + // detect case when apply is called on constructor and fix prototype chain + if (thisObj === func) { + thisObj = Object.create(func.prototype); + defineConstructorIfPossible(thisObj, func); + func.apply(thisObj, args); + result = thisObj; + } else { + result = func.apply(thisObj, args); + } + + return result; + }; +}); +})(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }); diff --git a/lib/es6Apply.js b/lib/es6Apply.js new file mode 100644 index 0000000..41ab28f --- /dev/null +++ b/lib/es6Apply.js @@ -0,0 +1,28 @@ +/* jshint esversion: 6 */ +(function(define) { +'use strict'; +define(function() { + return function(func, thisObj, args) { + var result = null; + + if(thisObj === func || (thisObj && thisObj.constructor === func)) { + /* jshint newcap: false */ + result = new func(...(args||[])); + + // detect broken old prototypes with missing constructor + if (result.constructor !== func) { + Object.defineProperty(result, 'constructor', { + enumerable: false, + value: func + }); + } + } else if(thisObj && typeof thisObj[func] === 'function') { + result = thisObj[func](...args); + } else { + result = func.apply(thisObj, args); + } + + return result; + }; +}); +})(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }); diff --git a/lib/instantiate.js b/lib/instantiate.js index fd6f114..3febf22 100644 --- a/lib/instantiate.js +++ b/lib/instantiate.js @@ -6,9 +6,11 @@ */ (function(define){ 'use strict'; -define(function() { +define(function(require) { - var undef; + var undef, universalApply; + + universalApply = require('./universalApply'); /** * Creates an object by either invoking ctor as a function and returning the result, @@ -26,42 +28,19 @@ define(function() { var begotten, ctorResult; if (forceConstructor || (forceConstructor === undef && isConstructor(ctor))) { - begotten = Object.create(ctor.prototype); - defineConstructorIfPossible(begotten, ctor); - ctorResult = ctor.apply(begotten, args); + begotten = ctor; + ctorResult = universalApply(ctor, begotten, args); + if(ctorResult !== undef) { begotten = ctorResult; } - } else { - begotten = ctor.apply(undef, args); - + begotten = universalApply(ctor, undef, args); } return begotten === undef ? null : begotten; }; - /** - * Carefully sets the instance's constructor property to the supplied - * constructor, using Object.defineProperty if available. If it can't - * set the constructor in a safe way, it will do nothing. - * - * @param instance {Object} component instance - * @param ctor {Function} constructor - */ - function defineConstructorIfPossible(instance, ctor) { - try { - Object.defineProperty(instance, 'constructor', { - value: ctor, - enumerable: false - }); - } catch(e) { - // If we can't define a constructor, oh well. - // This can happen if in envs where Object.defineProperty is not - // available, or when using cujojs/poly or other ES5 shims - } - } - /** * Determines whether the supplied function should be invoked directly or * should be invoked using new in order to create the object to be wired. @@ -72,10 +51,17 @@ define(function() { */ function isConstructor(func) { var is = false, p; - for (p in func.prototype) { - if (p !== undef) { - is = true; - break; + + // this has to work, according to spec: + // https://tc39.github.io/ecma262/#sec-function.prototype.tostring + is = is || func.toString().trim().substr(0,5) === 'class'; + + if(!is) { + for (p in func.prototype) { + if (p !== undef) { + is = true; + break; + } } } @@ -88,6 +74,6 @@ define(function() { ? define // CommonJS : function(factory) { - module.exports = factory(); + module.exports = factory(require); } ); diff --git a/lib/invoker.js b/lib/invoker.js index f32c61e..93fd6b3 100644 --- a/lib/invoker.js +++ b/lib/invoker.js @@ -1,11 +1,13 @@ (function(define) { -define(function() { +define(function(require) { + + var universalApply = require('./universalApply'); return function(methodName, args) { return function(target) { - return target[methodName].apply(target, args); + return universalApply(target[methodName], target, args); }; }; }); -})(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(); }); \ No newline at end of file +})(typeof define === 'function' && define.amd ? define : function(factory) { module.exports = factory(require); }); diff --git a/lib/plugin/basePlugin.js b/lib/plugin/basePlugin.js index 625e77b..2764ac7 100644 --- a/lib/plugin/basePlugin.js +++ b/lib/plugin/basePlugin.js @@ -14,7 +14,7 @@ define(function(require) { var when, object, functional, pipeline, instantiate, createInvoker, - whenAll, obj, pluginInstance, undef; + whenAll, obj, pluginInstance, undef, universalApply; when = require('when'); object = require('../object'); @@ -22,6 +22,7 @@ define(function(require) { pipeline = require('../pipeline'); instantiate = require('../instantiate'); createInvoker = require('../invoker'); + universalApply = require('../universalApply'); whenAll = when.all; @@ -194,7 +195,6 @@ define(function(require) { if (!proxy.clone) { throw new Error('No clone function found for ' + componentDef.id); } - return proxy.clone(options); }); }); @@ -249,7 +249,7 @@ define(function(require) { // We'll either use the module directly, or we need // to instantiate/invoke it. return constructorName - ? module[constructorName].apply(module, args) + ? universalApply(constructorName, module, args) : typeof module == 'function' ? instantiate(module, args, isConstructor) : Object.create(module); diff --git a/lib/universalApply.js b/lib/universalApply.js new file mode 100644 index 0000000..2ed81cc --- /dev/null +++ b/lib/universalApply.js @@ -0,0 +1,45 @@ +(function(){ + 'use strict'; + + (function(define){ + + function evaluates (statement) { + try { + /* jshint evil: true */ + eval(statement); + /* jshint evil: false */ + return true; + } catch (err) { + return false; + } + } + + // we have to know it synchronously, we are unable to load this module in asynchronous way + // we cannot defer `define` and we cannot load module, that would not compile in browser + // so we can't delegate this check to another module + function isSpreadAvailable() { + return evaluates('Math.max(...[ 5, 10 ])'); + } + + var requires = []; + if (typeof(process) !== 'undefined' && 'ES_VERSION' in process.env) { + requires.push('./es'+process.env.ES_VERSION+'Apply'); + } else { + if(isSpreadAvailable()) { + requires.push('./es6Apply'); + } else { + requires.push('./es5Apply'); + } + } + + define(requires, function(apply){ + return apply; + }); + })( + typeof define === 'function' + ? define + : function(requires, factory) { + module.exports = factory.apply(null, requires.map(require)); + } + ); +})(); diff --git a/test/buster.js b/test/buster.js index f27728b..5eeb20a 100644 --- a/test/buster.js +++ b/test/buster.js @@ -1,8 +1,42 @@ +'use strict'; + require('gent/test-adapter/buster'); +function evaluates (statement) { + try { + /* jshint evil: true */ + eval(statement); + /* jshint evil: false */ + return true; + } catch (err) { + return false; + } +} + +function isClassAvailable() { + return evaluates('class es6TestClass_ibyechBaloodren7 {}'); +} + +function isSpreadAvailable() { + return evaluates('parseInt(...["20", 10])'); +} + +var tests = ['node/**/*-test.js']; + +console.log('class operator %savailable', isClassAvailable() ? '' : 'not '); +console.log('spread operator %savailable', isSpreadAvailable() ? '' : 'not '); + +if( + isClassAvailable() + && isSpreadAvailable() + && !('ES_VERSION' in process.env && parseFloat(process.env.ES_VERSION) < 6) +) { + tests.push('node-es6/**/*-test.js'); +} + module.exports['node'] = { environment: 'node', - tests: ['node/**/*-test.js'] + tests: tests // TODO: Why doesn't this work? //, testHelpers:['gent/test-adapter/buster'] -}; \ No newline at end of file +}; diff --git a/test/node-es6/lib/plugin/basePlugin-test.js b/test/node-es6/lib/plugin/basePlugin-test.js new file mode 100644 index 0000000..b513266 --- /dev/null +++ b/test/node-es6/lib/plugin/basePlugin-test.js @@ -0,0 +1,95 @@ +/* jshint esversion: 6 */ +(function(buster, context) { +'use strict'; + +var assert, refute, fail, sentinel; + +assert = buster.assert; +refute = buster.refute; +fail = buster.fail; + +sentinel = {}; + +function createContext(spec) { + return context.call(null, spec, null, { require: require }); +} + +class es6Class +{ + constructor () { + this.constructorRan = true; + this.args = Array.prototype.slice.call(arguments); + } + + someMethod() { + + } +} + +buster.testCase('es6/lib/plugin/basePlugin', { + 'clone factory': { + 'should call constructor when cloning an object with an es6 constructor': function() { + class FabulousEs6 { + constructor () { + this.instanceProp = 'instanceProp'; + } + } + FabulousEs6.prototype.prototypeProp = 'prototypeProp'; + + return createContext({ + fab: { + create: FabulousEs6 + }, + copy: { + clone: { $ref: 'fab' } + } + }).then( + function(context) { + assert.defined(context.copy, 'copy is defined'); + assert.defined(context.copy.prototypeProp, 'copy.prototypeProp is defined'); + assert.defined(context.copy.instanceProp, 'copy.instanceProp is defined'); + refute.same(context.copy, context.fab); + }, + fail + ); + } + }, + + 'create factory': { + 'should call es6 constructor': function() { + return createContext({ + test: { + create: { + module: es6Class, + } + } + }).then( + function(context) { + assert(context.test.constructorRan); + }, + fail + ); + }, + + 'should call es6 constructor functions with args': function() { + return createContext({ + test: { + create: { + module: es6Class, + args: [1, 'foo', 1.7] + } + } + }).then( + function(context) { + assert(context.test instanceof es6Class); + assert.equals(context.test.args, [1, 'foo', 1.7]); + }, + fail + ); + }, + } +}); +})( + require('buster'), + require('../../../../lib/context') +); From 2eda937aec32b5c399030b7ca2ac9a3fc68c1077 Mon Sep 17 00:00:00 2001 From: Krzysztof Chrapka Date: Sun, 24 Apr 2016 01:09:48 +0200 Subject: [PATCH 2/3] Add support for buster test in browsers --- .gitignore | 1 + README.md | 1 + docs/testing.md | 28 +++++ package.json | 115 +++++++++--------- test/buster.js | 53 ++++++-- test/node-es6/conditional-load-generator.js | 39 ++++++ test/node-es6/lib/plugin/basePlugin-test.js | 6 +- test/node-es6/var/conditional-load.js | 34 ++++++ test/node/ComponentFactory-test.js | 2 + test/node/aop-test.js | 4 +- test/node/builder/cram-test.js | 9 +- test/node/circular-refs-test.js | 6 +- test/node/connect-test.js | 4 +- test/node/context-test.js | 4 +- test/node/debug-test.js | 14 ++- test/node/dom/transform/cardinality-test.js | 4 +- test/node/dom/transform/mapClasses-test.js | 4 +- test/node/dom/transform/mapTokenList-test.js | 4 +- .../node/dom/transform/replaceClasses-test.js | 4 +- test/node/dom/transform/toggleClasses-test.js | 4 +- test/node/fixtures/constructor.js | 4 +- test/node/fixtures/function.js | 6 +- test/node/fixtures/imports-test/assembly1.js | 6 +- test/node/fixtures/imports-test/assembly2.js | 6 +- test/node/fixtures/imports-test/assembly3.js | 6 +- test/node/fixtures/imports-test/assembly4.js | 6 +- .../circular-imports-assembly1.js | 6 +- .../circular-imports-assembly2-1.js | 6 +- .../circular-imports-assembly2-2.js | 6 +- .../circular-imports-assembly3-1.js | 6 +- .../circular-imports-assembly3-2.js | 6 +- .../circular-imports-assembly3-3.js | 6 +- test/node/fixtures/imports-test/module1.js | 6 +- test/node/fixtures/imports-test/module2.js | 6 +- test/node/fixtures/imports-test/module3.js | 6 +- test/node/fixtures/imports-test/module4.js | 6 +- .../imports-test/nested-imports-assembly1.js | 6 +- .../imports-test/nested-imports-assembly2.js | 6 +- .../imports-test/nested-imports-assembly3.js | 6 +- .../imports-test/nested-imports-assembly4.js | 6 +- test/node/fixtures/module.js | 6 +- test/node/fixtures/object.js | 4 +- test/node/fixtures/object2.js | 4 +- test/node/fixtures/relativeSpec.js | 6 +- test/node/invoker-test.js | 4 +- test/node/lib/ObjectProxy-test.js | 4 +- test/node/lib/WireProxy-test.js | 4 +- test/node/lib/advice-test.js | 4 +- test/node/lib/functional-test.js | 4 +- test/node/lib/graph/cyclesTracker-test.js | 4 +- test/node/lib/loader/moduleId-test.js | 9 +- test/node/lib/loader/relative-test.js | 18 ++- test/node/lib/object-test.js | 4 +- test/node/lib/plugin/basePlugin-test.js | 2 + test/node/lib/plugin/priority-test.js | 4 +- test/node/lib/plugin/registry-test.js | 4 +- test/node/lib/plugin/wirePlugin-test.js | 4 +- test/node/lib/resolver-test.js | 4 +- test/node/lifecycle-test.js | 6 +- test/node/plugin-test.js | 4 +- test/node/refs-test.js | 4 +- test/node/types-test.js | 4 +- test/node/version-test.js | 6 + test/requirejs-main.js | 10 ++ 64 files changed, 440 insertions(+), 145 deletions(-) create mode 100644 docs/testing.md create mode 100644 test/node-es6/conditional-load-generator.js create mode 100644 test/node-es6/var/conditional-load.js create mode 100644 test/requirejs-main.js diff --git a/.gitignore b/.gitignore index 768a294..97a9189 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ node_modules/ experiments/ .idea/ *~ +*.log bower_components/ diff --git a/README.md b/README.md index 3545600..14ee36b 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,7 @@ and check out a few [example applications](docs/introduction.md#example-apps). 1. [Getting Started](docs/get.md) 1. [Reference Documentation](docs/README.md) 1. [Example Code and Apps](docs/introduction.md#example-apps) +1. [Testing](docs/testing.md) 1. [Full Changelog](CHANGES.md) # License diff --git a/docs/testing.md b/docs/testing.md new file mode 100644 index 0000000..bd1bc40 --- /dev/null +++ b/docs/testing.md @@ -0,0 +1,28 @@ +# Testing wire.js + +Wire.js is using [buster](http://busterjs.org) for testing. You need to have [node.js](https://nodejs.org) installed to run tests of wire.js. + +## Testing in node.js: + +[Install wire.js](docs/get.md) and run in installation directory +``` +$ npm install +$ npm test +``` + +## Testing in browser + +[Install wire.js](docs/get.md) and run in installation directory + +``` +$ npm install +$ npm run-script start-test-server +``` + +Open http://localhost:1111 in your browser and click "Capture browser" button. Browser is now connected to test server +and will be used by it to run tests. + +Run in wire.js installation directory (without closing browser and test server) +``` +$ npm run-script browser-test +``` diff --git a/package.json b/package.json index 5db063b..a90a67a 100644 --- a/package.json +++ b/package.json @@ -1,57 +1,62 @@ { - "name": "wire", - "version": "0.10.11", - "description": "A light, fast, flexible Javascript IOC container.", - "keywords": [ - "ioc", - "aop", - "dependency injection", - "dependency inversion", - "application composition", - "cujo" - ], - "licenses": [ - { - "type": "MIT", - "url": "http://www.opensource.org/licenses/mit-license.php" - } - ], - "repository": { - "type": "git", - "url": "https://github.com/cujojs/wire" - }, - "bugs": "https://github.com/cujojs/wire/issues", - "maintainers": [ - { - "name": "Brian Cavalier", - "web": "http://hovercraftstudios.com" - } - ], - "contributors": [ - { - "name": "Brian Cavalier", - "web": "http://hovercraftstudios.com" - }, - { - "name": "John Hann", - "web": "http://unscriptable.com" - } - ], - "dependencies": { - "meld": "~1", - "when": ">=2.6.0 <4" - }, - "devDependencies": { - "buster": "~0.7", - "bower": "~1", - "gent": "~0.6" - }, - "main": "./wire", - "directories": { - "test": "test" - }, - "scripts": { - "test": "buster-test -e node", - "prepublish": "bower install" - } + "name": "wire", + "version": "0.10.11", + "description": "A light, fast, flexible Javascript IOC container.", + "keywords": [ + "ioc", + "aop", + "dependency injection", + "dependency inversion", + "application composition", + "cujo" + ], + "licenses": [ + { + "type": "MIT", + "url": "http://www.opensource.org/licenses/mit-license.php" + } + ], + "repository": { + "type": "git", + "url": "https://github.com/cujojs/wire" + }, + "bugs": "https://github.com/cujojs/wire/issues", + "maintainers": [ + { + "name": "Brian Cavalier", + "web": "http://hovercraftstudios.com" + } + ], + "contributors": [ + { + "name": "Brian Cavalier", + "web": "http://hovercraftstudios.com" + }, + { + "name": "John Hann", + "web": "http://unscriptable.com" + } + ], + "dependencies": { + "meld": "~1", + "when": ">=2.6.0 <4" + }, + "devDependencies": { + "bower": "~1", + "buster": "~0.7", + "buster-amd": "^0.3.1", + "gent": "~0.6", + "glob": "^7.0.3", + "requirejs": "^2.2.0" + }, + "main": "./wire", + "directories": { + "test": "test" + }, + "scripts": { + "test": "buster-test -e node", + "start-test-server": "buster-server", + "browser-test": "buster-test -e browser", + "prepublish": "bower install" + } } diff --git a/test/buster.js b/test/buster.js index 5eeb20a..07be6fc 100644 --- a/test/buster.js +++ b/test/buster.js @@ -1,7 +1,20 @@ 'use strict'; +var fs = require('fs'); + +var glob = require('glob'); +var busterAmd = require('buster-amd'); + +var conditionalLoadGenerator = require('./node-es6/conditional-load-generator'); require('gent/test-adapter/buster'); +var tests = ['node/**/*.js']; +var nodeTests = tests.slice(); +var es6Tests = glob.sync('node-es6/**/*-test.js'); +var conditionalBrowserLoaders = [ 'node-es6/var/conditional-load.js']; + +// begin node test setup + function evaluates (statement) { try { /* jshint evil: true */ @@ -21,22 +34,48 @@ function isSpreadAvailable() { return evaluates('parseInt(...["20", 10])'); } -var tests = ['node/**/*-test.js']; - -console.log('class operator %savailable', isClassAvailable() ? '' : 'not '); -console.log('spread operator %savailable', isSpreadAvailable() ? '' : 'not '); - +console.log('class operator %savailable in node', isClassAvailable() ? '' : 'not '); +console.log('spread operator %savailable in node', isSpreadAvailable() ? '' : 'not '); if( isClassAvailable() && isSpreadAvailable() && !('ES_VERSION' in process.env && parseFloat(process.env.ES_VERSION) < 6) ) { - tests.push('node-es6/**/*-test.js'); + nodeTests = nodeTests.concat(es6Tests); } module.exports['node'] = { environment: 'node', - tests: tests + tests: tests.concat(nodeTests) // TODO: Why doesn't this work? //, testHelpers:['gent/test-adapter/buster'] }; + +// begin browser test setup + +// hack, we have to detect if browser is es6 capable in browser itself +// and load es6 tests only when that is true +// but to load es6 tests in browser we have to have list of them after decision +// whether to load them is made. I found no other way to pass this list to browser +// than with static file +fs.writeFileSync( + __dirname+'/node-es6/var/conditional-load.js', + conditionalLoadGenerator(es6Tests.map(function(e){return 'test/'+e;})) +); + + +module.exports['browser'] = { + environment: 'browser', + rootPath: '../', + libs: [ + 'node_modules/requirejs/require.js', + 'test/requirejs-main.js', + ], + sources: + ['lib/**/*.js', 'lib/*.js', 'node_modules/{gent,meld,when}/**/*.js', 'dom/**/*.js', '*.js'] + .concat(es6Tests.map(function(e){return 'test/'+e;})), + tests: tests + .concat(conditionalBrowserLoaders) + .map(function(e){return 'test/'+e;}), + extensions: [busterAmd] +}; diff --git a/test/node-es6/conditional-load-generator.js b/test/node-es6/conditional-load-generator.js new file mode 100644 index 0000000..0cf11e6 --- /dev/null +++ b/test/node-es6/conditional-load-generator.js @@ -0,0 +1,39 @@ + +var templ = '(function(define){\n'+ +'\n'+ +' function evaluates (statement) {\n'+ +' try {\n'+ +' eval(statement);\n'+ +' return true;\n'+ +' } catch (err) {\n'+ +' return false;\n'+ +' }\n'+ +' }\n'+ +'\n'+ +' function isClassAvailable() {\n'+ +' return evaluates(\'class es6TestClass_ibyechBaloodren7 {}\');\n'+ +' }\n'+ +'\n'+ +' function isSpreadAvailable() {\n'+ +' return evaluates(\'parseInt(...[\"20\", 10])\');\n'+ +' }\n'+ +'\n'+ +' var tests = TEST_FILES;\n'+ +' var requires = [];\n'+ +'\n'+ +' if(\n'+ +' isClassAvailable()\n'+ +' && isSpreadAvailable()\n'+ +' && !(typeof(process) !== \'undefined\' && \'ES_VERSION\' in process.env && parseFloat(process.env.ES_VERSION) < 6)\n'+ +' ) {\n'+ +' requires = tests;\n'+ +' }\n'+ +' console.log(\'class operator \'+ (isClassAvailable() ? \'\' : \'not \') + \'available in browser\');\n'+ +' console.log(\'spread operator \'+ (isSpreadAvailable() ? \'\' : \'not \') + \'available in browser\');\n'+ +' define(requires, function(){});\n'+ +'\n'+ +'})(typeof define !== \'undefined\' ? define : function(factory){module.exports = factory(require);});'; + +module.exports = function (testFiles){ + return templ.replace(/TEST_FILES/, JSON.stringify(testFiles)); +}; diff --git a/test/node-es6/lib/plugin/basePlugin-test.js b/test/node-es6/lib/plugin/basePlugin-test.js index b513266..b9ff7ee 100644 --- a/test/node-es6/lib/plugin/basePlugin-test.js +++ b/test/node-es6/lib/plugin/basePlugin-test.js @@ -1,7 +1,9 @@ /* jshint esversion: 6 */ -(function(buster, context) { +(function(define){define(function(require){ 'use strict'; +(function(buster, context) { + var assert, refute, fail, sentinel; assert = buster.assert; @@ -93,3 +95,5 @@ buster.testCase('es6/lib/plugin/basePlugin', { require('buster'), require('../../../../lib/context') ); + +});})(typeof define !== 'undefined' ? define : function(factory){module.exports = factory(require);}); diff --git a/test/node-es6/var/conditional-load.js b/test/node-es6/var/conditional-load.js new file mode 100644 index 0000000..12b5f70 --- /dev/null +++ b/test/node-es6/var/conditional-load.js @@ -0,0 +1,34 @@ +(function(define){ + + function evaluates (statement) { + try { + eval(statement); + return true; + } catch (err) { + return false; + } + } + + function isClassAvailable() { + return evaluates('class es6TestClass_ibyechBaloodren7 {}'); + } + + function isSpreadAvailable() { + return evaluates('parseInt(...["20", 10])'); + } + + var tests = []; + var requires = []; + + if( + isClassAvailable() + && isSpreadAvailable() + && !(typeof(process) !== 'undefined' && 'ES_VERSION' in process.env && parseFloat(process.env.ES_VERSION) < 6) + ) { + requires = tests; + } + console.log('class operator '+ (isClassAvailable() ? '' : 'not ') + 'available in browser'); + console.log('spread operator '+ (isSpreadAvailable() ? '' : 'not ') + 'available in browser'); + define(requires, function(){}); + +})(typeof define !== 'undefined' ? define : function(factory){module.exports = factory(require);}); \ No newline at end of file diff --git a/test/node/ComponentFactory-test.js b/test/node/ComponentFactory-test.js index 6cf0b1c..3c225c5 100644 --- a/test/node/ComponentFactory-test.js +++ b/test/node/ComponentFactory-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ var buster, assert, refute, fail, ComponentFactory, sentinel; buster = require('buster'); @@ -66,3 +67,4 @@ buster.testCase('lib/ComponentFactory', { } }); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/aop-test.js b/test/node/aop-test.js index a38b22a..4d989c6 100644 --- a/test/node/aop-test.js +++ b/test/node/aop-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, wire, aopPlugin, when) { "use strict"; @@ -893,4 +894,5 @@ buster.testCase('aop', { require('../../wire'), require('../../aop'), require('when') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/builder/cram-test.js b/test/node/builder/cram-test.js index d6a4e48..3db7703 100644 --- a/test/node/builder/cram-test.js +++ b/test/node/builder/cram-test.js @@ -1,3 +1,7 @@ +// test building only in node +if(typeof process !== 'undefined') { + +(function(define){define(function(require){ var buster, assert, refute, fail, builder, forEach; buster = require('buster'); @@ -232,4 +236,7 @@ function specObjectToModule(spec) { function removeJsExt(path) { return path.replace(/\.js$/, ''); -} \ No newline at end of file +} +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); + +} diff --git a/test/node/circular-refs-test.js b/test/node/circular-refs-test.js index 93db2c7..7bfce7b 100644 --- a/test/node/circular-refs-test.js +++ b/test/node/circular-refs-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, when, timeout, wire, plugin) { "use strict"; @@ -85,6 +86,7 @@ buster.testCase('circular-refs', { require('buster'), require('when'), require('when/timeout'), - require('../..'), + require('../../wire'), require('./fixtures/object') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/connect-test.js b/test/node/connect-test.js index 34cf6af..05a5244 100644 --- a/test/node/connect-test.js +++ b/test/node/connect-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, context, connectPlugin, when) { 'use strict'; @@ -183,4 +184,5 @@ buster.testCase('connect', { require('../../lib/context'), require('../../connect'), require('when') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/context-test.js b/test/node/context-test.js index b4d912e..c646280 100644 --- a/test/node/context-test.js +++ b/test/node/context-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, context) { 'use strict'; @@ -421,4 +422,5 @@ buster.testCase('context', { })( require('buster'), require('../../lib/context') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/debug-test.js b/test/node/debug-test.js index 89a283e..b40b52d 100644 --- a/test/node/debug-test.js +++ b/test/node/debug-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, wire, debugPlugin) { 'use strict'; @@ -29,7 +30,13 @@ buster.testCase('wire/debug', { } }).then(function(context) { assert.isFunction(context.myComponent.constructor); - assert.equals(context.myComponent.constructor.name, 'myComponent'); + + //Function.name is non-standard! at least before ES2015 + if (context.myComponent.constructor.name) { + assert.equals(context.myComponent.constructor.name, 'myComponent'); + } else { + assert(/^\s*function\s+myComponent/.test(context.myComponent.constructor.toString())); + } }); }, @@ -67,6 +74,7 @@ buster.testCase('wire/debug', { }); })( require('buster'), - require('../..'), + require('../../wire'), require('../../debug') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/dom/transform/cardinality-test.js b/test/node/dom/transform/cardinality-test.js index 4ba80ac..8c09505 100644 --- a/test/node/dom/transform/cardinality-test.js +++ b/test/node/dom/transform/cardinality-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, cardinality) { "use strict"; @@ -65,4 +66,5 @@ buster.testCase('dom/transform/cardinality', { })( require('buster'), require('../../../../dom/transform/cardinality') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/dom/transform/mapClasses-test.js b/test/node/dom/transform/mapClasses-test.js index 2bed4fd..af5e7fe 100644 --- a/test/node/dom/transform/mapClasses-test.js +++ b/test/node/dom/transform/mapClasses-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, mapClasses) { "use strict"; @@ -89,4 +90,5 @@ buster.testCase('dom/transform/mapClasses', { })( require('buster'), require('../../../../dom/transform/mapClasses') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/dom/transform/mapTokenList-test.js b/test/node/dom/transform/mapTokenList-test.js index 92e9aa2..12ddca9 100644 --- a/test/node/dom/transform/mapTokenList-test.js +++ b/test/node/dom/transform/mapTokenList-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, mapTokenList) { "use strict"; @@ -57,4 +58,5 @@ buster.testCase('dom/transform/mapTokenList', { })( require('buster'), require('../../../../dom/transform/mapTokenList') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/dom/transform/replaceClasses-test.js b/test/node/dom/transform/replaceClasses-test.js index 62144c0..559b911 100644 --- a/test/node/dom/transform/replaceClasses-test.js +++ b/test/node/dom/transform/replaceClasses-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, replaceClasses) { "use strict"; @@ -110,4 +111,5 @@ buster.testCase('dom/transform/replaceClasses', { })( require('buster'), require('../../../../dom/transform/replaceClasses') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/dom/transform/toggleClasses-test.js b/test/node/dom/transform/toggleClasses-test.js index 0681be8..b388867 100644 --- a/test/node/dom/transform/toggleClasses-test.js +++ b/test/node/dom/transform/toggleClasses-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, toggleClasses) { "use strict"; @@ -167,4 +168,5 @@ buster.testCase('dom/transform/toggleClasses', { })( require('buster'), require('../../../../dom/transform/toggleClasses') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/constructor.js b/test/node/fixtures/constructor.js index 9065ab0..b095cca 100644 --- a/test/node/fixtures/constructor.js +++ b/test/node/fixtures/constructor.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ function Constructor(val) { this.value = val; } @@ -8,4 +9,5 @@ Constructor.prototype = { } }; -module.exports = Constructor; \ No newline at end of file +return Constructor; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/function.js b/test/node/fixtures/function.js index 0bec41f..e296712 100644 --- a/test/node/fixtures/function.js +++ b/test/node/fixtures/function.js @@ -1,3 +1,5 @@ -module.exports = function(a, b) { +(function(define){define(function(require){ +return function(a, b) { return arguments.length > 1 ? a + b : a; -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/assembly1.js b/test/node/fixtures/imports-test/assembly1.js index eb8f0a6..1e30422 100644 --- a/test/node/fixtures/imports-test/assembly1.js +++ b/test/node/fixtures/imports-test/assembly1.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './module1' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/assembly2.js b/test/node/fixtures/imports-test/assembly2.js index 5ec0b30..d7cfd49 100644 --- a/test/node/fixtures/imports-test/assembly2.js +++ b/test/node/fixtures/imports-test/assembly2.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: ['./module1', './module2', './module3'] -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/assembly3.js b/test/node/fixtures/imports-test/assembly3.js index c9c622f..c528863 100644 --- a/test/node/fixtures/imports-test/assembly3.js +++ b/test/node/fixtures/imports-test/assembly3.js @@ -1,7 +1,9 @@ -module.exports = { +(function(define){define(function(require){ +return { comp_1_1: 'override imported comp_1_1', $imports: './module1', comp_1_2: 'override imported comp_1_2', -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/assembly4.js b/test/node/fixtures/imports-test/assembly4.js index 0c8e21c..1a665e5 100644 --- a/test/node/fixtures/imports-test/assembly4.js +++ b/test/node/fixtures/imports-test/assembly4.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: ['./module1', './module4'], -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/circular-imports-assembly1.js b/test/node/fixtures/imports-test/circular-imports-assembly1.js index 66eb428..2dfce28 100644 --- a/test/node/fixtures/imports-test/circular-imports-assembly1.js +++ b/test/node/fixtures/imports-test/circular-imports-assembly1.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './circular-imports-assembly1' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/circular-imports-assembly2-1.js b/test/node/fixtures/imports-test/circular-imports-assembly2-1.js index 7f3ab91..4d49c33 100644 --- a/test/node/fixtures/imports-test/circular-imports-assembly2-1.js +++ b/test/node/fixtures/imports-test/circular-imports-assembly2-1.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './circular-imports-assembly2-2' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/circular-imports-assembly2-2.js b/test/node/fixtures/imports-test/circular-imports-assembly2-2.js index 6512618..38ce33d 100644 --- a/test/node/fixtures/imports-test/circular-imports-assembly2-2.js +++ b/test/node/fixtures/imports-test/circular-imports-assembly2-2.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './circular-imports-assembly2-1' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/circular-imports-assembly3-1.js b/test/node/fixtures/imports-test/circular-imports-assembly3-1.js index 7142f96..d2ef23b 100644 --- a/test/node/fixtures/imports-test/circular-imports-assembly3-1.js +++ b/test/node/fixtures/imports-test/circular-imports-assembly3-1.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './circular-imports-assembly3-2' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/circular-imports-assembly3-2.js b/test/node/fixtures/imports-test/circular-imports-assembly3-2.js index a12534d..6828958 100644 --- a/test/node/fixtures/imports-test/circular-imports-assembly3-2.js +++ b/test/node/fixtures/imports-test/circular-imports-assembly3-2.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './circular-imports-assembly3-3' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/circular-imports-assembly3-3.js b/test/node/fixtures/imports-test/circular-imports-assembly3-3.js index cfbd61b..2f47dd7 100644 --- a/test/node/fixtures/imports-test/circular-imports-assembly3-3.js +++ b/test/node/fixtures/imports-test/circular-imports-assembly3-3.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './circular-imports-assembly3-1' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/module1.js b/test/node/fixtures/imports-test/module1.js index 644e129..327378f 100644 --- a/test/node/fixtures/imports-test/module1.js +++ b/test/node/fixtures/imports-test/module1.js @@ -1,5 +1,7 @@ -module.exports = { +(function(define){define(function(require){ +return { comp_1_1: 'comp_1_1', comp_1_2: 'comp_1_2', comp_1_3: 'comp_1_3', -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/module2.js b/test/node/fixtures/imports-test/module2.js index 4d10821..a631ab7 100644 --- a/test/node/fixtures/imports-test/module2.js +++ b/test/node/fixtures/imports-test/module2.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { comp_2_1: 'comp_2_1', -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/module3.js b/test/node/fixtures/imports-test/module3.js index 3e3e7d8..8ce0af5 100644 --- a/test/node/fixtures/imports-test/module3.js +++ b/test/node/fixtures/imports-test/module3.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { comp_3_1: 'comp_3_1', -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/module4.js b/test/node/fixtures/imports-test/module4.js index 07ee000..2dab115 100644 --- a/test/node/fixtures/imports-test/module4.js +++ b/test/node/fixtures/imports-test/module4.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { comp_1_1: 'override comp_1_1 in module4', -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/nested-imports-assembly1.js b/test/node/fixtures/imports-test/nested-imports-assembly1.js index 9448ee2..25c614c 100644 --- a/test/node/fixtures/imports-test/nested-imports-assembly1.js +++ b/test/node/fixtures/imports-test/nested-imports-assembly1.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './assembly1' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/nested-imports-assembly2.js b/test/node/fixtures/imports-test/nested-imports-assembly2.js index 80a9997..0f0d8bb 100644 --- a/test/node/fixtures/imports-test/nested-imports-assembly2.js +++ b/test/node/fixtures/imports-test/nested-imports-assembly2.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: './assembly2' -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/nested-imports-assembly3.js b/test/node/fixtures/imports-test/nested-imports-assembly3.js index ebcc9d1..ae47c79 100644 --- a/test/node/fixtures/imports-test/nested-imports-assembly3.js +++ b/test/node/fixtures/imports-test/nested-imports-assembly3.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: ['./assembly1', './assembly2'] -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/imports-test/nested-imports-assembly4.js b/test/node/fixtures/imports-test/nested-imports-assembly4.js index a4ddaf9..e642bcf 100644 --- a/test/node/fixtures/imports-test/nested-imports-assembly4.js +++ b/test/node/fixtures/imports-test/nested-imports-assembly4.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { $imports: ['./assembly1', './module4', './assembly2'] -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/module.js b/test/node/fixtures/module.js index 07698d8..fbe8f9e 100644 --- a/test/node/fixtures/module.js +++ b/test/node/fixtures/module.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { success: true -}; \ No newline at end of file +}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/object.js b/test/node/fixtures/object.js index a099545..9930168 100644 --- a/test/node/fixtures/object.js +++ b/test/node/fixtures/object.js @@ -1 +1,3 @@ -module.exports = {}; \ No newline at end of file +(function(define){define(function(require){ +return {}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/object2.js b/test/node/fixtures/object2.js index a099545..9930168 100644 --- a/test/node/fixtures/object2.js +++ b/test/node/fixtures/object2.js @@ -1 +1,3 @@ -module.exports = {}; \ No newline at end of file +(function(define){define(function(require){ +return {}; +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/fixtures/relativeSpec.js b/test/node/fixtures/relativeSpec.js index 705e950..5888083 100644 --- a/test/node/fixtures/relativeSpec.js +++ b/test/node/fixtures/relativeSpec.js @@ -1,3 +1,5 @@ -module.exports = { +(function(define){define(function(require){ +return { component: { module: './object' } -} \ No newline at end of file +} +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/invoker-test.js b/test/node/invoker-test.js index b36f09c..e04e261 100644 --- a/test/node/invoker-test.js +++ b/test/node/invoker-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, invoker) { "use strict"; @@ -32,4 +33,5 @@ buster.testCase('lib/invoker', { })( require('buster'), require('../../lib/invoker') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/ObjectProxy-test.js b/test/node/lib/ObjectProxy-test.js index fb53fba..80c540d 100644 --- a/test/node/lib/ObjectProxy-test.js +++ b/test/node/lib/ObjectProxy-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, ObjectProxy, WireProxy) { "use strict"; @@ -105,4 +106,5 @@ buster.testCase('lib/ObjectProxy', { require('buster'), require('../../../lib/ObjectProxy'), require('../../../lib/WireProxy') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/WireProxy-test.js b/test/node/lib/WireProxy-test.js index 50ddb12..79d09a7 100644 --- a/test/node/lib/WireProxy-test.js +++ b/test/node/lib/WireProxy-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, WireProxy) { "use strict"; @@ -175,4 +176,5 @@ buster.testCase('lib/WireProxy', { })( require('buster'), require('../../../lib/WireProxy') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/advice-test.js b/test/node/lib/advice-test.js index 3757233..fd61bd6 100644 --- a/test/node/lib/advice-test.js +++ b/test/node/lib/advice-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, advice) { 'use strict'; @@ -191,4 +192,5 @@ buster.testCase('lib/advice', { })( require('buster'), require('../../../lib/advice') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/functional-test.js b/test/node/lib/functional-test.js index f2d7977..56855fb 100644 --- a/test/node/lib/functional-test.js +++ b/test/node/lib/functional-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, functional) { var assert, refute, fail; @@ -86,4 +87,5 @@ buster.testCase('lib/functional', { })( require('buster'), require('../../../lib/functional.js') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/graph/cyclesTracker-test.js b/test/node/lib/graph/cyclesTracker-test.js index 15b42c6..adb19ac 100644 --- a/test/node/lib/graph/cyclesTracker-test.js +++ b/test/node/lib/graph/cyclesTracker-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, cyclesTracker, DirectedGraph) { 'use strict'; @@ -113,4 +114,5 @@ buster.testCase('lib / graph / cyclesTracker', { require('buster'), require('../../../../lib/graph/cyclesTracker'), require('../../../../lib/graph/DirectedGraph') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/loader/moduleId-test.js b/test/node/lib/loader/moduleId-test.js index 6bd563c..92a5cd3 100644 --- a/test/node/lib/loader/moduleId-test.js +++ b/test/node/lib/loader/moduleId-test.js @@ -1,3 +1,7 @@ +// deoends on gent, which does not work with AMD modules +if(typeof exports !== 'undefined') { + +(function(define){define(function(require){ (function(buster, moduleId) { 'use strict'; @@ -102,4 +106,7 @@ require('buster'), require('../../../../lib/loader/moduleId'), require('gent/test-adapter/buster') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); + +} diff --git a/test/node/lib/loader/relative-test.js b/test/node/lib/loader/relative-test.js index 275b734..43a2d27 100644 --- a/test/node/lib/loader/relative-test.js +++ b/test/node/lib/loader/relative-test.js @@ -1,11 +1,13 @@ -(function(buster, relative) { +// deoends on gent, which does not work with AMD modules +if(typeof exports !== 'undefined') { + +(function(define){define(function(require){ +(function(buster, relative, gent) { 'use strict'; - var assert, refute, fail, gent, + var assert, refute, fail, word, nonEmptyNormalizedId, dotsOnly, idWithLeadingDots; - gent = require('gent'); - assert = buster.assert; refute = buster.refute; fail = buster.fail; @@ -59,5 +61,9 @@ })( require('buster'), - require('../../../../lib/loader/relative') -); \ No newline at end of file + require('../../../../lib/loader/relative'), + require('gent') +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); + +} diff --git a/test/node/lib/object-test.js b/test/node/lib/object-test.js index d0b3049..82be3b8 100644 --- a/test/node/lib/object-test.js +++ b/test/node/lib/object-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, object) { "use strict"; @@ -43,4 +44,5 @@ buster.testCase('lib/object', { })( require('buster'), require('../../../lib/object') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/plugin/basePlugin-test.js b/test/node/lib/plugin/basePlugin-test.js index 454c263..2063c3d 100644 --- a/test/node/lib/plugin/basePlugin-test.js +++ b/test/node/lib/plugin/basePlugin-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, context) { 'use strict'; @@ -1010,3 +1011,4 @@ buster.testCase('lib/plugin/basePlugin', { require('buster'), require('../../../../lib/context') ); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/plugin/priority-test.js b/test/node/lib/plugin/priority-test.js index 5c9ec0e..2162667 100644 --- a/test/node/lib/plugin/priority-test.js +++ b/test/node/lib/plugin/priority-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, priority) { "use strict"; @@ -22,4 +23,5 @@ buster.testCase('lib/plugin/priority', { })( require('buster'), require('../../../../lib/plugin/priority') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/plugin/registry-test.js b/test/node/lib/plugin/registry-test.js index b766d36..71fda67 100644 --- a/test/node/lib/plugin/registry-test.js +++ b/test/node/lib/plugin/registry-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, PluginRegistry) { "use strict"; @@ -70,4 +71,5 @@ buster.testCase('lib/plugin/registry', { })( require('buster'), require('../../../../lib/plugin/registry') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/plugin/wirePlugin-test.js b/test/node/lib/plugin/wirePlugin-test.js index c69eb17..0777efa 100644 --- a/test/node/lib/plugin/wirePlugin-test.js +++ b/test/node/lib/plugin/wirePlugin-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, context) { 'use strict'; @@ -270,4 +271,5 @@ buster.testCase('lib/plugin/wirePlugin', { })( require('buster'), require('../../../../lib/context') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lib/resolver-test.js b/test/node/lib/resolver-test.js index 187e805..0ff645e 100644 --- a/test/node/lib/resolver-test.js +++ b/test/node/lib/resolver-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, Resolver) { 'use strict'; @@ -33,4 +34,5 @@ buster.testCase('lib/resolver', { })( require('buster'), require('../../../lib/resolver') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/lifecycle-test.js b/test/node/lifecycle-test.js index 98b757f..ab2508c 100644 --- a/test/node/lifecycle-test.js +++ b/test/node/lifecycle-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, wire, plugin) { "use strict"; @@ -79,6 +80,7 @@ buster.testCase('lifecycle', { }); })( require('buster'), - require('../..'), + require('../../wire'), require('./fixtures/object') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/plugin-test.js b/test/node/plugin-test.js index bc1c356..82b9d8a 100644 --- a/test/node/plugin-test.js +++ b/test/node/plugin-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, when, wire) { "use strict"; @@ -134,4 +135,5 @@ buster.testCase('plugin', { require('buster'), require('when'), require('../../wire') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/refs-test.js b/test/node/refs-test.js index 2a35994..02a2b5e 100644 --- a/test/node/refs-test.js +++ b/test/node/refs-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, wire) { "use strict"; @@ -173,4 +174,5 @@ buster.testCase('refs', { })( require('buster'), require('../../wire') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/types-test.js b/test/node/types-test.js index c8fc85d..35d1adc 100644 --- a/test/node/types-test.js +++ b/test/node/types-test.js @@ -1,3 +1,4 @@ +(function(define){define(function(require){ (function(buster, wire) { "use strict"; @@ -141,4 +142,5 @@ buster.testCase('types', { })( require('buster'), require('../../wire') -); \ No newline at end of file +); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); diff --git a/test/node/version-test.js b/test/node/version-test.js index 2a8949e..2153ceb 100644 --- a/test/node/version-test.js +++ b/test/node/version-test.js @@ -1,3 +1,6 @@ +if(typeof process !== 'undefined'){ + +(function(define){define(function(require){ (function(buster) { "use strict"; @@ -21,3 +24,6 @@ } }); }(require('buster'))); +});})(typeof define !== 'undefined' ? define : function(fac){module.exports = fac(require);}); + +} diff --git a/test/requirejs-main.js b/test/requirejs-main.js new file mode 100644 index 0000000..c68b920 --- /dev/null +++ b/test/requirejs-main.js @@ -0,0 +1,10 @@ +(function(){ + 'use strict'; + require.config({ + packages: [ + { name: 'gent', location: 'node_modules/gent', main: 'gent' }, + { name: 'meld', location: 'node_modules/meld', main: 'meld' }, + { name: 'when', location: 'node_modules/when', main: 'when' }, + ] + }); +})() From a51d2a1de0f0ab019ac42dc8d592345e75058f1c Mon Sep 17 00:00:00 2001 From: Krzysztof Chrapka Date: Sun, 24 Apr 2016 01:10:18 +0200 Subject: [PATCH 3/3] Clean up old, non-functional tests --- test/amd/module.html | 23 - test/amd/moduleIds.html | 188 - test/amd/plugin.html | 62 - test/dojo/all.html | 11 - test/dojo/all.js | 7 - test/dojo/dijit-factory1.html | 32 - test/dojo/dijit1.html | 52 - test/dojo/dijit1.js | 72 - test/dojo/dom-insert.html | 32 - test/dojo/dom.html | 40 - test/dojo/events1.html | 59 - test/dojo/events2.html | 95 - test/dojo/on.html | 16 - test/dojo/pubsub1.html | 130 - test/dojo/rest1/View.js | 19 - test/dojo/rest1/container-template1.html | 1 - test/dojo/rest1/container-template2.html | 1 - test/dojo/rest1/index.html | 19 - test/dojo/rest1/people/.htaccess | 2 - test/dojo/rest1/people/1 | 4 - test/dojo/rest1/people/2 | 4 - test/dojo/rest1/people/index | 10 - test/dojo/rest1/person-template1.html | 1 - test/dojo/rest1/person-template2.html | 1 - test/dojo/rest1/rest1.js | 37 - test/dojo/store.html | 43 - test/firebug-lite/build/.htaccess | 15 - test/firebug-lite/build/firebug-lite.js | 8257 ----------------- test/firebug-lite/license.txt | 30 - test/firebug-lite/skin/xp/blank.gif | Bin 43 -> 0 bytes test/firebug-lite/skin/xp/buttonBg.png | Bin 167 -> 0 bytes test/firebug-lite/skin/xp/buttonBgHover.png | Bin 171 -> 0 bytes test/firebug-lite/skin/xp/debugger.css | 331 - test/firebug-lite/skin/xp/detach.png | Bin 655 -> 0 bytes test/firebug-lite/skin/xp/detachHover.png | Bin 586 -> 0 bytes test/firebug-lite/skin/xp/disable.gif | Bin 340 -> 0 bytes test/firebug-lite/skin/xp/disable.png | Bin 543 -> 0 bytes test/firebug-lite/skin/xp/disableHover.gif | Bin 344 -> 0 bytes test/firebug-lite/skin/xp/disableHover.png | Bin 512 -> 0 bytes test/firebug-lite/skin/xp/down.png | Bin 637 -> 0 bytes test/firebug-lite/skin/xp/downActive.png | Bin 543 -> 0 bytes test/firebug-lite/skin/xp/downHover.png | Bin 526 -> 0 bytes test/firebug-lite/skin/xp/errorIcon-sm.png | Bin 447 -> 0 bytes test/firebug-lite/skin/xp/errorIcon.gif | Bin 365 -> 0 bytes test/firebug-lite/skin/xp/errorIcon.png | Bin 457 -> 0 bytes test/firebug-lite/skin/xp/firebug-1.3a2.css | 817 -- test/firebug-lite/skin/xp/firebug.IE6.css | 20 - test/firebug-lite/skin/xp/firebug.css | 3147 ------- test/firebug-lite/skin/xp/firebug.html | 215 - test/firebug-lite/skin/xp/firebug.png | Bin 1167 -> 0 bytes test/firebug-lite/skin/xp/group.gif | Bin 158 -> 0 bytes test/firebug-lite/skin/xp/html.css | 272 - test/firebug-lite/skin/xp/infoIcon.gif | Bin 359 -> 0 bytes test/firebug-lite/skin/xp/infoIcon.png | Bin 524 -> 0 bytes test/firebug-lite/skin/xp/loading_16.gif | Bin 1553 -> 0 bytes test/firebug-lite/skin/xp/min.png | Bin 552 -> 0 bytes test/firebug-lite/skin/xp/minHover.png | Bin 485 -> 0 bytes test/firebug-lite/skin/xp/off.png | Bin 742 -> 0 bytes test/firebug-lite/skin/xp/offHover.png | Bin 680 -> 0 bytes .../skin/xp/pixel_transparent.gif | Bin 43 -> 0 bytes test/firebug-lite/skin/xp/roundCorner.svg | 6 - test/firebug-lite/skin/xp/search.gif | Bin 550 -> 0 bytes test/firebug-lite/skin/xp/search.png | Bin 685 -> 0 bytes test/firebug-lite/skin/xp/shadow.gif | Bin 4364 -> 0 bytes test/firebug-lite/skin/xp/shadow2.gif | Bin 3093 -> 0 bytes test/firebug-lite/skin/xp/shadowAlpha.png | Bin 3403 -> 0 bytes test/firebug-lite/skin/xp/sprite.png | Bin 40027 -> 0 bytes test/firebug-lite/skin/xp/tabHoverLeft.png | Bin 438 -> 0 bytes test/firebug-lite/skin/xp/tabHoverMid.png | Bin 261 -> 0 bytes test/firebug-lite/skin/xp/tabHoverRight.png | Bin 436 -> 0 bytes test/firebug-lite/skin/xp/tabLeft.png | Bin 449 -> 0 bytes test/firebug-lite/skin/xp/tabMenuCheckbox.png | Bin 220 -> 0 bytes test/firebug-lite/skin/xp/tabMenuPin.png | Bin 207 -> 0 bytes test/firebug-lite/skin/xp/tabMenuRadio.png | Bin 192 -> 0 bytes test/firebug-lite/skin/xp/tabMenuTarget.png | Bin 142 -> 0 bytes .../skin/xp/tabMenuTargetHover.png | Bin 148 -> 0 bytes test/firebug-lite/skin/xp/tabMid.png | Bin 262 -> 0 bytes test/firebug-lite/skin/xp/tabRight.png | Bin 448 -> 0 bytes .../skin/xp/textEditorBorders.gif | Bin 117 -> 0 bytes .../skin/xp/textEditorBorders.png | Bin 3144 -> 0 bytes .../skin/xp/textEditorCorners.gif | Bin 1821 -> 0 bytes .../skin/xp/textEditorCorners.png | Bin 3960 -> 0 bytes test/firebug-lite/skin/xp/titlebarMid.png | Bin 273 -> 0 bytes test/firebug-lite/skin/xp/toolbarMid.png | Bin 242 -> 0 bytes test/firebug-lite/skin/xp/tree_close.gif | Bin 300 -> 0 bytes test/firebug-lite/skin/xp/tree_open.gif | Bin 202 -> 0 bytes test/firebug-lite/skin/xp/twistyClosed.png | Bin 334 -> 0 bytes test/firebug-lite/skin/xp/twistyOpen.png | Bin 309 -> 0 bytes test/firebug-lite/skin/xp/up.png | Bin 619 -> 0 bytes test/firebug-lite/skin/xp/upActive.png | Bin 551 -> 0 bytes test/firebug-lite/skin/xp/upHover.png | Bin 526 -> 0 bytes test/firebug-lite/skin/xp/warningIcon.gif | Bin 357 -> 0 bytes test/firebug-lite/skin/xp/warningIcon.png | Bin 516 -> 0 bytes 93 files changed, 14071 deletions(-) delete mode 100644 test/amd/module.html delete mode 100644 test/amd/moduleIds.html delete mode 100644 test/amd/plugin.html delete mode 100644 test/dojo/all.html delete mode 100644 test/dojo/all.js delete mode 100644 test/dojo/dijit-factory1.html delete mode 100644 test/dojo/dijit1.html delete mode 100644 test/dojo/dijit1.js delete mode 100644 test/dojo/dom-insert.html delete mode 100644 test/dojo/dom.html delete mode 100644 test/dojo/events1.html delete mode 100644 test/dojo/events2.html delete mode 100644 test/dojo/on.html delete mode 100644 test/dojo/pubsub1.html delete mode 100644 test/dojo/rest1/View.js delete mode 100644 test/dojo/rest1/container-template1.html delete mode 100644 test/dojo/rest1/container-template2.html delete mode 100644 test/dojo/rest1/index.html delete mode 100644 test/dojo/rest1/people/.htaccess delete mode 100644 test/dojo/rest1/people/1 delete mode 100644 test/dojo/rest1/people/2 delete mode 100644 test/dojo/rest1/people/index delete mode 100644 test/dojo/rest1/person-template1.html delete mode 100644 test/dojo/rest1/person-template2.html delete mode 100644 test/dojo/rest1/rest1.js delete mode 100644 test/dojo/store.html delete mode 100644 test/firebug-lite/build/.htaccess delete mode 100644 test/firebug-lite/build/firebug-lite.js delete mode 100644 test/firebug-lite/license.txt delete mode 100644 test/firebug-lite/skin/xp/blank.gif delete mode 100644 test/firebug-lite/skin/xp/buttonBg.png delete mode 100644 test/firebug-lite/skin/xp/buttonBgHover.png delete mode 100644 test/firebug-lite/skin/xp/debugger.css delete mode 100644 test/firebug-lite/skin/xp/detach.png delete mode 100644 test/firebug-lite/skin/xp/detachHover.png delete mode 100644 test/firebug-lite/skin/xp/disable.gif delete mode 100644 test/firebug-lite/skin/xp/disable.png delete mode 100644 test/firebug-lite/skin/xp/disableHover.gif delete mode 100644 test/firebug-lite/skin/xp/disableHover.png delete mode 100644 test/firebug-lite/skin/xp/down.png delete mode 100644 test/firebug-lite/skin/xp/downActive.png delete mode 100644 test/firebug-lite/skin/xp/downHover.png delete mode 100644 test/firebug-lite/skin/xp/errorIcon-sm.png delete mode 100644 test/firebug-lite/skin/xp/errorIcon.gif delete mode 100644 test/firebug-lite/skin/xp/errorIcon.png delete mode 100644 test/firebug-lite/skin/xp/firebug-1.3a2.css delete mode 100644 test/firebug-lite/skin/xp/firebug.IE6.css delete mode 100644 test/firebug-lite/skin/xp/firebug.css delete mode 100644 test/firebug-lite/skin/xp/firebug.html delete mode 100644 test/firebug-lite/skin/xp/firebug.png delete mode 100644 test/firebug-lite/skin/xp/group.gif delete mode 100644 test/firebug-lite/skin/xp/html.css delete mode 100644 test/firebug-lite/skin/xp/infoIcon.gif delete mode 100644 test/firebug-lite/skin/xp/infoIcon.png delete mode 100644 test/firebug-lite/skin/xp/loading_16.gif delete mode 100644 test/firebug-lite/skin/xp/min.png delete mode 100644 test/firebug-lite/skin/xp/minHover.png delete mode 100644 test/firebug-lite/skin/xp/off.png delete mode 100644 test/firebug-lite/skin/xp/offHover.png delete mode 100644 test/firebug-lite/skin/xp/pixel_transparent.gif delete mode 100644 test/firebug-lite/skin/xp/roundCorner.svg delete mode 100644 test/firebug-lite/skin/xp/search.gif delete mode 100644 test/firebug-lite/skin/xp/search.png delete mode 100644 test/firebug-lite/skin/xp/shadow.gif delete mode 100644 test/firebug-lite/skin/xp/shadow2.gif delete mode 100644 test/firebug-lite/skin/xp/shadowAlpha.png delete mode 100644 test/firebug-lite/skin/xp/sprite.png delete mode 100644 test/firebug-lite/skin/xp/tabHoverLeft.png delete mode 100644 test/firebug-lite/skin/xp/tabHoverMid.png delete mode 100644 test/firebug-lite/skin/xp/tabHoverRight.png delete mode 100644 test/firebug-lite/skin/xp/tabLeft.png delete mode 100644 test/firebug-lite/skin/xp/tabMenuCheckbox.png delete mode 100644 test/firebug-lite/skin/xp/tabMenuPin.png delete mode 100644 test/firebug-lite/skin/xp/tabMenuRadio.png delete mode 100644 test/firebug-lite/skin/xp/tabMenuTarget.png delete mode 100644 test/firebug-lite/skin/xp/tabMenuTargetHover.png delete mode 100644 test/firebug-lite/skin/xp/tabMid.png delete mode 100644 test/firebug-lite/skin/xp/tabRight.png delete mode 100644 test/firebug-lite/skin/xp/textEditorBorders.gif delete mode 100644 test/firebug-lite/skin/xp/textEditorBorders.png delete mode 100644 test/firebug-lite/skin/xp/textEditorCorners.gif delete mode 100644 test/firebug-lite/skin/xp/textEditorCorners.png delete mode 100644 test/firebug-lite/skin/xp/titlebarMid.png delete mode 100644 test/firebug-lite/skin/xp/toolbarMid.png delete mode 100644 test/firebug-lite/skin/xp/tree_close.gif delete mode 100644 test/firebug-lite/skin/xp/tree_open.gif delete mode 100644 test/firebug-lite/skin/xp/twistyClosed.png delete mode 100644 test/firebug-lite/skin/xp/twistyOpen.png delete mode 100644 test/firebug-lite/skin/xp/up.png delete mode 100644 test/firebug-lite/skin/xp/upActive.png delete mode 100644 test/firebug-lite/skin/xp/upHover.png delete mode 100644 test/firebug-lite/skin/xp/warningIcon.gif delete mode 100644 test/firebug-lite/skin/xp/warningIcon.png diff --git a/test/amd/module.html b/test/amd/module.html deleted file mode 100644 index 6cbb05d..0000000 --- a/test/amd/module.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - - AMD module test - - - - - - - - \ No newline at end of file diff --git a/test/amd/moduleIds.html b/test/amd/moduleIds.html deleted file mode 100644 index f155350..0000000 --- a/test/amd/moduleIds.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - AMD module test - - - - - - - - \ No newline at end of file diff --git a/test/amd/plugin.html b/test/amd/plugin.html deleted file mode 100644 index 313b3db..0000000 --- a/test/amd/plugin.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - AMD plugin test - - - - - - - - \ No newline at end of file diff --git a/test/dojo/all.html b/test/dojo/all.html deleted file mode 100644 index d2219ad..0000000 --- a/test/dojo/all.html +++ /dev/null @@ -1,11 +0,0 @@ - - - - - wire.js All Unit Tests - - - -
- - \ No newline at end of file diff --git a/test/dojo/all.js b/test/dojo/all.js deleted file mode 100644 index 237f6e3..0000000 --- a/test/dojo/all.js +++ /dev/null @@ -1,7 +0,0 @@ -doh.registerUrl('_fake', '../../../_fake-doh.html'); - -// dojo dom query -doh.registerUrl('wire/dojo/dom', '../../dojo/dom.html'); - -// Go -doh.run(); \ No newline at end of file diff --git a/test/dojo/dijit-factory1.html b/test/dojo/dijit-factory1.html deleted file mode 100644 index bf7ed38..0000000 --- a/test/dojo/dijit-factory1.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - dijit factory test - - - - - -
- -
- - \ No newline at end of file diff --git a/test/dojo/dijit1.html b/test/dojo/dijit1.html deleted file mode 100644 index 2458989..0000000 --- a/test/dojo/dijit1.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - Launcher test - - - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/test/dojo/dijit1.js b/test/dojo/dijit1.js deleted file mode 100644 index a1afaa1..0000000 --- a/test/dojo/dijit1.js +++ /dev/null @@ -1,72 +0,0 @@ -define({ - // There is nothing special about this array. It's just an array of modules - // whose members happen to be a plugins, but we could define it at the top - // level or at any depth. So, the following would work just as well: - // dom: { module: 'wire/dom' } - // This seems like it could end up being a reasonable convention, tho. - plugins: [ - { module: 'wire/debug', verbose: true, trace: true }, - { module: 'wire/dojo/dijit', parse: true }, // Calls dojo.parser.parse - { module: 'wire/dom', classes: { init: 'loading' } } - ], - // Create a controller, and inject a dijit.form.TextBox that is also - // created and wired to a dom node here in the spec. - controller: { - create: 'test/test2/Controller', - properties: { - // These are both forward references. These will resolve just - // fine--order is not important in a wiring spec. - name: { $ref: 'name' }, - widget: { $ref: 'widget1' } - }, - init: 'ready', // Called as soon as all properties have been set - destroy: 'destroy' // Called when the context is destroyed - }, - name: 'controller1', - // Create a TextBox dijit "programmatically", i.e. not using dojoType. - // This can be wired in to other objects by name ({ : "widget1" }), - // and will be cleaned up by the wire/dojo/dijit plugin when the - // enclosing context is destroyed. - widget1: { - create: { - module: 'dijit/form/TextBox', - args: {} - }, - properties: { - value: { $ref: 'initialValue' } - }, - init: { - // placeAt will be called once the #container dom node is - // available, i.e. after domReady. That happens automatically, - // and there's no need to specify explicitly when it should - // happen. - placeAt: [{ $ref: 'dom!container' }, 'first'], - focus: [] - } - }, - // Create a controller, and inject a dijit.form.TextBox that is simply - // referenced using the dijit resolver. - controller2: { - create: 'test/test2/Controller', - properties: { - name: "controller2", - widget: { $ref: 'widget2' } - }, - init: 'ready', // Called as soon as all properties have been set - destroy: 'destroy' // Called when the context is destroyed - }, - widget2: { $ref: 'dijit!widget' }, - nested: { - widget3: { - create: 'dijit/form/TextBox', - properties: { - value: 'nested worked' - }, - init: { - placeAt: [{ $ref: 'dom!container' }, 'last'] - } - } - }, - // Wire in a reference to the destroy button. - destroyButton: { $ref: 'dom!destroy' } -}); diff --git a/test/dojo/dom-insert.html b/test/dojo/dom-insert.html deleted file mode 100644 index eead5cb..0000000 --- a/test/dojo/dom-insert.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - dom plugin insert facet test - - - - - - - - - - -
-

-

last

-

first

-

after

-

before

-

middle

-
-
-

1

-

2

-

0

-

99

-

-1

-
- - diff --git a/test/dojo/dom.html b/test/dojo/dom.html deleted file mode 100644 index 71b08f9..0000000 --- a/test/dojo/dom.html +++ /dev/null @@ -1,40 +0,0 @@ - - - - - dom test - - - - - - - - -
-
-

-

-
-
-
-
-
-
-

-
-
-

-
-
- -
- - -
- -
- - \ No newline at end of file diff --git a/test/dojo/events1.html b/test/dojo/events1.html deleted file mode 100644 index dceb307..0000000 --- a/test/dojo/events1.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - Dojo connect test - - - - - - -
- -
- - \ No newline at end of file diff --git a/test/dojo/events2.html b/test/dojo/events2.html deleted file mode 100644 index 0be4ac3..0000000 --- a/test/dojo/events2.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - Dojo connect test - - - - - - -
- - -
- - \ No newline at end of file diff --git a/test/dojo/on.html b/test/dojo/on.html deleted file mode 100644 index aa95f05..0000000 --- a/test/dojo/on.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - wire/dojo/on connect test - - - - - - -
- -
- - \ No newline at end of file diff --git a/test/dojo/pubsub1.html b/test/dojo/pubsub1.html deleted file mode 100644 index 4c5b588..0000000 --- a/test/dojo/pubsub1.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - Dojo pubsub test - - - - - - - - - \ No newline at end of file diff --git a/test/dojo/rest1/View.js b/test/dojo/rest1/View.js deleted file mode 100644 index e7d24e3..0000000 --- a/test/dojo/rest1/View.js +++ /dev/null @@ -1,19 +0,0 @@ -define([], function() { - - var me = function() { - }; - - me.prototype.ready = function() { - var self = this; - this.store.query({}).forEach(function(person) { - if(!self.list) { - self.container.innerHTML = self.template; - self.list = self.container.firstChild; - } - - self.list.innerHTML += self.itemTemplate.replace(/\$\{name\}/, person.name); - }); - }; - - return me; -}); \ No newline at end of file diff --git a/test/dojo/rest1/container-template1.html b/test/dojo/rest1/container-template1.html deleted file mode 100644 index ac601ba..0000000 --- a/test/dojo/rest1/container-template1.html +++ /dev/null @@ -1 +0,0 @@ -
    \ No newline at end of file diff --git a/test/dojo/rest1/container-template2.html b/test/dojo/rest1/container-template2.html deleted file mode 100644 index e2d1b04..0000000 --- a/test/dojo/rest1/container-template2.html +++ /dev/null @@ -1 +0,0 @@ -
      \ No newline at end of file diff --git a/test/dojo/rest1/index.html b/test/dojo/rest1/index.html deleted file mode 100644 index 2256d0c..0000000 --- a/test/dojo/rest1/index.html +++ /dev/null @@ -1,19 +0,0 @@ - - - - - Launcher test - - - - - - -
      -
      -
      -
      - - \ No newline at end of file diff --git a/test/dojo/rest1/people/.htaccess b/test/dojo/rest1/people/.htaccess deleted file mode 100644 index 3a7affc..0000000 --- a/test/dojo/rest1/people/.htaccess +++ /dev/null @@ -1,2 +0,0 @@ -DirectoryIndex index -DefaultType application/json \ No newline at end of file diff --git a/test/dojo/rest1/people/1 b/test/dojo/rest1/people/1 deleted file mode 100644 index 7715838..0000000 --- a/test/dojo/rest1/people/1 +++ /dev/null @@ -1,4 +0,0 @@ -{ - "id": 1, - "name": "Sergei Rachmaninoff" -} diff --git a/test/dojo/rest1/people/2 b/test/dojo/rest1/people/2 deleted file mode 100644 index 2448b17..0000000 --- a/test/dojo/rest1/people/2 +++ /dev/null @@ -1,4 +0,0 @@ -{ - "id": 2, - "name": "Dmitri Bortnianski" -} \ No newline at end of file diff --git a/test/dojo/rest1/people/index b/test/dojo/rest1/people/index deleted file mode 100644 index 6e1e84e..0000000 --- a/test/dojo/rest1/people/index +++ /dev/null @@ -1,10 +0,0 @@ -[ - { - "id": 1, - "name": "Sergei Rachmaninoff" - }, - { - "id": 2, - "name": "Dmitri Bortnianski" - } -] \ No newline at end of file diff --git a/test/dojo/rest1/person-template1.html b/test/dojo/rest1/person-template1.html deleted file mode 100644 index da2f92c..0000000 --- a/test/dojo/rest1/person-template1.html +++ /dev/null @@ -1 +0,0 @@ -
    • ${name}
    • \ No newline at end of file diff --git a/test/dojo/rest1/person-template2.html b/test/dojo/rest1/person-template2.html deleted file mode 100644 index b94b339..0000000 --- a/test/dojo/rest1/person-template2.html +++ /dev/null @@ -1 +0,0 @@ -
    • ${name}
    • \ No newline at end of file diff --git a/test/dojo/rest1/rest1.js b/test/dojo/rest1/rest1.js deleted file mode 100644 index 7ec29ef..0000000 --- a/test/dojo/rest1/rest1.js +++ /dev/null @@ -1,37 +0,0 @@ -define({ - plugins: [ - { module: 'wire/debug' }, - { module: 'wire/dom' }, - { module: 'wire/dojo/store' } - ], - // These two constrollers are equivalent. The resource! resolver makes life easier. - controller: { - create: 'test/dojo/rest1/View', - properties: { - itemTemplate: { module: 'text!test/dojo/rest1/person-template1.html' }, - template: { module: 'text!test/dojo/rest1/container-template1.html' }, - container: { $ref: 'dom!container1' }, - store: { $ref: 'resource!people/' } - }, - init: 'ready' - }, - controller2: { - create: 'test/dojo/rest1/View', - properties: { - itemTemplate: { module: 'text!test/dojo/rest1/person-template2.html' }, - template: { module: 'text!test/dojo/rest1/container-template2.html' }, - container: { $ref: 'dom!container2' }, - store: { - create: { - module: 'dojo/store/JsonRest', - args: { target: 'people/' } - } - } - }, - init: 'ready' - }, - person: { $ref: 'resource!people/', get: 1, wait: true }, - personPromise: { $ref: 'resource!people/', get: 1 }, - people: { $ref: 'resource!people/', query: { name: "Sergei" }, wait: true}, - peoplePromise: { $ref: 'resource!people/', query: { name: "Sergei" }} -}); \ No newline at end of file diff --git a/test/dojo/store.html b/test/dojo/store.html deleted file mode 100644 index 9c73ed1..0000000 --- a/test/dojo/store.html +++ /dev/null @@ -1,43 +0,0 @@ - - - - - wire/dojo/store test - - - - - - -
      -
      -
      -
      - - \ No newline at end of file diff --git a/test/firebug-lite/build/.htaccess b/test/firebug-lite/build/.htaccess deleted file mode 100644 index cb38bde..0000000 --- a/test/firebug-lite/build/.htaccess +++ /dev/null @@ -1,15 +0,0 @@ -AddType "text/javascript;charset=UTF-8" .jgz .js -AddEncoding gzip .jgz - - - ExpiresActive On - ExpiresDefault A86400 - - - - RewriteEngine on - #RewriteCond %{HTTP_USER_AGENT} ".*Safari.*" [OR] - RewriteCond %{HTTP_USER_AGENT} ".*MSIE 6.*" [OR] - RewriteCond %{HTTP:Accept-Encoding} !gzip - RewriteRule (.*)\.jgz$ $1.js [L] - \ No newline at end of file diff --git a/test/firebug-lite/build/firebug-lite.js b/test/firebug-lite/build/firebug-lite.js deleted file mode 100644 index 4fc0280..0000000 --- a/test/firebug-lite/build/firebug-lite.js +++ /dev/null @@ -1,8257 +0,0 @@ -(function(){ -/************************************************************** - * - * Firebug Lite 1.4.0 - * - * Copyright (c) 2007, Parakey Inc. - * Released under BSD license. - * More information: http://getfirebug.com/firebuglite - * - **************************************************************/ -/* - * CSS selectors powered by: - * - * Sizzle CSS Selector Engine - v1.0 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -var FBL={}; -(function(){var productionDir="http://getfirebug.com/releases/lite/"; -var bookmarkletVersion=4; -var reNotWhitespace=/[^\s]/; -var reSplitFile=/:\/{1,3}(.*?)\/([^\/]*?)\/?($|\?.*)/; -this.reJavascript=/\s*javascript:\s*(.*)/; -this.reChrome=/chrome:\/\/([^\/]*)\//; -this.reFile=/file:\/\/([^\/]*)\//; -var userAgent=navigator.userAgent.toLowerCase(); -this.isFirefox=/firefox/.test(userAgent); -this.isOpera=/opera/.test(userAgent); -this.isSafari=/webkit/.test(userAgent); -this.isIE=/msie/.test(userAgent)&&!/opera/.test(userAgent); -this.isIE6=/msie 6/i.test(navigator.appVersion); -this.browserVersion=(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1]; -this.isIElt8=this.isIE&&(this.browserVersion-0<8); -this.NS=null; -this.pixelsPerInch=null; -var namespaces=[]; -this.ns=function(fn){var ns={}; -namespaces.push(fn,ns); -return ns -}; -var FBTrace=null; -this.initialize=function(){if(window.firebug&&firebug.firebuglite||window.console&&console.firebuglite){return -}if(FBL.FBTrace){FBTrace=FBL.FBTrace -}else{FBTrace=FBL.FBTrace={} -}var isChromeContext=window.Firebug&&typeof window.Firebug.SharedEnv=="object"; -if(isChromeContext){sharedEnv=window.Firebug.SharedEnv; -delete window.Firebug.SharedEnv; -FBL.Env=sharedEnv; -FBL.Env.isChromeContext=true; -FBTrace.messageQueue=FBL.Env.traceMessageQueue -}else{FBL.NS=document.documentElement.namespaceURI; -FBL.Env.browser=window; -FBL.Env.destroy=destroyEnvironment; -if(document.documentElement.getAttribute("debug")=="true"){FBL.Env.Options.startOpened=true -}findLocation(); -var prefs=FBL.Store.get("FirebugLite")||{}; -FBL.Env.DefaultOptions=FBL.Env.Options; -FBL.Env.Options=FBL.extend(FBL.Env.Options,prefs.options||{}); -if(FBL.isFirefox&&typeof FBL.Env.browser.console=="object"&&FBL.Env.browser.console.firebug&&FBL.Env.Options.disableWhenFirebugActive){return -}}if(FBL.Env.isDebugMode){FBL.Env.browser.FBL=FBL -}this.isQuiksMode=FBL.Env.browser.document.compatMode=="BackCompat"; -this.isIEQuiksMode=this.isIE&&this.isQuiksMode; -this.isIEStantandMode=this.isIE&&!this.isQuiksMode; -this.noFixedPosition=this.isIE6||this.isIEQuiksMode; -if(FBL.Env.Options.enableTrace){FBTrace.initialize() -}if(FBTrace.DBG_INITIALIZE&&isChromeContext){FBTrace.sysout("FBL.initialize - persistent application","initialize chrome context") -}if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("FBL.initialize",namespaces.length/2+" namespaces BEGIN") -}for(var i=0; -i0){path=reLastDir.exec(path)[1] -}path+=backDir[2] -}else{if(src.indexOf("/")!=-1){if(/^\.\/./.test(src)){path+=src.substring(2) -}else{if(/^\/./.test(src)){var domain=/^(\w+:\/\/[^\/]+)/.exec(path); -path=domain[1]+src -}else{path+=src -}}}}}}FBL.Env.isChromeExtension=script&&script.getAttribute("extension")=="Chrome"; -if(FBL.Env.isChromeExtension){path=productionDir; -FBL.Env.bookmarkletOutdated=false; -script={innerHTML:"{showIconWhenHidden:false}"} -}isGetFirebugSite=reGetFirebugSite.test(path); -if(isGetFirebugSite&&path.indexOf("/releases/lite/")==-1){path+="releases/lite/"+(fileName=="firebug-lite-beta.js"?"beta/":"latest/") -}var m=path&&path.match(/([^\/]+)\/$/)||null; -if(path&&m){var Env=FBL.Env; -Env.useLocalSkin=path.indexOf(location.protocol+"//"+location.host+"/")==0&&!isGetFirebugSite; -if(fileName=="firebug-lite-dev.js"){Env.isDevelopmentMode=true; -Env.isDebugMode=true -}else{if(fileName=="firebug-lite-debug.js"){Env.isDebugMode=true -}}if(Env.browser.document.documentElement.getAttribute("debug")=="true"){Env.Options.startOpened=true -}if(fileOptions){var options=fileOptions.split(","); -for(var i=0,length=options.length; -i1){for(var i=0; -i":return">"; -case"&":return"&"; -case"'":return"'"; -case'"':return""" -}return"?" -}return String(value).replace(/[<>&"']/g,replaceChars) -}this.escapeHTML=escapeHTML; -this.cropString=function(text,limit){text=text+""; -if(!limit){var halfLimit=50 -}else{var halfLimit=limit/2 -}if(text.length>limit){return this.escapeNewLines(text.substr(0,halfLimit)+"..."+text.substr(text.length-halfLimit)) -}else{return this.escapeNewLines(text) -}}; -this.isWhitespace=function(text){return !reNotWhitespace.exec(text) -}; -this.splitLines=function(text){var reSplitLines2=/.*(:?\r\n|\n|\r)?/mg; -var lines; -if(text.match){lines=text.match(reSplitLines2) -}else{var str=text+""; -lines=str.match(reSplitLines2) -}lines.pop(); -return lines -}; -this.safeToString=function(ob){if(this.isIE){try{return ob+"" -}catch(E){FBTrace.sysout("Lib.safeToString() failed for ",ob); -return"" -}}try{if(ob&&"toString" in ob&&typeof ob.toString=="function"){return ob.toString() -}}catch(exc){return ob+"" -}}; -this.hasProperties=function(ob){try{for(var name in ob){return true -}}catch(exc){}return false -}; -var reTrim=/^\s+|\s+$/g; -this.trim=function(s){return s.replace(reTrim,"") -}; -this.emptyFn=function(){}; -this.isVisible=function(elt){return this.getStyle(elt,"visibility")!="hidden"&&(elt.offsetWidth>0||elt.offsetHeight>0||elt.tagName in invisibleTags||elt.namespaceURI=="http://www.w3.org/2000/svg"||elt.namespaceURI=="http://www.w3.org/1998/Math/MathML") -}; -this.collapse=function(elt,collapsed){if(this.isIElt8){if(collapsed){this.setClass(elt,"collapsed") -}else{this.removeClass(elt,"collapsed") -}}else{elt.setAttribute("collapsed",collapsed?"true":"false") -}}; -this.obscure=function(elt,obscured){if(obscured){this.setClass(elt,"obscured") -}else{this.removeClass(elt,"obscured") -}}; -this.hide=function(elt,hidden){elt.style.visibility=hidden?"hidden":"visible" -}; -this.clearNode=function(node){var nodeName=" "+node.nodeName.toLowerCase()+" "; -var ignoreTags=" table tbody thead tfoot th tr td "; -if(this.isIE&&ignoreTags.indexOf(nodeName)!=-1){this.eraseNode(node) -}else{node.innerHTML="" -}}; -this.eraseNode=function(node){while(node.lastChild){node.removeChild(node.lastChild) -}}; -this.iterateWindows=function(win,handler){if(!win||!win.document){return -}handler(win); -if(win==top||!win.frames){return -}for(var i=0; -iscrollParent.offsetHeight){return scrollParent -}}}; -this.isScrolledToBottom=function(element){var onBottom=(element.scrollTop+element.offsetHeight)==element.scrollHeight; -if(FBTrace.DBG_CONSOLE){FBTrace.sysout("isScrolledToBottom offsetHeight: "+element.offsetHeight+" onBottom:"+onBottom) -}return onBottom -}; -this.scrollToBottom=function(element){element.scrollTop=element.scrollHeight; -if(FBTrace.DBG_CONSOLE){FBTrace.sysout("scrollToBottom reset scrollTop "+element.scrollTop+" = "+element.scrollHeight); -if(element.scrollHeight==element.offsetHeight){FBTrace.sysout("scrollToBottom attempt to scroll non-scrollable element "+element,element) -}}return(element.scrollTop==element.scrollHeight) -}; -this.move=function(element,x,y){element.style.left=x+"px"; -element.style.top=y+"px" -}; -this.resize=function(element,w,h){element.style.width=w+"px"; -element.style.height=h+"px" -}; -this.linesIntoCenterView=function(element,scrollBox){if(!scrollBox){scrollBox=this.getOverflowParent(element) -}if(!scrollBox){return -}var offset=this.getClientOffset(element); -var topSpace=offset.y-scrollBox.scrollTop; -var bottomSpace=(scrollBox.scrollTop+scrollBox.clientHeight)-(offset.y+element.offsetHeight); -if(topSpace<0||bottomSpace<0){var split=(scrollBox.clientHeight/2); -var centerY=offset.y-split; -scrollBox.scrollTop=centerY; -topSpace=split; -bottomSpace=split-element.offsetHeight -}return{before:Math.round((topSpace/element.offsetHeight)+0.5),after:Math.round((bottomSpace/element.offsetHeight)+0.5)} -}; -this.scrollIntoCenterView=function(element,scrollBox,notX,notY){if(!element){return -}if(!scrollBox){scrollBox=this.getOverflowParent(element) -}if(!scrollBox){return -}var offset=this.getClientOffset(element); -if(!notY){var topSpace=offset.y-scrollBox.scrollTop; -var bottomSpace=(scrollBox.scrollTop+scrollBox.clientHeight)-(offset.y+element.offsetHeight); -if(topSpace<0||bottomSpace<0){var centerY=offset.y-(scrollBox.clientHeight/2); -scrollBox.scrollTop=centerY -}}if(!notX){var leftSpace=offset.x-scrollBox.scrollLeft; -var rightSpace=(scrollBox.scrollLeft+scrollBox.clientWidth)-(offset.x+element.clientWidth); -if(leftSpace<0||rightSpace<0){var centerX=offset.x-(scrollBox.clientWidth/2); -scrollBox.scrollLeft=centerX -}}if(FBTrace.DBG_SOURCEFILES){FBTrace.sysout("lib.scrollIntoCenterView ","Element:"+element.innerHTML) -}}; -var cssKeywordMap=null; -var cssPropNames=null; -var cssColorNames=null; -var imageRules=null; -this.getCSSKeywordsByProperty=function(propName){if(!cssKeywordMap){cssKeywordMap={}; -for(var name in this.cssInfo){var list=[]; -var types=this.cssInfo[name]; -for(var i=0; -i"); -var pureText=true; -for(var child=element.firstChild; -child; -child=child.nextSibling){pureText=pureText&&(child.nodeType==Node.TEXT_NODE) -}if(pureText){html.push(escapeForHtmlEditor(elt.textContent)) -}else{for(var child=elt.firstChild; -child; -child=child.nextSibling){toHTML(child) -}}html.push("") -}else{if(isElementSVG(elt)||isElementMathML(elt)){html.push("/>") -}else{if(self.isSelfClosing(elt)){html.push((isElementXHTML(elt))?"/>":">") -}else{html.push(">") -}}}}else{if(elt.nodeType==Node.TEXT_NODE){html.push(escapeForTextNode(elt.textContent)) -}else{if(elt.nodeType==Node.CDATA_SECTION_NODE){html.push("") -}else{if(elt.nodeType==Node.COMMENT_NODE){html.push("") -}}}}}var html=[]; -toHTML(element); -return html.join("") -}; -this.getElementXML=function(element){function toXML(elt){if(elt.nodeType==Node.ELEMENT_NODE){if(unwrapObject(elt).firebugIgnore){return -}xml.push("<",elt.nodeName.toLowerCase()); -for(var i=0; -i"); -for(var child=elt.firstChild; -child; -child=child.nextSibling){toXML(child) -}xml.push("") -}else{xml.push("/>") -}}else{if(elt.nodeType==Node.TEXT_NODE){xml.push(elt.nodeValue) -}else{if(elt.nodeType==Node.CDATA_SECTION_NODE){xml.push("") -}else{if(elt.nodeType==Node.COMMENT_NODE){xml.push("") -}}}}}var xml=[]; -toXML(element); -return xml.join("") -}; -this.hasClass=function(node,name){if(arguments.length==2){return(" "+node.className+" ").indexOf(" "+name+" ")!=-1 -}if(!node||node.nodeType!=1){return false -}else{for(var i=1; -i=0){var size=name.length; -node.className=node.className.substr(0,index-1)+node.className.substr(index+size) -}}}; -this.toggleClass=function(elt,name){if((" "+elt.className+" ").indexOf(" "+name+" ")!=-1){this.removeClass(elt,name) -}else{this.setClass(elt,name) -}}; -this.setClassTimed=function(elt,name,context,timeout){if(!timeout){timeout=1300 -}if(elt.__setClassTimeout){context.clearTimeout(elt.__setClassTimeout) -}else{this.setClass(elt,name) -}elt.__setClassTimeout=context.setTimeout(function(){delete elt.__setClassTimeout; -FBL.removeClass(elt,name) -},timeout) -}; -this.cancelClassTimed=function(elt,name,context){if(elt.__setClassTimeout){FBL.removeClass(elt,name); -context.clearTimeout(elt.__setClassTimeout); -delete elt.__setClassTimeout -}}; -this.$=function(id,doc){if(doc){return doc.getElementById(id) -}else{return FBL.Firebug.chrome.document.getElementById(id) -}}; -this.$$=function(selector,doc){if(doc||!FBL.Firebug.chrome){return FBL.Firebug.Selector(selector,doc) -}else{return FBL.Firebug.Selector(selector,FBL.Firebug.chrome.document) -}}; -this.getChildByClass=function(node){for(var i=1; -i1&&doc.styleSheets[1].href=="chrome://browser/skin/feeds/subscribe.css")){return true -}return FBL.isSystemURL(win.location.href) -}catch(exc){ERROR("tabWatcher.isSystemPage document not ready:"+exc); -return false -}}; -this.isSystemStyleSheet=function(sheet){var href=sheet&&sheet.href; -return href&&FBL.isSystemURL(href) -}; -this.getURIHost=function(uri){try{if(uri){return uri.host -}else{return"" -}}catch(exc){return"" -}}; -this.isLocalURL=function(url){if(url.substr(0,5)=="file:"){return true -}else{if(url.substr(0,8)=="wyciwyg:"){return true -}else{return false -}}}; -this.isDataURL=function(url){return(url&&url.substr(0,5)=="data:") -}; -this.getLocalPath=function(url){if(this.isLocalURL(url)){var fileHandler=ioService.getProtocolHandler("file").QueryInterface(Ci.nsIFileProtocolHandler); -var file=fileHandler.getFileFromURLSpec(url); -return file.path -}}; -this.getURLFromLocalFile=function(file){var fileHandler=ioService.getProtocolHandler("file").QueryInterface(Ci.nsIFileProtocolHandler); -var URL=fileHandler.getURLSpecFromFile(file); -return URL -}; -this.getDataURLForContent=function(content,url){var uri="data:text/html;"; -uri+="fileName="+encodeURIComponent(url)+","; -uri+=encodeURIComponent(content); -return uri -},this.getDomain=function(url){var m=/[^:]+:\/{1,3}([^\/]+)/.exec(url); -return m?m[1]:"" -}; -this.getURLPath=function(url){var m=/[^:]+:\/{1,3}[^\/]+(\/.*?)$/.exec(url); -return m?m[1]:"" -}; -this.getPrettyDomain=function(url){var m=/[^:]+:\/{1,3}(www\.)?([^\/]+)/.exec(url); -return m?m[2]:"" -}; -this.absoluteURL=function(url,baseURL){return this.absoluteURLWithDots(url,baseURL).replace("/./","/","g") -}; -this.absoluteURLWithDots=function(url,baseURL){if(url[0]=="?"){return baseURL+url -}var reURL=/(([^:]+:)\/{1,2}[^\/]*)(.*?)$/; -var m=reURL.exec(url); -if(m){return url -}var m=reURL.exec(baseURL); -if(!m){return"" -}var head=m[1]; -var tail=m[3]; -if(url.substr(0,2)=="//"){return m[2]+url -}else{if(url[0]=="/"){return head+url -}else{if(tail[tail.length-1]=="/"){return baseURL+url -}else{var parts=tail.split("/"); -return head+parts.slice(0,parts.length-1).join("/")+"/"+url -}}}}; -this.normalizeURL=function(url){if(!url){return"" -}if(url.length<255){url=url.replace(/[^\/]+\/\.\.\//,"","g"); -url=url.replace(/#.*/,""); -url=url.replace(/file:\/([^\/])/g,"file:///$1"); -if(url.indexOf("chrome:")==0){var m=reChromeCase.exec(url); -if(m){url="chrome://"+m[1].toLowerCase()+"/"+m[2] -}}}return url -}; -this.denormalizeURL=function(url){return url.replace(/file:\/\/\//g,"file:/") -}; -this.parseURLParams=function(url){var q=url?url.indexOf("?"):-1; -if(q==-1){return[] -}var search=url.substr(q+1); -var h=search.lastIndexOf("#"); -if(h!=-1){search=search.substr(0,h) -}if(!search){return[] -}return this.parseURLEncodedText(search) -}; -this.parseURLEncodedText=function(text){var maxValueLength=25000; -var params=[]; -text=text.replace(/\+/g," "); -var args=text.split("&"); -for(var i=0; -imaxValueLength){parts[1]=this.$STR("LargeData") -}params.push({name:decodeURIComponent(parts[0]),value:decodeURIComponent(parts[1])}) -}else{params.push({name:decodeURIComponent(parts[0]),value:""}) -}}catch(e){if(FBTrace.DBG_ERRORS){FBTrace.sysout("parseURLEncodedText EXCEPTION ",e); -FBTrace.sysout("parseURLEncodedText EXCEPTION URI",args[i]) -}}}params.sort(function(a,b){return a.name<=b.name?-1:1 -}); -return params -}; -this.parseURLParamsArray=function(url){var q=url?url.indexOf("?"):-1; -if(q==-1){return[] -}var search=url.substr(q+1); -var h=search.lastIndexOf("#"); -if(h!=-1){search=search.substr(0,h) -}if(!search){return[] -}return this.parseURLEncodedTextArray(search) -}; -this.parseURLEncodedTextArray=function(text){var maxValueLength=25000; -var params=[]; -text=text.replace(/\+/g," "); -var args=text.split("&"); -for(var i=0; -imaxValueLength){parts[1]=this.$STR("LargeData") -}params.push({name:decodeURIComponent(parts[0]),value:[decodeURIComponent(parts[1])]}) -}else{params.push({name:decodeURIComponent(parts[0]),value:[""]}) -}}catch(e){if(FBTrace.DBG_ERRORS){FBTrace.sysout("parseURLEncodedText EXCEPTION ",e); -FBTrace.sysout("parseURLEncodedText EXCEPTION URI",args[i]) -}}}params.sort(function(a,b){return a.name<=b.name?-1:1 -}); -return params -}; -this.reEncodeURL=function(file,text){var lines=text.split("\n"); -var params=this.parseURLEncodedText(lines[lines.length-1]); -var args=[]; -for(var i=0; -i0){setTimeout(this.sendRequest,10) -}}},getResponse:function(options){var t=this.transport,type=options.dataType; -if(t.status!=200){return t.statusText -}else{if(type=="text"){return t.responseText -}else{if(type=="html"){return t.responseText -}else{if(type=="xml"){return t.responseXML -}else{if(type=="json"){return eval("("+t.responseText+")") -}}}}}},getState:function(){return this.states[this.transport.readyState] -}}; -this.createCookie=function(name,value,days){if("cookie" in document){if(days){var date=new Date(); -date.setTime(date.getTime()+(days*24*60*60*1000)); -var expires="; expires="+date.toGMTString() -}else{var expires="" -}document.cookie=name+"="+value+expires+"; path=/" -}}; -this.readCookie=function(name){if("cookie" in document){var nameEQ=name+"="; -var ca=document.cookie.split(";"); -for(var i=0; -iobjects.length){format=""; -objIndex=-1; -parts.length=0; -break -}}}var result=[]; -for(var i=0; -i'; -var tabNode=this.tabNode=createElement("a",{id:panelId+"Tab",className:"fbTab fbHover",innerHTML:tabHTML}); -if(isIE6){tabNode.href="javascript:void(0)" -}var panelBarNode=this.parentPanel?Firebug.chrome.getPanel(this.parentPanel).sidePanelBarNode:this.panelBarNode; -panelBarNode.appendChild(tabNode); -tabNode.style.display="block"; -if(options.hasToolButtons){this.toolButtonsNode=createElement("span",{id:panelId+"Buttons",className:"fbToolbarButtons"}); -$("fbToolbarButtons").appendChild(this.toolButtonsNode) -}if(options.hasStatusBar){this.statusBarBox=$("fbStatusBarBox"); -this.statusBarNode=createElement("span",{id:panelId+"StatusBar",className:"fbToolbarButtons fbStatusBar"}); -this.statusBarBox.appendChild(this.statusBarNode) -}}this.containerNode=this.panelNode.parentNode; -if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.Panel.create",this.name) -}this.onContextMenu=bind(this.onContextMenu,this) -},destroy:function(state){if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.Panel.destroy",this.name) -}if(this.hasSidePanel){this.sidePanelBar.destroy(); -this.sidePanelBar=null -}this.options=null; -this.name=null; -this.parentPanel=null; -this.tabNode=null; -this.panelNode=null; -this.containerNode=null; -this.toolButtonsNode=null; -this.statusBarBox=null; -this.statusBarNode=null -},initialize:function(){if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.Panel.initialize",this.name) -}if(this.hasSidePanel){this.sidePanelBar.initialize() -}var options=this.options=extend(Firebug.Panel.options,this.options); -var panelId="fb"+this.name; -this.panelNode=$(panelId); -this.tabNode=$(panelId+"Tab"); -this.tabNode.style.display="block"; -if(options.hasStatusBar){this.statusBarBox=$("fbStatusBarBox"); -this.statusBarNode=$(panelId+"StatusBar") -}if(options.hasToolButtons){this.toolButtonsNode=$(panelId+"Buttons") -}this.containerNode=this.panelNode.parentNode; -this.containerNode.scrollTop=this.lastScrollTop; -addEvent(this.containerNode,"contextmenu",this.onContextMenu); -Firebug.chrome.currentPanel=Firebug.chrome.selectedPanel&&Firebug.chrome.selectedPanel.sidePanelBar?Firebug.chrome.selectedPanel.sidePanelBar.selectedPanel:Firebug.chrome.selectedPanel; -Firebug.showInfoTips=true; -if(Firebug.InfoTip){Firebug.InfoTip.initializeBrowser(Firebug.chrome) -}},shutdown:function(){if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.Panel.shutdown",this.name) -}if(Firebug.InfoTip){Firebug.InfoTip.uninitializeBrowser(Firebug.chrome) -}if(Firebug.chrome.largeCommandLineVisible){Firebug.chrome.hideLargeCommandLine() -}if(this.hasSidePanel){}this.lastScrollTop=this.containerNode.scrollTop; -removeEvent(this.containerNode,"contextmenu",this.onContextMenu) -},detach:function(oldChrome,newChrome){if(oldChrome&&oldChrome.selectedPanel&&oldChrome.selectedPanel.name==this.name){this.lastScrollTop=oldChrome.selectedPanel.containerNode.scrollTop -}},reattach:function(doc){if(this.options.innerHTMLSync){this.synchronizeUI() -}},synchronizeUI:function(){this.containerNode.scrollTop=this.lastScrollTop||0 -},show:function(state){var options=this.options; -if(options.hasStatusBar){this.statusBarBox.style.display="inline"; -this.statusBarNode.style.display="inline" -}if(options.hasToolButtons){this.toolButtonsNode.style.display="inline" -}this.panelNode.style.display="block"; -this.visible=true; -if(!this.parentPanel){Firebug.chrome.layout(this) -}},hide:function(state){var options=this.options; -if(options.hasStatusBar){this.statusBarBox.style.display="none"; -this.statusBarNode.style.display="none" -}if(options.hasToolButtons){this.toolButtonsNode.style.display="none" -}this.panelNode.style.display="none"; -this.visible=false -},watchWindow:function(win){},unwatchWindow:function(win){},updateOption:function(name,value){},showToolbarButtons:function(buttonsId,show){try{if(!this.context.browser){if(FBTrace.DBG_ERRORS){FBTrace.sysout("firebug.Panel showToolbarButtons this.context has no browser, this:",this) -}return -}var buttons=this.context.browser.chrome.$(buttonsId); -if(buttons){collapse(buttons,show?"false":"true") -}}catch(exc){if(FBTrace.DBG_ERRORS){FBTrace.dumpProperties("firebug.Panel showToolbarButtons FAILS",exc); -if(!this.context.browser){FBTrace.dumpStack("firebug.Panel showToolbarButtons no browser") -}}}},supportsObject:function(object){return 0 -},hasObject:function(object){return false -},select:function(object,forceUpdate){if(!object){object=this.getDefaultSelection(this.context) -}if(FBTrace.DBG_PANELS){FBTrace.sysout("firebug.select "+this.name+" forceUpdate: "+forceUpdate+" "+object+((object==this.selection)?"==":"!=")+this.selection) -}if(forceUpdate||object!=this.selection){this.selection=object; -this.updateSelection(object) -}},updateSelection:function(object){},markChange:function(skipSelf){if(this.dependents){if(skipSelf){for(var i=0; -ilocB.path){return 1 -}if(locA.pathlocB.name){return 1 -}if(locA.namewidth||el.scrollHeight>height)){width=el.scrollWidth; -height=el.scrollHeight -}return{width:width,height:height} -},getWindowScrollPosition:function(){var top=0,left=0,el; -if(typeof this.window.pageYOffset=="number"){top=this.window.pageYOffset; -left=this.window.pageXOffset -}else{if((el=this.document.body)&&(el.scrollTop||el.scrollLeft)){top=el.scrollTop; -left=el.scrollLeft -}else{if((el=this.document.documentElement)&&(el.scrollTop||el.scrollLeft)){top=el.scrollTop; -left=el.scrollLeft -}}}return{top:top,left:left} -},getElementFromPoint:function(x,y){if(shouldFixElementFromPoint){var scroll=this.getWindowScrollPosition(); -return this.document.elementFromPoint(x+scroll.left,y+scroll.top) -}else{return this.document.elementFromPoint(x,y) -}},getElementPosition:function(el){var left=0; -var top=0; -do{left+=el.offsetLeft; -top+=el.offsetTop -}while(el=el.offsetParent); -return{left:left,top:top} -},getElementBox:function(el){var result={}; -if(el.getBoundingClientRect){var rect=el.getBoundingClientRect(); -var offset=isIE?this.document.body.clientTop||this.document.documentElement.clientTop:0; -var scroll=this.getWindowScrollPosition(); -result.top=Math.round(rect.top-offset+scroll.top); -result.left=Math.round(rect.left-offset+scroll.left); -result.height=Math.round(rect.bottom-rect.top); -result.width=Math.round(rect.right-rect.left) -}else{var position=this.getElementPosition(el); -result.top=position.top; -result.left=position.left; -result.height=el.offsetHeight; -result.width=el.offsetWidth -}return result -},getMeasurement:function(el,name){var result={value:0,unit:"px"}; -var cssValue=this.getStyle(el,name); -if(!cssValue){return result -}if(cssValue.toLowerCase()=="auto"){return result -}var reMeasure=/(\d+\.?\d*)(.*)/; -var m=cssValue.match(reMeasure); -if(m){result.value=m[1]-0; -result.unit=m[2].toLowerCase() -}return result -},getMeasurementInPixels:function(el,name){if(!el){return null -}var m=this.getMeasurement(el,name); -var value=m.value; -var unit=m.unit; -if(unit=="px"){return value -}else{if(unit=="pt"){return this.pointsToPixels(name,value) -}else{if(unit=="em"){return this.emToPixels(el,value) -}else{if(unit=="%"){return this.percentToPixels(el,value) -}else{if(unit=="ex"){return this.exToPixels(el,value) -}}}}}},getMeasurementBox1:function(el,name){var sufixes=["Top","Left","Bottom","Right"]; -var result=[]; -for(var i=0,sufix; -sufix=sufixes[i]; -i++){result[i]=Math.round(this.getMeasurementInPixels(el,name+sufix)) -}return{top:result[0],left:result[1],bottom:result[2],right:result[3]} -},getMeasurementBox:function(el,name){var result=[]; -var sufixes=name=="border"?["TopWidth","LeftWidth","BottomWidth","RightWidth"]:["Top","Left","Bottom","Right"]; -if(isIE){var propName,cssValue; -var autoMargin=null; -for(var i=0,sufix; -sufix=sufixes[i]; -i++){propName=name+sufix; -cssValue=el.currentStyle[propName]||el.style[propName]; -if(cssValue=="auto"){if(!autoMargin){autoMargin=this.getCSSAutoMarginBox(el) -}result[i]=autoMargin[sufix.toLowerCase()] -}else{result[i]=this.getMeasurementInPixels(el,propName) -}}}else{for(var i=0,sufix; -sufix=sufixes[i]; -i++){result[i]=this.getMeasurementInPixels(el,name+sufix) -}}return{top:result[0],left:result[1],bottom:result[2],right:result[3]} -},getCSSAutoMarginBox:function(el){if(isIE&&" meta title input script link a ".indexOf(" "+el.nodeName.toLowerCase()+" ")!=-1){return{top:0,left:0,bottom:0,right:0} -}if(isIE&&" h1 h2 h3 h4 h5 h6 h7 ul p ".indexOf(" "+el.nodeName.toLowerCase()+" ")==-1){return{top:0,left:0,bottom:0,right:0} -}var offsetTop=0; -if(false&&isIEStantandMode){var scrollSize=Firebug.browser.getWindowScrollSize(); -offsetTop=scrollSize.height -}var box=this.document.createElement("div"); -box.style.cssText="margin:0; padding:1px; border: 0; visibility: hidden;"; -var clone=el.cloneNode(false); -var text=this.document.createTextNode(" "); -clone.appendChild(text); -box.appendChild(clone); -this.document.body.appendChild(box); -var marginTop=clone.offsetTop-box.offsetTop-1; -var marginBottom=box.offsetHeight-clone.offsetHeight-2-marginTop; -var marginLeft=clone.offsetLeft-box.offsetLeft-1; -var marginRight=box.offsetWidth-clone.offsetWidth-2-marginLeft; -this.document.body.removeChild(box); -return{top:marginTop+offsetTop,left:marginLeft,bottom:marginBottom-offsetTop,right:marginRight} -},getFontSizeInPixels:function(el){var size=this.getMeasurement(el,"fontSize"); -if(size.unit=="px"){return size.value -}var computeDirtyFontSize=function(el,calibration){var div=this.document.createElement("div"); -var divStyle=offscreenStyle; -if(calibration){divStyle+=" font-size:"+calibration+"px;" -}div.style.cssText=divStyle; -div.innerHTML="A"; -el.appendChild(div); -var value=div.offsetHeight; -el.removeChild(div); -return value -}; -var rate=200/225; -var value=computeDirtyFontSize(el); -return value*rate -},pointsToPixels:function(name,value,returnFloat){var axis=/Top$|Bottom$/.test(name)?"y":"x"; -var result=value*pixelsPerInch[axis]/72; -return returnFloat?result:Math.round(result) -},emToPixels:function(el,value){if(!el){return null -}var fontSize=this.getFontSizeInPixels(el); -return Math.round(value*fontSize) -},exToPixels:function(el,value){if(!el){return null -}var div=this.document.createElement("div"); -div.style.cssText=offscreenStyle+"width:"+value+"ex;"; -el.appendChild(div); -var value=div.offsetWidth; -el.removeChild(div); -return value -},percentToPixels:function(el,value){if(!el){return null -}var div=this.document.createElement("div"); -div.style.cssText=offscreenStyle+"width:"+value+"%;"; -el.appendChild(div); -var value=div.offsetWidth; -el.removeChild(div); -return value -},getStyle:isIE?function(el,name){return el.currentStyle[name]||el.style[name]||undefined -}:function(el,name){return this.document.defaultView.getComputedStyle(el,null)[name]||el.style[name]||undefined -}} -}}); -FBL.ns(function(){with(FBL){var WindowDefaultOptions={type:"frame",id:"FirebugUI"},commandLine,fbTop,fbContent,fbContentStyle,fbBottom,fbBtnInspect,fbToolbar,fbPanelBox1,fbPanelBox1Style,fbPanelBox2,fbPanelBox2Style,fbPanelBar2Box,fbPanelBar2BoxStyle,fbHSplitter,fbVSplitter,fbVSplitterStyle,fbPanel1,fbPanel1Style,fbPanel2,fbPanel2Style,fbConsole,fbConsoleStyle,fbHTML,fbCommandLine,fbLargeCommandLine,fbLargeCommandButtons,topHeight,topPartialHeight,chromeRedrawSkipRate=isIE?75:isOpera?80:75,lastSelectedPanelName,focusCommandLineState=0,lastFocusedPanelName,lastHSplitterMouseMove=0,onHSplitterMouseMoveBuffer=null,onHSplitterMouseMoveTimer=null,lastVSplitterMouseMove=0; -FBL.defaultPersistedState={isOpen:false,height:300,sidePanelWidth:350,selectedPanelName:"Console",selectedHTMLElementId:null,htmlSelectionStack:[]}; -FBL.FirebugChrome={chromeMap:{},htmlSelectionStack:[],create:function(){if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("FirebugChrome.create","creating chrome window") -}createChromeWindow() -},initialize:function(){if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("FirebugChrome.initialize","initializing chrome window") -}if(Env.chrome.type=="frame"||Env.chrome.type=="div"){ChromeMini.create(Env.chrome) -}var chrome=Firebug.chrome=new Chrome(Env.chrome); -FirebugChrome.chromeMap[chrome.type]=chrome; -addGlobalEvent("keydown",onGlobalKeyDown); -if(Env.Options.enablePersistent&&chrome.type=="popup"){var frame=FirebugChrome.chromeMap.frame; -if(frame){frame.close() -}chrome.initialize() -}},clone:function(FBChrome){for(var name in FBChrome){var prop=FBChrome[name]; -if(FBChrome.hasOwnProperty(name)&&!isFunction(prop)){this[name]=prop -}}}}; -var createChromeWindow=function(options){options=extend(WindowDefaultOptions,options||{}); -var browserWin=Env.browser.window; -var browserContext=new Context(browserWin); -var prefs=Store.get("FirebugLite"); -var persistedState=prefs&&prefs.persistedState||defaultPersistedState; -var chrome={},context=options.context||Env.browser,type=chrome.type=Env.Options.enablePersistent?"popup":options.type,isChromeFrame=type=="frame",useLocalSkin=Env.useLocalSkin,url=useLocalSkin?Env.Location.skin:"about:blank",body=context.document.getElementsByTagName("body")[0],formatNode=function(node){if(!Env.isDebugMode){node.firebugIgnore=true -}var browserWinSize=browserContext.getWindowSize(); -var height=persistedState.height||300; -height=Math.min(browserWinSize.height,height); -height=Math.max(200,height); -node.style.border="0"; -node.style.visibility="hidden"; -node.style.zIndex="2147483647"; -node.style.position=noFixedPosition?"absolute":"fixed"; -node.style.width="100%"; -node.style.left="0"; -node.style.bottom=noFixedPosition?"-1px":"0"; -node.style.height=height+"px" -},createChromeDiv=function(){var node=chrome.node=createGlobalElement("div"),style=createGlobalElement("style"),css=FirebugChrome.Skin.CSS,rules=".fbBody *{margin:0;padding:0;font-size:11px;line-height:13px;color:inherit;}"+css+".fbBody #fbHSplitter{position:absolute !important;} .fbBody #fbHTML span{line-height:14px;} .fbBody .lineNo div{line-height:inherit !important;}"; -style.type="text/css"; -if(style.styleSheet){style.styleSheet.cssText=rules -}else{style.appendChild(context.document.createTextNode(rules)) -}document.getElementsByTagName("head")[0].appendChild(style); -node.className="fbBody"; -node.style.overflow="hidden"; -node.innerHTML=getChromeDivTemplate(); -if(isIE){setTimeout(function(){node.firstChild.style.height="1px"; -node.firstChild.style.position="static" -},0) -}formatNode(node); -body.appendChild(node); -chrome.window=window; -chrome.document=document; -onChromeLoad(chrome) -}; -try{if(type=="div"){createChromeDiv(); -return -}else{if(isChromeFrame){var node=chrome.node=createGlobalElement("iframe"); -node.setAttribute("src",url); -node.setAttribute("frameBorder","0"); -formatNode(node); -body.appendChild(node); -node.id=options.id -}else{var height=persistedState.popupHeight||300; -var browserWinSize=browserContext.getWindowSize(); -var browserWinLeft=typeof browserWin.screenX=="number"?browserWin.screenX:browserWin.screenLeft; -var popupLeft=typeof persistedState.popupLeft=="number"?persistedState.popupLeft:browserWinLeft; -var browserWinTop=typeof browserWin.screenY=="number"?browserWin.screenY:browserWin.screenTop; -var popupTop=typeof persistedState.popupTop=="number"?persistedState.popupTop:Math.max(0,Math.min(browserWinTop+browserWinSize.height-height,screen.availHeight-height-61)); -var popupWidth=typeof persistedState.popupWidth=="number"?persistedState.popupWidth:Math.max(0,Math.min(browserWinSize.width,screen.availWidth-10)); -var popupHeight=typeof persistedState.popupHeight=="number"?persistedState.popupHeight:300; -var options=["true,top=",popupTop,",left=",popupLeft,",height=",popupHeight,",width=",popupWidth,",resizable"].join(""),node=chrome.node=context.window.open(url,"popup",options); -if(node){try{node.focus() -}catch(E){alert("Firebug Error: Firebug popup was blocked."); -return -}}else{alert("Firebug Error: Firebug popup was blocked."); -return -}}}if(!useLocalSkin){var tpl=getChromeTemplate(!isChromeFrame),doc=isChromeFrame?node.contentWindow.document:node.document; -doc.write(tpl); -doc.close() -}var win,waitDelay=useLocalSkin?isChromeFrame?200:300:100,waitForWindow=function(){if(isChromeFrame&&(win=node.contentWindow)&&node.contentWindow.document.getElementById("fbCommandLine")||!isChromeFrame&&(win=node.window)&&node.document&&node.document.getElementById("fbCommandLine")){chrome.window=win.window; -chrome.document=win.document; -setTimeout(function(){onChromeLoad(chrome) -},useLocalSkin?200:0) -}else{setTimeout(waitForWindow,waitDelay) -}}; -waitForWindow() -}catch(e){var msg=e.message||e; -if(/access/i.test(msg)){if(isChromeFrame){body.removeChild(node) -}else{if(type=="popup"){node.close() -}}createChromeDiv() -}else{alert("Firebug Error: Firebug GUI could not be created.") -}}}; -var onChromeLoad=function onChromeLoad(chrome){Env.chrome=chrome; -if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Chrome onChromeLoad","chrome window loaded") -}if(Env.Options.enablePersistent){Env.FirebugChrome=FirebugChrome; -chrome.window.Firebug=chrome.window.Firebug||{}; -chrome.window.Firebug.SharedEnv=Env; -if(Env.isDevelopmentMode){Env.browser.window.FBDev.loadChromeApplication(chrome) -}else{var doc=chrome.document; -var script=doc.createElement("script"); -script.src=Env.Location.app+"#remote,persist"; -doc.getElementsByTagName("head")[0].appendChild(script) -}}else{if(chrome.type=="frame"||chrome.type=="div"){setTimeout(function(){FBL.Firebug.initialize() -},0) -}else{if(chrome.type=="popup"){var oldChrome=FirebugChrome.chromeMap.frame; -var newChrome=new Chrome(chrome); -dispatch(newChrome.panelMap,"detach",[oldChrome,newChrome]); -newChrome.reattach(oldChrome,newChrome) -}}}}; -var getChromeDivTemplate=function(){return FirebugChrome.Skin.HTML -}; -var getChromeTemplate=function(isPopup){var tpl=FirebugChrome.Skin; -var r=[],i=-1; -r[++i]=''; -r[++i]=""; -r[++i]=Firebug.version; -r[++i]=""; -r[++i]=''; -r[++i]=tpl.HTML; -r[++i]=""; -return r.join("") -}; -var Chrome=function Chrome(chrome){var type=chrome.type; -var Base=type=="frame"||type=="div"?ChromeFrameBase:ChromePopupBase; -append(this,Base); -append(this,chrome); -append(this,new Context(chrome.window)); -FirebugChrome.chromeMap[type]=this; -Firebug.chrome=this; -Env.chrome=chrome.window; -this.commandLineVisible=false; -this.sidePanelVisible=false; -this.create(); -return this -}; -var ChromeBase={}; -append(ChromeBase,Controller); -append(ChromeBase,PanelBar); -append(ChromeBase,{node:null,type:null,document:null,window:null,sidePanelVisible:false,commandLineVisible:false,largeCommandLineVisible:false,inspectButton:null,create:function(){PanelBar.create.call(this); -if(Firebug.Inspector){this.inspectButton=new Button({type:"toggle",element:$("fbChrome_btInspect"),owner:Firebug.Inspector,onPress:Firebug.Inspector.startInspecting,onUnpress:Firebug.Inspector.stopInspecting}) -}},destroy:function(){if(Firebug.Inspector){this.inspectButton.destroy() -}PanelBar.destroy.call(this); -this.shutdown() -},testMenu:function(){var firebugMenu=new Menu({id:"fbFirebugMenu",items:[{label:"Open Firebug",type:"shortcut",key:isFirefox?"Shift+F12":"F12",checked:true,command:"toggleChrome"},{label:"Open Firebug in New Window",type:"shortcut",key:isFirefox?"Ctrl+Shift+F12":"Ctrl+F12",command:"openPopup"},{label:"Inspect Element",type:"shortcut",key:"Ctrl+Shift+C",command:"toggleInspect"},{label:"Command Line",type:"shortcut",key:"Ctrl+Shift+L",command:"focusCommandLine"},"-",{label:"Options",type:"group",child:"fbFirebugOptionsMenu"},"-",{label:"Firebug Lite Website...",command:"visitWebsite"},{label:"Discussion Group...",command:"visitDiscussionGroup"},{label:"Issue Tracker...",command:"visitIssueTracker"}],onHide:function(){iconButton.restore() -},toggleChrome:function(){Firebug.chrome.toggle() -},openPopup:function(){Firebug.chrome.toggle(true,true) -},toggleInspect:function(){Firebug.Inspector.toggleInspect() -},focusCommandLine:function(){Firebug.chrome.focusCommandLine() -},visitWebsite:function(){this.visit("http://getfirebug.com/lite.html") -},visitDiscussionGroup:function(){this.visit("http://groups.google.com/group/firebug") -},visitIssueTracker:function(){this.visit("http://code.google.com/p/fbug/issues/list") -},visit:function(url){window.open(url) -}}); -var firebugOptionsMenu={id:"fbFirebugOptionsMenu",getItems:function(){var cookiesDisabled=!Firebug.saveCookies; -return[{label:"Start Opened",type:"checkbox",value:"startOpened",checked:Firebug.startOpened,disabled:cookiesDisabled},{label:"Start in New Window",type:"checkbox",value:"startInNewWindow",checked:Firebug.startInNewWindow,disabled:cookiesDisabled},{label:"Show Icon When Hidden",type:"checkbox",value:"showIconWhenHidden",checked:Firebug.showIconWhenHidden,disabled:cookiesDisabled},{label:"Override Console Object",type:"checkbox",value:"overrideConsole",checked:Firebug.overrideConsole,disabled:cookiesDisabled},{label:"Ignore Firebug Elements",type:"checkbox",value:"ignoreFirebugElements",checked:Firebug.ignoreFirebugElements,disabled:cookiesDisabled},{label:"Disable When Firebug Active",type:"checkbox",value:"disableWhenFirebugActive",checked:Firebug.disableWhenFirebugActive,disabled:cookiesDisabled},{label:"Disable XHR Listener",type:"checkbox",value:"disableXHRListener",checked:Firebug.disableXHRListener,disabled:cookiesDisabled},{label:"Disable Resource Fetching",type:"checkbox",value:"disableResourceFetching",checked:Firebug.disableResourceFetching,disabled:cookiesDisabled},{label:"Enable Trace Mode",type:"checkbox",value:"enableTrace",checked:Firebug.enableTrace,disabled:cookiesDisabled},{label:"Enable Persistent Mode (experimental)",type:"checkbox",value:"enablePersistent",checked:Firebug.enablePersistent,disabled:cookiesDisabled},"-",{label:"Reset All Firebug Options",command:"restorePrefs",disabled:cookiesDisabled}] -},onCheck:function(target,value,checked){Firebug.setPref(value,checked) -},restorePrefs:function(target){Firebug.erasePrefs(); -if(target){this.updateMenu(target) -}},updateMenu:function(target){var options=getElementsByClass(target.parentNode,"fbMenuOption"); -var firstOption=options[0]; -var enabled=Firebug.saveCookies; -if(enabled){Menu.check(firstOption) -}else{Menu.uncheck(firstOption) -}if(enabled){Menu.check(options[0]) -}else{Menu.uncheck(options[0]) -}for(var i=1,length=options.length; -ichromeRedrawSkipRate){lastHSplitterMouseMove=new Date().getTime(); -handleHSplitterMouseMove() -}else{if(!onHSplitterMouseMoveTimer){onHSplitterMouseMoveTimer=setTimeout(handleHSplitterMouseMove,chromeRedrawSkipRate) -}}cancelEvent(event,true); -return false -}; -var handleHSplitterMouseMove=function(){if(onHSplitterMouseMoveTimer){clearTimeout(onHSplitterMouseMoveTimer); -onHSplitterMouseMoveTimer=null -}var clientY=onHSplitterMouseMoveBuffer; -var windowSize=Firebug.browser.getWindowSize(); -var scrollSize=Firebug.browser.getWindowScrollSize(); -var commandLineHeight=Firebug.chrome.commandLineVisible?fbCommandLine.offsetHeight:0; -var fixedHeight=topHeight+commandLineHeight; -var chromeNode=Firebug.chrome.node; -var scrollbarSize=!isIE&&(scrollSize.width>windowSize.width)?17:0; -var height=windowSize.height; -var chromeHeight=Math.max(height-clientY+5-scrollbarSize,fixedHeight); -chromeHeight=Math.min(chromeHeight,windowSize.height-scrollbarSize); -Firebug.context.persistedState.height=chromeHeight; -chromeNode.style.height=chromeHeight+"px"; -if(noFixedPosition){Firebug.chrome.fixIEPosition() -}Firebug.chrome.draw() -}; -var onHSplitterMouseUp=function onHSplitterMouseUp(event){removeGlobalEvent("mousemove",onHSplitterMouseMove); -removeGlobalEvent("mouseup",onHSplitterMouseUp); -if(isIE){removeEvent(Firebug.browser.document.documentElement,"mouseleave",onHSplitterMouseUp) -}fbHSplitter.className=""; -Firebug.chrome.draw(); -return false -}; -var onVSplitterMouseDown=function onVSplitterMouseDown(event){addGlobalEvent("mousemove",onVSplitterMouseMove); -addGlobalEvent("mouseup",onVSplitterMouseUp); -return false -}; -var onVSplitterMouseMove=function onVSplitterMouseMove(event){if(new Date().getTime()-lastVSplitterMouseMove>chromeRedrawSkipRate){var target=event.target||event.srcElement; -if(target&&target.ownerDocument){var clientX=event.clientX; -var win=document.all?event.srcElement.ownerDocument.parentWindow:event.target.ownerDocument.defaultView; -if(win!=win.parent){clientX+=win.frameElement?win.frameElement.offsetLeft:0 -}var size=Firebug.chrome.getSize(); -var x=Math.max(size.width-clientX+3,6); -Firebug.context.persistedState.sidePanelWidth=x; -Firebug.chrome.draw() -}lastVSplitterMouseMove=new Date().getTime() -}cancelEvent(event,true); -return false -}; -var onVSplitterMouseUp=function onVSplitterMouseUp(event){removeGlobalEvent("mousemove",onVSplitterMouseMove); -removeGlobalEvent("mouseup",onVSplitterMouseUp); -Firebug.chrome.draw() -} -}}); -FBL.ns(function(){with(FBL){Firebug.Lite={} -}}); -FBL.ns(function(){with(FBL){Firebug.Lite.Cache={ID:"firebug-"+new Date().getTime()}; -var cacheUID=0; -var createCache=function(){var map={}; -var data={}; -var CID=Firebug.Lite.Cache.ID; -var supportsDeleteExpando=!document.all; -var cacheFunction=function(element){return cacheAPI.set(element) -}; -var cacheAPI={get:function(key){return map.hasOwnProperty(key)?map[key]:null -},set:function(element){var id=getValidatedKey(element); -if(!id){id=++cacheUID; -element[CID]=id -}if(!map.hasOwnProperty(id)){map[id]=element; -data[id]={} -}return id -},unset:function(element){var id=getValidatedKey(element); -if(!id){return -}if(supportsDeleteExpando){delete element[CID] -}else{if(element.removeAttribute){element.removeAttribute(CID) -}}delete map[id]; -delete data[id] -},key:function(element){return getValidatedKey(element) -},has:function(element){var id=getValidatedKey(element); -return id&&map.hasOwnProperty(id) -},each:function(callback){for(var key in map){if(map.hasOwnProperty(key)){callback(key,map[key]) -}}},data:function(element,name,value){if(value){if(!name){return null -}var id=cacheAPI.set(element); -return data[id][name]=value -}else{var id=cacheAPI.key(element); -return data.hasOwnProperty(id)&&data[id].hasOwnProperty(name)?data[id][name]:null -}},clear:function(){for(var id in map){var element=map[id]; -cacheAPI.unset(element) -}}}; -var getValidatedKey=function(element){var id=element[CID]; -if(!supportsDeleteExpando&&id&&map.hasOwnProperty(id)&&map[id]!=element){element.removeAttribute(CID); -id=null -}return id -}; -FBL.append(cacheFunction,cacheAPI); -return cacheFunction -}; -Firebug.Lite.Cache.StyleSheet=createCache(); -Firebug.Lite.Cache.Element=createCache(); -Firebug.Lite.Cache.Event=createCache() -}}); -FBL.ns(function(){with(FBL){var sourceMap={}; -Firebug.Lite.Proxy={_callbacks:{},load:function(url){var resourceDomain=getDomain(url); -var isLocalResource=!resourceDomain||resourceDomain==Firebug.context.window.location.host; -return isLocalResource?fetchResource(url):fetchProxyResource(url) -},loadJSONP:function(url,callback){var script=createGlobalElement("script"),doc=Firebug.context.document,uid=""+new Date().getTime(),callbackName="callback=Firebug.Lite.Proxy._callbacks."+uid,jsonpURL=url.indexOf("?")!=-1?url+"&"+callbackName:url+"?"+callbackName; -Firebug.Lite.Proxy._callbacks[uid]=function(data){if(callback){callback(data) -}script.parentNode.removeChild(script); -delete Firebug.Lite.Proxy._callbacks[uid] -}; -script.src=jsonpURL; -if(doc.documentElement){doc.documentElement.appendChild(script) -}},YQL:function(url,callback){var yql="http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20html%20where%20url%3D%22"+encodeURIComponent(url)+"%22&format=xml"; -this.loadJSONP(yql,function(data){var source=data.results[0]; -var match=/\s+

      ([\s\S]+)<\/p>\s+<\/body>$/.exec(source); -if(match){source=match[1] -}console.log(source) -}) -}}; -Firebug.Lite.Proxy.fetchResourceDisabledMessage='/* Firebug Lite resource fetching is disabled.\nTo enabled it set the Firebug Lite option "disableResourceFetching" to "false".\nMore info at http://getfirebug.com/firebuglite#Options */'; -var fetchResource=function(url){if(Firebug.disableResourceFetching){var source=sourceMap[url]=Firebug.Lite.Proxy.fetchResourceDisabledMessage; -return source -}if(sourceMap.hasOwnProperty(url)){return sourceMap[url] -}var xhr=FBL.getNativeXHRObject(); -xhr.open("get",url,false); -xhr.send(); -var source=sourceMap[url]=xhr.responseText; -return source -}; -var fetchProxyResource=function(url){if(sourceMap.hasOwnProperty(url)){return sourceMap[url] -}var proxyURL=Env.Location.baseDir+"plugin/proxy/proxy.php?url="+encodeURIComponent(url); -var response=fetchResource(proxyURL); -try{var data=eval("("+response+")") -}catch(E){return"ERROR: Firebug Lite Proxy plugin returned an invalid response." -}var source=data?data.contents:""; -return source -} -}}); -FBL.ns(function(){with(FBL){Firebug.Lite.Style={} -}}); -FBL.ns(function(){with(FBL){Firebug.Lite.Script=function(window){this.fileName=null; -this.isValid=null; -this.baseLineNumber=null; -this.lineExtent=null; -this.tag=null; -this.functionName=null; -this.functionSource=null -}; -Firebug.Lite.Script.prototype={isLineExecutable:function(){},pcToLine:function(){},lineToPc:function(){},toString:function(){return"Firebug.Lite.Script" -}} -}}); -FBL.ns(function(){with(FBL){Firebug.Lite.Browser=function(window){this.contentWindow=window; -this.contentDocument=window.document; -this.currentURI={spec:window.location.href} -}; -Firebug.Lite.Browser.prototype={toString:function(){return"Firebug.Lite.Browser" -}} -}}); -var JSON=window.JSON||{}; -(function(){function f(n){return n<10?"0"+n:n -}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null -}; -String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf() -} -}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep; -function quote(string){escapable.lastIndex=0; -return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a]; -return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4) -})+'"':'"'+string+'"' -}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key]; -if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key) -}if(typeof rep==="function"){value=rep.call(holder,key,value) -}switch(typeof value){case"string":return quote(value); -case"number":return isFinite(value)?String(value):"null"; -case"boolean":case"null":return String(value); -case"object":if(!value){return"null" -}gap+=indent; -partial=[]; -if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length; -for(i=0; -i+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,done=0,toString=Object.prototype.toString,hasDuplicate=false,baseHasDuplicate=true; -[0,0].sort(function(){baseHasDuplicate=false; -return 0 -}); -var Sizzle=function(selector,context,results,seed){results=results||[]; -var origContext=context=context||document; -if(context.nodeType!==1&&context.nodeType!==9){return[] -}if(!selector||typeof selector!=="string"){return results -}var parts=[],m,set,checkSet,check,mode,extra,prune=true,contextXML=isXML(context),soFar=selector; -while((chunker.exec(""),m=chunker.exec(soFar))!==null){soFar=m[3]; -parts.push(m[1]); -if(m[2]){extra=m[3]; -break -}}if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context) -}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context); -while(parts.length){selector=parts.shift(); -if(Expr.relative[selector]){selector+=parts.shift() -}set=posProcess(selector,set) -}}}else{if(!seed&&parts.length>1&&context.nodeType===9&&!contextXML&&Expr.match.ID.test(parts[0])&&!Expr.match.ID.test(parts[parts.length-1])){var ret=Sizzle.find(parts.shift(),context,contextXML); -context=ret.expr?Sizzle.filter(ret.expr,ret.set)[0]:ret.set[0] -}if(context){var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&(parts[0]==="~"||parts[0]==="+")&&context.parentNode?context.parentNode:context,contextXML); -set=ret.expr?Sizzle.filter(ret.expr,ret.set):ret.set; -if(parts.length>0){checkSet=makeArray(set) -}else{prune=false -}while(parts.length){var cur=parts.pop(),pop=cur; -if(!Expr.relative[cur]){cur="" -}else{pop=parts.pop() -}if(pop==null){pop=context -}Expr.relative[cur](checkSet,pop,contextXML) -}}else{checkSet=parts=[] -}}if(!checkSet){checkSet=set -}if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector) -}if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet) -}else{if(context&&context.nodeType===1){for(var i=0; -checkSet[i]!=null; -i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]) -}}}else{for(var i=0; -checkSet[i]!=null; -i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]) -}}}}}else{makeArray(checkSet,results) -}if(extra){Sizzle(extra,origContext,results,seed); -Sizzle.uniqueSort(results) -}return results -}; -Sizzle.uniqueSort=function(results){if(sortOrder){hasDuplicate=baseHasDuplicate; -results.sort(sortOrder); -if(hasDuplicate){for(var i=1; -i":function(checkSet,part,isXML){var isPartStr=typeof part==="string"; -if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase(); -for(var i=0,l=checkSet.length; -i=0)){if(!inplace){result.push(elem) -}}else{if(inplace){curLoop[i]=false -}}}}return false -},ID:function(match){return match[1].replace(/\\/g,"") -},TAG:function(match,curLoop){for(var i=0; -curLoop[i]===false; -i++){}return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase() -},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]); -match[2]=(test[1]+(test[2]||1))-0; -match[3]=test[3]-0 -}match[0]=done++; -return match -},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,""); -if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name] -}if(match[2]==="~="){match[4]=" "+match[4]+" " -}return match -},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if((chunker.exec(match[3])||"").length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop) -}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not); -if(!inplace){result.push.apply(result,ret) -}return false -}}else{if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true -}}return match -},POS:function(match){match.unshift(true); -return match -}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden" -},disabled:function(elem){return elem.disabled===true -},checked:function(elem){return elem.checked===true -},selected:function(elem){elem.parentNode.selectedIndex; -return elem.selected===true -},parent:function(elem){return !!elem.firstChild -},empty:function(elem){return !elem.firstChild -},has:function(elem,i,match){return !!Sizzle(match[3],elem).length -},header:function(elem){return/h\d/i.test(elem.nodeName) -},text:function(elem){return"text"===elem.type -},radio:function(elem){return"radio"===elem.type -},checkbox:function(elem){return"checkbox"===elem.type -},file:function(elem){return"file"===elem.type -},password:function(elem){return"password"===elem.type -},submit:function(elem){return"submit"===elem.type -},image:function(elem){return"image"===elem.type -},reset:function(elem){return"reset"===elem.type -},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON" -},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName) -}},setFilters:{first:function(elem,i){return i===0 -},last:function(elem,i,match,array){return i===array.length-1 -},even:function(elem,i){return i%2===0 -},odd:function(elem,i){return i%2===1 -},lt:function(elem,i,match){return imatch[3]-0 -},nth:function(elem,i,match){return match[3]-0==i -},eq:function(elem,i,match){return match[3]-0==i -}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name]; -if(filter){return filter(elem,i,match,array) -}else{if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0 -}else{if(name==="not"){var not=match[3]; -for(var i=0,l=not.length; -i=0) -}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match -},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match -},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1 -},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4]; -return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false -},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name]; -if(filter){return filter(elem,i,match,array) -}}}}; -var origPOS=Expr.match.POS; -for(var type in Expr.match){Expr.match[type]=new RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source); -Expr.leftMatch[type]=new RegExp(/(^(?:.|\r|\n)*?)/.source+Expr.match[type].source) -}var makeArray=function(array,results){array=Array.prototype.slice.call(array,0); -if(results){results.push.apply(results,array); -return results -}return array -}; -try{Array.prototype.slice.call(document.documentElement.childNodes,0) -}catch(e){makeArray=function(array,results){var ret=results||[]; -if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array) -}else{if(typeof array.length==="number"){for(var i=0,l=array.length; -i"; -var root=document.documentElement; -root.insertBefore(form,root.firstChild); -if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]); -return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[] -}}; -Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id"); -return elem.nodeType===1&&node&&node.nodeValue===match -} -}root.removeChild(form); -root=form=null -})(); -(function(){var div=document.createElement("div"); -div.appendChild(document.createComment("")); -if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]); -if(match[1]==="*"){var tmp=[]; -for(var i=0; -results[i]; -i++){if(results[i].nodeType===1){tmp.push(results[i]) -}}results=tmp -}return results -} -}div.innerHTML=""; -if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2) -} -}div=null -})(); -if(document.querySelectorAll){(function(){var oldSizzle=Sizzle,div=document.createElement("div"); -div.innerHTML="

      "; -if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return -}Sizzle=function(query,context,extra,seed){context=context||document; -if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra) -}catch(e){}}return oldSizzle(query,context,extra,seed) -}; -for(var prop in oldSizzle){Sizzle[prop]=oldSizzle[prop] -}div=null -})() -}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var div=document.createElement("div"); -div.innerHTML="
      "; -if(div.getElementsByClassName("e").length===0){return -}div.lastChild.className="e"; -if(div.getElementsByClassName("e").length===1){return -}Expr.order.splice(1,0,"CLASS"); -Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]) -}}; -div=null -})() -}function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML; -for(var i=0,l=checkSet.length; -i0){match=elem; -break -}}}elem=elem[dir] -}checkSet[i]=match -}}}var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16 -}:function(a,b){return a!==b&&(a.contains?a.contains(b):true) -}; -var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&elem.ownerDocument.documentElement.nodeName!=="HTML" -}; -var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context; -while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0]; -selector=selector.replace(Expr.match.PSEUDO,"") -}selector=Expr.relative[selector]?selector+"*":selector; -for(var i=0,l=root.length; -i30){fbInspectFrame.style.display="none"; -var targ=Firebug.browser.getElementFromPoint(e.clientX,e.clientY); -fbInspectFrame.style.display="block"; -var id=targ.id; -if(id&&/^fbOutline\w$/.test(id)){return -}if(id=="FirebugUI"){return -}while(targ.nodeType!=1){targ=targ.parentNode -}if(targ.nodeName.toLowerCase()=="body"){return -}Firebug.Inspector.drawOutline(targ); -if(ElementCache(targ)){var target=""+ElementCache.key(targ); -var lazySelect=function(){inspectorTS=new Date().getTime(); -if(Firebug.HTML){Firebug.HTML.selectTreeNode(""+ElementCache.key(targ)) -}}; -if(inspectorTimer){clearTimeout(inspectorTimer); -inspectorTimer=null -}if(new Date().getTime()-inspectorTS>200){setTimeout(lazySelect,0) -}else{inspectorTimer=setTimeout(lazySelect,300) -}}lastInspecting=new Date().getTime() -}},onInspectingBody:function(e){if(new Date().getTime()-lastInspecting>30){var targ=e.target; -var id=targ.id; -if(id&&/^fbOutline\w$/.test(id)){return -}if(id=="FirebugUI"){return -}while(targ.nodeType!=1){targ=targ.parentNode -}if(targ.nodeName.toLowerCase()=="body"){return -}Firebug.Inspector.drawOutline(targ); -if(ElementCache.has(targ)){FBL.Firebug.HTML.selectTreeNode(""+ElementCache.key(targ)) -}lastInspecting=new Date().getTime() -}},drawOutline:function(el){var border=2; -var scrollbarSize=17; -var windowSize=Firebug.browser.getWindowSize(); -var scrollSize=Firebug.browser.getWindowScrollSize(); -var scrollPosition=Firebug.browser.getWindowScrollPosition(); -var box=Firebug.browser.getElementBox(el); -var top=box.top; -var left=box.left; -var height=box.height; -var width=box.width; -var freeHorizontalSpace=scrollPosition.left+windowSize.width-left-width-(!isIE&&scrollSize.height>windowSize.height?scrollbarSize:0); -var freeVerticalSpace=scrollPosition.top+windowSize.height-top-height-(!isIE&&scrollSize.width>windowSize.width?scrollbarSize:0); -var numVerticalBorders=freeVerticalSpace>0?2:1; -var o=outlineElements; -var style; -style=o.fbOutlineT.style; -style.top=top-border+"px"; -style.left=left+"px"; -style.height=border+"px"; -style.width=width+"px"; -style=o.fbOutlineL.style; -style.top=top-border+"px"; -style.left=left-border+"px"; -style.height=height+numVerticalBorders*border+"px"; -style.width=border+"px"; -style=o.fbOutlineB.style; -if(freeVerticalSpace>0){style.top=top+height+"px"; -style.left=left+"px"; -style.width=width+"px" -}else{style.top=-2*border+"px"; -style.left=-2*border+"px"; -style.width=border+"px" -}style=o.fbOutlineR.style; -if(freeHorizontalSpace>0){style.top=top-border+"px"; -style.left=left+width+"px"; -style.height=height+numVerticalBorders*border+"px"; -style.width=(freeHorizontalSpacescrollPosition.top+windowSize.height-offsetHeight||box.left>scrollPosition.left+windowSize.width||scrollPosition.top>box.top+box.height||scrollPosition.left>box.left+box.width){return -}var top=box.top; -var left=box.left; -var height=box.height; -var width=box.width; -var margin=Firebug.browser.getMeasurementBox(el,"margin"); -var padding=Firebug.browser.getMeasurementBox(el,"padding"); -var border=Firebug.browser.getMeasurementBox(el,"border"); -boxModelStyle.top=top-margin.top+"px"; -boxModelStyle.left=left-margin.left+"px"; -boxModelStyle.height=height+margin.top+margin.bottom+"px"; -boxModelStyle.width=width+margin.left+margin.right+"px"; -boxBorderStyle.top=margin.top+"px"; -boxBorderStyle.left=margin.left+"px"; -boxBorderStyle.height=height+"px"; -boxBorderStyle.width=width+"px"; -boxPaddingStyle.top=margin.top+border.top+"px"; -boxPaddingStyle.left=margin.left+border.left+"px"; -boxPaddingStyle.height=height-border.top-border.bottom+"px"; -boxPaddingStyle.width=width-border.left-border.right+"px"; -boxContentStyle.top=margin.top+border.top+padding.top+"px"; -boxContentStyle.left=margin.left+border.left+padding.left+"px"; -boxContentStyle.height=height-border.top-padding.top-padding.bottom-border.bottom+"px"; -boxContentStyle.width=width-border.left-padding.left-padding.right-border.right+"px"; -if(!boxModelVisible){this.showBoxModel() -}},hideBoxModel:function(){if(!boxModelVisible){return -}offlineFragment.appendChild(boxModel); -boxModelVisible=false -},showBoxModel:function(){if(boxModelVisible){return -}if(outlineVisible){this.hideOutline() -}Firebug.browser.document.getElementsByTagName("body")[0].appendChild(boxModel); -boxModelVisible=true -}}; -var offlineFragment=null; -var boxModelVisible=false; -var boxModel,boxModelStyle,boxMargin,boxMarginStyle,boxBorder,boxBorderStyle,boxPadding,boxPaddingStyle,boxContent,boxContentStyle; -var resetStyle="margin:0; padding:0; border:0; position:absolute; overflow:hidden; display:block;"; -var offscreenStyle=resetStyle+"top:-1234px; left:-1234px;"; -var inspectStyle=resetStyle+"z-index: 2147483500;"; -var inspectFrameStyle=resetStyle+"z-index: 2147483550; top:0; left:0; background:url("+Env.Location.skinDir+"pixel_transparent.gif);"; -var inspectModelOpacity=isIE?"filter:alpha(opacity=80);":"opacity:0.8;"; -var inspectModelStyle=inspectStyle+inspectModelOpacity; -var inspectMarginStyle=inspectStyle+"background: #EDFF64; height:100%; width:100%;"; -var inspectBorderStyle=inspectStyle+"background: #666;"; -var inspectPaddingStyle=inspectStyle+"background: SlateBlue;"; -var inspectContentStyle=inspectStyle+"background: SkyBlue;"; -var outlineStyle={fbHorizontalLine:"background: #3875D7;height: 2px;",fbVerticalLine:"background: #3875D7;width: 2px;"}; -var lastInspecting=0; -var fbInspectFrame=null; -var outlineVisible=false; -var outlineElements={}; -var outline={fbOutlineT:"fbHorizontalLine",fbOutlineL:"fbVerticalLine",fbOutlineB:"fbHorizontalLine",fbOutlineR:"fbVerticalLine"}; -var getInspectingTarget=function(){}; -var createInspectorFrame=function createInspectorFrame(){fbInspectFrame=createGlobalElement("div"); -fbInspectFrame.id="fbInspectFrame"; -fbInspectFrame.firebugIgnore=true; -fbInspectFrame.style.cssText=inspectFrameStyle; -Firebug.browser.document.getElementsByTagName("body")[0].appendChild(fbInspectFrame) -}; -var destroyInspectorFrame=function destroyInspectorFrame(){if(fbInspectFrame){Firebug.browser.document.getElementsByTagName("body")[0].removeChild(fbInspectFrame); -fbInspectFrame=null -}}; -var createOutlineInspector=function createOutlineInspector(){for(var name in outline){var el=outlineElements[name]=createGlobalElement("div"); -el.id=name; -el.firebugIgnore=true; -el.style.cssText=inspectStyle+outlineStyle[outline[name]]; -offlineFragment.appendChild(el) -}}; -var destroyOutlineInspector=function destroyOutlineInspector(){for(var name in outline){var el=outlineElements[name]; -el.parentNode.removeChild(el) -}}; -var createBoxModelInspector=function createBoxModelInspector(){boxModel=createGlobalElement("div"); -boxModel.id="fbBoxModel"; -boxModel.firebugIgnore=true; -boxModelStyle=boxModel.style; -boxModelStyle.cssText=inspectModelStyle; -boxMargin=createGlobalElement("div"); -boxMargin.id="fbBoxMargin"; -boxMarginStyle=boxMargin.style; -boxMarginStyle.cssText=inspectMarginStyle; -boxModel.appendChild(boxMargin); -boxBorder=createGlobalElement("div"); -boxBorder.id="fbBoxBorder"; -boxBorderStyle=boxBorder.style; -boxBorderStyle.cssText=inspectBorderStyle; -boxModel.appendChild(boxBorder); -boxPadding=createGlobalElement("div"); -boxPadding.id="fbBoxPadding"; -boxPaddingStyle=boxPadding.style; -boxPaddingStyle.cssText=inspectPaddingStyle; -boxModel.appendChild(boxPadding); -boxContent=createGlobalElement("div"); -boxContent.id="fbBoxContent"; -boxContentStyle=boxContent.style; -boxContentStyle.cssText=inspectContentStyle; -boxModel.appendChild(boxContent); -offlineFragment.appendChild(boxModel) -}; -var destroyBoxModelInspector=function destroyBoxModelInspector(){boxModel.parentNode.removeChild(boxModel) -} -}}); -(function(){FBL.DomplateTag=function DomplateTag(tagName){this.tagName=tagName -}; -FBL.DomplateEmbed=function DomplateEmbed(){}; -FBL.DomplateLoop=function DomplateLoop(){}; -var DomplateTag=FBL.DomplateTag; -var DomplateEmbed=FBL.DomplateEmbed; -var DomplateLoop=FBL.DomplateLoop; -var womb=null; -FBL.domplate=function(){var lastSubject; -for(var i=0; -i":return">"; -case"&":return"&"; -case"'":return"'"; -case'"':return""" -}return"?" -}return String(value).replace(/[<>&"']/g,replaceChars) -}function __loop__(iter,outputs,fn){var iterOuts=[]; -outputs.push(iterOuts); -if(iter instanceof Array){iter=new ArrayIterator(iter) -}try{while(1){var value=iter.next(); -var itemOuts=[0,0]; -iterOuts.push(itemOuts); -fn.apply(this,[value,itemOuts]) -}}catch(exc){if(exc!=StopIteration){throw exc -}}}var js=fnBlock.join(""); -var r=null; -eval(js); -this.renderMarkup=r -},getVarNames:function(args){if(this.vars){args.push.apply(args,this.vars) -}for(var i=0; -i"'); -this.generateChildMarkup(topBlock,topOuts,blocks,info); -topBlock.push(',""') -},generateChildMarkup:function(topBlock,topOuts,blocks,info){for(var i=0; -i=array.length){throw StopIteration -}return array[index] -} -}function StopIteration(){}FBL.$break=function(){throw StopIteration -}; -var Renderer={renderHTML:function(args,outputs,self){var code=[]; -var markupArgs=[code,this.tag.context,args,outputs]; -markupArgs.push.apply(markupArgs,this.tag.markupArgs); -this.tag.renderMarkup.apply(self?self:this.tag.subject,markupArgs); -return code.join("") -},insertRows:function(args,before,self){this.tag.compile(); -var outputs=[]; -var html=this.renderHTML(args,outputs,self); -var doc=before.ownerDocument; -var div=doc.createElement("div"); -div.innerHTML=""+html+"
      "; -var tbody=div.firstChild.firstChild; -var parent=before.tagName=="TR"?before.parentNode:before; -var after=before.tagName=="TR"?before.nextSibling:null; -var firstRow=tbody.firstChild,lastRow; -while(tbody.firstChild){lastRow=tbody.firstChild; -if(after){parent.insertBefore(lastRow,after) -}else{parent.appendChild(lastRow) -}}var offset=0; -if(before.tagName=="TR"){var node=firstRow.parentNode.firstChild; -for(; -node&&node!=firstRow; -node=node.nextSibling){++offset -}}var domArgs=[firstRow,this.tag.context,offset]; -domArgs.push.apply(domArgs,this.tag.domArgs); -domArgs.push.apply(domArgs,outputs); -this.tag.renderDOM.apply(self?self:this.tag.subject,domArgs); -return[firstRow,lastRow] -},insertBefore:function(args,before,self){return this.insertNode(args,before.ownerDocument,before,false,self) -},insertAfter:function(args,after,self){return this.insertNode(args,after.ownerDocument,after,true,self) -},insertNode:function(args,doc,element,isAfter,self){if(!args){args={} -}this.tag.compile(); -var outputs=[]; -var html=this.renderHTML(args,outputs,self); -var doc=element.ownerDocument; -if(!womb||womb.ownerDocument!=doc){womb=doc.createElement("div") -}womb.innerHTML=html; -var root=womb.firstChild; -if(isAfter){while(womb.firstChild){if(element.nextSibling){element.parentNode.insertBefore(womb.firstChild,element.nextSibling) -}else{element.parentNode.appendChild(womb.firstChild) -}}}else{while(womb.lastChild){element.parentNode.insertBefore(womb.lastChild,element) -}}var domArgs=[root,this.tag.context,0]; -domArgs.push.apply(domArgs,this.tag.domArgs); -domArgs.push.apply(domArgs,outputs); -this.tag.renderDOM.apply(self?self:this.tag.subject,domArgs); -return root -},replace:function(args,parent,self){this.tag.compile(); -var outputs=[]; -var html=this.renderHTML(args,outputs,self); -var root; -if(parent.nodeType==1){parent.innerHTML=html; -root=parent.firstChild -}else{if(!parent||parent.nodeType!=9){parent=document -}if(!womb||womb.ownerDocument!=parent){womb=parent.createElement("div") -}womb.innerHTML=html; -root=womb.firstChild -}var domArgs=[root,this.tag.context,0]; -domArgs.push.apply(domArgs,this.tag.domArgs); -domArgs.push.apply(domArgs,outputs); -this.tag.renderDOM.apply(self?self:this.tag.subject,domArgs); -return root -},append:function(args,parent,self){this.tag.compile(); -var outputs=[]; -var html=this.renderHTML(args,outputs,self); -if(!womb||womb.ownerDocument!=parent.ownerDocument){womb=parent.ownerDocument.createElement("div") -}womb.innerHTML=html; -var root=womb.firstChild; -while(womb.firstChild){parent.appendChild(womb.firstChild) -}womb=null; -var domArgs=[root,this.tag.context,0]; -domArgs.push.apply(domArgs,this.tag.domArgs); -domArgs.push.apply(domArgs,outputs); -this.tag.renderDOM.apply(self?self:this.tag.subject,domArgs); -return root -}}; -function defineTags(){for(var i=0; -inumPropertiesShown){break -}}if(numProperties>numPropertiesShown){props.push({object:"...",tag:FirebugReps.Caption.tag,name:"",equal:"",delim:""}) -}else{if(props.length>0){props[props.length-1].delim="" -}}}catch(exc){}return props -},fb_1_6_propIterator:function(object,max){max=max||3; -if(!object){return[] -}var props=[]; -var len=0,count=0; -try{for(var name in object){var value; -try{value=object[name] -}catch(exc){continue -}var t=typeof(value); -if(t=="boolean"||t=="number"||(t=="string"&&value)||(t=="object"&&value&&value.toString)){var rep=Firebug.getRep(value); -var tag=rep.shortTag||rep.tag; -if(t=="object"){value=rep.getTitle(value); -tag=rep.titleTag -}count++; -if(count<=max){props.push({tag:tag,name:name,object:value,equal:"=",delim:", "}) -}else{break -}}}if(count>max){props[Math.max(1,max-1)]={object:"more...",tag:FirebugReps.Caption.tag,name:"",equal:"",delim:""} -}else{if(props.length>0){props[props.length-1].delim="" -}}}catch(exc){}return props -},className:"object",supportsObject:function(object,type){return true -}}); -this.Arr=domplate(Firebug.Rep,{tag:OBJECTBOX({_repObject:"$object"},SPAN({"class":"arrayLeftBracket",role:"presentation"},"["),FOR("item","$object|arrayIterator",TAG("$item.tag",{object:"$item.object"}),SPAN({"class":"arrayComma",role:"presentation"},"$item.delim")),SPAN({"class":"arrayRightBracket",role:"presentation"},"]")),shortTag:OBJECTBOX({_repObject:"$object"},SPAN({"class":"arrayLeftBracket",role:"presentation"},"["),FOR("item","$object|shortArrayIterator",TAG("$item.tag",{object:"$item.object"}),SPAN({"class":"arrayComma",role:"presentation"},"$item.delim")),SPAN({"class":"arrayRightBracket"},"]")),arrayIterator:function(array){var items=[]; -for(var i=0; -i3){items.push({object:(array.length-3)+" more...",tag:FirebugReps.Caption.tag,delim:""}) -}return items -},shortPropIterator:this.Obj.propIterator,getItemIndex:function(child){var arrayIndex=0; -for(child=child.previousSibling; -child; -child=child.previousSibling){if(child.repObject){++arrayIndex -}}return arrayIndex -},className:"array",supportsObject:function(object){return this.isArray(object) -},isArray:function(obj){try{if(!obj){return false -}else{if(isIE&&!isFunction(obj)&&typeof obj=="object"&&isFinite(obj.length)&&obj.nodeType!=8){return true -}else{if(isFinite(obj.length)&&isFunction(obj.splice)){return true -}else{if(isFinite(obj.length)&&isFunction(obj.callee)){return true -}else{if(instanceOf(obj,"HTMLCollection")){return true -}else{if(instanceOf(obj,"NodeList")){return true -}else{return false -}}}}}}}catch(exc){if(FBTrace.DBG_ERRORS){FBTrace.sysout("isArray FAILS:",exc); -FBTrace.sysout("isArray Fails on obj",obj) -}}return false -},getTitle:function(object,context){return"["+object.length+"]" -}}); -this.Property=domplate(Firebug.Rep,{supportsObject:function(object){return object instanceof Property -},getRealObject:function(prop,context){return prop.object[prop.name] -},getTitle:function(prop,context){return prop.name -}}); -this.NetFile=domplate(this.Obj,{supportsObject:function(object){return object instanceof Firebug.NetFile -},browseObject:function(file,context){openNewTab(file.href); -return true -},getRealObject:function(file,context){return null -}}); -this.Except=domplate(Firebug.Rep,{tag:OBJECTBOX({_repObject:"$object"},"$object.message"),className:"exception",supportsObject:function(object){return object instanceof ErrorCopy -}}); -this.Element=domplate(Firebug.Rep,{tag:OBJECTLINK("<",SPAN({"class":"nodeTag"},"$object.nodeName|toLowerCase"),FOR("attr","$object|attrIterator"," $attr.nodeName="",SPAN({"class":"nodeValue"},"$attr.nodeValue"),"""),">"),shortTag:OBJECTLINK(SPAN({"class":"$object|getVisible"},SPAN({"class":"selectorTag"},"$object|getSelectorTag"),SPAN({"class":"selectorId"},"$object|getSelectorId"),SPAN({"class":"selectorClass"},"$object|getSelectorClass"),SPAN({"class":"selectorValue"},"$object|getValue"))),getVisible:function(elt){return isVisible(elt)?"":"selectorHidden" -},getSelectorTag:function(elt){return elt.nodeName.toLowerCase() -},getSelectorId:function(elt){return elt.id?"#"+elt.id:"" -},getSelectorClass:function(elt){return elt.className?"."+elt.className.split(" ")[0]:"" -},getValue:function(elt){return""; -var value; -if(elt instanceof HTMLImageElement){value=getFileName(elt.src) -}else{if(elt instanceof HTMLAnchorElement){value=getFileName(elt.href) -}else{if(elt instanceof HTMLInputElement){value=elt.value -}else{if(elt instanceof HTMLFormElement){value=getFileName(elt.action) -}else{if(elt instanceof HTMLScriptElement){value=getFileName(elt.src) -}}}}}return value?" "+cropString(value,20):"" -},attrIterator:function(elt){var attrs=[]; -var idAttr,classAttr; -if(elt.attributes){for(var i=0; -i0 -},hasErrorBreak:function(error){return fbs.hasErrorBreakpoint(error.href,error.lineNo) -},getMessage:function(message){var re=/\[Exception... "(.*?)" nsresult:/; -var m=re.exec(message); -return m?m[1]:message -},getLine:function(error){if(error.category=="js"){if(error.source){return cropString(error.source,80) -}else{if(error.href&&error.href.indexOf("XPCSafeJSObjectWrapper")==-1){return cropString(error.getSourceLine(),80) -}}}},getSourceLink:function(error){var ext=error.category=="css"?"css":"js"; -return error.lineNo?new SourceLink(error.href,error.lineNo,ext):null -},getSourceType:function(error){if(error.source){return"syntax" -}else{if(error.lineNo==1&&getFileExtension(error.href)!="js"){return"none" -}else{if(error.category=="css"){return"none" -}else{if(!error.href||!error.lineNo){return"none" -}else{return"exec" -}}}}},onToggleError:function(event){var target=event.currentTarget; -if(hasClass(event.target,"errorBreak")){this.breakOnThisError(target.repObject) -}else{if(hasClass(event.target,"errorSource")){var panel=Firebug.getElementPanel(event.target); -this.inspectObject(target.repObject,panel.context) -}else{if(hasClass(event.target,"errorTitle")){var traceBox=target.childNodes[1]; -toggleClass(target,"opened"); -event.target.setAttribute("aria-checked",hasClass(target,"opened")); -if(hasClass(target,"opened")){if(target.stackTrace){var node=FirebugReps.StackTrace.tag.append({object:target.stackTrace},traceBox) -}if(Firebug.A11yModel.enabled){var panel=Firebug.getElementPanel(event.target); -dispatch([Firebug.A11yModel],"onLogRowContentCreated",[panel,traceBox]) -}}else{clearNode(traceBox) -}}}}},copyError:function(error){var message=[this.getMessage(error.message),error.href,"Line "+error.lineNo]; -copyToClipboard(message.join("\n")) -},breakOnThisError:function(error){if(this.hasErrorBreak(error)){Firebug.Debugger.clearErrorBreakpoint(error.href,error.lineNo) -}else{Firebug.Debugger.setErrorBreakpoint(error.href,error.lineNo) -}},className:"errorMessage",inspectable:false,supportsObject:function(object){return object instanceof ErrorMessage -},inspectObject:function(error,context){var sourceLink=this.getSourceLink(error); -FirebugReps.SourceLink.inspectObject(sourceLink,context) -},getContextMenuItems:function(error,target,context){var breakOnThisError=this.hasErrorBreak(error); -var items=[{label:"CopyError",command:bindFixed(this.copyError,this,error)}]; -if(error.category=="css"){items.push("-",{label:"BreakOnThisError",type:"checkbox",checked:breakOnThisError,command:bindFixed(this.breakOnThisError,this,error)},optionMenu("BreakOnAllErrors","breakOnErrors")) -}return items -}}); -this.Assert=domplate(Firebug.Rep,{tag:DIV(DIV({"class":"errorTitle"}),DIV({"class":"assertDescription"})),className:"assert",inspectObject:function(error,context){var sourceLink=this.getSourceLink(error); -Firebug.chrome.select(sourceLink) -},getContextMenuItems:function(error,target,context){var breakOnThisError=this.hasErrorBreak(error); -return[{label:"CopyError",command:bindFixed(this.copyError,this,error)},"-",{label:"BreakOnThisError",type:"checkbox",checked:breakOnThisError,command:bindFixed(this.breakOnThisError,this,error)},{label:"BreakOnAllErrors",type:"checkbox",checked:Firebug.breakOnErrors,command:bindFixed(this.breakOnAllErrors,this,error)}] -}}); -this.SourceText=domplate(Firebug.Rep,{tag:DIV(FOR("line","$object|lineIterator",DIV({"class":"sourceRow",role:"presentation"},SPAN({"class":"sourceLine",role:"presentation"},"$line.lineNo"),SPAN({"class":"sourceRowText",role:"presentation"},"$line.text")))),lineIterator:function(sourceText){var maxLineNoChars=(sourceText.lines.length+"").length; -var list=[]; -for(var i=0; -i57)&&event.charCode!=45&&event.charCode!=46){FBL.cancelEvent(event) -}else{this.ignoreNextInput=event.keyCode==8 -}}}},onOverflow:function(){this.updateLayout(false,false,3) -},onKeyDown:function(event){if(event.keyCode>46||event.keyCode==32||event.keyCode==8){this.keyDownPressed=true -}},onInput:function(event){if(isIE){if(event.propertyName!="value"||!isVisible(this.input)||!this.keyDownPressed){return -}this.keyDownPressed=false -}var selectRangeCallback; -if(this.ignoreNextInput){this.ignoreNextInput=false; -this.getAutoCompleter().reset() -}else{if(this.completeAsYouType){selectRangeCallback=this.getAutoCompleter().complete(currentPanel.context,this.input,false) -}else{this.getAutoCompleter().reset() -}}Firebug.Editor.update(); -if(selectRangeCallback){if(isSafari){setTimeout(selectRangeCallback,0) -}else{selectRangeCallback() -}}},onContextMenu:function(event){cancelEvent(event); -var popup=$("fbInlineEditorPopup"); -FBL.eraseNode(popup); -var target=event.target||event.srcElement; -var menu=this.getContextMenuItems(target); -if(menu){for(var i=0; -ithis.textSize.height+3:this.noWrap&&approxTextWidth>maxWidth; -if(wrapped){var style=isIE?this.target.currentStyle:this.target.ownerDocument.defaultView.getComputedStyle(this.target,""); -targetMargin=parseInt(style.marginLeft)+parseInt(style.marginRight); -approxTextWidth=maxWidth-targetMargin; -this.input.style.width="100%"; -this.box.style.width=approxTextWidth+"px" -}else{var charWidth=this.measureInputText("m").width; -if(extraWidth){charWidth*=extraWidth -}var inputWidth=approxTextWidth+charWidth; -if(initial){if(isIE){var xDiff=13; -this.box.style.width=(inputWidth+xDiff)+"px" -}else{this.box.style.width="auto" -}}else{var xDiff=isIE?13:this.box.scrollWidth-this.input.offsetWidth; -this.box.style.width=(inputWidth+xDiff)+"px" -}this.input.style.width=inputWidth+"px" -}this.expander.style.width=approxTextWidth+"px"; -this.expander.style.height=Math.max(this.textSize.height-3,0)+"px" -}if(forceAll){scrollIntoCenterView(this.box,null,true) -}}}); -Firebug.AutoCompleter=function(getExprOffset,getRange,evaluator,selectMode,caseSensitive){var candidates=null; -var originalValue=null; -var originalOffset=-1; -var lastExpr=null; -var lastOffset=-1; -var exprOffset=0; -var lastIndex=0; -var preParsed=null; -var preExpr=null; -var postExpr=null; -this.revert=function(textBox){if(originalOffset!=-1){textBox.value=originalValue; -setSelectionRange(textBox,originalOffset,originalOffset); -this.reset(); -return true -}else{this.reset(); -return false -}}; -this.reset=function(){candidates=null; -originalValue=null; -originalOffset=-1; -lastExpr=null; -lastOffset=0; -exprOffset=0 -}; -this.complete=function(context,textBox,cycle,reverse){var value=textBox.value; -var offset=getInputSelectionStart(textBox); -if(isSafari&&!cycle&&offset>=0){offset++ -}if(!selectMode&&originalOffset!=-1){offset=originalOffset -}if(!candidates||!cycle||offset!=lastOffset){originalOffset=offset; -originalValue=value; -var parseStart=getExprOffset?getExprOffset(value,offset,context):0; -preParsed=value.substr(0,parseStart); -var parsed=value.substr(parseStart); -var range=getRange?getRange(parsed,offset-parseStart,context):null; -if(!range){range={start:0,end:parsed.length-1} -}var expr=parsed.substr(range.start,range.end-range.start+1); -preExpr=parsed.substr(0,range.start); -postExpr=parsed.substr(range.end+1); -exprOffset=parseStart+range.start; -if(!cycle){if(!expr){return -}else{if(lastExpr&&lastExpr.indexOf(expr)!=0){candidates=null -}else{if(lastExpr&&lastExpr.length>=expr.length){candidates=null; -lastExpr=expr; -return -}}}}lastExpr=expr; -lastOffset=offset; -var searchExpr; -if(expr&&offset!=parseStart+range.end+1){if(cycle){offset=range.start; -searchExpr=expr; -expr="" -}else{return -}}var values=evaluator(preExpr,expr,postExpr,context); -if(!values){return -}if(expr){candidates=[]; -if(caseSensitive){for(var i=0; -i=candidates.length){lastIndex=0 -}else{if(lastIndex<0){lastIndex=candidates.length-1 -}}var completion=candidates[lastIndex]; -var preCompletion=expr.substr(0,offset-exprOffset); -var postCompletion=completion.substr(offset-exprOffset); -textBox.value=preParsed+preExpr+preCompletion+postCompletion+postExpr; -var offsetEnd=preParsed.length+preExpr.length+completion.length; -return function(){if(selectMode){setSelectionRange(textBox,offset,offsetEnd) -}else{setSelectionRange(textBox,offsetEnd,offsetEnd) -}} -} -}; -var getDefaultEditor=function getDefaultEditor(panel){if(!defaultEditor){var doc=panel.document; -defaultEditor=new Firebug.InlineEditor(doc) -}return defaultEditor -}; -var getOutsider=function getOutsider(element,group,stepper){var parentGroup=getAncestorByClass(group.parentNode,"editGroup"); -var next; -do{next=stepper(next||element) -}while(isAncestor(next,group)||isGroupInsert(next,parentGroup)); -return next -}; -var isGroupInsert=function isGroupInsert(next,group){return(!group||isAncestor(next,group))&&(hasClass(next,"insertBefore")||hasClass(next,"insertAfter")) -}; -var getNextOutsider=function getNextOutsider(element,group){return getOutsider(element,group,bind(getNextByClass,FBL,"editable")) -}; -var getPreviousOutsider=function getPreviousOutsider(element,group){return getOutsider(element,group,bind(getPreviousByClass,FBL,"editable")) -}; -var getInlineParent=function getInlineParent(element){var lastInline=element; -for(; -element; -element=element.parentNode){var s=isIE?element.currentStyle:element.ownerDocument.defaultView.getComputedStyle(element,""); -if(s.display!="inline"){return lastInline -}else{lastInline=element -}}return null -}; -var insertTab=function insertTab(){insertTextIntoElement(currentEditor.input,Firebug.Editor.tabCharacter) -}; -Firebug.registerModule(Firebug.Editor) -}}); -FBL.ns(function(){with(FBL){if(Env.Options.disableXHRListener){return -}var XHRSpy=function(){this.requestHeaders=[]; -this.responseHeaders=[] -}; -XHRSpy.prototype={method:null,url:null,async:null,xhrRequest:null,href:null,loaded:false,logRow:null,responseText:null,requestHeaders:null,responseHeaders:null,sourceLink:null,getURL:function(){return this.href -}}; -var XMLHttpRequestWrapper=function(activeXObject){var xhrRequest=typeof activeXObject!="undefined"?activeXObject:new _XMLHttpRequest(),spy=new XHRSpy(),self=this,reqType,reqUrl,reqStartTS; -var updateSelfPropertiesIgnore={abort:1,channel:1,getAllResponseHeaders:1,getInterface:1,getResponseHeader:1,mozBackgroundRequest:1,multipart:1,onreadystatechange:1,open:1,send:1,setRequestHeader:1}; -var updateSelfProperties=function(){if(supportsXHRIterator){for(var propName in xhrRequest){if(propName in updateSelfPropertiesIgnore){continue -}try{var propValue=xhrRequest[propName]; -if(propValue&&!isFunction(propValue)){self[propName]=propValue -}}catch(E){}}}else{if(xhrRequest.readyState==4){self.status=xhrRequest.status; -self.statusText=xhrRequest.statusText; -self.responseText=xhrRequest.responseText; -self.responseXML=xhrRequest.responseXML -}}}; -var updateXHRPropertiesIgnore={channel:1,onreadystatechange:1,readyState:1,responseBody:1,responseText:1,responseXML:1,status:1,statusText:1,upload:1}; -var updateXHRProperties=function(){for(var propName in self){if(propName in updateXHRPropertiesIgnore){continue -}try{var propValue=self[propName]; -if(propValue&&!xhrRequest[propName]){xhrRequest[propName]=propValue -}}catch(E){}}}; -var logXHR=function(){var row=Firebug.Console.log(spy,null,"spy",Firebug.Spy.XHR); -if(row){setClass(row,"loading"); -spy.logRow=row -}}; -var finishXHR=function(){var duration=new Date().getTime()-reqStartTS; -var success=xhrRequest.status==200; -var responseHeadersText=xhrRequest.getAllResponseHeaders(); -var responses=responseHeadersText?responseHeadersText.split(/[\n\r]/):[]; -var reHeader=/^(\S+):\s*(.*)/; -for(var i=0,l=responses.length; -i0; -return this -}; -var _ActiveXObject; -var isIE6=/msie 6/i.test(navigator.appVersion); -if(isIE6){_ActiveXObject=window.ActiveXObject; -var xhrObjects=" MSXML2.XMLHTTP.5.0 MSXML2.XMLHTTP.4.0 MSXML2.XMLHTTP.3.0 MSXML2.XMLHTTP Microsoft.XMLHTTP "; -window.ActiveXObject=function(name){var error=null; -try{var activeXObject=new _ActiveXObject(name) -}catch(e){error=e -}finally{if(!error){if(xhrObjects.indexOf(" "+name+" ")!=-1){return new XMLHttpRequestWrapper(activeXObject) -}else{return activeXObject -}}else{throw error.message -}}} -}if(!isIE6){var _XMLHttpRequest=XMLHttpRequest; -window.XMLHttpRequest=function(){return new XMLHttpRequestWrapper() -} -}FBL.getNativeXHRObject=function(){var xhrObj=false; -try{xhrObj=new _XMLHttpRequest() -}catch(e){var progid=["MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"]; -for(var i=0; -ilimit){name=name.substr(0,limit)+"..." -}return name -},getParamTitle:function(param){var limit=25; -var name=param.name; -if(name.length>limit){return name -}return"" -},hideParams:function(file){return !file.urlParams||!file.urlParams.length -},hidePost:function(file){return file.method.toUpperCase()!="POST" -},hidePut:function(file){return file.method.toUpperCase()!="PUT" -},hideResponse:function(file){return false -},hideCache:function(file){return true; -return !file.cacheEntry -},hideHtml:function(file){return(file.mimeType!="text/html")&&(file.mimeType!="application/xhtml+xml") -},onClickTab:function(event){this.selectTab(event.currentTarget||event.srcElement) -},getParamValueIterator:function(param){return param.value; -return wrapText(param.value,true) -},appendTab:function(netInfoBox,tabId,tabTitle){var args={tabId:tabId,tabTitle:tabTitle}; -this.customTab.append(args,$$(".netInfoTabs",netInfoBox)[0]); -this.customBody.append(args,$$(".netInfoBodies",netInfoBox)[0]) -},selectTabByName:function(netInfoBox,tabName){var tab=getChildByClass(netInfoBox,"netInfoTabs","netInfo"+tabName+"Tab"); -if(tab){this.selectTab(tab) -}},selectTab:function(tab){var view=tab.getAttribute("view"); -var netInfoBox=getAncestorByClass(tab,"netInfoBody"); -var selectedTab=netInfoBox.selectedTab; -if(selectedTab){removeClass(netInfoBox.selectedText,"netInfoTextSelected"); -removeClass(selectedTab,"netInfoTabSelected"); -selectedTab.setAttribute("aria-selected","false") -}var textBodyName="netInfo"+view+"Text"; -selectedTab=netInfoBox.selectedTab=tab; -netInfoBox.selectedText=$$("."+textBodyName,netInfoBox)[0]; -setClass(netInfoBox.selectedText,"netInfoTextSelected"); -setClass(selectedTab,"netInfoTabSelected"); -selectedTab.setAttribute("selected","true"); -selectedTab.setAttribute("aria-selected","true"); -var file=Firebug.getRepObject(netInfoBox); -var context=Firebug.chrome; -this.updateInfo(netInfoBox,file,context) -},updateInfo:function(netInfoBox,file,context){if(FBTrace.DBG_NET){FBTrace.sysout("net.updateInfo; file",file) -}if(!netInfoBox){if(FBTrace.DBG_NET||FBTrace.DBG_ERRORS){FBTrace.sysout("net.updateInfo; ERROR netInfo == null "+file.href,file) -}return -}var tab=netInfoBox.selectedTab; -if(hasClass(tab,"netInfoParamsTab")){if(file.urlParams&&!netInfoBox.urlParamsPresented){netInfoBox.urlParamsPresented=true; -this.insertHeaderRows(netInfoBox,file.urlParams,"Params") -}}else{if(hasClass(tab,"netInfoHeadersTab")){var headersText=$$(".netInfoHeadersText",netInfoBox)[0]; -if(file.responseHeaders&&!netInfoBox.responseHeadersPresented){netInfoBox.responseHeadersPresented=true; -NetInfoHeaders.renderHeaders(headersText,file.responseHeaders,"ResponseHeaders") -}if(file.requestHeaders&&!netInfoBox.requestHeadersPresented){netInfoBox.requestHeadersPresented=true; -NetInfoHeaders.renderHeaders(headersText,file.requestHeaders,"RequestHeaders") -}}else{if(hasClass(tab,"netInfoPostTab")){if(!netInfoBox.postPresented){netInfoBox.postPresented=true; -var postText=$$(".netInfoPostText",netInfoBox)[0]; -NetInfoPostData.render(context,postText,file) -}}else{if(hasClass(tab,"netInfoPutTab")){if(!netInfoBox.putPresented){netInfoBox.putPresented=true; -var putText=$$(".netInfoPutText",netInfoBox)[0]; -NetInfoPostData.render(context,putText,file) -}}else{if(hasClass(tab,"netInfoResponseTab")&&file.loaded&&!netInfoBox.responsePresented){var responseTextBox=$$(".netInfoResponseText",netInfoBox)[0]; -if(file.category=="image"){netInfoBox.responsePresented=true; -var responseImage=netInfoBox.ownerDocument.createElement("img"); -responseImage.src=file.href; -clearNode(responseTextBox); -responseTextBox.appendChild(responseImage,responseTextBox) -}else{this.setResponseText(file,netInfoBox,responseTextBox,context) -}}else{if(hasClass(tab,"netInfoCacheTab")&&file.loaded&&!netInfoBox.cachePresented){var responseTextBox=netInfoBox.getElementsByClassName("netInfoCacheText").item(0); -if(file.cacheEntry){netInfoBox.cachePresented=true; -this.insertHeaderRows(netInfoBox,file.cacheEntry,"Cache") -}}else{if(hasClass(tab,"netInfoHtmlTab")&&file.loaded&&!netInfoBox.htmlPresented){netInfoBox.htmlPresented=true; -var text=Utils.getResponseText(file,context); -var iframe=$$(".netInfoHtmlPreview",netInfoBox)[0]; -var reScript=//gi; -text=text.replace(reScript,""); -iframe.contentWindow.document.write(text); -iframe.contentWindow.document.close() -}}}}}}}dispatch(NetInfoBody.fbListeners,"updateTabBody",[netInfoBox,file,context]) -},setResponseText:function(file,netInfoBox,responseTextBox,context){netInfoBox.responsePresented=true; -if(isIE){responseTextBox.style.whiteSpace="nowrap" -}responseTextBox[typeof responseTextBox.textContent!="undefined"?"textContent":"innerText"]=file.responseText; -return; -var text=Utils.getResponseText(file,context); -var limit=Firebug.netDisplayedResponseLimit+15; -var limitReached=text?(text.length>limit):false; -if(limitReached){text=text.substr(0,limit)+"..." -}if(text){insertWrappedText(text,responseTextBox) -}else{insertWrappedText("",responseTextBox) -}if(limitReached){var object={text:$STR("net.responseSizeLimitMessage"),onClickLink:function(){var panel=context.getPanel("net",true); -panel.openResponseInTab(file) -}}; -Firebug.NetMonitor.ResponseSizeLimit.append(object,responseTextBox) -}netInfoBox.responsePresented=true; -if(FBTrace.DBG_NET){FBTrace.sysout("net.setResponseText; response text updated") -}},insertHeaderRows:function(netInfoBox,headers,tableName,rowName){if(!headers.length){return -}var headersTable=$$(".netInfo"+tableName+"Table",netInfoBox)[0]; -var tbody=getChildByClass(headersTable,"netInfo"+rowName+"Body"); -if(!tbody){tbody=headersTable.firstChild -}var titleRow=getChildByClass(tbody,"netInfo"+rowName+"Title"); -this.headerDataTag.insertRows({headers:headers},titleRow?titleRow:tbody); -removeClass(titleRow,"collapsed") -}}); -var NetInfoBody=Firebug.NetMonitor.NetInfoBody; -Firebug.NetMonitor.NetInfoHeaders=domplate(Firebug.Rep,{tag:DIV({"class":"netInfoHeadersTable",role:"tabpanel"},DIV({"class":"netInfoHeadersGroup netInfoResponseHeadersTitle"},SPAN($STR("ResponseHeaders")),SPAN({"class":"netHeadersViewSource response collapsed",onclick:"$onViewSource",_sourceDisplayed:false,_rowName:"ResponseHeaders"},$STR("net.headers.view source"))),TABLE({cellpadding:0,cellspacing:0},TBODY({"class":"netInfoResponseHeadersBody",role:"list","aria-label":$STR("ResponseHeaders")})),DIV({"class":"netInfoHeadersGroup netInfoRequestHeadersTitle"},SPAN($STR("RequestHeaders")),SPAN({"class":"netHeadersViewSource request collapsed",onclick:"$onViewSource",_sourceDisplayed:false,_rowName:"RequestHeaders"},$STR("net.headers.view source"))),TABLE({cellpadding:0,cellspacing:0},TBODY({"class":"netInfoRequestHeadersBody",role:"list","aria-label":$STR("RequestHeaders")}))),sourceTag:TR({role:"presentation"},TD({colspan:2,role:"presentation"},PRE({"class":"source"}))),onViewSource:function(event){var target=event.target; -var requestHeaders=(target.rowName=="RequestHeaders"); -var netInfoBox=getAncestorByClass(target,"netInfoBody"); -var file=netInfoBox.repObject; -if(target.sourceDisplayed){var headers=requestHeaders?file.requestHeaders:file.responseHeaders; -this.insertHeaderRows(netInfoBox,headers,target.rowName); -target.innerHTML=$STR("net.headers.view source") -}else{var source=requestHeaders?file.requestHeadersText:file.responseHeadersText; -this.insertSource(netInfoBox,source,target.rowName); -target.innerHTML=$STR("net.headers.pretty print") -}target.sourceDisplayed=!target.sourceDisplayed; -cancelEvent(event) -},insertSource:function(netInfoBox,source,rowName){var tbody=$$(".netInfo"+rowName+"Body",netInfoBox)[0]; -var node=this.sourceTag.replace({},tbody); -var sourceNode=$$(".source",node)[0]; -sourceNode.innerHTML=source -},insertHeaderRows:function(netInfoBox,headers,rowName){var headersTable=$$(".netInfoHeadersTable",netInfoBox)[0]; -var tbody=$$(".netInfo"+rowName+"Body",headersTable)[0]; -clearNode(tbody); -if(!headers.length){return -}NetInfoBody.headerDataTag.insertRows({headers:headers},tbody); -var titleRow=getChildByClass(headersTable,"netInfo"+rowName+"Title"); -removeClass(titleRow,"collapsed") -},init:function(parent){var rootNode=this.tag.append({},parent); -var netInfoBox=getAncestorByClass(parent,"netInfoBody"); -var file=netInfoBox.repObject; -var viewSource; -viewSource=$$(".request",rootNode)[0]; -if(file.requestHeadersText){removeClass(viewSource,"collapsed") -}viewSource=$$(".response",rootNode)[0]; -if(file.responseHeadersText){removeClass(viewSource,"collapsed") -}},renderHeaders:function(parent,headers,rowName){if(!parent.firstChild){this.init(parent) -}this.insertHeaderRows(parent,headers,rowName) -}}); -var NetInfoHeaders=Firebug.NetMonitor.NetInfoHeaders; -Firebug.NetMonitor.NetInfoPostData=domplate(Firebug.Rep,{paramsTable:TABLE({"class":"netInfoPostParamsTable",cellpadding:0,cellspacing:0,role:"presentation"},TBODY({role:"list","aria-label":$STR("net.label.Parameters")},TR({"class":"netInfoPostParamsTitle",role:"presentation"},TD({colspan:3,role:"presentation"},DIV({"class":"netInfoPostParams"},$STR("net.label.Parameters"),SPAN({"class":"netInfoPostContentType"},"application/x-www-form-urlencoded")))))),partsTable:TABLE({"class":"netInfoPostPartsTable",cellpadding:0,cellspacing:0,role:"presentation"},TBODY({role:"list","aria-label":$STR("net.label.Parts")},TR({"class":"netInfoPostPartsTitle",role:"presentation"},TD({colspan:2,role:"presentation"},DIV({"class":"netInfoPostParams"},$STR("net.label.Parts"),SPAN({"class":"netInfoPostContentType"},"multipart/form-data")))))),jsonTable:TABLE({"class":"netInfoPostJSONTable",cellpadding:0,cellspacing:0,role:"presentation"},TBODY({role:"list","aria-label":$STR("JSON")},TR({"class":"netInfoPostJSONTitle",role:"presentation"},TD({role:"presentation"},DIV({"class":"netInfoPostParams"},$STR("JSON")))),TR(TD({"class":"netInfoPostJSONBody"})))),xmlTable:TABLE({"class":"netInfoPostXMLTable",cellpadding:0,cellspacing:0,role:"presentation"},TBODY({role:"list","aria-label":$STR("xmlviewer.tab.XML")},TR({"class":"netInfoPostXMLTitle",role:"presentation"},TD({role:"presentation"},DIV({"class":"netInfoPostParams"},$STR("xmlviewer.tab.XML")))),TR(TD({"class":"netInfoPostXMLBody"})))),sourceTable:TABLE({"class":"netInfoPostSourceTable",cellpadding:0,cellspacing:0,role:"presentation"},TBODY({role:"list","aria-label":$STR("net.label.Source")},TR({"class":"netInfoPostSourceTitle",role:"presentation"},TD({colspan:2,role:"presentation"},DIV({"class":"netInfoPostSource"},$STR("net.label.Source")))))),sourceBodyTag:TR({role:"presentation"},TD({colspan:2,role:"presentation"},FOR("line","$param|getParamValueIterator",CODE({"class":"focusRow subFocusRow",role:"listitem"},"$line")))),getParamValueIterator:function(param){return NetInfoBody.getParamValueIterator(param) -},render:function(context,parentNode,file){var spy=getAncestorByClass(parentNode,"spyHead"); -var spyObject=spy.repObject; -var data=spyObject.data; -var contentType=file.mimeType; -if(contentType&&contentType=="application/x-www-form-urlencoded"||data&&data.indexOf("=")!=-1){var params=parseURLEncodedTextArray(data); -if(params){this.insertParameters(parentNode,params) -}}var jsonData={responseText:data}; -if(Firebug.JSONViewerModel.isJSON(contentType,data)){this.insertJSON(parentNode,jsonData,context) -}var postText=data; -if(postText){this.insertSource(parentNode,postText) -}},insertParameters:function(parentNode,params){if(!params||!params.length){return -}var paramTable=this.paramsTable.append({object:{}},parentNode); -var row=$$(".netInfoPostParamsTitle",paramTable)[0]; -var tbody=paramTable.getElementsByTagName("tbody")[0]; -NetInfoBody.headerDataTag.insertRows({headers:params},row) -},insertParts:function(parentNode,data){if(!data.params||!data.params.length){return -}var partsTable=this.partsTable.append({object:{}},parentNode); -var row=$$(".netInfoPostPartsTitle",paramTable)[0]; -NetInfoBody.headerDataTag.insertRows({headers:data.params},row) -},insertJSON:function(parentNode,file,context){var text=file.responseText; -var data=parseJSONString(text); -if(!data){return -}var jsonTable=this.jsonTable.append({},parentNode); -var jsonBody=$$(".netInfoPostJSONBody",jsonTable)[0]; -if(!this.toggles){this.toggles={} -}Firebug.DOMPanel.DirTable.tag.replace({object:data,toggles:this.toggles},jsonBody) -},insertXML:function(parentNode,file,context){var text=Utils.getPostText(file,context); -var jsonTable=this.xmlTable.append(null,parentNode); -var jsonBody=$$(".netInfoPostXMLBody",jsonTable)[0]; -Firebug.XMLViewerModel.insertXML(jsonBody,text) -},insertSource:function(parentNode,text){var sourceTable=this.sourceTable.append({object:{}},parentNode); -var row=$$(".netInfoPostSourceTitle",sourceTable)[0]; -var param={value:[text]}; -this.sourceBodyTag.insertRows({param:param},row) -},parseMultiPartText:function(file,context){var text=Utils.getPostText(file,context); -if(text==undefined){return null -}FBTrace.sysout("net.parseMultiPartText; boundary: ",text); -var boundary=text.match(/\s*boundary=\s*(.*)/)[1]; -var divider="\r\n\r\n"; -var bodyStart=text.indexOf(divider); -var body=text.substr(bodyStart+divider.length); -var postData={}; -postData.mimeType="multipart/form-data"; -postData.params=[]; -var parts=body.split("--"+boundary); -for(var i=0; -i1)?m[1]:"",value:trim(part[1])}) -}return postData -}}); -var NetInfoPostData=Firebug.NetMonitor.NetInfoPostData; -var $STRP=function(a){return a -}; -Firebug.NetMonitor.NetLimit=domplate(Firebug.Rep,{collapsed:true,tableTag:DIV(TABLE({width:"100%",cellpadding:0,cellspacing:0},TBODY())),limitTag:TR({"class":"netRow netLimitRow",$collapsed:"$isCollapsed"},TD({"class":"netCol netLimitCol",colspan:6},TABLE({cellpadding:0,cellspacing:0},TBODY(TR(TD(SPAN({"class":"netLimitLabel"},$STRP("plural.Limit_Exceeded",[0]))),TD({style:"width:100%"}),TD(BUTTON({"class":"netLimitButton",title:"$limitPrefsTitle",onclick:"$onPreferences"},$STR("LimitPrefs"))),TD(" ")))))),isCollapsed:function(){return this.collapsed -},onPreferences:function(event){openNewTab("about:config") -},updateCounter:function(row){removeClass(row,"collapsed"); -var limitLabel=row.getElementsByClassName("netLimitLabel").item(0); -limitLabel.firstChild.nodeValue=$STRP("plural.Limit_Exceeded",[row.limitInfo.totalCount]) -},createTable:function(parent,limitInfo){var table=this.tableTag.replace({},parent); -var row=this.createRow(table.firstChild.firstChild,limitInfo); -return[table,row] -},createRow:function(parent,limitInfo){var row=this.limitTag.insertRows(limitInfo,parent,this)[0]; -row.limitInfo=limitInfo; -return row -},observe:function(subject,topic,data){if(topic!="nsPref:changed"){return -}if(data.indexOf("net.logLimit")!=-1){this.updateMaxLimit() -}},updateMaxLimit:function(){var value=Firebug.getPref(Firebug.prefDomain,"net.logLimit"); -maxQueueRequests=value?value:maxQueueRequests -}}); -var NetLimit=Firebug.NetMonitor.NetLimit; -Firebug.NetMonitor.ResponseSizeLimit=domplate(Firebug.Rep,{tag:DIV({"class":"netInfoResponseSizeLimit"},SPAN("$object.beforeLink"),A({"class":"objectLink",onclick:"$onClickLink"},"$object.linkText"),SPAN("$object.afterLink")),reLink:/^(.*)(.*)<\/a>(.*$)/,append:function(obj,parent){var m=obj.text.match(this.reLink); -return this.tag.append({onClickLink:obj.onClickLink,object:{beforeLink:m[1],linkText:m[2],afterLink:m[3]}},parent,this) -}}); -Firebug.NetMonitor.Utils={findHeader:function(headers,name){if(!headers){return null -}name=name.toLowerCase(); -for(var i=0; -ilimit&&!noLimit){return cropString(file.postText,limit,"\n\n... "+$STR("net.postDataSizeLimitMessage")+" ...\n\n") -}return file.postText -},getResponseText:function(file,context){return(typeof(file.responseText)!="undefined")?file.responseText:context.sourceCache.loadText(file.href,file.method,file) -},isURLEncodedRequest:function(file,context){var text=Utils.getPostText(file,context); -if(text&&text.toLowerCase().indexOf("content-type: application/x-www-form-urlencoded")==0){return true -}var headerValue=Utils.findHeader(file.requestHeaders,"content-type"); -if(headerValue&&headerValue.indexOf("application/x-www-form-urlencoded")==0){return true -}return false -},isMultiPartRequest:function(file,context){var text=Utils.getPostText(file,context); -if(text&&text.toLowerCase().indexOf("content-type: multipart/form-data")==0){return true -}return false -},getMimeType:function(mimeType,uri){if(!mimeType||!(mimeCategoryMap.hasOwnProperty(mimeType))){var ext=getFileExtension(uri); -if(!ext){return mimeType -}else{var extMimeType=mimeExtensionMap[ext.toLowerCase()]; -return extMimeType?extMimeType:mimeType -}}else{return mimeType -}},getDateFromSeconds:function(s){var d=new Date(); -d.setTime(s*1000); -return d -},getHttpHeaders:function(request,file){try{var http=QI(request,Ci.nsIHttpChannel); -file.status=request.responseStatus; -file.method=http.requestMethod; -file.urlParams=parseURLParams(file.href); -file.mimeType=Utils.getMimeType(request.contentType,request.name); -if(!file.responseHeaders&&Firebug.collectHttpHeaders){var requestHeaders=[],responseHeaders=[]; -http.visitRequestHeaders({visitHeader:function(name,value){requestHeaders.push({name:name,value:value}) -}}); -http.visitResponseHeaders({visitHeader:function(name,value){responseHeaders.push({name:name,value:value}) -}}); -file.requestHeaders=requestHeaders; -file.responseHeaders=responseHeaders -}}catch(exc){if(FBTrace.DBG_ERRORS){FBTrace.sysout("net.getHttpHeaders FAILS "+file.href,exc) -}}},isXHR:function(request){try{var callbacks=request.notificationCallbacks; -var xhrRequest=callbacks?callbacks.getInterface(Ci.nsIXMLHttpRequest):null; -if(FBTrace.DBG_NET){FBTrace.sysout("net.isXHR; "+(xhrRequest!=null)+", "+safeGetName(request)) -}return(xhrRequest!=null) -}catch(exc){}return false -},getFileCategory:function(file){if(file.category){if(FBTrace.DBG_NET){FBTrace.sysout("net.getFileCategory; current: "+file.category+" for: "+file.href,file) -}return file.category -}if(file.isXHR){if(FBTrace.DBG_NET){FBTrace.sysout("net.getFileCategory; XHR for: "+file.href,file) -}return file.category="xhr" -}if(!file.mimeType){var ext=getFileExtension(file.href); -if(ext){file.mimeType=mimeExtensionMap[ext.toLowerCase()] -}}if(!file.mimeType){return"" -}var mimeType=file.mimeType; -if(mimeType){mimeType=mimeType.split(";")[0] -}return(file.category=mimeCategoryMap[mimeType]) -}}; -var Utils=Firebug.NetMonitor.Utils; -Firebug.registerModule(Firebug.NetMonitor) -}}); -FBL.ns(function(){with(FBL){var contexts=[]; -Firebug.Spy=extend(Firebug.Module,{dispatchName:"spy",initialize:function(){if(Firebug.TraceModule){Firebug.TraceModule.addListener(this.TraceListener) -}Firebug.Module.initialize.apply(this,arguments) -},shutdown:function(){Firebug.Module.shutdown.apply(this,arguments); -if(Firebug.TraceModule){Firebug.TraceModule.removeListener(this.TraceListener) -}},initContext:function(context){context.spies=[]; -if(Firebug.showXMLHttpRequests&&Firebug.Console.isAlwaysEnabled()){this.attachObserver(context,context.window) -}if(FBTrace.DBG_SPY){FBTrace.sysout("spy.initContext "+contexts.length+" ",context.getName()) -}},destroyContext:function(context){this.detachObserver(context,null); -if(FBTrace.DBG_SPY&&context.spies.length){FBTrace.sysout("spy.destroyContext; ERROR There are leaking Spies ("+context.spies.length+") "+context.getName()) -}delete context.spies; -if(FBTrace.DBG_SPY){FBTrace.sysout("spy.destroyContext "+contexts.length+" ",context.getName()) -}},watchWindow:function(context,win){if(Firebug.showXMLHttpRequests&&Firebug.Console.isAlwaysEnabled()){this.attachObserver(context,win) -}},unwatchWindow:function(context,win){try{this.detachObserver(context,win) -}catch(ex){ERROR(ex) -}},updateOption:function(name,value){if(name=="showXMLHttpRequests"){var tach=value?this.attachObserver:this.detachObserver; -for(var i=0; -i\s*/,""); -var div=parentNode.ownerDocument.createElement("div"); -div.innerHTML=xmlText; -var root=div.getElementsByTagName("*")[0]; -if(FBTrace.DBG_XMLVIEWER){FBTrace.sysout("xmlviewer.updateTabBody; XML response parsed",doc) -}var html=[]; -Firebug.Reps.appendNode(root,html); -parentNode.innerHTML=html.join("") -}}); -Firebug.XMLViewerModel.ParseError=domplate(Firebug.Rep,{tag:DIV({"class":"xmlInfoError"},DIV({"class":"xmlInfoErrorMsg"},"$error.message"),PRE({"class":"xmlInfoErrorSource"},"$error|getSource")),getSource:function(error){var parts=error.source.split("\n"); -if(parts.length!=2){return error.source -}var limit=50; -var column=parts[1].length; -if(column>=limit){parts[0]="..."+parts[0].substr(column-limit); -parts[1]="..."+parts[1].substr(column-limit) -}if(parts[0].length>80){parts[0]=parts[0].substr(0,80)+"..." -}return parts.join("\n") -}}); -Firebug.registerModule(Firebug.XMLViewerModel) -}}); -FBL.ns(function(){with(FBL){var consoleQueue=[]; -var lastHighlightedObject; -var FirebugContext=Env.browser; -var maxQueueRequests=500; -Firebug.ConsoleBase={log:function(object,context,className,rep,noThrottle,sourceLink){return this.logRow(appendObject,object,context,className,rep,sourceLink,noThrottle) -},logFormatted:function(objects,context,className,noThrottle,sourceLink){return this.logRow(appendFormatted,objects,context,className,null,sourceLink,noThrottle) -},openGroup:function(objects,context,className,rep,noThrottle,sourceLink,noPush){return this.logRow(appendOpenGroup,objects,context,className,rep,sourceLink,noThrottle) -},closeGroup:function(context,noThrottle){return this.logRow(appendCloseGroup,null,context,null,null,null,noThrottle,true) -},logRow:function(appender,objects,context,className,rep,sourceLink,noThrottle,noRow){noThrottle=true; -if(!context){context=FirebugContext -}if(FBTrace.DBG_ERRORS&&!context){FBTrace.sysout("Console.logRow has no context, skipping objects",objects) -}if(!context){return -}if(noThrottle||!context){var panel=this.getPanel(context); -if(panel){var row=panel.append(appender,objects,className,rep,sourceLink,noRow); -var container=panel.panelNode; -return row -}else{consoleQueue.push([appender,objects,context,className,rep,sourceLink,noThrottle,noRow]) -}}else{if(!context.throttle){return -}var args=[appender,objects,context,className,rep,sourceLink,true,noRow]; -context.throttle(this.logRow,this,args) -}},appendFormatted:function(args,row,context){if(!context){context=FirebugContext -}var panel=this.getPanel(context); -panel.appendFormatted(args,row) -},clear:function(context){if(!context){context=Firebug.context -}var panel=this.getPanel(context,true); -if(panel){panel.clear() -}},getPanel:function(context,noCreate){return Firebug.chrome?Firebug.chrome.getPanel("Console"):null -}}; -var ActivableConsole=extend(Firebug.ConsoleBase,{isAlwaysEnabled:function(){return true -}}); -Firebug.Console=Firebug.Console=extend(ActivableConsole,{dispatchName:"console",error:function(){Firebug.Console.logFormatted(arguments,Firebug.browser,"error") -},flush:function(){dispatch(this.fbListeners,"flush",[]); -for(var i=0,length=consoleQueue.length; -iobjects.length){format=""; -objIndex=-1; -parts.length=0; -break -}}}for(var i=0; -i1){traceRecursion--; -return -}var frames=[]; -for(var fn=arguments.callee.caller.caller; -fn; -fn=fn.caller){if(wasVisited(fn)){break -}var args=[]; -for(var i=0,l=fn.arguments.length; -i1){objects=[errorObject]; -for(var i=1; -i0)){var oldest=frames.length-1; -for(var i=0; -i0&&Firebug.context.persistedState.commandHistory.length>0){this.element.value=Firebug.context.persistedState.commandHistory[--Firebug.context.persistedState.commandPointer] -}},nextCommand:function(){var element=this.element; -var limit=Firebug.context.persistedState.commandHistory.length-1; -var i=Firebug.context.persistedState.commandPointer; -if(i=0&&i',msg,"",'"] -},onKeyDown:function(e){e=e||event; -var code=e.keyCode; -if(code!=9&&code!=16&&code!=17&&code!=18){isAutoCompleting=false -}if(code==13){this.enter(); -this.clear() -}else{if(code==27){setTimeout(this.clear,0) -}else{if(code==38){this.prevCommand() -}else{if(code==40){this.nextCommand() -}else{if(code==9){this.autocomplete(e.shiftKey) -}else{return -}}}}}cancelEvent(e,true); -return false -},onMultiLineKeyDown:function(e){e=e||event; -var code=e.keyCode; -if(code==13&&e.ctrlKey){this.enter() -}}}); -Firebug.registerModule(Firebug.CommandLine); -function getExpressionOffset(command){var bracketCount=0; -var start=command.length-1; -for(; -start>=0; ---start){var c=command[start]; -if((c==","||c==";"||c==" ")&&!bracketCount){break -}if(reOpenBracket.test(c)){if(bracketCount){--bracketCount -}else{break -}}else{if(reCloseBracket.test(c)){++bracketCount -}}}return start+1 -}var CommandLineAPI={$:function(id){return Firebug.browser.document.getElementById(id) -},$$:function(selector,context){context=context||Firebug.browser.document; -return Firebug.Selector?Firebug.Selector(selector,context):Firebug.Console.error("Firebug.Selector module not loaded.") -},$0:null,$1:null,dir:function(o){Firebug.Console.log(o,Firebug.context,"dir",Firebug.DOMPanel.DirTable) -},dirxml:function(o){if(instanceOf(o,"Window")){o=o.document.documentElement -}else{if(instanceOf(o,"Document")){o=o.documentElement -}}Firebug.Console.log(o,Firebug.context,"dirxml",Firebug.HTMLPanel.SoloElement) -}}; -var defineCommandLineAPI=function defineCommandLineAPI(){Firebug.CommandLine.API={}; -for(var m in CommandLineAPI){if(!Env.browser.window[m]){Firebug.CommandLine.API[m]=CommandLineAPI[m] -}}var stack=FirebugChrome.htmlSelectionStack; -if(stack){Firebug.CommandLine.API.$0=stack[0]; -Firebug.CommandLine.API.$1=stack[1] -}} -}}); -FBL.ns(function(){with(FBL){var ElementCache=Firebug.Lite.Cache.Element; -var cacheID=Firebug.Lite.Cache.ID; -var ignoreHTMLProps={sizcache:1,sizset:1}; -if(Firebug.ignoreFirebugElements){ignoreHTMLProps[cacheID]=1 -}Firebug.HTML=extend(Firebug.Module,{appendTreeNode:function(nodeArray,html){var reTrim=/^\s+|\s+$/g; -if(!nodeArray.length){nodeArray=[nodeArray] -}for(var n=0,node; -node=nodeArray[n]; -n++){if(node.nodeType==1){if(Firebug.ignoreFirebugElements&&node.firebugIgnore){continue -}var uid=ElementCache(node); -var child=node.childNodes; -var childLength=child.length; -var nodeName=node.nodeName.toLowerCase(); -var nodeVisible=isVisible(node); -var hasSingleTextChild=childLength==1&&node.firstChild.nodeType==3&&nodeName!="script"&&nodeName!="style"; -var nodeControl=!hasSingleTextChild&&childLength>0?('
      '):""; -if(isIE&&nodeControl){html.push(nodeControl) -}if(typeof uid!="undefined"){html.push('
      ',!isIE&&nodeControl?nodeControl:"","<',nodeName,"") -}else{html.push('
      <',nodeName,"") -}for(var i=0; -i',name,'="',escapeHTML(value),""") -}if(hasSingleTextChild){var value=child[0].nodeValue.replace(reTrim,""); -if(value){html.push('>',escapeHTML(value),'</',nodeName,">
      ") -}else{html.push("/>
      ") -}}else{if(childLength>0){html.push(">") -}else{html.push("/>") -}}}else{if(node.nodeType==3){if(node.parentNode&&(node.parentNode.nodeName.toLowerCase()=="script"||node.parentNode.nodeName.toLowerCase()=="style")){var value=node.nodeValue.replace(reTrim,""); -if(isIE){var src=value+"\n" -}else{var src="\n"+value+"\n" -}var match=src.match(/\n/g); -var num=match?match.length:0; -var s=[],sl=0; -for(var c=1; -c'+c+"" -}html.push('
      ',s.join(""),'
      ',escapeHTML(src),"
      ") -}else{var value=node.nodeValue.replace(reTrim,""); -if(value){html.push('
      ',escapeHTML(value),"
      ") -}}}}}},appendTreeChildren:function(treeNode){var doc=Firebug.chrome.document; -var uid=treeNode.id; -var parentNode=ElementCache.get(uid); -if(parentNode.childNodes.length==0){return -}var treeNext=treeNode.nextSibling; -var treeParent=treeNode.parentNode; -var control=isIE?treeNode.previousSibling:treeNode.firstChild; -control.className="nodeControl nodeMaximized"; -var html=[]; -var children=doc.createElement("div"); -children.className="nodeChildren"; -this.appendTreeNode(parentNode.childNodes,html); -children.innerHTML=html.join(""); -treeParent.insertBefore(children,treeNext); -var closeElement=doc.createElement("div"); -closeElement.className="objectBox-element"; -closeElement.innerHTML='</'+parentNode.nodeName.toLowerCase()+">"; -treeParent.insertBefore(closeElement,treeNext) -},removeTreeChildren:function(treeNode){var children=treeNode.nextSibling; -var closeTag=children.nextSibling; -var control=isIE?treeNode.previousSibling:treeNode.firstChild; -control.className="nodeControl"; -children.parentNode.removeChild(children); -closeTag.parentNode.removeChild(closeTag) -},isTreeNodeVisible:function(id){return $(id) -},select:function(el){var id=el&&ElementCache(el); -if(id){this.selectTreeNode(id) -}},selectTreeNode:function(id){id=""+id; -var node,stack=[]; -while(id&&!this.isTreeNodeVisible(id)){stack.push(id); -var node=ElementCache.get(id).parentNode; -if(node){id=ElementCache(node) -}else{break -}}stack.push(id); -while(stack.length>0){id=stack.pop(); -node=$(id); -if(stack.length>0&&ElementCache.get(id).childNodes.length>0){this.appendTreeChildren(node) -}}selectElement(node); -if(fbPanel1){fbPanel1.scrollTop=Math.round(node.offsetTop-fbPanel1.clientHeight/2) -}}}); -Firebug.registerModule(Firebug.HTML); -function HTMLPanel(){}HTMLPanel.prototype=extend(Firebug.Panel,{name:"HTML",title:"HTML",options:{hasSidePanel:true,isPreRendered:!Firebug.flexChromeEnabled,innerHTMLSync:true},create:function(){Firebug.Panel.create.apply(this,arguments); -this.panelNode.style.padding="4px 3px 1px 15px"; -this.panelNode.style.minWidth="500px"; -if(Env.Options.enablePersistent||Firebug.chrome.type!="popup"){this.createUI() -}if(this.sidePanelBar&&!this.sidePanelBar.selectedPanel){this.sidePanelBar.selectPanel("css") -}},destroy:function(){selectedElement=null; -fbPanel1=null; -selectedSidePanelTS=null; -selectedSidePanelTimer=null; -Firebug.Panel.destroy.apply(this,arguments) -},createUI:function(){var rootNode=Firebug.browser.document.documentElement; -var html=[]; -Firebug.HTML.appendTreeNode(rootNode,html); -this.panelNode.innerHTML=html.join("") -},initialize:function(){Firebug.Panel.initialize.apply(this,arguments); -addEvent(this.panelNode,"click",Firebug.HTML.onTreeClick); -fbPanel1=$("fbPanel1"); -if(!selectedElement){Firebug.context.persistedState.selectedHTMLElementId=Firebug.context.persistedState.selectedHTMLElementId&&ElementCache.get(Firebug.context.persistedState.selectedHTMLElementId)?Firebug.context.persistedState.selectedHTMLElementId:ElementCache(Firebug.browser.document.body); -Firebug.HTML.selectTreeNode(Firebug.context.persistedState.selectedHTMLElementId) -}addEvent(fbPanel1,"mousemove",Firebug.HTML.onListMouseMove); -addEvent($("fbContent"),"mouseout",Firebug.HTML.onListMouseMove); -addEvent(Firebug.chrome.node,"mouseout",Firebug.HTML.onListMouseMove) -},shutdown:function(){removeEvent(fbPanel1,"mousemove",Firebug.HTML.onListMouseMove); -removeEvent($("fbContent"),"mouseout",Firebug.HTML.onListMouseMove); -removeEvent(Firebug.chrome.node,"mouseout",Firebug.HTML.onListMouseMove); -removeEvent(this.panelNode,"click",Firebug.HTML.onTreeClick); -fbPanel1=null; -Firebug.Panel.shutdown.apply(this,arguments) -},reattach:function(){if(Firebug.context.persistedState.selectedHTMLElementId){Firebug.HTML.selectTreeNode(Firebug.context.persistedState.selectedHTMLElementId) -}},updateSelection:function(object){var id=ElementCache(object); -if(id){Firebug.HTML.selectTreeNode(id) -}}}); -Firebug.registerPanel(HTMLPanel); -var formatStyles=function(styles){return isIE?styles.replace(/([^\s]+)\s*:/g,function(m,g){return g.toLowerCase()+":" -}):styles -}; -var selectedElement=null; -var fbPanel1=null; -var selectedSidePanelTS,selectedSidePanelTimer; -var selectElement=function selectElement(e){if(e!=selectedElement){if(selectedElement){selectedElement.className="objectBox-element" -}e.className=e.className+" selectedElement"; -if(FBL.isFirefox){e.style.MozBorderRadius="2px" -}else{if(FBL.isSafari){e.style.WebkitBorderRadius="2px" -}}e.style.borderRadius="2px"; -selectedElement=e; -Firebug.context.persistedState.selectedHTMLElementId=e.id; -var target=ElementCache.get(e.id); -var sidePanelBar=Firebug.chrome.getPanel("HTML").sidePanelBar; -var selectedSidePanel=sidePanelBar?sidePanelBar.selectedPanel:null; -var stack=FirebugChrome.htmlSelectionStack; -stack.unshift(target); -if(stack.length>2){stack.pop() -}var lazySelect=function(){selectedSidePanelTS=new Date().getTime(); -if(selectedSidePanel){selectedSidePanel.select(target,true) -}}; -if(selectedSidePanelTimer){clearTimeout(selectedSidePanelTimer); -selectedSidePanelTimer=null -}if(new Date().getTime()-selectedSidePanelTS>100){setTimeout(lazySelect,0) -}else{selectedSidePanelTimer=setTimeout(lazySelect,150) -}}}; -Firebug.HTML.onTreeClick=function(e){e=e||event; -var targ; -if(e.target){targ=e.target -}else{if(e.srcElement){targ=e.srcElement -}}if(targ.nodeType==3){targ=targ.parentNode -}if(targ.className.indexOf("nodeControl")!=-1||targ.className=="nodeTag"){if(targ.className=="nodeTag"){var control=isIE?(targ.parentNode.previousSibling||targ):(targ.parentNode.previousSibling||targ); -selectElement(targ.parentNode.parentNode); -if(control.className.indexOf("nodeControl")==-1){return -}}else{control=targ -}FBL.cancelEvent(e); -var treeNode=isIE?control.nextSibling:control.parentNode; -if(control.className.indexOf(" nodeMaximized")!=-1){FBL.Firebug.HTML.removeTreeChildren(treeNode) -}else{FBL.Firebug.HTML.appendTreeChildren(treeNode) -}}else{if(targ.className=="nodeValue"||targ.className=="nodeName"){}}}; -function onListMouseOut(e){e=e||event||window; -var targ; -if(e.target){targ=e.target -}else{if(e.srcElement){targ=e.srcElement -}}if(targ.nodeType==3){targ=targ.parentNode -}if(hasClass(targ,"fbPanel")){FBL.Firebug.Inspector.hideBoxModel(); -hoverElement=null -}}var hoverElement=null; -var hoverElementTS=0; -Firebug.HTML.onListMouseMove=function onListMouseMove(e){try{e=e||event||window; -var targ; -if(e.target){targ=e.target -}else{if(e.srcElement){targ=e.srcElement -}}if(targ.nodeType==3){targ=targ.parentNode -}var found=false; -while(targ&&!found){if(!/\snodeBox\s|\sobjectBox-selector\s/.test(" "+targ.className+" ")){targ=targ.parentNode -}else{found=true -}}if(!targ){FBL.Firebug.Inspector.hideBoxModel(); -hoverElement=null; -return -}if(typeof targ.attributes[cacheID]=="undefined"){return -}var uid=targ.attributes[cacheID]; -if(!uid){return -}var el=ElementCache.get(uid.value); -var nodeName=el.nodeName.toLowerCase(); -if(FBL.isIE&&" meta title script link ".indexOf(" "+nodeName+" ")!=-1){return -}if(!/\snodeBox\s|\sobjectBox-selector\s/.test(" "+targ.className+" ")){return -}if(el.id=="FirebugUI"||" html head body br script link iframe ".indexOf(" "+nodeName+" ")!=-1){FBL.Firebug.Inspector.hideBoxModel(); -hoverElement=null; -return -}if((new Date().getTime()-hoverElementTS>40)&&hoverElement!=el){hoverElementTS=new Date().getTime(); -hoverElement=el; -FBL.Firebug.Inspector.drawBoxModel(el) -}}catch(E){}}; -Firebug.Reps={appendText:function(object,html){html.push(escapeHTML(objectToString(object))) -},appendNull:function(object,html){html.push('',escapeHTML(objectToString(object)),"") -},appendString:function(object,html){html.push('"',escapeHTML(objectToString(object)),""") -},appendInteger:function(object,html){html.push('',escapeHTML(objectToString(object)),"") -},appendFloat:function(object,html){html.push('',escapeHTML(objectToString(object)),"") -},appendFunction:function(object,html){var reName=/function ?(.*?)\(/; -var m=reName.exec(objectToString(object)); -var name=m&&m[1]?m[1]:"function"; -html.push('',escapeHTML(name),"()") -},appendObject:function(object,html){try{if(object==undefined){this.appendNull("undefined",html) -}else{if(object==null){this.appendNull("null",html) -}else{if(typeof object=="string"){this.appendString(object,html) -}else{if(typeof object=="number"){this.appendInteger(object,html) -}else{if(typeof object=="boolean"){this.appendInteger(object,html) -}else{if(typeof object=="function"){this.appendFunction(object,html) -}else{if(object.nodeType==1){this.appendSelector(object,html) -}else{if(typeof object=="object"){if(typeof object.length!="undefined"){this.appendArray(object,html) -}else{this.appendObjectFormatted(object,html) -}}else{this.appendText(object,html) -}}}}}}}}}catch(exc){}},appendObjectFormatted:function(object,html){var text=objectToString(object); -var reObject=/\[object (.*?)\]/; -var m=reObject.exec(text); -html.push('',m?m[1]:text,"") -},appendSelector:function(object,html){var uid=ElementCache(object); -var uidString=uid?[cacheID,'="',uid,'"'].join(""):""; -html.push('"); -html.push('',escapeHTML(object.nodeName.toLowerCase()),""); -if(object.id){html.push('#',escapeHTML(object.id),"") -}if(object.className){html.push('.',escapeHTML(object.className),"") -}html.push("") -},appendNode:function(node,html){if(node.nodeType==1){var uid=ElementCache(node); -var uidString=uid?[cacheID,'="',uid,'"'].join(""):""; -html.push('
      ',"','<',node.nodeName.toLowerCase(),""); -for(var i=0; -i',name,'="',escapeHTML(value),""") -}if(node.firstChild){html.push('>
      '); -for(var child=node.firstChild; -child; -child=child.nextSibling){this.appendNode(child,html) -}html.push('
      </',node.nodeName.toLowerCase(),">
      ") -}else{html.push("/>") -}}else{if(node.nodeType==3){var value=trim(node.nodeValue); -if(value){html.push('
      ',escapeHTML(value),"
      ") -}}}},appendArray:function(object,html){html.push('[ '); -for(var i=0,l=object.length,obj; -i]") -}} -}}); -FBL.ns(function(){with(FBL){var maxWidth=100,maxHeight=80; -var infoTipMargin=10; -var infoTipWindowPadding=25; -Firebug.InfoTip=extend(Firebug.Module,{dispatchName:"infoTip",tags:domplate({infoTipTag:DIV({"class":"infoTip"}),colorTag:DIV({style:"background: $rgbValue; width: 100px; height: 40px"}," "),imgTag:DIV({"class":"infoTipImageBox infoTipLoading"},IMG({"class":"infoTipImage",src:"$urlValue",repeat:"$repeat",onload:"$onLoadImage"}),IMG({"class":"infoTipBgImage",collapsed:true,src:"blank.gif"}),DIV({"class":"infoTipCaption"})),onLoadImage:function(event){var img=event.currentTarget||event.srcElement; -var innerBox=img.parentNode; -var caption=getElementByClass(innerBox,"infoTipCaption"); -var bgImg=getElementByClass(innerBox,"infoTipBgImage"); -if(!bgImg){return -}if(isIE){removeClass(innerBox,"infoTipLoading") -}var updateInfoTip=function(){var w=img.naturalWidth||img.width||10,h=img.naturalHeight||img.height||10; -var repeat=img.getAttribute("repeat"); -if(repeat=="repeat-x"||(w==1&&h>1)){collapse(img,true); -collapse(bgImg,false); -bgImg.style.background="url("+img.src+") repeat-x"; -bgImg.style.width=maxWidth+"px"; -if(h>maxHeight){bgImg.style.height=maxHeight+"px" -}else{bgImg.style.height=h+"px" -}}else{if(repeat=="repeat-y"||(h==1&&w>1)){collapse(img,true); -collapse(bgImg,false); -bgImg.style.background="url("+img.src+") repeat-y"; -bgImg.style.height=maxHeight+"px"; -if(w>maxWidth){bgImg.style.width=maxWidth+"px" -}else{bgImg.style.width=w+"px" -}}else{if(repeat=="repeat"||(w==1&&h==1)){collapse(img,true); -collapse(bgImg,false); -bgImg.style.background="url("+img.src+") repeat"; -bgImg.style.width=maxWidth+"px"; -bgImg.style.height=maxHeight+"px" -}else{if(w>maxWidth||h>maxHeight){if(w>h){img.style.width=maxWidth+"px"; -img.style.height=Math.round((h/w)*maxWidth)+"px" -}else{img.style.width=Math.round((w/h)*maxHeight)+"px"; -img.style.height=maxHeight+"px" -}}}}}caption.innerHTML=$STRF(w+" x "+h) -}; -if(isIE){setTimeout(updateInfoTip,0) -}else{updateInfoTip(); -removeClass(innerBox,"infoTipLoading") -}}}),initializeBrowser:function(browser){browser.onInfoTipMouseOut=bind(this.onMouseOut,this,browser); -browser.onInfoTipMouseMove=bind(this.onMouseMove,this,browser); -var doc=browser.document; -if(!doc){return -}addEvent(doc,"mouseover",browser.onInfoTipMouseMove); -addEvent(doc,"mouseout",browser.onInfoTipMouseOut); -addEvent(doc,"mousemove",browser.onInfoTipMouseMove); -return browser.infoTip=this.tags.infoTipTag.append({},getBody(doc)) -},uninitializeBrowser:function(browser){if(browser.infoTip){var doc=browser.document; -removeEvent(doc,"mouseover",browser.onInfoTipMouseMove); -removeEvent(doc,"mouseout",browser.onInfoTipMouseOut); -removeEvent(doc,"mousemove",browser.onInfoTipMouseMove); -browser.infoTip.parentNode.removeChild(browser.infoTip); -delete browser.infoTip; -delete browser.onInfoTipMouseMove -}},showInfoTip:function(infoTip,panel,target,x,y,rangeParent,rangeOffset){if(!Firebug.showInfoTips){return -}var scrollParent=getOverflowParent(target); -var scrollX=x+(scrollParent?scrollParent.scrollLeft:0); -if(panel.showInfoTip(infoTip,target,scrollX,y,rangeParent,rangeOffset)){var htmlElt=infoTip.ownerDocument.documentElement; -var panelWidth=htmlElt.clientWidth; -var panelHeight=htmlElt.clientHeight; -if(x+infoTip.offsetWidth+infoTipMargin>panelWidth){infoTip.style.left=Math.max(0,panelWidth-(infoTip.offsetWidth+infoTipMargin))+"px"; -infoTip.style.right="auto" -}else{infoTip.style.left=(x+infoTipMargin)+"px"; -infoTip.style.right="auto" -}if(y+infoTip.offsetHeight+infoTipMargin>panelHeight){infoTip.style.top=Math.max(0,panelHeight-(infoTip.offsetHeight+infoTipMargin))+"px"; -infoTip.style.bottom="auto" -}else{infoTip.style.top=(y+infoTipMargin)+"px"; -infoTip.style.bottom="auto" -}if(FBTrace.DBG_INFOTIP){FBTrace.sysout("infotip.showInfoTip; top: "+infoTip.style.top+", left: "+infoTip.style.left+", bottom: "+infoTip.style.bottom+", right:"+infoTip.style.right+", offsetHeight: "+infoTip.offsetHeight+", offsetWidth: "+infoTip.offsetWidth+", x: "+x+", panelWidth: "+panelWidth+", y: "+y+", panelHeight: "+panelHeight) -}infoTip.setAttribute("active","true") -}else{this.hideInfoTip(infoTip) -}},hideInfoTip:function(infoTip){if(infoTip){infoTip.removeAttribute("active") -}},onMouseOut:function(event,browser){if(!event.relatedTarget){this.hideInfoTip(browser.infoTip) -}},onMouseMove:function(event,browser){if(getAncestorByClass(event.target,"infoTip")){return -}if(browser.currentPanel){var x=event.clientX,y=event.clientY,target=event.target||event.srcElement; -this.showInfoTip(browser.infoTip,browser.currentPanel,target,x,y,event.rangeParent,event.rangeOffset) -}else{this.hideInfoTip(browser.infoTip) -}},populateColorInfoTip:function(infoTip,color){this.tags.colorTag.replace({rgbValue:color},infoTip); -return true -},populateImageInfoTip:function(infoTip,url,repeat){if(!repeat){repeat="no-repeat" -}this.tags.imgTag.replace({urlValue:url,repeat:repeat},infoTip); -return true -},disable:function(){},showPanel:function(browser,panel){if(panel){var infoTip=panel.panelBrowser.infoTip; -if(!infoTip){infoTip=this.initializeBrowser(panel.panelBrowser) -}this.hideInfoTip(infoTip) -}},showSidePanel:function(browser,panel){this.showPanel(browser,panel) -}}); -Firebug.registerModule(Firebug.InfoTip) -}}); -FBL.ns(function(){with(FBL){var CssParser=null; -CssParser=(function(){function rule(start,body_start,end){return{start:start||0,body_start:body_start||0,end:end||0,line:-1,selector:null,parent:null,children:[],addChild:function(start,body_start,end){var r=rule(start,body_start,end); -r.parent=this; -this.children.push(r); -return r -},lastChild:function(){return this.children[this.children.length-1] -}} -}function removeAll(str,re){var m; -while(m=str.match(re)){str=str.substring(m[0].length) -}return str -}function trim(str){return str.replace(/^\s+|\s+$/g,"") -}function normalizeSelector(selector){selector=selector.replace(/[\n\r]/g," "); -selector=trim(selector); -selector=selector.replace(/\s*,\s*/g,","); -return selector -}function preprocessRules(text,rule_node){for(var i=0,il=rule_node.children.length; -i=line_indexes[j]&&r.start0 -}; -CssAnalyzer.parseStyleSheet=function(href){var sourceData=extractSourceData(href); -var parsedObj=CssParser.read(sourceData.source,sourceData.startLine); -var parsedRules=parsedObj.children; -for(var i=0; -i0){groupItem=group.shift(); -if(CssParser.normalizeSelector(selector)==groupItem){lineNo=parsedRule.line -}if(group.length==0){parsedRulesIndex++ -}}else{if(CssParser.normalizeSelector(selector)==parsedRule.selector){lineNo=parsedRule.line; -parsedRulesIndex++ -}}}CSSRuleMap[rid]={styleSheetId:ssid,styleSheetIndex:i,order:++globalCSSRuleIndex,specificity:selector&&selector.indexOf(",")==-1?getCSSRuleSpecificity(selector):0,rule:rule,lineNo:lineNo,selector:selector,cssText:rule.style?rule.style.cssText:rule.cssText?rule.cssText:""}; -var elements=Firebug.Selector(selector,doc); -for(var j=0,elementsLength=elements.length; -jmaxSpecificity){maxSpecificity=spec; -mostSpecificSelector=sel -}}}rule.specificity=maxSpecificity -}}rules.sort(sortElementRules); -return rules -}; -var sortElementRules=function(a,b){var ruleA=CSSRuleMap[a]; -var ruleB=CSSRuleMap[b]; -var specificityA=ruleA.specificity; -var specificityB=ruleB.specificity; -if(specificityA>specificityB){return 1 -}else{if(specificityAruleB.order?1:-1 -}}}; -var solveRulesTied=function(a,b){var ruleA=CSSRuleMap[a]; -var ruleB=CSSRuleMap[b]; -if(ruleA.specificity==ruleB.specificity){return ruleA.order>ruleB.order?1:-1 -}return null -}; -var getCSSRuleSpecificity=function(selector){var match=selector.match(reSelectorTag); -var tagCount=match?match.length:0; -match=selector.match(reSelectorClass); -var classCount=match?match.length:0; -match=selector.match(reSelectorId); -var idCount=match?match.length:0; -return tagCount+10*classCount+100*idCount -}; -var extractSourceData=function(href){var sourceData={source:null,startLine:0}; -if(href){sourceData.source=Firebug.Lite.Proxy.load(href) -}else{var index=0; -var ssIndex=++internalStyleSheetIndex; -var reStyleTag=/\<\s*style.*\>/gi; -var reEndStyleTag=/\<\/\s*style.*\>/gi; -var source=Firebug.Lite.Proxy.load(Env.browser.location.href); -source=source.replace(/\n\r|\r\n/g,"\n"); -var startLine=0; -do{var matchStyleTag=source.match(reStyleTag); -var i0=source.indexOf(matchStyleTag[0])+matchStyleTag[0].length; -for(var i=0; -i=line){return rule -}}}},highlightRule:function(rule){var ruleElement=Firebug.getElementByRepObject(this.panelNode.firstChild,rule); -if(ruleElement){scrollIntoCenterView(ruleElement,this.panelNode); -setClassTimed(ruleElement,"jumpHighlight",this.context) -}},getStyleSheetRules:function(context,styleSheet){var isSystemSheet=isSystemStyleSheet(styleSheet); -function appendRules(cssRules){for(var i=0; -i20){return -}var target=event.target||event.srcElement; -if(hasClass(target,"textEditor")){return -}var row=getAncestorByClass(target,"cssProp"); -if(row&&hasClass(row,"editGroup")){this.disablePropertyRow(row); -cancelEvent(event) -}},onDoubleClick:function(event){var offset=event.clientX-this.panelNode.parentNode.offsetLeft; -if(!isLeftClick(event)||offset<=20){return -}var target=event.target||event.srcElement; -if(hasClass(target,"textEditorInner")){return -}var row=getAncestorByClass(target,"cssRule"); -if(row&&!getAncestorByClass(target,"cssPropName")&&!getAncestorByClass(target,"cssPropValue")){this.insertPropertyRow(row); -cancelEvent(event) -}},name:"stylesheet",title:"CSS",parentPanel:null,searchable:true,dependents:["css","stylesheet","dom","domSide","layout"],options:{hasToolButtons:true},create:function(){Firebug.Panel.create.apply(this,arguments); -this.onMouseDown=bind(this.onMouseDown,this); -this.onDoubleClick=bind(this.onDoubleClick,this); -if(this.name=="stylesheet"){this.onChangeSelect=bind(this.onChangeSelect,this); -var doc=Firebug.browser.document; -var selectNode=this.selectNode=createElement("select"); -CssAnalyzer.processAllStyleSheets(doc,function(doc,styleSheet){var key=StyleSheetCache.key(styleSheet); -var fileName=getFileName(styleSheet.href)||getFileName(doc.location.href); -var option=createElement("option",{value:key}); -option.appendChild(Firebug.chrome.document.createTextNode(fileName)); -selectNode.appendChild(option) -}); -this.toolButtonsNode.appendChild(selectNode) -}},onChangeSelect:function(event){event=event||window.event; -var target=event.srcElement||event.currentTarget; -var key=target.value; -var styleSheet=StyleSheetCache.get(key); -this.updateLocation(styleSheet) -},initialize:function(){Firebug.Panel.initialize.apply(this,arguments); -this.context=Firebug.chrome; -this.document=Firebug.chrome.document; -this.initializeNode(); -if(this.name=="stylesheet"){var styleSheets=Firebug.browser.document.styleSheets; -if(styleSheets.length>0){addEvent(this.selectNode,"change",this.onChangeSelect); -this.updateLocation(styleSheets[0]) -}}},shutdown:function(){Firebug.Editor.stopEditing(); -if(this.name=="stylesheet"){removeEvent(this.selectNode,"change",this.onChangeSelect) -}this.destroyNode(); -Firebug.Panel.shutdown.apply(this,arguments) -},destroy:function(state){Firebug.Panel.destroy.apply(this,arguments) -},initializeNode:function(oldPanelNode){addEvent(this.panelNode,"mousedown",this.onMouseDown); -addEvent(this.panelNode,"dblclick",this.onDoubleClick) -},destroyNode:function(){removeEvent(this.panelNode,"mousedown",this.onMouseDown); -removeEvent(this.panelNode,"dblclick",this.onDoubleClick) -},ishow:function(state){Firebug.Inspector.stopInspecting(true); -this.showToolbarButtons("fbCSSButtons",true); -if(this.context.loaded&&!this.location){restoreObjects(this,state); -if(!this.location){this.location=this.getDefaultLocation() -}if(state&&state.scrollTop){this.panelNode.scrollTop=state.scrollTop -}}},ihide:function(){this.showToolbarButtons("fbCSSButtons",false); -this.lastScrollTop=this.panelNode.scrollTop -},supportsObject:function(object){if(object instanceof CSSStyleSheet){return 1 -}else{if(object instanceof CSSStyleRule){return 2 -}else{if(object instanceof CSSStyleDeclaration){return 2 -}else{if(object instanceof SourceLink&&object.type=="css"&&reCSS.test(object.href)){return 2 -}else{return 0 -}}}}},updateLocation:function(styleSheet){if(!styleSheet){return -}if(styleSheet.editStyleSheet){styleSheet=styleSheet.editStyleSheet.sheet -}if(styleSheet.restricted){FirebugReps.Warning.tag.replace({object:"AccessRestricted"},this.panelNode); -CssAnalyzer.externalStyleSheetWarning.tag.append({object:"The stylesheet could not be loaded due to access restrictions. ",link:"more...",href:"http://getfirebug.com/wiki/index.php/Firebug_Lite_FAQ#I_keep_seeing_.22Access_to_restricted_URI_denied.22"},this.panelNode); -return -}var rules=this.getStyleSheetRules(this.context,styleSheet); -var result; -if(rules.length){result=this.template.tag.replace({rules:rules},this.panelNode) -}else{result=FirebugReps.Warning.tag.replace({object:"EmptyStyleSheet"},this.panelNode) -}},updateSelection:function(object){this.selection=null; -if(object instanceof CSSStyleDeclaration){object=object.parentRule -}if(object instanceof CSSStyleRule){this.navigate(object.parentStyleSheet); -this.highlightRule(object) -}else{if(object instanceof CSSStyleSheet){this.navigate(object) -}else{if(object instanceof SourceLink){try{var sourceLink=object; -var sourceFile=getSourceFileByHref(sourceLink.href,this.context); -if(sourceFile){clearNode(this.panelNode); -this.showSourceFile(sourceFile); -var lineNo=object.line; -if(lineNo){this.scrollToLine(lineNo,this.jumpHighlightFactory(lineNo,this.context)) -}}else{var stylesheet=getStyleSheetByHref(sourceLink.href,this.context); -if(stylesheet){this.navigate(stylesheet) -}else{if(FBTrace.DBG_CSS){FBTrace.sysout("css.updateSelection no sourceFile for "+sourceLink.href,sourceLink) -}}}}catch(exc){if(FBTrace.DBG_CSS){FBTrace.sysout("css.upDateSelection FAILS "+exc,exc) -}}}}}},updateOption:function(name,value){if(name=="expandShorthandProps"){this.refresh() -}},getLocationList:function(){var styleSheets=getAllStyleSheets(this.context); -return styleSheets -},getOptionsMenuItems:function(){return[{label:"Expand Shorthand Properties",type:"checkbox",checked:Firebug.expandShorthandProps,command:bindFixed(Firebug.togglePref,Firebug,"expandShorthandProps")},"-",{label:"Refresh",command:bind(this.refresh,this)}] -},getContextMenuItems:function(style,target){var items=[]; -if(this.infoTipType=="color"){items.push({label:"CopyColor",command:bindFixed(copyToClipboard,FBL,this.infoTipObject)}) -}else{if(this.infoTipType=="image"){items.push({label:"CopyImageLocation",command:bindFixed(copyToClipboard,FBL,this.infoTipObject)},{label:"OpenImageInNewTab",command:bindFixed(openNewTab,FBL,this.infoTipObject)}) -}}if(isElement(this.selection)){items.push({label:"EditStyle",command:bindFixed(this.editElementStyle,this)}) -}else{if(!isSystemStyleSheet(this.selection)){items.push({label:"NewRule",command:bindFixed(this.insertRule,this,target)}) -}}var cssRule=getAncestorByClass(target,"cssRule"); -if(cssRule&&hasClass(cssRule,"cssEditableRule")){items.push("-",{label:"NewProp",command:bindFixed(this.insertPropertyRow,this,target)}); -var propRow=getAncestorByClass(target,"cssProp"); -if(propRow){var propName=getChildByClass(propRow,"cssPropName")[textContent]; -var isDisabled=hasClass(propRow,"disabledStyle"); -items.push({label:$STRF("EditProp",[propName]),nol10n:true,command:bindFixed(this.editPropertyRow,this,propRow)},{label:$STRF("DeleteProp",[propName]),nol10n:true,command:bindFixed(this.deletePropertyRow,this,propRow)},{label:$STRF("DisableProp",[propName]),nol10n:true,type:"checkbox",checked:isDisabled,command:bindFixed(this.disablePropertyRow,this,propRow)}) -}}items.push("-",{label:"Refresh",command:bind(this.refresh,this)}); -return items -},browseObject:function(object){if(this.infoTipType=="image"){openNewTab(this.infoTipObject); -return true -}},showInfoTip:function(infoTip,target,x,y){var propValue=getAncestorByClass(target,"cssPropValue"); -if(propValue){var offset=getClientOffset(propValue); -var offsetX=x-offset.x; -var text=propValue[textContent]; -var charWidth=propValue.offsetWidth/text.length; -var charOffset=Math.floor(offsetX/charWidth); -var cssValue=parseCSSValue(text,charOffset); -if(cssValue){if(cssValue.value==this.infoTipValue){return true -}this.infoTipValue=cssValue.value; -if(cssValue.type=="rgb"||(!cssValue.type&&isColorKeyword(cssValue.value))){this.infoTipType="color"; -this.infoTipObject=cssValue.value; -return Firebug.InfoTip.populateColorInfoTip(infoTip,cssValue.value) -}else{if(cssValue.type=="url"){var propNameNode=getElementByClass(target.parentNode,"cssPropName"); -if(propNameNode&&isImageRule(propNameNode[textContent])){var rule=Firebug.getRepObject(target); -var baseURL=this.getStylesheetURL(rule); -var relURL=parseURLValue(cssValue.value); -var absURL=isDataURL(relURL)?relURL:absoluteURL(relURL,baseURL); -var repeat=parseRepeatValue(text); -this.infoTipType="image"; -this.infoTipObject=absURL; -return Firebug.InfoTip.populateImageInfoTip(infoTip,absURL,repeat) -}}}}}delete this.infoTipType; -delete this.infoTipValue; -delete this.infoTipObject -},getEditor:function(target,value){if(target==this.panelNode||hasClass(target,"cssSelector")||hasClass(target,"cssRule")||hasClass(target,"cssSheet")){if(!this.ruleEditor){this.ruleEditor=new CSSRuleEditor(this.document) -}return this.ruleEditor -}else{if(!this.editor){this.editor=new CSSEditor(this.document) -}return this.editor -}},getDefaultLocation:function(){try{var styleSheets=this.context.window.document.styleSheets; -if(styleSheets.length){var sheet=styleSheets[0]; -return(Firebug.filterSystemURLs&&isSystemURL(getURLForStyleSheet(sheet)))?null:sheet -}}catch(exc){if(FBTrace.DBG_LOCATIONS){FBTrace.sysout("css.getDefaultLocation FAILS "+exc,exc) -}}},getObjectDescription:function(styleSheet){var url=getURLForStyleSheet(styleSheet); -var instance=getInstanceForStyleSheet(styleSheet); -var baseDescription=splitURLBase(url); -if(instance){baseDescription.name=baseDescription.name+" #"+(instance+1) -}return baseDescription -},search:function(text,reverse){var curDoc=this.searchCurrentDoc(!Firebug.searchGlobal,text,reverse); -if(!curDoc&&Firebug.searchGlobal){return this.searchOtherDocs(text,reverse) -}return curDoc -},searchOtherDocs:function(text,reverse){var scanRE=Firebug.Search.getTestingRegex(text); -function scanDoc(styleSheet){for(var i=0; -i"+value+" = "+propValue+"\n") -}if(previousValue){Firebug.CSSModule.removeProperty(rule,previousValue) -}Firebug.CSSModule.setProperty(rule,value,parsedValue.value,parsedValue.priority) -}}else{if(!value){Firebug.CSSModule.removeProperty(rule,previousValue) -}}}else{if(getAncestorByClass(target,"cssPropValue")){var propName=getChildByClass(row,"cssPropName")[textContent]; -var propValue=getChildByClass(row,"cssPropValue")[textContent]; -if(FBTrace.DBG_CSS){FBTrace.sysout("CSSEditor.saveEdit propName=propValue: "+propName+" = "+propValue+"\n") -}if(value&&value!="null"){var parsedValue=parsePriority(value); -Firebug.CSSModule.setProperty(rule,propName,parsedValue.value,parsedValue.priority) -}else{if(previousValue&&previousValue!="null"){Firebug.CSSModule.removeProperty(rule,propName) -}}}}this.panel.markChange(this.panel.name=="stylesheet") -},advanceToNext:function(target,charCode){if(charCode==58&&hasClass(target,"cssPropName")){return true -}},getAutoCompleteRange:function(value,offset){if(hasClass(this.target,"cssPropName")){return{start:0,end:value.length-1} -}else{return parseCSSValue(value,offset) -}},getAutoCompleteList:function(preExpr,expr,postExpr){if(hasClass(this.target,"cssPropName")){return getCSSPropertyNames() -}else{var row=getAncestorByClass(this.target,"cssProp"); -var propName=getChildByClass(row,"cssPropName")[textContent]; -return getCSSKeywordsByProperty(propName) -}}}); -function CSSRuleEditor(doc){this.initializeInline(doc); -this.completeAsYouType=false -}CSSRuleEditor.uniquifier=0; -CSSRuleEditor.prototype=domplate(Firebug.InlineEditor.prototype,{insertNewRow:function(target,insertWhere){var emptyRule={selector:"",id:"",props:[],isSelectorEditable:true}; -if(insertWhere=="before"){return CSSStyleRuleTag.tag.insertBefore({rule:emptyRule},target) -}else{return CSSStyleRuleTag.tag.insertAfter({rule:emptyRule},target) -}},saveEdit:function(target,value,previousValue){if(FBTrace.DBG_CSS){FBTrace.sysout("CSSRuleEditor.saveEdit: '"+value+"' '"+previousValue+"'",target) -}target.innerHTML=escapeForCss(value); -if(value===previousValue){return -}var row=getAncestorByClass(target,"cssRule"); -var styleSheet=this.panel.location; -styleSheet=styleSheet.editStyleSheet?styleSheet.editStyleSheet.sheet:styleSheet; -var cssRules=styleSheet.cssRules; -var rule=Firebug.getRepObject(target),oldRule=rule; -var ruleIndex=cssRules.length; -if(rule||Firebug.getRepObject(row.nextSibling)){var searchRule=rule||Firebug.getRepObject(row.nextSibling); -for(ruleIndex=0; -ruleIndexb.name?1:-1 -}) -}function getTopmostRuleLine(panelNode){for(var child=panelNode.firstChild; -child; -child=child.nextSibling){if(child.offsetTop+child.offsetHeight>panelNode.scrollTop){var rule=child.repObject; -if(rule){return{line:domUtils.getRuleLine(rule),offset:panelNode.scrollTop-child.offsetTop} -}}}return 0 -}function getStyleSheetCSS(sheet,context){if(sheet.ownerNode instanceof HTMLStyleElement){return sheet.ownerNode.innerHTML -}else{return context.sourceCache.load(sheet.href).join("") -}}function getStyleSheetOwnerNode(sheet){for(; -sheet&&!sheet.ownerNode; -sheet=sheet.parentStyleSheet){}return sheet.ownerNode -}function scrollSelectionIntoView(panel){var selCon=getSelectionController(panel); -selCon.scrollSelectionIntoView(nsISelectionController.SELECTION_NORMAL,nsISelectionController.SELECTION_FOCUS_REGION,true) -}function getSelectionController(panel){var browser=Firebug.chrome.getPanelBrowser(panel); -return browser.docShell.QueryInterface(nsIInterfaceRequestor).getInterface(nsISelectionDisplay).QueryInterface(nsISelectionController) -}Firebug.registerModule(Firebug.CSSModule); -Firebug.registerPanel(Firebug.CSSStyleSheetPanel); -Firebug.registerPanel(CSSElementPanel); -Firebug.registerPanel(CSSComputedElementPanel) -}}); -FBL.ns(function(){with(FBL){Firebug.Script=extend(Firebug.Module,{getPanel:function(){return Firebug.chrome?Firebug.chrome.getPanel("Script"):null -},selectSourceCode:function(index){this.getPanel().selectSourceCode(index) -}}); -Firebug.registerModule(Firebug.Script); -function ScriptPanel(){}ScriptPanel.prototype=extend(Firebug.Panel,{name:"Script",title:"Script",selectIndex:0,sourceIndex:-1,options:{hasToolButtons:true},create:function(){Firebug.Panel.create.apply(this,arguments); -this.onChangeSelect=bind(this.onChangeSelect,this); -var doc=Firebug.browser.document; -var scripts=doc.getElementsByTagName("script"); -var selectNode=this.selectNode=createElement("select"); -for(var i=0,script; -script=scripts[i]; -i++){if(Firebug.ignoreFirebugElements&&script.getAttribute("firebugIgnore")){continue -}var fileName=getFileName(script.src)||getFileName(doc.location.href); -var option=createElement("option",{value:i}); -option.appendChild(Firebug.chrome.document.createTextNode(fileName)); -selectNode.appendChild(option) -}this.toolButtonsNode.appendChild(selectNode) -},initialize:function(){this.selectSourceCode(this.selectIndex); -Firebug.Panel.initialize.apply(this,arguments); -addEvent(this.selectNode,"change",this.onChangeSelect) -},shutdown:function(){removeEvent(this.selectNode,"change",this.onChangeSelect); -Firebug.Panel.shutdown.apply(this,arguments) -},detach:function(oldChrome,newChrome){Firebug.Panel.detach.apply(this,arguments); -var oldPanel=oldChrome.getPanel("Script"); -var index=oldPanel.selectIndex; -this.selectNode.selectedIndex=index; -this.selectIndex=index; -this.sourceIndex=-1 -},onChangeSelect:function(event){var select=this.selectNode; -this.selectIndex=select.selectedIndex; -var option=select.options[select.selectedIndex]; -if(!option){return -}var selectedSourceIndex=parseInt(option.value); -this.renderSourceCode(selectedSourceIndex) -},selectSourceCode:function(index){var select=this.selectNode; -select.selectedIndex=index; -var option=select.options[index]; -if(!option){return -}var selectedSourceIndex=parseInt(option.value); -this.renderSourceCode(selectedSourceIndex) -},renderSourceCode:function(index){if(this.sourceIndex!=index){var renderProcess=function renderProcess(src){var html=[],hl=0; -src=isIE&&!isExternal?src+"\n":"\n"+src; -src=src.replace(/\n\r|\r\n/g,"\n"); -var match=src.match(/[\n]/g); -var lines=match?match.length:0; -html[hl++]='
      0){path=reLastDir.exec(path)[1] -}path+=backDir[2] -}else{if(src.indexOf("/")!=-1){if(/^\.\/./.test(src)){path+=src.substring(2) -}else{if(/^\/./.test(src)){var domain=/^(\w+:\/\/[^\/]+)/.exec(path); -path=domain[1]+src -}else{path+=src -}}}}}}var m=path&&path.match(/([^\/]+)\/$/)||null; -if(path&&m){return path+fileName -}}; -var getFileName=function getFileName(path){if(!path){return"" -}var match=path&&path.match(/[^\/]+(\?.*)?(#.*)?$/); -return match&&match[0]||path -} -}}); -FBL.ns(function(){with(FBL){var ElementCache=Firebug.Lite.Cache.Element; -var insertSliceSize=18; -var insertInterval=40; -var ignoreVars={__firebug__:1,"eval":1,java:1,sun:1,Packages:1,JavaArray:1,JavaMember:1,JavaObject:1,JavaClass:1,JavaPackage:1,_firebug:1,_FirebugConsole:1,_FirebugCommandLine:1}; -if(Firebug.ignoreFirebugElements){ignoreVars[Firebug.Lite.Cache.ID]=1 -}var memberPanelRep=isIE6?{"class":"memberLabel $member.type\\Label",href:"javacript:void(0)"}:{"class":"memberLabel $member.type\\Label"}; -var RowTag=TR({"class":"memberRow $member.open $member.type\\Row",$hasChildren:"$member.hasChildren",role:"presentation",level:"$member.level"},TD({"class":"memberLabelCell",style:"padding-left: $member.indent\\px",role:"presentation"},A(memberPanelRep,SPAN({},"$member.name"))),TD({"class":"memberValueCell",role:"presentation"},TAG("$member.tag",{object:"$member.value"}))); -var WatchRowTag=TR({"class":"watchNewRow",level:0},TD({"class":"watchEditCell",colspan:2},DIV({"class":"watchEditBox a11yFocusNoTab",role:"button",tabindex:"0","aria-label":$STR("press enter to add new watch expression")},$STR("NewWatch")))); -var SizerRow=TR({role:"presentation"},TD({width:"30%"}),TD({width:"70%"})); -var domTableClass=isIElt8?"domTable domTableIE":"domTable"; -var DirTablePlate=domplate(Firebug.Rep,{tag:TABLE({"class":domTableClass,cellpadding:0,cellspacing:0,onclick:"$onClick",role:"tree"},TBODY({role:"presentation"},SizerRow,FOR("member","$object|memberIterator",RowTag))),watchTag:TABLE({"class":domTableClass,cellpadding:0,cellspacing:0,_toggles:"$toggles",_domPanel:"$domPanel",onclick:"$onClick",role:"tree"},TBODY({role:"presentation"},SizerRow,WatchRowTag)),tableTag:TABLE({"class":domTableClass,cellpadding:0,cellspacing:0,_toggles:"$toggles",_domPanel:"$domPanel",onclick:"$onClick",role:"tree"},TBODY({role:"presentation"},SizerRow)),rowTag:FOR("member","$members",RowTag),memberIterator:function(object,level){return getMembers(object,level) -},onClick:function(event){if(!isLeftClick(event)){return -}var target=event.target||event.srcElement; -var row=getAncestorByClass(target,"memberRow"); -var label=getAncestorByClass(target,"memberLabel"); -if(label&&hasClass(row,"hasChildren")){var row=label.parentNode.parentNode; -this.toggleRow(row) -}else{var object=Firebug.getRepObject(target); -if(typeof(object)=="function"){Firebug.chrome.select(object,"script"); -cancelEvent(event) -}else{if(event.detail==2&&!object){var panel=row.parentNode.parentNode.domPanel; -if(panel){var rowValue=panel.getRowPropertyValue(row); -if(typeof(rowValue)=="boolean"){panel.setPropertyValue(row,!rowValue) -}else{panel.editProperty(row) -}cancelEvent(event) -}}}}return false -},toggleRow:function(row){var level=parseInt(row.getAttribute("level")); -var toggles=row.parentNode.parentNode.toggles; -if(hasClass(row,"opened")){removeClass(row,"opened"); -if(toggles){var path=getPath(row); -for(var i=0; -i=priorScrollTop){panelNode.scrollTop=priorScrollTop -}},delay)); -delay+=insertInterval -}}if(offscreen){timeouts.push(this.context.setTimeout(function(){if(panelNode.firstChild){panelNode.replaceChild(table,panelNode.firstChild) -}else{panelNode.appendChild(table) -}panelNode.scrollTop=priorScrollTop -},delay)) -}else{timeouts.push(this.context.setTimeout(function(){panelNode.scrollTop=scrollTop==undefined?0:scrollTop -},delay)) -}this.timeouts=timeouts -},showEmptyMembers:function(){FirebugReps.Warning.tag.replace({object:"NoMembersWarning"},this.panelNode) -},findPathObject:function(object){var pathIndex=-1; -for(var i=0; -i1){for(var i=1; -i"); -r.push(i==0?"window":path[i]||"Object"); -r.push(""); -if(i>') -}}panel.statusBarNode.innerHTML=r.join("") -}; -var DOMMainPanel=Firebug.DOMPanel=function(){}; -Firebug.DOMPanel.DirTable=DirTablePlate; -DOMMainPanel.prototype=extend(Firebug.DOMBasePanel.prototype,{onClickStatusBar:function(event){var target=event.srcElement||event.target; -var element=getAncestorByClass(target,"fbHover"); -if(element){var pathIndex=element.getAttribute("pathIndex"); -if(pathIndex){this.select(this.getPathObject(pathIndex)) -}}},selectRow:function(row,target){if(!target){target=row.lastChild.firstChild -}if(!target||!target.repObject){return -}this.pathToAppend=getPath(row); -var valueBox=row.lastChild.firstChild; -if(hasClass(valueBox,"objectBox-array")){var arrayIndex=FirebugReps.Arr.getItemIndex(target); -this.pathToAppend.push(arrayIndex) -}this.select(target.repObject,true) -},onClick:function(event){var target=event.srcElement||event.target; -var repNode=Firebug.getRepNode(target); -if(repNode){var row=getAncestorByClass(target,"memberRow"); -if(row){this.selectRow(row,repNode); -cancelEvent(event) -}}},name:"DOM",title:"DOM",searchable:true,statusSeparator:">",options:{hasToolButtons:true,hasStatusBar:true},create:function(){Firebug.DOMBasePanel.prototype.create.apply(this,arguments); -this.onClick=bind(this.onClick,this); -this.onClickStatusBar=bind(this.onClickStatusBar,this); -this.panelNode.style.padding="0 1px" -},initialize:function(oldPanelNode){Firebug.DOMBasePanel.prototype.initialize.apply(this,arguments); -addEvent(this.panelNode,"click",this.onClick); -this.ishow(); -addEvent(this.statusBarNode,"click",this.onClickStatusBar) -},shutdown:function(){removeEvent(this.panelNode,"click",this.onClick); -Firebug.DOMBasePanel.prototype.shutdown.apply(this,arguments) -}}); -Firebug.registerPanel(DOMMainPanel); -var getMembers=function getMembers(object,level){if(!level){level=0 -}var ordinals=[],userProps=[],userClasses=[],userFuncs=[],domProps=[],domFuncs=[],domConstants=[]; -try{var domMembers=getDOMMembers(object); -if(object.wrappedJSObject){var insecureObject=object.wrappedJSObject -}else{var insecureObject=object -}if(isIE&&isFunction(object)){addMember("user",userProps,"prototype",object.prototype,level) -}for(var name in insecureObject){if(ignoreVars[name]==1){continue -}var val; -try{val=insecureObject[name] -}catch(exc){if(FBTrace.DBG_ERRORS&&FBTrace.DBG_DOM){FBTrace.sysout("dom.getMembers cannot access "+name,exc) -}}var ordinal=parseInt(name); -if(ordinal||ordinal==0){addMember("ordinal",ordinals,name,val,level) -}else{if(isFunction(val)){if(isClassFunction(val)&&!(name in domMembers)){addMember("userClass",userClasses,name,val,level) -}else{if(name in domMembers){addMember("domFunction",domFuncs,name,val,level,domMembers[name]) -}else{addMember("userFunction",userFuncs,name,val,level) -}}}else{var prefix=""; -if(name in domMembers&&!(name in domConstantMap)){addMember("dom",domProps,(prefix+name),val,level,domMembers[name]) -}else{if(name in domConstantMap){addMember("dom",domConstants,(prefix+name),val,level) -}else{addMember("user",userProps,(prefix+name),val,level) -}}}}}}catch(exc){throw exc; -if(FBTrace.DBG_ERRORS&&FBTrace.DBG_DOM){FBTrace.sysout("dom.getMembers FAILS: ",exc) -}}function sortName(a,b){return a.name>b.name?1:-1 -}function sortOrder(a,b){return a.order>b.order?1:-1 -}var members=[]; -members.push.apply(members,ordinals); -Firebug.showUserProps=true; -Firebug.showUserFuncs=true; -Firebug.showDOMProps=true; -Firebug.showDOMFuncs=true; -Firebug.showDOMConstants=true; -if(Firebug.showUserProps){userProps.sort(sortName); -members.push.apply(members,userProps) -}if(Firebug.showUserFuncs){userClasses.sort(sortName); -members.push.apply(members,userClasses); -userFuncs.sort(sortName); -members.push.apply(members,userFuncs) -}if(Firebug.showDOMProps){domProps.sort(sortName); -members.push.apply(members,domProps) -}if(Firebug.showDOMFuncs){domFuncs.sort(sortName); -members.push.apply(members,domFuncs) -}if(Firebug.showDOMConstants){members.push.apply(members,domConstants) -}return members -}; -function expandMembers(members,toggles,offset,level){var expanded=0; -for(var i=offset; -ilevel){break -}if(toggles.hasOwnProperty(member.name)){member.open="opened"; -var newMembers=getMembers(member.value,level+1); -var args=[i+1,0]; -args.push.apply(args,newMembers); -members.splice.apply(members,args); -expanded+=newMembers.length; -i+=newMembers.length+expandMembers(members,toggles[member.name],i+1,level+1) -}}return expanded -}function isClassFunction(fn){try{for(var name in fn.prototype){return true -}}catch(exc){}return false -}FBL.ErrorCopy=function(message){this.message=message -}; -var addMember=function addMember(type,props,name,value,level,order){var rep=Firebug.getRep(value); -var tag=rep.shortTag?rep.shortTag:rep.tag; -var ErrorCopy=function(){}; -var valueType=typeof(value); -var hasChildren=hasProperties(value)&&!(value instanceof ErrorCopy)&&(isFunction(value)||(valueType=="object"&&value!=null)||(valueType=="string"&&value.length>Firebug.stringCropLength)); -props.push({name:name,value:value,type:type,rowClass:"memberRow-"+type,open:"",order:order,level:level,indent:level*16,hasChildren:hasChildren,tag:tag}) -}; -var getWatchRowIndex=function getWatchRowIndex(row){var index=-1; -for(; -row&&hasClass(row,"watchRow"); -row=row.previousSibling){++index -}return index -}; -var getRowName=function getRowName(row){var node=row.firstChild; -return node.textContent?node.textContent:node.innerText -}; -var getRowValue=function getRowValue(row){return row.lastChild.firstChild.repObject -}; -var getRowOwnerObject=function getRowOwnerObject(row){var parentRow=getParentRow(row); -if(parentRow){return getRowValue(parentRow) -}}; -var getParentRow=function getParentRow(row){var level=parseInt(row.getAttribute("level"))-1; -for(row=row.previousSibling; -row; -row=row.previousSibling){if(parseInt(row.getAttribute("level"))==level){return row -}}}; -var getPath=function getPath(row){var name=getRowName(row); -var path=[name]; -var level=parseInt(row.getAttribute("level"))-1; -for(row=row.previousSibling; -row; -row=row.previousSibling){if(parseInt(row.getAttribute("level"))==level){var name=getRowName(row); -path.splice(0,0,name); ---level -}}return path -}; -Firebug.DOM=extend(Firebug.Module,{getPanel:function(){return Firebug.chrome?Firebug.chrome.getPanel("DOM"):null -}}); -Firebug.registerModule(Firebug.DOM); -var lastHighlightedObject; -function DOMSidePanel(){}DOMSidePanel.prototype=extend(Firebug.DOMBasePanel.prototype,{selectRow:function(row,target){if(!target){target=row.lastChild.firstChild -}if(!target||!target.repObject){return -}this.pathToAppend=getPath(row); -var valueBox=row.lastChild.firstChild; -if(hasClass(valueBox,"objectBox-array")){var arrayIndex=FirebugReps.Arr.getItemIndex(target); -this.pathToAppend.push(arrayIndex) -}var object=target.repObject; -if(instanceOf(object,"Element")){Firebug.HTML.selectTreeNode(ElementCache(object)) -}else{Firebug.chrome.selectPanel("DOM"); -Firebug.chrome.getPanel("DOM").select(object,true) -}},onClick:function(event){var target=event.srcElement||event.target; -var repNode=Firebug.getRepNode(target); -if(repNode){var row=getAncestorByClass(target,"memberRow"); -if(row){this.selectRow(row,repNode); -cancelEvent(event) -}}},name:"DOMSidePanel",parentPanel:"HTML",title:"DOM",options:{hasToolButtons:true},isInitialized:false,create:function(){Firebug.DOMBasePanel.prototype.create.apply(this,arguments); -this.onClick=bind(this.onClick,this) -},initialize:function(){Firebug.DOMBasePanel.prototype.initialize.apply(this,arguments); -addEvent(this.panelNode,"click",this.onClick); -var selection=ElementCache.get(Firebug.context.persistedState.selectedHTMLElementId); -if(selection){this.select(selection,true) -}},shutdown:function(){removeEvent(this.panelNode,"click",this.onClick); -Firebug.DOMBasePanel.prototype.shutdown.apply(this,arguments) -},reattach:function(oldChrome){this.toggles=oldChrome.getPanel("DOMSidePanel").toggles -}}); -Firebug.registerPanel(DOMSidePanel) -}}); -FBL.FBTrace={}; -(function(){var traceOptions={DBG_TIMESTAMP:1,DBG_INITIALIZE:1,DBG_CHROME:1,DBG_ERRORS:1,DBG_DISPATCH:1,DBG_CSS:1}; -this.module=null; -this.initialize=function(){if(!this.messageQueue){this.messageQueue=[] -}for(var name in traceOptions){this[name]=traceOptions[name] -}}; -this.sysout=function(){return this.logFormatted(arguments,"") -}; -this.dumpProperties=function(title,object){return this.logFormatted("dumpProperties() not supported.","warning") -}; -this.dumpStack=function(){return this.logFormatted("dumpStack() not supported.","warning") -}; -this.flush=function(module){this.module=module; -var queue=this.messageQueue; -this.messageQueue=[]; -for(var i=0; -i"); -appendText(object,html); -html.push("") -}else{appendText(object,html) -}}return this.logRow(html,className) -}; -this.logRow=function(message,className){var panel=this.getPanel(); -if(panel&&panel.panelNode){this.writeMessage(message,className) -}else{this.messageQueue.push([message,className]) -}return this.LOG_COMMAND -}; -this.writeMessage=function(message,className){var container=this.getPanel().containerNode; -var isScrolledToBottom=container.scrollTop+container.offsetHeight>=container.scrollHeight; -this.writeRow.call(this,message,className); -if(isScrolledToBottom){container.scrollTop=container.scrollHeight-container.offsetHeight -}}; -this.appendRow=function(row){var container=this.getPanel().panelNode; -container.appendChild(row) -}; -this.writeRow=function(message,className){var row=this.getPanel().panelNode.ownerDocument.createElement("div"); -row.className="logRow"+(className?" logRow-"+className:""); -row.innerHTML=message.join(""); -this.appendRow(row) -}; -function appendText(object,html){html.push(escapeHTML(objectToString(object))) -}function getTimestamp(){var now=new Date(); -var ms=""+(now.getMilliseconds()/1000).toFixed(3); -ms=ms.substr(2); -return now.toLocaleTimeString()+"."+ms -}var HTMLtoEntity={"<":"<",">":">","&":"&","'":"'",'"':"""}; -function replaceChars(ch){return HTMLtoEntity[ch] -}function escapeHTML(value){return(value+"").replace(/[<>&"']/g,replaceChars) -}function objectToString(object){try{return object+"" -}catch(exc){return null -}}}).apply(FBL.FBTrace); -FBL.ns(function(){with(FBL){if(!Env.Options.enableTrace){return -}Firebug.Trace=extend(Firebug.Module,{getPanel:function(){return Firebug.chrome?Firebug.chrome.getPanel("Trace"):null -},clear:function(){this.getPanel().panelNode.innerHTML="" -}}); -Firebug.registerModule(Firebug.Trace); -function TracePanel(){}TracePanel.prototype=extend(Firebug.Panel,{name:"Trace",title:"Trace",options:{hasToolButtons:true,innerHTMLSync:true},create:function(){Firebug.Panel.create.apply(this,arguments); -this.clearButton=new Button({caption:"Clear",title:"Clear FBTrace logs",owner:Firebug.Trace,onClick:Firebug.Trace.clear}) -},initialize:function(){Firebug.Panel.initialize.apply(this,arguments); -this.clearButton.initialize() -},shutdown:function(){this.clearButton.shutdown(); -Firebug.Panel.shutdown.apply(this,arguments) -}}); -Firebug.registerPanel(TracePanel) -}}); -FBL.ns(function(){with(FBL){var modules=[]; -var panelTypes=[]; -var panelTypeMap={}; -var parentPanelMap={}; -var registerModule=Firebug.registerModule; -var registerPanel=Firebug.registerPanel; -append(Firebug,{extend:function(fn){if(Firebug.chrome&&Firebug.chrome.addPanel){var namespace=ns(fn); -fn.call(namespace,FBL) -}else{setTimeout(function(){Firebug.extend(fn) -},100) -}},registerModule:function(){registerModule.apply(Firebug,arguments); -modules.push.apply(modules,arguments); -dispatch(modules,"initialize",[]); -if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.registerModule") -}},registerPanel:function(){registerPanel.apply(Firebug,arguments); -panelTypes.push.apply(panelTypes,arguments); -for(var i=0,panelType; -panelType=arguments[i]; -++i){if(panelType.prototype.name=="Dev"){continue -}panelTypeMap[panelType.prototype.name]=arguments[i]; -var parentPanelName=panelType.prototype.parentPanel; -if(parentPanelName){parentPanelMap[parentPanelName]=1 -}else{var panelName=panelType.prototype.name; -var chrome=Firebug.chrome; -chrome.addPanel(panelName); -var onTabClick=function onTabClick(){chrome.selectPanel(panelName); -return false -}; -chrome.addController([chrome.panelMap[panelName].tabNode,"mousedown",onTabClick]) -}}if(FBTrace.DBG_INITIALIZE){for(var i=0; -i .infoTipImage,.infoTipLoading > .infoTipCaption{display:none;}h1.groupHeader{padding:2px 4px;margin:0 0 4px 0;border-top:1px solid #CCCCCC;border-bottom:1px solid #CCCCCC;background:#eee url(https://getfirebug.com/releases/lite/latest/skin/xp/group.gif) repeat-x;font-size:11px;font-weight:bold;_position:relative;}.inlineEditor,.fixedWidthEditor{z-index:2147483647;position:absolute;display:none;}.inlineEditor{margin-left:-6px;margin-top:-3px;}.textEditorInner,.fixedWidthEditor{margin:0 0 0 0 !important;padding:0;border:none !important;font:inherit;text-decoration:inherit;background-color:#FFFFFF;}.fixedWidthEditor{border-top:1px solid #888888 !important;border-bottom:1px solid #888888 !important;}.textEditorInner{position:relative;top:-7px;left:-5px;outline:none;resize:none;}.textEditorInner1{padding-left:11px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorBorders.png) repeat-y;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorBorders.gif) repeat-y;_overflow:hidden;}.textEditorInner2{position:relative;padding-right:2px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorBorders.png) repeat-y 100% 0;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorBorders.gif) repeat-y 100% 0;_position:fixed;}.textEditorTop1{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.png) no-repeat 100% 0;margin-left:11px;height:10px;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.gif) no-repeat 100% 0;_overflow:hidden;}.textEditorTop2{position:relative;left:-11px;width:11px;height:10px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.png) no-repeat;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.gif) no-repeat;}.textEditorBottom1{position:relative;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.png) no-repeat 100% 100%;margin-left:11px;height:12px;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.gif) no-repeat 100% 100%;}.textEditorBottom2{position:relative;left:-11px;width:11px;height:12px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.png) no-repeat 0 100%;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.gif) no-repeat 0 100%;}.panelNode-css{overflow-x:hidden;}.cssSheet > .insertBefore{height:1.5em;}.cssRule{position:relative;margin:0;padding:1em 0 0 6px;font-family:Monaco,monospace;color:#000000;}.cssRule:first-child{padding-top:6px;}.cssElementRuleContainer{position:relative;}.cssHead{padding-right:150px;}.cssProp{}.cssPropName{color:DarkGreen;}.cssPropValue{margin-left:8px;color:DarkBlue;}.cssOverridden span{text-decoration:line-through;}.cssInheritedRule{}.cssInheritLabel{margin-right:0.5em;font-weight:bold;}.cssRule .objectLink-sourceLink{top:0;}.cssProp.editGroup:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/disable.png) no-repeat 2px 1px;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/disable.gif) no-repeat 2px 1px;}.cssProp.editGroup.editing{background:none;}.cssProp.disabledStyle{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/disableHover.png) no-repeat 2px 1px;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/disableHover.gif) no-repeat 2px 1px;opacity:1;color:#CCCCCC;}.disabledStyle .cssPropName,.disabledStyle .cssPropValue{color:#CCCCCC;}.cssPropValue.editing + .cssSemi,.inlineExpander + .cssSemi{display:none;}.cssPropValue.editing{white-space:nowrap;}.stylePropName{font-weight:bold;padding:0 4px 4px 4px;width:50%;}.stylePropValue{width:50%;}.panelNode-net{overflow-x:hidden;}.netTable{width:100%;}.hideCategory-undefined .category-undefined,.hideCategory-html .category-html,.hideCategory-css .category-css,.hideCategory-js .category-js,.hideCategory-image .category-image,.hideCategory-xhr .category-xhr,.hideCategory-flash .category-flash,.hideCategory-txt .category-txt,.hideCategory-bin .category-bin{display:none;}.netHeadRow{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/group.gif) repeat-x #FFFFFF;}.netHeadCol{border-bottom:1px solid #CCCCCC;padding:2px 4px 2px 18px;font-weight:bold;}.netHeadLabel{white-space:nowrap;overflow:hidden;}.netHeaderRow{height:16px;}.netHeaderCell{cursor:pointer;-moz-user-select:none;border-bottom:1px solid #9C9C9C;padding:0 !important;font-weight:bold;background:#BBBBBB url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/tableHeader.gif) repeat-x;white-space:nowrap;}.netHeaderRow > .netHeaderCell:first-child > .netHeaderCellBox{padding:2px 14px 2px 18px;}.netHeaderCellBox{padding:2px 14px 2px 10px;border-left:1px solid #D9D9D9;border-right:1px solid #9C9C9C;}.netHeaderCell:hover:active{background:#959595 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/tableHeaderActive.gif) repeat-x;}.netHeaderSorted{background:#7D93B2 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/tableHeaderSorted.gif) repeat-x;}.netHeaderSorted > .netHeaderCellBox{border-right-color:#6B7C93;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/arrowDown.png) no-repeat right;}.netHeaderSorted.sortedAscending > .netHeaderCellBox{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/arrowUp.png);}.netHeaderSorted:hover:active{background:#536B90 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/tableHeaderSortedActive.gif) repeat-x;}.panelNode-net .netRowHeader{display:block;}.netRowHeader{cursor:pointer;display:none;height:15px;margin-right:0 !important;}.netRow .netRowHeader{background-position:5px 1px;}.netRow[breakpoint="true"] .netRowHeader{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/breakpoint.png);}.netRow[breakpoint="true"][disabledBreakpoint="true"] .netRowHeader{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/breakpointDisabled.png);}.netRow.category-xhr:hover .netRowHeader{background-color:#F6F6F6;}#netBreakpointBar{max-width:38px;}#netHrefCol > .netHeaderCellBox{border-left:0px;}.netRow .netRowHeader{width:3px;}.netInfoRow .netRowHeader{display:table-cell;}.netTable[hiddenCols~=netHrefCol] TD[id="netHrefCol"],.netTable[hiddenCols~=netHrefCol] TD.netHrefCol,.netTable[hiddenCols~=netStatusCol] TD[id="netStatusCol"],.netTable[hiddenCols~=netStatusCol] TD.netStatusCol,.netTable[hiddenCols~=netDomainCol] TD[id="netDomainCol"],.netTable[hiddenCols~=netDomainCol] TD.netDomainCol,.netTable[hiddenCols~=netSizeCol] TD[id="netSizeCol"],.netTable[hiddenCols~=netSizeCol] TD.netSizeCol,.netTable[hiddenCols~=netTimeCol] TD[id="netTimeCol"],.netTable[hiddenCols~=netTimeCol] TD.netTimeCol{display:none;}.netRow{background:LightYellow;}.netRow.loaded{background:#FFFFFF;}.netRow.loaded:hover{background:#EFEFEF;}.netCol{padding:0;vertical-align:top;border-bottom:1px solid #EFEFEF;white-space:nowrap;height:17px;}.netLabel{width:100%;}.netStatusCol{padding-left:10px;color:rgb(128,128,128);}.responseError > .netStatusCol{color:red;}.netDomainCol{padding-left:5px;}.netSizeCol{text-align:right;padding-right:10px;}.netHrefLabel{-moz-box-sizing:padding-box;overflow:hidden;z-index:10;position:absolute;padding-left:18px;padding-top:1px;max-width:15%;font-weight:bold;}.netFullHrefLabel{display:none;-moz-user-select:none;padding-right:10px;padding-bottom:3px;max-width:100%;background:#FFFFFF;z-index:200;}.netHrefCol:hover > .netFullHrefLabel{display:block;}.netRow.loaded:hover .netCol > .netFullHrefLabel{background-color:#EFEFEF;}.useA11y .a11yShowFullLabel{display:block;background-image:none !important;border:1px solid #CBE087;background-color:LightYellow;font-family:Monaco,monospace;color:#000000;font-size:10px;z-index:2147483647;}.netSizeLabel{padding-left:6px;}.netStatusLabel,.netDomainLabel,.netSizeLabel,.netBar{padding:1px 0 2px 0 !important;}.responseError{color:red;}.hasHeaders .netHrefLabel:hover{cursor:pointer;color:blue;text-decoration:underline;}.netLoadingIcon{position:absolute;border:0;margin-left:14px;width:16px;height:16px;background:transparent no-repeat 0 0;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/loading_16.gif);display:inline-block;}.loaded .netLoadingIcon{display:none;}.netBar,.netSummaryBar{position:relative;border-right:50px solid transparent;}.netResolvingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarResolving.gif) repeat-x;z-index:60;}.netConnectingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarConnecting.gif) repeat-x;z-index:50;}.netBlockingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarWaiting.gif) repeat-x;z-index:40;}.netSendingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarSending.gif) repeat-x;z-index:30;}.netWaitingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarResponded.gif) repeat-x;z-index:20;min-width:1px;}.netReceivingBar{position:absolute;left:0;top:0;bottom:0;background:#38D63B url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarLoading.gif) repeat-x;z-index:10;}.netWindowLoadBar,.netContentLoadBar{position:absolute;left:0;top:0;bottom:0;width:1px;background-color:red;z-index:70;opacity:0.5;display:none;margin-bottom:-1px;}.netContentLoadBar{background-color:Blue;}.netTimeLabel{-moz-box-sizing:padding-box;position:absolute;top:1px;left:100%;padding-left:6px;color:#444444;min-width:16px;}.loaded .netReceivingBar,.loaded.netReceivingBar{background:#B6B6B6 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarLoaded.gif) repeat-x;border-color:#B6B6B6;}.fromCache .netReceivingBar,.fromCache.netReceivingBar{background:#D6D6D6 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarCached.gif) repeat-x;border-color:#D6D6D6;}.netSummaryRow .netTimeLabel,.loaded .netTimeLabel{background:transparent;}.timeInfoTip{width:150px; height:40px}.timeInfoTipBar,.timeInfoTipEventBar{position:relative;display:block;margin:0;opacity:1;height:15px;width:4px;}.timeInfoTipEventBar{width:1px !important;}.timeInfoTipCell.startTime{padding-right:8px;}.timeInfoTipCell.elapsedTime{text-align:right;padding-right:8px;}.sizeInfoLabelCol{font-weight:bold;padding-right:10px;font-family:Lucida Grande,Tahoma,sans-serif;font-size:11px;}.sizeInfoSizeCol{font-weight:bold;}.sizeInfoDetailCol{color:gray;text-align:right;}.sizeInfoDescCol{font-style:italic;}.netSummaryRow .netReceivingBar{background:#BBBBBB;border:none;}.netSummaryLabel{color:#222222;}.netSummaryRow{background:#BBBBBB !important;font-weight:bold;}.netSummaryRow .netBar{border-right-color:#BBBBBB;}.netSummaryRow > .netCol{border-top:1px solid #999999;border-bottom:2px solid;-moz-border-bottom-colors:#EFEFEF #999999;padding-top:1px;padding-bottom:2px;}.netSummaryRow > .netHrefCol:hover{background:transparent !important;}.netCountLabel{padding-left:18px;}.netTotalSizeCol{text-align:right;padding-right:10px;}.netTotalTimeCol{text-align:right;}.netCacheSizeLabel{position:absolute;z-index:1000;left:0;top:0;}.netLimitRow{background:rgb(255,255,225) !important;font-weight:normal;color:black;font-weight:normal;}.netLimitLabel{padding-left:18px;}.netLimitRow > .netCol{border-bottom:2px solid;-moz-border-bottom-colors:#EFEFEF #999999;vertical-align:middle !important;padding-top:2px;padding-bottom:2px;}.netLimitButton{font-size:11px;padding-top:1px;padding-bottom:1px;}.netInfoCol{border-top:1px solid #EEEEEE;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/group.gif) repeat-x #FFFFFF;}.netInfoBody{margin:10px 0 4px 10px;}.netInfoTabs{position:relative;padding-left:17px;}.netInfoTab{position:relative;top:-3px;margin-top:10px;padding:4px 6px;border:1px solid transparent;border-bottom:none;_border:none;font-weight:bold;color:#565656;cursor:pointer;}.netInfoTabSelected{cursor:default !important;border:1px solid #D7D7D7 !important;border-bottom:none !important;-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0;background-color:#FFFFFF;}.logRow-netInfo.error .netInfoTitle{color:red;}.logRow-netInfo.loading .netInfoResponseText{font-style:italic;color:#888888;}.loading .netInfoResponseHeadersTitle{display:none;}.netInfoResponseSizeLimit{font-family:Lucida Grande,Tahoma,sans-serif;padding-top:10px;font-size:11px;}.netInfoText{display:none;margin:0;border:1px solid #D7D7D7;border-right:none;padding:8px;background-color:#FFFFFF;font-family:Monaco,monospace;white-space:pre-wrap;}.netInfoTextSelected{display:block;}.netInfoParamName{padding-right:10px;font-family:Lucida Grande,Tahoma,sans-serif;font-weight:bold;vertical-align:top;text-align:right;white-space:nowrap;}.netInfoPostText .netInfoParamName{width:1px;}.netInfoParamValue{width:100%;}.netInfoHeadersText,.netInfoPostText,.netInfoPutText{padding-top:0;}.netInfoHeadersGroup,.netInfoPostParams,.netInfoPostSource{margin-bottom:4px;border-bottom:1px solid #D7D7D7;padding-top:8px;padding-bottom:2px;font-family:Lucida Grande,Tahoma,sans-serif;font-weight:bold;color:#565656;}.netInfoPostParamsTable,.netInfoPostPartsTable,.netInfoPostJSONTable,.netInfoPostXMLTable,.netInfoPostSourceTable{margin-bottom:10px;width:100%;}.netInfoPostContentType{color:#bdbdbd;padding-left:50px;font-weight:normal;}.netInfoHtmlPreview{border:0;width:100%;height:100%;}.netHeadersViewSource{color:#bdbdbd;margin-left:200px;font-weight:normal;}.netHeadersViewSource:hover{color:blue;cursor:pointer;}.netActivationRow,.netPageSeparatorRow{background:rgb(229,229,229) !important;font-weight:normal;color:black;}.netActivationLabel{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/infoIcon.png) no-repeat 3px 2px;padding-left:22px;}.netPageSeparatorRow{height:5px !important;}.netPageSeparatorLabel{padding-left:22px;height:5px !important;}.netPageRow{background-color:rgb(255,255,255);}.netPageRow:hover{background:#EFEFEF;}.netPageLabel{padding:1px 0 2px 18px !important;font-weight:bold;}.netActivationRow > .netCol{border-bottom:2px solid;-moz-border-bottom-colors:#EFEFEF #999999;padding-top:2px;padding-bottom:3px;}.twisty,.logRow-errorMessage > .hasTwisty > .errorTitle,.logRow-log > .objectBox-array.hasTwisty,.logRow-spy .spyHead .spyTitle,.logGroup > .logRow,.memberRow.hasChildren > .memberLabelCell > .memberLabel,.hasHeaders .netHrefLabel,.netPageRow > .netCol > .netPageTitle{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_open.gif);background-repeat:no-repeat;background-position:2px 2px;min-height:12px;}.logRow-errorMessage > .hasTwisty.opened > .errorTitle,.logRow-log > .objectBox-array.hasTwisty.opened,.logRow-spy.opened .spyHead .spyTitle,.logGroup.opened > .logRow,.memberRow.hasChildren.opened > .memberLabelCell > .memberLabel,.nodeBox.highlightOpen > .nodeLabel > .twisty,.nodeBox.open > .nodeLabel > .twisty,.netRow.opened > .netCol > .netHrefLabel,.netPageRow.opened > .netCol > .netPageTitle{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_close.gif);}.twisty{background-position:4px 4px;}* html .logRow-spy .spyHead .spyTitle,* html .logGroup .logGroupLabel,* html .hasChildren .memberLabelCell .memberLabel,* html .hasHeaders .netHrefLabel{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_open.gif);background-repeat:no-repeat;background-position:2px 2px;}* html .opened .spyHead .spyTitle,* html .opened .logGroupLabel,* html .opened .memberLabelCell .memberLabel{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_close.gif);background-repeat:no-repeat;background-position:2px 2px;}.panelNode-console{overflow-x:hidden;}.objectLink{text-decoration:none;}.objectLink:hover{cursor:pointer;text-decoration:underline;}.logRow{position:relative;margin:0;border-bottom:1px solid #D7D7D7;padding:2px 4px 1px 6px;background-color:#FFFFFF;overflow:hidden !important;}.useA11y .logRow:focus{border-bottom:1px solid #000000 !important;outline:none !important;background-color:#FFFFAD !important;}.useA11y .logRow:focus a.objectLink-sourceLink{background-color:#FFFFAD;}.useA11y .a11yFocus:focus,.useA11y .objectBox:focus{outline:2px solid #FF9933;background-color:#FFFFAD;}.useA11y .objectBox-null:focus,.useA11y .objectBox-undefined:focus{background-color:#888888 !important;}.useA11y .logGroup.opened > .logRow{border-bottom:1px solid #ffffff;}.logGroup{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/group.gif) repeat-x #FFFFFF;padding:0 !important;border:none !important;}.logGroupBody{display:none;margin-left:16px;border-left:1px solid #D7D7D7;border-top:1px solid #D7D7D7;background:#FFFFFF;}.logGroup > .logRow{background-color:transparent !important;font-weight:bold;}.logGroup.opened > .logRow{border-bottom:none;}.logGroup.opened > .logGroupBody{display:block;}.logRow-command > .objectBox-text{font-family:Monaco,monospace;color:#0000FF;white-space:pre-wrap;}.logRow-info,.logRow-warn,.logRow-error,.logRow-assert,.logRow-warningMessage,.logRow-errorMessage{padding-left:22px;background-repeat:no-repeat;background-position:4px 2px;}.logRow-assert,.logRow-warningMessage,.logRow-errorMessage{padding-top:0;padding-bottom:0;}.logRow-info,.logRow-info .objectLink-sourceLink{background-color:#FFFFFF;}.logRow-warn,.logRow-warningMessage,.logRow-warn .objectLink-sourceLink,.logRow-warningMessage .objectLink-sourceLink{background-color:cyan;}.logRow-error,.logRow-assert,.logRow-errorMessage,.logRow-error .objectLink-sourceLink,.logRow-errorMessage .objectLink-sourceLink{background-color:LightYellow;}.logRow-error,.logRow-assert,.logRow-errorMessage{color:#FF0000;}.logRow-info{}.logRow-warn,.logRow-warningMessage{}.logRow-error,.logRow-assert,.logRow-errorMessage{}.objectBox-string,.objectBox-text,.objectBox-number,.objectLink-element,.objectLink-textNode,.objectLink-function,.objectBox-stackTrace,.objectLink-profile{font-family:Monaco,monospace;}.objectBox-string,.objectBox-text,.objectLink-textNode{white-space:pre-wrap;}.objectBox-number,.objectLink-styleRule,.objectLink-element,.objectLink-textNode{color:#000088;}.objectBox-string{color:#FF0000;}.objectLink-function,.objectBox-stackTrace,.objectLink-profile{color:DarkGreen;}.objectBox-null,.objectBox-undefined{padding:0 2px;border:1px solid #666666;background-color:#888888;color:#FFFFFF;}.objectBox-exception{padding:0 2px 0 18px;color:red;}.objectLink-sourceLink{position:absolute;right:4px;top:2px;padding-left:8px;font-family:Lucida Grande,sans-serif;font-weight:bold;color:#0000FF;}.errorTitle{margin-top:0px;margin-bottom:1px;padding-top:2px;padding-bottom:2px;}.errorTrace{margin-left:17px;}.errorSourceBox{margin:2px 0;}.errorSource-none{display:none;}.errorSource-syntax > .errorBreak{visibility:hidden;}.errorSource{cursor:pointer;font-family:Monaco,monospace;color:DarkGreen;}.errorSource:hover{text-decoration:underline;}.errorBreak{cursor:pointer;display:none;margin:0 6px 0 0;width:13px;height:14px;vertical-align:bottom;opacity:0.1;}.hasBreakSwitch .errorBreak{display:inline;}.breakForError .errorBreak{opacity:1;}.assertDescription{margin:0;}.logRow-profile > .logRow > .objectBox-text{font-family:Lucida Grande,Tahoma,sans-serif;color:#000000;}.logRow-profile > .logRow > .objectBox-text:last-child{color:#555555;font-style:italic;}.logRow-profile.opened > .logRow{padding-bottom:4px;}.profilerRunning > .logRow{padding-left:22px !important;}.profileSizer{width:100%;overflow-x:auto;overflow-y:scroll;}.profileTable{border-bottom:1px solid #D7D7D7;padding:0 0 4px 0;}.profileTable tr[odd="1"]{background-color:#F5F5F5;vertical-align:middle;}.profileTable a{vertical-align:middle;}.profileTable td{padding:1px 4px 0 4px;}.headerCell{cursor:pointer;-moz-user-select:none;border-bottom:1px solid #9C9C9C;padding:0 !important;font-weight:bold;}.headerCellBox{padding:2px 4px;border-left:1px solid #D9D9D9;border-right:1px solid #9C9C9C;}.headerCell:hover:active{}.headerSorted{}.headerSorted > .headerCellBox{border-right-color:#6B7C93;}.headerSorted.sortedAscending > .headerCellBox{}.headerSorted:hover:active{}.linkCell{text-align:right;}.linkCell > .objectLink-sourceLink{position:static;}.logRow-stackTrace{padding-top:0;background:#f8f8f8;}.logRow-stackTrace > .objectBox-stackFrame{position:relative;padding-top:2px;}.objectLink-object{font-family:Lucida Grande,sans-serif;font-weight:bold;color:DarkGreen;white-space:pre-wrap;}.objectProp-object{color:DarkGreen;}.objectProps{color:#000;font-weight:normal;}.objectPropName{color:#777;}.objectProps .objectProp-string{color:#f55;}.objectProps .objectProp-number{color:#55a;}.objectProps .objectProp-object{color:#585;}.selectorTag,.selectorId,.selectorClass{font-family:Monaco,monospace;font-weight:normal;}.selectorTag{color:#0000FF;}.selectorId{color:DarkBlue;}.selectorClass{color:red;}.selectorHidden > .selectorTag{color:#5F82D9;}.selectorHidden > .selectorId{color:#888888;}.selectorHidden > .selectorClass{color:#D86060;}.selectorValue{font-family:Lucida Grande,sans-serif;font-style:italic;color:#555555;}.panelNode.searching .logRow{display:none;}.logRow.matched{display:block !important;}.logRow.matching{position:absolute;left:-1000px;top:-1000px;max-width:0;max-height:0;overflow:hidden;}.objectLeftBrace,.objectRightBrace,.objectEqual,.objectComma,.arrayLeftBracket,.arrayRightBracket,.arrayComma{font-family:Monaco,monospace;}.objectLeftBrace,.objectRightBrace,.arrayLeftBracket,.arrayRightBracket{font-weight:bold;}.objectLeftBrace,.arrayLeftBracket{margin-right:4px;}.objectRightBrace,.arrayRightBracket{margin-left:4px;}.logRow-dir{padding:0;}.logRow-errorMessage .hasTwisty .errorTitle,.logRow-spy .spyHead .spyTitle,.logGroup .logRow{cursor:pointer;padding-left:18px;background-repeat:no-repeat;background-position:3px 3px;}.logRow-errorMessage > .hasTwisty > .errorTitle{background-position:2px 3px;}.logRow-errorMessage > .hasTwisty > .errorTitle:hover,.logRow-spy .spyHead .spyTitle:hover,.logGroup > .logRow:hover{text-decoration:underline;}.logRow-spy{padding:0 !important;}.logRow-spy,.logRow-spy .objectLink-sourceLink{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/group.gif) repeat-x #FFFFFF;padding-right:4px;right:0;}.logRow-spy.opened{padding-bottom:4px;border-bottom:none;}.spyTitle{color:#000000;font-weight:bold;-moz-box-sizing:padding-box;overflow:hidden;z-index:100;padding-left:18px;}.spyCol{padding:0;white-space:nowrap;height:16px;}.spyTitleCol:hover > .objectLink-sourceLink,.spyTitleCol:hover > .spyTime,.spyTitleCol:hover > .spyStatus,.spyTitleCol:hover > .spyTitle{display:none;}.spyFullTitle{display:none;-moz-user-select:none;max-width:100%;background-color:Transparent;}.spyTitleCol:hover > .spyFullTitle{display:block;}.spyStatus{padding-left:10px;color:rgb(128,128,128);}.spyTime{margin-left:4px;margin-right:4px;color:rgb(128,128,128);}.spyIcon{margin-right:4px;margin-left:4px;width:16px;height:16px;vertical-align:middle;background:transparent no-repeat 0 0;display:none;}.loading .spyHead .spyRow .spyIcon{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/loading_16.gif);display:block;}.logRow-spy.loaded:not(.error) .spyHead .spyRow .spyIcon{width:0;margin:0;}.logRow-spy.error .spyHead .spyRow .spyIcon{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon-sm.png);display:block;background-position:2px 2px;}.logRow-spy .spyHead .netInfoBody{display:none;}.logRow-spy.opened .spyHead .netInfoBody{margin-top:10px;display:block;}.logRow-spy.error .spyTitle,.logRow-spy.error .spyStatus,.logRow-spy.error .spyTime{color:red;}.logRow-spy.loading .spyResponseText{font-style:italic;color:#888888;}.caption{font-family:Lucida Grande,Tahoma,sans-serif;font-weight:bold;color:#444444;}.warning{padding:10px;font-family:Lucida Grande,Tahoma,sans-serif;font-weight:bold;color:#888888;}.panelNode-dom{overflow-x:hidden !important;}.domTable{font-size:1em;width:100%;table-layout:fixed;background:#fff;}.domTableIE{width:auto;}.memberLabelCell{padding:2px 0 2px 0;vertical-align:top;}.memberValueCell{padding:1px 0 1px 5px;display:block;overflow:hidden;}.memberLabel{display:block;cursor:default;-moz-user-select:none;overflow:hidden;padding-left:18px;background-color:#FFFFFF;text-decoration:none;}.memberRow.hasChildren .memberLabelCell .memberLabel:hover{cursor:pointer;color:blue;text-decoration:underline;}.userLabel{color:#000000;font-weight:bold;}.userClassLabel{color:#E90000;font-weight:bold;}.userFunctionLabel{color:#025E2A;font-weight:bold;}.domLabel{color:#000000;}.domFunctionLabel{color:#025E2A;}.ordinalLabel{color:SlateBlue;font-weight:bold;}.scopesRow{padding:2px 18px;background-color:LightYellow;border-bottom:5px solid #BEBEBE;color:#666666;}.scopesLabel{background-color:LightYellow;}.watchEditCell{padding:2px 18px;background-color:LightYellow;border-bottom:1px solid #BEBEBE;color:#666666;}.editor-watchNewRow,.editor-memberRow{font-family:Monaco,monospace !important;}.editor-memberRow{padding:1px 0 !important;}.editor-watchRow{padding-bottom:0 !important;}.watchRow > .memberLabelCell{font-family:Monaco,monospace;padding-top:1px;padding-bottom:1px;}.watchRow > .memberLabelCell > .memberLabel{background-color:transparent;}.watchRow > .memberValueCell{padding-top:2px;padding-bottom:2px;}.watchRow > .memberLabelCell,.watchRow > .memberValueCell{background-color:#F5F5F5;border-bottom:1px solid #BEBEBE;}.watchToolbox{z-index:2147483647;position:absolute;right:0;padding:1px 2px;}#fbConsole{overflow-x:hidden !important;}#fbCSS{font:1em Monaco,monospace;padding:0 7px;}#fbstylesheetButtons select,#fbScriptButtons select{font:11px Lucida Grande,Tahoma,sans-serif;margin-top:1px;padding-left:3px;background:#fafafa;border:1px inset #fff;width:220px;outline:none;}.Selector{margin-top:10px}.CSSItem{margin-left:4%}.CSSText{padding-left:20px;}.CSSProperty{color:#005500;}.CSSValue{padding-left:5px; color:#000088;}#fbHTMLStatusBar{display:inline;}.fbToolbarButtons{display:none;}.fbStatusSeparator{display:block;float:left;padding-top:4px;}#fbStatusBarBox{display:none;}#fbToolbarContent{display:block;position:absolute;_position:absolute;top:0;padding-top:4px;height:23px;clip:rect(0,2048px,27px,0);}.fbTabMenuTarget{display:none !important;float:left;width:10px;height:10px;margin-top:6px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuTarget.png);}.fbTabMenuTarget:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuTargetHover.png);}.fbShadow{float:left;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/shadowAlpha.png) no-repeat bottom right !important;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/shadow2.gif) no-repeat bottom right;margin:10px 0 0 10px !important;margin:10px 0 0 5px;}.fbShadowContent{display:block;position:relative;background-color:#fff;border:1px solid #a9a9a9;top:-6px;left:-6px;}.fbMenu{display:none;position:absolute;font-size:11px;line-height:13px;z-index:2147483647;}.fbMenuContent{padding:2px;}.fbMenuSeparator{display:block;position:relative;padding:1px 18px 0;text-decoration:none;color:#000;cursor:default;background:#ACA899;margin:4px 0;}.fbMenuOption{display:block;position:relative;padding:2px 18px;text-decoration:none;color:#000;cursor:default;}.fbMenuOption:hover{color:#fff;background:#316AC5;}.fbMenuGroup{background:transparent url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuPin.png) no-repeat right 0;}.fbMenuGroup:hover{background:#316AC5 url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuPin.png) no-repeat right -17px;}.fbMenuGroupSelected{color:#fff;background:#316AC5 url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuPin.png) no-repeat right -17px;}.fbMenuChecked{background:transparent url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuCheckbox.png) no-repeat 4px 0;}.fbMenuChecked:hover{background:#316AC5 url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuCheckbox.png) no-repeat 4px -17px;}.fbMenuRadioSelected{background:transparent url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuRadio.png) no-repeat 4px 0;}.fbMenuRadioSelected:hover{background:#316AC5 url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuRadio.png) no-repeat 4px -17px;}.fbMenuShortcut{padding-right:85px;}.fbMenuShortcutKey{position:absolute;right:0;top:2px;width:77px;}#fbFirebugMenu{top:22px;left:0;}.fbMenuDisabled{color:#ACA899 !important;}#fbFirebugSettingsMenu{left:245px;top:99px;}#fbConsoleMenu{top:42px;left:48px;}.fbIconButton{display:block;}.fbIconButton{display:block;}.fbIconButton{display:block;float:left;height:20px;width:20px;color:#000;margin-right:2px;text-decoration:none;cursor:default;}.fbIconButton:hover{position:relative;top:-1px;left:-1px;margin-right:0;_margin-right:1px;color:#333;border:1px solid #fff;border-bottom:1px solid #bbb;border-right:1px solid #bbb;}.fbIconPressed{position:relative;margin-right:0;_margin-right:1px;top:0 !important;left:0 !important;height:19px;color:#333 !important;border:1px solid #bbb !important;border-bottom:1px solid #cfcfcf !important;border-right:1px solid #ddd !important;}#fbErrorPopup{position:absolute;right:0;bottom:0;height:19px;width:75px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 0;z-index:999;}#fbErrorPopupContent{position:absolute;right:0;top:1px;height:18px;width:75px;_width:74px;border-left:1px solid #aca899;}#fbErrorIndicator{position:absolute;top:2px;right:5px;}.fbBtnInspectActive{background:#aaa;color:#fff !important;}.fbBody{margin:0;padding:0;overflow:hidden;font-family:Lucida Grande,Tahoma,sans-serif;font-size:11px;background:#fff;}.clear{clear:both;}#fbMiniChrome{display:none;right:0;height:27px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 0;margin-left:1px;}#fbMiniContent{display:block;position:relative;left:-1px;right:0;top:1px;height:25px;border-left:1px solid #aca899;}#fbToolbarSearch{float:right;border:1px solid #ccc;margin:0 5px 0 0;background:#fff url(https://getfirebug.com/releases/lite/latest/skin/xp/search.png) no-repeat 4px 2px !important;background:#fff url(https://getfirebug.com/releases/lite/latest/skin/xp/search.gif) no-repeat 4px 2px;padding-left:20px;font-size:11px;}#fbToolbarErrors{float:right;margin:1px 4px 0 0;font-size:11px;}#fbLeftToolbarErrors{float:left;margin:7px 0px 0 5px;font-size:11px;}.fbErrors{padding-left:20px;height:14px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon.png) no-repeat !important;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon.gif) no-repeat;color:#f00;font-weight:bold;}#fbMiniErrors{display:inline;display:none;float:right;margin:5px 2px 0 5px;}#fbMiniIcon{float:right;margin:3px 4px 0;height:20px;width:20px;float:right;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) 0 -135px;cursor:pointer;}#fbChrome{font-family:Lucida Grande,Tahoma,sans-serif;font-size:11px;position:absolute;_position:static;top:0;left:0;height:100%;width:100%;border-collapse:collapse;border-spacing:0;background:#fff;overflow:hidden;}#fbChrome > tbody > tr > td{padding:0;}#fbTop{height:49px;}#fbToolbar{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 0;height:27px;font-size:11px;line-height:13px;}#fbPanelBarBox{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #dbd9c9 0 -27px;height:22px;}#fbContent{height:100%;vertical-align:top;}#fbBottom{height:18px;background:#fff;}#fbToolbarIcon{float:left;padding:0 5px 0;}#fbToolbarIcon a{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) 0 -135px;}#fbToolbarButtons{padding:0 2px 0 5px;}#fbToolbarButtons{padding:0 2px 0 5px;}.fbButton{text-decoration:none;display:block;float:left;color:#000;padding:4px 6px 4px 7px;cursor:default;}.fbButton:hover{color:#333;background:#f5f5ef url(https://getfirebug.com/releases/lite/latest/skin/xp/buttonBg.png);padding:3px 5px 3px 6px;border:1px solid #fff;border-bottom:1px solid #bbb;border-right:1px solid #bbb;}.fbBtnPressed{background:#e3e3db url(https://getfirebug.com/releases/lite/latest/skin/xp/buttonBgHover.png) !important;padding:3px 4px 2px 6px !important;margin:1px 0 0 1px !important;border:1px solid #ACA899 !important;border-color:#ACA899 #ECEBE3 #ECEBE3 #ACA899 !important;}#fbStatusBarBox{top:4px;cursor:default;}.fbToolbarSeparator{overflow:hidden;border:1px solid;border-color:transparent #fff transparent #777;_border-color:#eee #fff #eee #777;height:7px;margin:6px 3px;float:left;}.fbBtnSelected{font-weight:bold;}.fbStatusBar{color:#aca899;}.fbStatusBar a{text-decoration:none;color:black;}.fbStatusBar a:hover{color:blue;cursor:pointer;}#fbWindowButtons{position:absolute;white-space:nowrap;right:0;top:0;height:17px;width:48px;padding:5px;z-index:6;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 0;}#fbPanelBar1{width:1024px; z-index:8;left:0;white-space:nowrap;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #dbd9c9 0 -27px;position:absolute;left:4px;}#fbPanelBar2Box{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #dbd9c9 0 -27px;position:absolute;height:22px;width:300px; z-index:9;right:0;}#fbPanelBar2{position:absolute;width:290px; height:22px;padding-left:4px;}.fbPanel{display:none;}#fbPanelBox1,#fbPanelBox2{max-height:inherit;height:100%;font-size:1em;}#fbPanelBox2{background:#fff;}#fbPanelBox2{width:300px;background:#fff;}#fbPanel2{margin-left:6px;background:#fff;}#fbLargeCommandLine{display:none;position:absolute;z-index:9;top:27px;right:0;width:294px;height:201px;border-width:0;margin:0;padding:2px 0 0 2px;resize:none;outline:none;font-size:11px;overflow:auto;border-top:1px solid #B9B7AF;_right:-1px;_border-left:1px solid #fff;}#fbLargeCommandButtons{display:none;background:#ECE9D8;bottom:0;right:0;width:294px;height:21px;padding-top:1px;position:fixed;border-top:1px solid #ACA899;z-index:9;}#fbSmallCommandLineIcon{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/down.png) no-repeat;position:absolute;right:2px;bottom:3px;z-index:99;}#fbSmallCommandLineIcon:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/downHover.png) no-repeat;}.hide{overflow:hidden !important;position:fixed !important;display:none !important;visibility:hidden !important;}#fbCommand{height:18px;}#fbCommandBox{position:fixed;_position:absolute;width:100%;height:18px;bottom:0;overflow:hidden;z-index:9;background:#fff;border:0;border-top:1px solid #ccc;}#fbCommandIcon{position:absolute;color:#00f;top:2px;left:6px;display:inline;font:11px Monaco,monospace;z-index:10;}#fbCommandLine{position:absolute;width:100%;top:0;left:0;border:0;margin:0;padding:2px 0 2px 32px;font:11px Monaco,monospace;z-index:9;outline:none;}#fbLargeCommandLineIcon{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/up.png) no-repeat;position:absolute;right:1px;bottom:1px;z-index:10;}#fbLargeCommandLineIcon:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/upHover.png) no-repeat;}div.fbFitHeight{overflow:auto;position:relative;}.fbSmallButton{overflow:hidden;width:16px;height:16px;display:block;text-decoration:none;cursor:default;}#fbWindowButtons .fbSmallButton{float:right;}#fbWindow_btClose{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/min.png);}#fbWindow_btClose:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/minHover.png);}#fbWindow_btDetach{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/detach.png);}#fbWindow_btDetach:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/detachHover.png);}#fbWindow_btDeactivate{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/off.png);}#fbWindow_btDeactivate:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/offHover.png);}.fbTab{text-decoration:none;display:none;float:left;width:auto;float:left;cursor:default;font-family:Lucida Grande,Tahoma,sans-serif;font-size:11px;line-height:13px;font-weight:bold;height:22px;color:#565656;}.fbPanelBar span{float:left;}.fbPanelBar .fbTabL,.fbPanelBar .fbTabR{height:22px;width:8px;}.fbPanelBar .fbTabText{padding:4px 1px 0;}a.fbTab:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) 0 -73px;}a.fbTab:hover .fbTabL{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) -16px -96px;}a.fbTab:hover .fbTabR{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) -24px -96px;}.fbSelectedTab{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 -50px !important;color:#000;}.fbSelectedTab .fbTabL{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) 0 -96px !important;}.fbSelectedTab .fbTabR{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) -8px -96px !important;}#fbHSplitter{position:fixed;_position:absolute;left:0;top:0;width:100%;height:5px;overflow:hidden;cursor:n-resize !important;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/pixel_transparent.gif);z-index:9;}#fbHSplitter.fbOnMovingHSplitter{height:100%;z-index:100;}.fbVSplitter{background:#ece9d8;color:#000;border:1px solid #716f64;border-width:0 1px;border-left-color:#aca899;width:4px;cursor:e-resize;overflow:hidden;right:294px;text-decoration:none;z-index:10;position:absolute;height:100%;top:27px;}div.lineNo{font:1em/1.4545em Monaco,monospace;position:relative;float:left;top:0;left:0;margin:0 5px 0 0;padding:0 5px 0 10px;background:#eee;color:#888;border-right:1px solid #ccc;text-align:right;}.sourceBox{position:absolute;}.sourceCode{font:1em Monaco,monospace;overflow:hidden;white-space:pre;display:inline;}.nodeControl{margin-top:3px;margin-left:-14px;float:left;width:9px;height:9px;overflow:hidden;cursor:default;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_open.gif);_float:none;_display:inline;_position:absolute;}div.nodeMaximized{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_close.gif);}div.objectBox-element{padding:1px 3px;}.objectBox-selector{cursor:default;}.selectedElement{background:highlight;color:#fff !important;}.selectedElement span{color:#fff !important;}* html .selectedElement{position:relative;}@media screen and (-webkit-min-device-pixel-ratio:0){.selectedElement{background:#316AC5;color:#fff !important;}}.logRow *{font-size:1em;}.logRow{position:relative;border-bottom:1px solid #D7D7D7;padding:2px 4px 1px 6px;zbackground-color:#FFFFFF;}.logRow-command{font-family:Monaco,monospace;color:blue;}.objectBox-string,.objectBox-text,.objectBox-number,.objectBox-function,.objectLink-element,.objectLink-textNode,.objectLink-function,.objectBox-stackTrace,.objectLink-profile{font-family:Monaco,monospace;}.objectBox-null{padding:0 2px;border:1px solid #666666;background-color:#888888;color:#FFFFFF;}.objectBox-string{color:red;}.objectBox-number{color:#000088;}.objectBox-function{color:DarkGreen;}.objectBox-object{color:DarkGreen;font-weight:bold;font-family:Lucida Grande,sans-serif;}.objectBox-array{color:#000;}.logRow-info,.logRow-error,.logRow-warn{background:#fff no-repeat 2px 2px;padding-left:20px;padding-bottom:3px;}.logRow-info{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/infoIcon.png) !important;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/infoIcon.gif);}.logRow-warn{background-color:cyan;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/warningIcon.png) !important;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/warningIcon.gif);}.logRow-error{background-color:LightYellow;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon.png) !important;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon.gif);color:#f00;}.errorMessage{vertical-align:top;color:#f00;}.objectBox-sourceLink{position:absolute;right:4px;top:2px;padding-left:8px;font-family:Lucida Grande,sans-serif;font-weight:bold;color:#0000FF;}.selectorTag,.selectorId,.selectorClass{font-family:Monaco,monospace;font-weight:normal;}.selectorTag{color:#0000FF;}.selectorId{color:DarkBlue;}.selectorClass{color:red;}.objectBox-element{font-family:Monaco,monospace;color:#000088;}.nodeChildren{padding-left:26px;}.nodeTag{color:blue;cursor:pointer;}.nodeValue{color:#FF0000;font-weight:normal;}.nodeText,.nodeComment{margin:0 2px;vertical-align:top;}.nodeText{color:#333333;font-family:Monaco,monospace;}.nodeComment{color:DarkGreen;}.nodeHidden,.nodeHidden *{color:#888888;}.nodeHidden .nodeTag{color:#5F82D9;}.nodeHidden .nodeValue{color:#D86060;}.selectedElement .nodeHidden,.selectedElement .nodeHidden *{color:SkyBlue !important;}.log-object{}.property{position:relative;clear:both;height:15px;}.propertyNameCell{vertical-align:top;float:left;width:28%;position:absolute;left:0;z-index:0;}.propertyValueCell{float:right;width:68%;background:#fff;position:absolute;padding-left:5px;display:table-cell;right:0;z-index:1;}.propertyName{font-weight:bold;}.FirebugPopup{height:100% !important;}.FirebugPopup #fbWindowButtons{display:none !important;}.FirebugPopup #fbHSplitter{display:none !important;}',HTML:'
       
       
      >>>
      '} -}}); -FBL.initialize() -})(); \ No newline at end of file diff --git a/test/firebug-lite/license.txt b/test/firebug-lite/license.txt deleted file mode 100644 index ba43b75..0000000 --- a/test/firebug-lite/license.txt +++ /dev/null @@ -1,30 +0,0 @@ -Software License Agreement (BSD License) - -Copyright (c) 2007, Parakey Inc. -All rights reserved. - -Redistribution and use of this software in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - -* Redistributions of source code must retain the above - copyright notice, this list of conditions and the - following disclaimer. - -* Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the - following disclaimer in the documentation and/or other - materials provided with the distribution. - -* Neither the name of Parakey Inc. nor the names of its - contributors may be used to endorse or promote products - derived from this software without specific prior - written permission of Parakey Inc. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND -FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER -IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT -OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/test/firebug-lite/skin/xp/blank.gif b/test/firebug-lite/skin/xp/blank.gif deleted file mode 100644 index 6865c960497cdd5663acb5548596d00dba342063..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43 vcmZ?wbhEHbWMp7uXkcL2!@$Lm%Aoj@g;j)sfk6j|f#Qq|3`|Tej11NQl}80X diff --git a/test/firebug-lite/skin/xp/buttonBg.png b/test/firebug-lite/skin/xp/buttonBg.png deleted file mode 100644 index f367b427e60e67272b9a2bec37f71054a3269f74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 167 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{R!3HD)xzi;<0>we@P7LeL$-D$|*pj^6T^Rm@ z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-pp~bKV+hCf(36II4Gug<9Mb>)4|i}V@624c zaHEOQ-P127%)EC~hDl(;irH2!_0HWPp3B55=Xc+Eevp069PP;+tLL2nn!@1e>gTe~ HDWM4fu+KD3 diff --git a/test/firebug-lite/skin/xp/buttonBgHover.png b/test/firebug-lite/skin/xp/buttonBgHover.png deleted file mode 100644 index cd37a0d52de85c54f3e502c9a4fb6c93c4ebcc46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 171 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{R!3HD)xzi;<0>we@P7LeL$-D$|*pj^6T^Rm@ z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-pq;0SV+hA}+fy5P8w^B_1ROu*f8^ifi%MaN z?t+e)KMUj2=R7_T$DElU6!ZEZgVO|-$@brW6qqs2=3ULdX4am+55(@39-C|hG>O5} L)z4*}Q$iB}Zf-R* diff --git a/test/firebug-lite/skin/xp/debugger.css b/test/firebug-lite/skin/xp/debugger.css deleted file mode 100644 index 4a64d26..0000000 --- a/test/firebug-lite/skin/xp/debugger.css +++ /dev/null @@ -1,331 +0,0 @@ -/* See license.txt for terms of usage */ - -.panelNode-script { - overflow: hidden; - font-family: monospace; -} - -/************************************************************************************************/ - -.scriptTooltip { - position: fixed; - z-index: 2147483647; - padding: 2px 3px; - border: 1px solid #CBE087; - background: LightYellow; - font-family: monospace; - color: #000000; -} - -/************************************************************************************************/ - -.sourceBox { - /* TODO: xxxpedro problem with sourceBox and scrolling elements */ - /*overflow: scroll; /* see issue 1479 */ - position: absolute; - left: 0; - top: 0; - width: 100%; - height: 100%; -} - -.sourceRow { - white-space: nowrap; - -moz-user-select: text; -} - -.sourceRow.hovered { - background-color: #EEEEEE; -} - -/************************************************************************************************/ - -.sourceLine { - -moz-user-select: none; - margin-right: 10px; - border-right: 1px solid #CCCCCC; - padding: 0px 4px 0 20px; - background: #EEEEEE no-repeat 2px 0px; - color: #888888; - white-space: pre; - font-family: monospace; /* see issue 2953 */ -} - -.noteInToolTip { /* below sourceLine, so it overrides it */ - background-color: #FFD472; -} - -.useA11y .sourceBox .sourceViewport:focus .sourceLine { - background-color: #FFFFC0; - color: navy; - border-right: 1px solid black; -} - -.useA11y .sourceBox .sourceViewport:focus { - outline: none; -} - -.a11y1emSize { - width: 1em; - height: 1em; - position: absolute; -} - -.useA11y .panelStatusLabel:focus { - outline-offset: -2px !important; - } - -.sourceBox > .sourceRow > .sourceLine { - cursor: pointer; -} - -.sourceLine:hover { - text-decoration: none; -} - -.sourceRowText { - white-space: pre; -} - -.sourceRow[exe_line="true"] { - outline: 1px solid #D9D9B6; - margin-right: 1px; - background-color: lightgoldenrodyellow; -} - -.sourceRow[executable="true"] > .sourceLine { - content: "-"; - color: #4AA02C; /* Spring Green */ - font-weight: bold; -} - -.sourceRow[exe_line="true"] > .sourceLine { - background-image: url(chrome://firebug/skin/exe.png); - color: #000000; -} - -.sourceRow[breakpoint="true"] > .sourceLine { - background-image: url(chrome://firebug/skin/breakpoint.png); -} - -.sourceRow[breakpoint="true"][condition="true"] > .sourceLine { - background-image: url(chrome://firebug/skin/breakpointCondition.png); -} - -.sourceRow[breakpoint="true"][disabledBreakpoint="true"] > .sourceLine { - background-image: url(chrome://firebug/skin/breakpointDisabled.png); -} - -.sourceRow[breakpoint="true"][exe_line="true"] > .sourceLine { - background-image: url(chrome://firebug/skin/breakpointExe.png); -} - -.sourceRow[breakpoint="true"][exe_line="true"][disabledBreakpoint="true"] > .sourceLine { - background-image: url(chrome://firebug/skin/breakpointDisabledExe.png); -} - -.sourceLine.editing { - background-image: url(chrome://firebug/skin/breakpoint.png); -} - -/************************************************************************************************/ - -.conditionEditor { - z-index: 2147483647; - position: absolute; - margin-top: 0; - left: 2px; - width: 90%; -} - -.conditionEditorInner { - position: relative; - top: -26px; - height: 0; -} - -.conditionCaption { - margin-bottom: 2px; - font-family: Lucida Grande, sans-serif; - font-weight: bold; - font-size: 11px; - color: #226679; -} - -.conditionInput { - width: 100%; - border: 1px solid #0096C0; - font-family: monospace; - font-size: inherit; -} - -.conditionEditorInner1 { - padding-left: 37px; - background: url(condBorders.png) repeat-y; -} - -.conditionEditorInner2 { - padding-right: 25px; - background: url(condBorders.png) repeat-y 100% 0; -} - -.conditionEditorTop1 { - background: url(condCorners.png) no-repeat 100% 0; - margin-left: 37px; - height: 35px; -} - -.conditionEditorTop2 { - position: relative; - left: -37px; - width: 37px; - height: 35px; - background: url(condCorners.png) no-repeat; -} - -.conditionEditorBottom1 { - background: url(condCorners.png) no-repeat 100% 100%; - margin-left: 37px; - height: 33px; -} - -.conditionEditorBottom2 { - position: relative; left: -37px; - width: 37px; - height: 33px; - background: url(condCorners.png) no-repeat 0 100%; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.upsideDown { - margin-top: 2px; -} - -.upsideDown .conditionEditorInner { - top: -8px; -} - -.upsideDown .conditionEditorInner1 { - padding-left: 33px; - background: url(condBordersUps.png) repeat-y; -} - -.upsideDown .conditionEditorInner2 { - padding-right: 25px; - background: url(condBordersUps.png) repeat-y 100% 0; -} - -.upsideDown .conditionEditorTop1 { - background: url(condCornersUps.png) no-repeat 100% 0; - margin-left: 33px; - height: 25px; -} - -.upsideDown .conditionEditorTop2 { - position: relative; - left: -33px; - width: 33px; - height: 25px; - background: url(condCornersUps.png) no-repeat; -} - -.upsideDown .conditionEditorBottom1 { - background: url(condCornersUps.png) no-repeat 100% 100%; - margin-left: 33px; - height: 43px; -} - -.upsideDown .conditionEditorBottom2 { - position: relative; - left: -33px; - width: 33px; - height: 43px; - background: url(condCornersUps.png) no-repeat 0 100%; -} - -/************************************************************************************************/ - -.breakpointsGroupListBox { - overflow: hidden; -} - -.breakpointBlockHead { - position: relative; - padding-top: 4px; -} - -.breakpointBlockHead > .checkbox { - margin-right: 4px; -} - -.breakpointBlockHead > .objectLink-sourceLink { - top: 4px; - right: 20px; - background-color: #FFFFFF; /* issue 3308 */ -} - -.breakpointBlockHead > .closeButton { - position: absolute; - top: 2px; - right: 2px; -} - -.breakpointCheckbox { - margin-top: 0; - vertical-align: top; -} - -.breakpointName { - margin-left: 4px; - font-weight: bold; -} - -.breakpointRow[aria-checked="false"] > .breakpointBlockHead > *, -.breakpointRow[aria-checked="false"] > .breakpointCode { - opacity: 0.5; -} - -.breakpointRow[aria-checked="false"] .breakpointCheckbox, -.breakpointRow[aria-checked="false"] .objectLink-sourceLink, -.breakpointRow[aria-checked="false"] .closeButton, -.breakpointRow[aria-checked="false"] .breakpointMutationType { - opacity: 1.0 !important; -} - -.breakpointCode { - overflow: hidden; - white-space: nowrap; - padding-left: 24px; - padding-bottom: 2px; - border-bottom: 1px solid #D7D7D7; - font-family: monospace; - color: DarkGreen; -} - -.breakpointCondition { - white-space: nowrap; - padding-left: 24px; - padding-bottom: 2px; - border-bottom: 1px solid #D7D7D7; - font-family: monospace; - color: Gray; -} - -.breakpointBlock-breakpoints > .groupHeader { - display: none; -} - -.breakpointBlock-monitors > .breakpointCode { - padding: 0; -} - -.breakpointBlock-errorBreakpoints .breakpointCheckbox, -.breakpointBlock-monitors .breakpointCheckbox { - display: none; -} - -.breakpointHeader { - margin: 0 !important; - border-top: none !important; -} diff --git a/test/firebug-lite/skin/xp/detach.png b/test/firebug-lite/skin/xp/detach.png deleted file mode 100644 index 0ddb9a1764a7244e13fb3ae0ed1ae7a286e9e138..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 655 zcmV;A0&x9_P)vmZ_X00HYsL_t(I zjiuASixWW@g>ab5{?6{qvzRs9VNlU&_RX;G^Jd=ee{7lWMJ%eR z3{AF20Ep)y!mj|M5oBktri!{UFOVt#7H?iRbJqo>rvWZx)o?vXGay^Lw{)KBp1m~6 z`yibH#KZ5%*nGxgcWzCZ*UX-Er8%I%2}0r^*bN8_KZM_Ehl)0XcAG?Nik4;0p2ZEv zp<>5C%zNKM%r9+#a^70sjNEQv#^&Ju9OMMhlU>*rIK>E&n2*DR%_ydvx7H!M3jnuU pr&fUue|MSIFK;|s+XejV_yNX*_HvmZ_X00E{+L_t(I zjir;nOIuMC$3G|U#kBgKiL^m1)>#S;QgEwd9Wr!^UE86Xp#Oo-|3IOegHA##f`vL% zHz^%l{n0?s!A_+^L*7foyk|~_+#8-6sOW{uIh=dG-}C)m?iE$#A-oX+cONLulyE)2Co+jb{(Rfv*ZL|+6b2>LB~evAiToXV{iZNH zHGL=9zYq2~-~Cd1t2*QYgiy$PK1ubsGpXI?#pku2;FH<+$gzq>+rq?PUsUDL6FQc$Ktz0?m=3D&(09>5@hnaP5s*8v+9YvBLK{>@_+VFn)YR16+}zUA(%RbE(b3V_+1b_A)!p6Q z+uPgM*EeCpgozU;PMS1n^5n@=rc9YSb?S^6GiJ`5IeYf(`Sa&5Sg>HxqD4!VELpZ} z+4AMfSFBjEe*OAQn>PKYF;M&`=v}?EMTFVmhmRH-h=@!%H(`U1mWjL~(r(9$jZjy>BwLW0Bd-< AumAu6 diff --git a/test/firebug-lite/skin/xp/disable.png b/test/firebug-lite/skin/xp/disable.png deleted file mode 100644 index c28bcdf24a88d4d1266486af283b3557011e916f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 543 zcmV+)0^t3LP)x3Se~ z6`Rdw>Ucah*6THwB#AIg5(ME2(GQ@(Ktm}Oiyw-jOuF4}$mMdq0C<3425O0ZzyB?w zG!F)YEE0)iG)?PM7Ep{MxC7835;9bI9SjCUm5V5UB+D}KZ98BrZv^)Fd<+#H0nARP zQ)U>(v8{m|K_IKw>w7Q>#(lF;D3rirvolE&A?Rx~8nO9&p2b7wKRBPy-|iA#kVa_f zNy%i=1n?4ep5s9#8zHu-s;UjH)oO9r-65TzcW3vZTrNK$vxY`l(P*>{?$@ZuCX

      zSS&c+6eN1i<#IPJ%7UN@%1Hq6;c$2c$9~94N=7cBH!TRR>^toYUDxfe0SXBMg4!q6 hR;g6le~mu@1^}m-%vu#A_1FLa002ovPDHLkV1iC4;#>d# diff --git a/test/firebug-lite/skin/xp/disableHover.gif b/test/firebug-lite/skin/xp/disableHover.gif deleted file mode 100644 index 70565a83cce61a6ce84ced32713fe11dfe32ad32..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 344 zcmb8qy-Gr100!XKJeKL_&p{0{mG9UuD279lD4bHr&LBv10SQS(TL?8ow74`xPC-j8 z&2q0GiEI6k05_T4}da2s#{eI_YvzRq652>!r`fK!Cv@Lm_G!BN0ZU zjK!EpFqvd3#dMmP40WA_0_W%Xe_BV)t(8la@}gW{sVvL9Q7A%dD<&Is#PI7citdH8 z!{(A&o4Y7AUW+m;uj}%BNE_SVs~Pd|!PQB3-vKr2s6vs%_Gnj+LH>~wJ-A1;nr&k!$NdEx3Rg!1` diff --git a/test/firebug-lite/skin/xp/disableHover.png b/test/firebug-lite/skin/xp/disableHover.png deleted file mode 100644 index 26fe37542f865a5fc668ceaaa597261351416abf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 512 zcmV+b0{{JqP)B9UvD<_Rt@Fa9A3cn2&8 zsB&(OLveLQ9g(&fjgs5jRpxS*W_>#78#q)z2})fFv@41YM6bY}(`dWTB8p3#fBpflR0K9xPy7!y|#6zbl^UQ?6C> ziLs8A6~MOL#(GM{<*3a92_qDO&+k9_0E*B0XQ#8__5i~GMk5TTVbcWs{xXKcgCD>d zPss3n0XJwgfR~q|ccusdH{^Eisu~qG{#@uF){aM55v@S-*L}h!u=!w0000vmZ_X00G%aL_t(I zjir-6Xj4%XhritS^4b@Z=1IwrrO=KdrKp>WpbkMn+#K8l16@p^xL9l&?2^Se*4bSI zZ3h(s5_C`}$I=d>gHQ~KukZgo4ljuYOAUIadoTC*oqNykoQ#O@KVc3RpRQi719t%D zFPbj!==Afab%2bB@czoRb!FT2*-Mw1Idc|e+ea$3=h6H4frD2s(Vka7_u|=x2@r^` z%`PrsmCE>^zaE?3DwWACE^+X#Qv*_fFWSk?Eue#NqJQV+7Wne^jRS)k_#&u`LZWyg zfXXQRLGe?7)<_%?CkgYnZyqb&fBXc~Fz~hh4ImoaL&7kiy|&4P2lv>yd!MY4niM55 zm1cwX+9qY^B&Ic$Y5+9^NUu-U^{~T;?d4S}%?5=;Q%E$GW`phJRqQY#>v~A9KLY%E zL9d4il(b+egHCmY^IH!A=u}rIXDy0aFkP3CW*pET9Tc^OAf$cc768SmX^NsS_CY+V%VO=|af7lf^PJM_L#r!hSbm*AK`Wss)2t0NAQrTnB1QHcYMR&g+daz`w>% X_aN9B#@k{#00000NkvXXu0mjfMjaKM diff --git a/test/firebug-lite/skin/xp/downActive.png b/test/firebug-lite/skin/xp/downActive.png deleted file mode 100644 index f4312b2ffbc485366e5b3eb2d52fac976597b256..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 543 zcmV+)0^t3LP)vmZ_X00DbRL_t(I zjir;lN&`UU}0fnZKwDGo-ZJ=v$nCY@Ck$jQ3OS~ z!%8ev5NyplSR@yfwM_ljM z8jB*`Hb4wcNo$%HXKe{eS`(X6ZGZ^i>XM`_{4FB0rx}o(pOF9q2M0fbrz0a+hWRA0 zo}YLDc0HG|AY|Kf-&@oKDnZDu=h6%0TLc}cAO~om1k^p3N)Y1kR%j&%se3LZb0?RT zL9S(KAoN_kAOv&nH}W*AOaU#Ddjn#?atr)T5CMsK8B=2(NWW9(7x;lMU7%2C99vCi z!un`rT1r;zB^D%h<6WT3xz>HE$zyj?J hQ*}dR`IF$U@d_-*f~iPPaE<@~002ovPDHLkV1gf_)cF7a diff --git a/test/firebug-lite/skin/xp/downHover.png b/test/firebug-lite/skin/xp/downHover.png deleted file mode 100644 index 8144e63787d3015e5ab2219bf24fab87b9fe1141..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 526 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf4nJ za0`Jja>QWe}Xi&D$;i?WOTH_Q7mFfe9$x;Tbd^e&xj@9h*QajbrQoamc4Q>{6x z_ytW`lXX-V5t7R4YFksyd&xV$`T4iwda7R! zJhXjYP{)71@w;f~Q~OPae7%pbmNneb_u;>xynx1mHSr=7#+7eGwA%h*Z*MZ+XTsH-c1$v(;2R~YOE~MaXMrp z#grQQO6f^sMM#s10JG77PL9;jC?y7w5KF;Cwi!kjwzI7CKh1VaNyKOJR@VrYO*JNd zDNH`T4E=0J8X}A3Pf43g%&J)E`RTHyE!+3wyh#^!drZ_;wU=v+?+hwt*eG80o^5kL zHecaeo;4{7vfXU+;}`yAIs31J(U_azwvuSV^pkBXx2=!*oAe=kFC#Z!&8|0*agxB8 OVeoYIb6Mw<&;$T_rpeI& diff --git a/test/firebug-lite/skin/xp/errorIcon-sm.png b/test/firebug-lite/skin/xp/errorIcon-sm.png deleted file mode 100644 index 0c377e307e54c7d1ac78b316b6b949085aa368a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 447 zcmV;w0YLtVP)z^Q>-8KIssI20AY({UO#lFGm;eBCjsO7aNB{ta0001Y z?*IVM@BjcZ_W%GKbhgrL3jhECHAzH4RCwBKl08eqP!xurR1gFQcfld}1BAN@f~4SF z@*4vFk1iRU6beo*g41nrsg!_|n{jZexJXq{gcLysKj`al6LV8~;J`hX^Kjnt5lF(f zeh};dF|Y-E06B2nfxG`CNl3!Nj)k);&;w`+dIQ~qMj#6Z4ama!0Q3mb0{;c&4m|Xs z?ii#fk|ZffYA8u0NwX-@r31IIu+#^AffR;PQPf}ws3@c`)WkujSlGDmC5>cn7<1bWUJj$ZS+iPe7jBcSDR!8x$w6_L3u)yphaIGl zNwmvu6p_Y-3q=&oV#+9g^BMelzQE&f+IxEaa^$28Y{53{z%Ha=5BA{z4j~Iia0=&e z30H6pH*g2{@BokS1kdmSd3c2ayumvZ;R8OQ1YhtCLOG2_Fd7A`RR{)!cwES2gnVB3 zAN7yI5()UDfpJxQA{tUToNf>5QiVv0nQqGdMh7IZ?3$-qFHTs`LebF;-)7Dmi7pLa z1ac;?Oq5u(71vFY<5qEca;3d;EHtvv=W?ASZ#z>3?OfaJkVw{`RMtx!7IAYp>@(A( p)p5Ui~H0X8YDC6$Gxpb|xtYf@N==`2Jc z7Ah8ji(kR7VtwakC$}D$g(o{ZGjC>QZ;f+~bR8H|#%4hcOnLVm*j;w6MZq#Egs5(a zc4lEugK?iQ0QcYtDcH902T2xS;XcvY8O)TA|L_Qo0dkkJVlXBT;dmV(QXWLO$HEed zt}ftbg3DK{l45N>4BPBOtRiE?7^^l0JFaL_w@cLT6E&N;kZtyH3~NT_jk(q5@35sP zaxP8XaIwukAMZ)K?GhDNr$f|e@AO4;e+3u-uo^Lr*!;%I00000NkvXXu0mjfj3mDh diff --git a/test/firebug-lite/skin/xp/firebug-1.3a2.css b/test/firebug-lite/skin/xp/firebug-1.3a2.css deleted file mode 100644 index b5dd5dd..0000000 --- a/test/firebug-lite/skin/xp/firebug-1.3a2.css +++ /dev/null @@ -1,817 +0,0 @@ -.fbBtnPressed { - background: #ECEBE3; - padding: 3px 6px 2px 7px !important; - margin: 1px 0 0 1px; - _margin: 1px -1px 0 1px; - border: 1px solid #ACA899 !important; - border-color: #ACA899 #ECEBE3 #ECEBE3 #ACA899 !important; -} - -.fbToolbarButtons { - display: none; -} - -#fbStatusBarBox { - display: none; -} - -/************************************************************************************************ - Error Popup -*************************************************************************************************/ -#fbErrorPopup { - position: absolute; - right: 0; - bottom: 0; - height: 19px; - width: 75px; - background: url(sprite.png) #f1f2ee 0 0; - z-index: 999; -} - -#fbErrorPopupContent { - position: absolute; - right: 0; - top: 1px; - height: 18px; - width: 75px; - _width: 74px; - border-left: 1px solid #aca899; -} - -#fbErrorIndicator { - position: absolute; - top: 2px; - right: 5px; -} - - - - - - - - - - -.fbBtnInspectActive { - background: #aaa; - color: #fff !important; -} - -/************************************************************************************************ - General -*************************************************************************************************/ -html, body { - margin: 0; - padding: 0; - overflow: hidden; -} - -body { - font-family: Lucida Grande, Tahoma, sans-serif; - font-size: 11px; - background: #fff; -} - -.clear { - clear: both; -} - -/************************************************************************************************ - Mini Chrome -*************************************************************************************************/ -#fbMiniChrome { - display: none; - right: 0; - height: 27px; - background: url(sprite.png) #f1f2ee 0 0; - margin-left: 1px; -} - -#fbMiniContent { - display: block; - position: relative; - left: -1px; - right: 0; - top: 1px; - height: 25px; - border-left: 1px solid #aca899; -} - -#fbToolbarSearch { - float: right; - border: 1px solid #ccc; - margin: 0 5px 0 0; - background: #fff url(search.png) no-repeat 4px 2px; - padding-left: 20px; - font-size: 11px; -} - -#fbToolbarErrors { - float: right; - margin: 1px 4px 0 0; - font-size: 11px; -} - -#fbLeftToolbarErrors { - float: left; - margin: 7px 0px 0 5px; - font-size: 11px; -} - -.fbErrors { - padding-left: 20px; - height: 14px; - background: url(errorIcon.png) no-repeat; - color: #f00; - font-weight: bold; -} - -#fbMiniErrors { - display: inline; - display: none; - float: right; - margin: 5px 2px 0 5px; -} - -#fbMiniIcon { - float: right; - margin: 3px 4px 0; - height: 20px; - width: 20px; - float: right; - background: url(sprite.png) 0 -135px; - cursor: pointer; -} - - -/************************************************************************************************ - Master Layout -*************************************************************************************************/ -#fbChrome { - position: fixed; - overflow: hidden; - height: 100%; - width: 100%; - border-collapse: collapse; - background: #fff; -} - -#fbTop { - height: 49px; -} - -#fbToolbar { - position: absolute; - z-index: 5; - width: 100%; - top: 0; - background: url(sprite.png) #f1f2ee 0 0; - height: 27px; - font-size: 11px; - overflow: hidden; -} - -#fbPanelBarBox { - top: 27px; - position: absolute; - z-index: 8; - width: 100%; - background: url(sprite.png) #dbd9c9 0 -27px; - height: 22px; -} - -#fbContent { - height: 100%; - vertical-align: top; -} - -#fbBottom { - height: 18px; - background: #fff; -} - -/************************************************************************************************ - Sub-Layout -*************************************************************************************************/ - -/* fbToolbar -*************************************************************************************************/ -#fbToolbarIcon { - float: left; - padding: 4px 5px 0; -} - -#fbToolbarIcon a { - display: block; - height: 20px; - width: 20px; - background: url(sprite.png) 0 -135px; - text-decoration: none; - cursor: default; -} - -#fbToolbarButtons { - float: left; - padding: 4px 2px 0 5px; -} - -#fbToolbarButtons a { - text-decoration: none; - display: block; - float: left; - color: #000; - padding: 4px 8px 4px; - cursor: default; -} - -#fbToolbarButtons a:hover { - color: #333; - padding: 3px 7px 3px; - border: 1px solid #fff; - border-bottom: 1px solid #bbb; - border-right: 1px solid #bbb; -} - -#fbStatusBarBox { - position: relative; - top: 5px; - line-height: 19px; - cursor: default; -} - -.fbToolbarSeparator{ - overflow: hidden; - border: 1px solid; - border-color: transparent #fff transparent #777; - _border-color: #eee #fff #eee #777; - height: 7px; - margin: 10px 6px 0 0; - float: left; -} - -.fbStatusBar span { - color: #808080; - padding: 0 4px 0 0; -} - -.fbStatusBar span a { - text-decoration: none; - color: black; -} - -.fbStatusBar span a:hover { - color: blue; - cursor: pointer; -} - - -#fbWindowButtons { - position: absolute; - white-space: nowrap; - right: 0; - top: 0; - height: 17px; - _width: 50px; - padding: 5px 0 5px 5px; - z-index: 6; - background: url(sprite.png) #f1f2ee 0 0; -} - -/* fbPanelBarBox -*************************************************************************************************/ - -#fbPanelBar1 { - width: 255px; /* fixed width to avoid tabs breaking line */ - z-index: 8; - left: 0; - white-space: nowrap; - background: url(sprite.png) #dbd9c9 0 -27px; - position: absolute; - left: 4px; -} - -#fbPanelBar2Box { - background: url(sprite.png) #dbd9c9 0 -27px; - position: absolute; - height: 22px; - width: 300px; /* fixed width to avoid tabs breaking line */ - z-index: 9; - right: 0; -} - -#fbPanelBar2 { - position: absolute; - width: 290px; /* fixed width to avoid tabs breaking line */ - height: 22px; - padding-left: 10px; -} - -/* body -*************************************************************************************************/ -.fbPanel { - display: none; -} - -#fbPanelBox1, #fbPanelBox2 { - max-height: inherit; - height: 100%; - font-size: 11px; -} - -#fbPanelBox2 { - background: #fff; -} - -#fbPanelBox2 { - width: 300px; - background: #fff; -} - -#fbPanel2 { - padding-left: 6px; - background: #fff; -} - -.hide { - overflow: hidden !important; - position: fixed !important; - display: none !important; - visibility: hidden !important; -} - -/* fbBottom -*************************************************************************************************/ - -#fbCommand { - height: 18px; -} - -#fbCommandBox { - position: absolute; - width: 100%; - height: 18px; - bottom: 0; - overflow: hidden; - z-index: 9; - background: #fff; - border: 0; - border-top: 1px solid #ccc; -} - -#fbCommandIcon { - position: absolute; - color: #00f; - top: 2px; - left: 7px; - display: inline; - font: 11px Monaco, monospace; - z-index: 10; -} - -#fbCommandLine { - position: absolute; - width: 100%; - top: 0; - left: 0; - border: 0; - margin: 0; - padding: 2px 0 2px 32px; - font: 11px Monaco, monospace; - z-index: 9; -} - -div.fbFitHeight { - overflow: auto; - _position: absolute; -} - - -/************************************************************************************************ - Layout Controls -*************************************************************************************************/ - -/* fbToolbar buttons -*************************************************************************************************/ -#fbWindowButtons a { - font-size: 1px; - width: 16px; - height: 16px; - display: block; - float: right; - margin-right: 4px; - text-decoration: none; - cursor: default; -} - -#fbWindow_btClose { - background: url(sprite.png) 0 -119px; -} - -#fbWindow_btClose:hover { - background: url(sprite.png) -16px -119px; -} - -#fbWindow_btDetach { - background: url(sprite.png) -32px -119px; -} - -#fbWindow_btDetach:hover { - background: url(sprite.png) -48px -119px; -} - -/* fbPanelBarBox tabs -*************************************************************************************************/ -.fbTab { - text-decoration: none; - display: none; - float: left; - width: auto; - float: left; - cursor: default; - font-family: Lucida Grande, Tahoma, sans-serif; - font-size: 11px; - font-weight: bold; - height: 22px; - color: #565656; -} - -.fbPanelBar span { - display: block; - float: left; -} - -.fbPanelBar .fbTabL,.fbPanelBar .fbTabR { - height: 22px; - width: 8px; -} - -.fbPanelBar .fbTabText { - padding: 4px 1px 0; -} - -a.fbTab:hover { - background: url(sprite.png) 0 -73px; -} - -a.fbTab:hover .fbTabL { - background: url(sprite.png) -16px -96px; -} - -a.fbTab:hover .fbTabR { - background: url(sprite.png) -24px -96px; -} - -.fbSelectedTab { - background: url(sprite.png) #f1f2ee 0 -50px !important; - color: #000; -} - -.fbSelectedTab .fbTabL { - background: url(sprite.png) 0 -96px !important; -} - -.fbSelectedTab .fbTabR { - background: url(sprite.png) -8px -96px !important; -} - -/* splitters -*************************************************************************************************/ -#fbHSplitter { - position: absolute; - left: 0; - top: 0; - width: 100%; - height: 5px; - overflow: hidden; - cursor: n-resize !important; - background: url(pixel_transparent.gif); - z-index: 9; -} - -#fbHSplitter.fbOnMovingHSplitter { - height: 100%; - z-index: 100; -} - -.fbVSplitter { - background: #ece9d8; - color: #000; - border: 1px solid #716f64; - border-width: 0 1px; - border-left-color: #aca899; - width: 4px; - cursor: e-resize; - overflow: hidden; - right: 294px; - text-decoration: none; - z-index: 9; - position: absolute; - height: 100%; - top: 27px; - _width: 6px; -} - -/************************************************************************************************/ -div.lineNo { - font: 11px Monaco, monospace; - float: left; - display: inline; - position: relative; - margin: 0; - padding: 0 5px 0 20px; - background: #eee; - color: #888; - border-right: 1px solid #ccc; - text-align: right; -} - -pre.nodeCode { - font: 11px Monaco, monospace; - margin: 0; - padding-left: 10px; - overflow: hidden; - /* - _width: 100%; - /**/ -} - -/************************************************************************************************/ -.nodeControl { - margin-top: 3px; - margin-left: -14px; - float: left; - width: 9px; - height: 9px; - overflow: hidden; - cursor: default; - background: url(tree_open.gif); - _float: none; - _display: inline; - _position: absolute; -} - -div.nodeMaximized { - background: url(tree_close.gif); -} - -div.objectBox-element { - padding: 1px 3px; -} -.objectBox-selector{ - cursor: default; -} - -.selectedElement{ - background: highlight; - /* background: url(roundCorner.svg); Opera */ - color: #fff !important; -} -.selectedElement span{ - color: #fff !important; -} - -/* Webkit CSS Hack - bug in "highlight" named color */ -@media screen and (-webkit-min-device-pixel-ratio:0) { - .selectedElement{ - background: #316AC5; - color: #fff !important; - } -} - -/************************************************************************************************/ -/************************************************************************************************/ -.logRow * { - font-size: 11px; -} - -.logRow { - position: relative; - border-bottom: 1px solid #D7D7D7; - padding: 2px 4px 1px 6px; - background-color: #FFFFFF; -} - -.logRow-command { - font-family: Monaco, monospace; - color: blue; -} - -.objectBox-string, -.objectBox-text, -.objectBox-number, -.objectBox-function, -.objectLink-element, -.objectLink-textNode, -.objectLink-function, -.objectBox-stackTrace, -.objectLink-profile { - font-family: Monaco, monospace; -} - -.objectBox-null { - padding: 0 2px; - border: 1px solid #666666; - background-color: #888888; - color: #FFFFFF; -} - -.objectBox-string { - color: red; - white-space: pre; -} - -.objectBox-number { - color: #000088; -} - -.objectBox-function { - color: DarkGreen; -} - -.objectBox-object { - color: DarkGreen; - font-weight: bold; - font-family: Lucida Grande, sans-serif; -} - -.objectBox-array { - color: #000; -} - -/************************************************************************************************/ -.logRow-info,.logRow-error,.logRow-warning { - background: #fff no-repeat 2px 2px; - padding-left: 20px; - padding-bottom: 3px; -} - -.logRow-info { - background-image: url(infoIcon.png); -} - -.logRow-warning { - background-color: cyan; - background-image: url(warningIcon.png); -} - -.logRow-error { - background-color: LightYellow; - background-image: url(errorIcon.png); - color: #f00; -} - -.errorMessage { - vertical-align: top; - color: #f00; -} - -.objectBox-sourceLink { - position: absolute; - right: 4px; - top: 2px; - padding-left: 8px; - font-family: Lucida Grande, sans-serif; - font-weight: bold; - color: #0000FF; -} - -/************************************************************************************************/ -.logRow-group { - background: #EEEEEE; - border-bottom: none; -} - -.logGroup { - background: #EEEEEE; -} - -.logGroupBox { - margin-left: 24px; - border-top: 1px solid #D7D7D7; - border-left: 1px solid #D7D7D7; -} - -/************************************************************************************************/ -.selectorTag,.selectorId,.selectorClass { - font-family: Monaco, monospace; - font-weight: normal; -} - -.selectorTag { - color: #0000FF; -} - -.selectorId { - color: DarkBlue; -} - -.selectorClass { - color: red; -} - -/************************************************************************************************/ -.objectBox-element { - font-family: Monaco, monospace; - color: #000088; -} - -.nodeChildren { - padding-left: 26px; -} - -.nodeTag { - color: blue; - cursor: pointer; -} - -.nodeValue { - color: #FF0000; - font-weight: normal; -} - -.nodeText,.nodeComment { - margin: 0 2px; - vertical-align: top; -} - -.nodeText { - color: #333333; - font-family: Monaco, monospace; -} - -.nodeComment { - color: DarkGreen; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.nodeHidden, .nodeHidden * { - color: #888888; -} - -.nodeHidden .nodeTag { - color: #5F82D9; -} - -.nodeHidden .nodeValue { - color: #D86060; -} - -.selectedElement .nodeHidden, .selectedElement .nodeHidden * { - color: SkyBlue !important; -} - - -/************************************************************************************************/ -.log-object { - /* - _position: relative; - _height: 100%; - /**/ -} - -.property { - position: relative; - clear: both; - height: 15px; -} - -.propertyNameCell { - vertical-align: top; - float: left; - width: 28%; - position: absolute; - left: 0; - z-index: 0; -} - -.propertyValueCell { - float: right; - width: 68%; - background: #fff; - position: absolute; - padding-left: 5px; - display: table-cell; - right: 0; - z-index: 1; - /* - _position: relative; - /**/ -} - -.propertyName { - font-weight: bold; -} - -.FirebugPopup { - height: 100% !important; -} - -.FirebugPopup #fbWindowButtons { - display: none !important; -} - -.FirebugPopup #fbHSplitter { - display: none !important; -} diff --git a/test/firebug-lite/skin/xp/firebug.IE6.css b/test/firebug-lite/skin/xp/firebug.IE6.css deleted file mode 100644 index 14f8aa8..0000000 --- a/test/firebug-lite/skin/xp/firebug.IE6.css +++ /dev/null @@ -1,20 +0,0 @@ -/************************************************************************************************/ -#fbToolbarSearch { - background-image: url(search.gif) !important; -} -/************************************************************************************************/ -.fbErrors { - background-image: url(errorIcon.gif) !important; -} -/************************************************************************************************/ -.logRow-info { - background-image: url(infoIcon.gif) !important; -} - -.logRow-warning { - background-image: url(warningIcon.gif) !important; -} - -.logRow-error { - background-image: url(errorIcon.gif) !important; -} diff --git a/test/firebug-lite/skin/xp/firebug.css b/test/firebug-lite/skin/xp/firebug.css deleted file mode 100644 index cc33761..0000000 --- a/test/firebug-lite/skin/xp/firebug.css +++ /dev/null @@ -1,3147 +0,0 @@ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* Loose */ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* -.netInfoResponseHeadersTitle, netInfoResponseHeadersBody { - display: none; -} -/**/ - -.obscured { - left: -999999px !important; -} - -/* IE6 need a separated rule, otherwise it will not recognize it */ -.collapsed { - display: none; -} - -[collapsed="true"] { - display: none; -} - -#fbCSS { - padding: 0 !important; -} - -.cssPropDisable { - float: left; - display: block; - width: 2em; - cursor: default; -} - -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* panelBase */ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ - -/************************************************************************************************/ - -.infoTip { - z-index: 2147483647; - position: fixed; - padding: 2px 3px; - border: 1px solid #CBE087; - background: LightYellow; - font-family: Monaco, monospace; - color: #000000; - display: none; - white-space: nowrap; - pointer-events: none; -} - -.infoTip[active="true"] { - display: block; -} - -.infoTipLoading { - width: 16px; - height: 16px; - background: url(chrome://firebug/skin/loading_16.gif) no-repeat; -} - -.infoTipImageBox { - font-size: 11px; - min-width: 100px; - text-align: center; -} - -.infoTipCaption { - font-size: 11px; - font: Monaco, monospace; -} - -.infoTipLoading > .infoTipImage, -.infoTipLoading > .infoTipCaption { - display: none; -} - -/************************************************************************************************/ - -h1.groupHeader { - padding: 2px 4px; - margin: 0 0 4px 0; - border-top: 1px solid #CCCCCC; - border-bottom: 1px solid #CCCCCC; - background: #eee url(group.gif) repeat-x; - font-size: 11px; - font-weight: bold; - _position: relative; -} - -/************************************************************************************************/ - -.inlineEditor, -.fixedWidthEditor { - z-index: 2147483647; - position: absolute; - display: none; -} - -.inlineEditor { - margin-left: -6px; - margin-top: -3px; - /* - _margin-left: -7px; - _margin-top: -5px; - /**/ -} - -.textEditorInner, -.fixedWidthEditor { - margin: 0 0 0 0 !important; - padding: 0; - border: none !important; - font: inherit; - text-decoration: inherit; - background-color: #FFFFFF; -} - -.fixedWidthEditor { - border-top: 1px solid #888888 !important; - border-bottom: 1px solid #888888 !important; -} - -.textEditorInner { - position: relative; - top: -7px; - left: -5px; - - outline: none; - resize: none; - - /* - _border: 1px solid #999 !important; - _padding: 1px !important; - _filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color="#55404040"); - /**/ -} - -.textEditorInner1 { - padding-left: 11px; - background: url(textEditorBorders.png) repeat-y; - _background: url(textEditorBorders.gif) repeat-y; - _overflow: hidden; -} - -.textEditorInner2 { - position: relative; - padding-right: 2px; - background: url(textEditorBorders.png) repeat-y 100% 0; - _background: url(textEditorBorders.gif) repeat-y 100% 0; - _position: fixed; -} - -.textEditorTop1 { - background: url(textEditorCorners.png) no-repeat 100% 0; - margin-left: 11px; - height: 10px; - _background: url(textEditorCorners.gif) no-repeat 100% 0; - _overflow: hidden; -} - -.textEditorTop2 { - position: relative; - left: -11px; - width: 11px; - height: 10px; - background: url(textEditorCorners.png) no-repeat; - _background: url(textEditorCorners.gif) no-repeat; -} - -.textEditorBottom1 { - position: relative; - background: url(textEditorCorners.png) no-repeat 100% 100%; - margin-left: 11px; - height: 12px; - _background: url(textEditorCorners.gif) no-repeat 100% 100%; -} - -.textEditorBottom2 { - position: relative; - left: -11px; - width: 11px; - height: 12px; - background: url(textEditorCorners.png) no-repeat 0 100%; - _background: url(textEditorCorners.gif) no-repeat 0 100%; -} - - -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* CSS */ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ - -/* See license.txt for terms of usage */ - -.panelNode-css { - overflow-x: hidden; -} - -.cssSheet > .insertBefore { - height: 1.5em; -} - -.cssRule { - position: relative; - margin: 0; - padding: 1em 0 0 6px; - font-family: Monaco, monospace; - color: #000000; -} - -.cssRule:first-child { - padding-top: 6px; -} - -.cssElementRuleContainer { - position: relative; -} - -.cssHead { - padding-right: 150px; -} - -.cssProp { - /*padding-left: 2em;*/ -} - -.cssPropName { - color: DarkGreen; -} - -.cssPropValue { - margin-left: 8px; - color: DarkBlue; -} - -.cssOverridden span { - text-decoration: line-through; -} - -.cssInheritedRule { -} - -.cssInheritLabel { - margin-right: 0.5em; - font-weight: bold; -} - -.cssRule .objectLink-sourceLink { - top: 0; -} - -.cssProp.editGroup:hover { - background: url(disable.png) no-repeat 2px 1px; - _background: url(disable.gif) no-repeat 2px 1px; -} - -.cssProp.editGroup.editing { - background: none; -} - -.cssProp.disabledStyle { - background: url(disableHover.png) no-repeat 2px 1px; - _background: url(disableHover.gif) no-repeat 2px 1px; - opacity: 1; - color: #CCCCCC; -} - -.disabledStyle .cssPropName, -.disabledStyle .cssPropValue { - color: #CCCCCC; -} - -.cssPropValue.editing + .cssSemi, -.inlineExpander + .cssSemi { - display: none; -} - -.cssPropValue.editing { - white-space: nowrap; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.stylePropName { - font-weight: bold; - padding: 0 4px 4px 4px; - width: 50%; -} - -.stylePropValue { - width: 50%; -} -/* -.useA11y .a11yCSSView .focusRow:focus { - outline: none; - background-color: transparent - } - - .useA11y .a11yCSSView .focusRow:focus .cssSelector, - .useA11y .a11yCSSView .focusRow:focus .cssPropName, - .useA11y .a11yCSSView .focusRow:focus .cssPropValue, - .useA11y .a11yCSSView .computedStyleRow:focus, - .useA11y .a11yCSSView .groupHeader:focus { - outline: 2px solid #FF9933; - outline-offset: -2px; - background-color: #FFFFD6; - } - - .useA11y .a11yCSSView .groupHeader:focus { - outline-offset: -2px; - } -/**/ - - -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* Net */ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ - -/* See license.txt for terms of usage */ - -.panelNode-net { - overflow-x: hidden; -} - -.netTable { - width: 100%; -} - -/************************************************************************************************/ - -.hideCategory-undefined .category-undefined, -.hideCategory-html .category-html, -.hideCategory-css .category-css, -.hideCategory-js .category-js, -.hideCategory-image .category-image, -.hideCategory-xhr .category-xhr, -.hideCategory-flash .category-flash, -.hideCategory-txt .category-txt, -.hideCategory-bin .category-bin { - display: none; -} - -/************************************************************************************************/ - -.netHeadRow { - background: url(chrome://firebug/skin/group.gif) repeat-x #FFFFFF; -} - -.netHeadCol { - border-bottom: 1px solid #CCCCCC; - padding: 2px 4px 2px 18px; - font-weight: bold; -} - -.netHeadLabel { - white-space: nowrap; - overflow: hidden; -} - -/************************************************************************************************/ -/* Header for Net panel table */ - -.netHeaderRow { - height: 16px; -} - -.netHeaderCell { - cursor: pointer; - -moz-user-select: none; - border-bottom: 1px solid #9C9C9C; - padding: 0 !important; - font-weight: bold; - background: #BBBBBB url(chrome://firebug/skin/tableHeader.gif) repeat-x; - white-space: nowrap; -} - -.netHeaderRow > .netHeaderCell:first-child > .netHeaderCellBox { - padding: 2px 14px 2px 18px; -} - -.netHeaderCellBox { - padding: 2px 14px 2px 10px; - border-left: 1px solid #D9D9D9; - border-right: 1px solid #9C9C9C; -} - -.netHeaderCell:hover:active { - background: #959595 url(chrome://firebug/skin/tableHeaderActive.gif) repeat-x; -} - -.netHeaderSorted { - background: #7D93B2 url(chrome://firebug/skin/tableHeaderSorted.gif) repeat-x; -} - -.netHeaderSorted > .netHeaderCellBox { - border-right-color: #6B7C93; - background: url(chrome://firebug/skin/arrowDown.png) no-repeat right; -} - -.netHeaderSorted.sortedAscending > .netHeaderCellBox { - background-image: url(chrome://firebug/skin/arrowUp.png); -} - -.netHeaderSorted:hover:active { - background: #536B90 url(chrome://firebug/skin/tableHeaderSortedActive.gif) repeat-x; -} - -/************************************************************************************************/ -/* Breakpoints */ - -.panelNode-net .netRowHeader { - display: block; -} - -.netRowHeader { - cursor: pointer; - display: none; - height: 15px; - margin-right: 0 !important; -} - -/* Display brekpoint disc */ -.netRow .netRowHeader { - background-position: 5px 1px; -} - -.netRow[breakpoint="true"] .netRowHeader { - background-image: url(chrome://firebug/skin/breakpoint.png); -} - -.netRow[breakpoint="true"][disabledBreakpoint="true"] .netRowHeader { - background-image: url(chrome://firebug/skin/breakpointDisabled.png); -} - -.netRow.category-xhr:hover .netRowHeader { - background-color: #F6F6F6; -} - -#netBreakpointBar { - max-width: 38px; -} - -#netHrefCol > .netHeaderCellBox { - border-left: 0px; -} - -.netRow .netRowHeader { - width: 3px; -} - -.netInfoRow .netRowHeader { - display: table-cell; -} - -/************************************************************************************************/ -/* Column visibility */ - -.netTable[hiddenCols~=netHrefCol] TD[id="netHrefCol"], -.netTable[hiddenCols~=netHrefCol] TD.netHrefCol, -.netTable[hiddenCols~=netStatusCol] TD[id="netStatusCol"], -.netTable[hiddenCols~=netStatusCol] TD.netStatusCol, -.netTable[hiddenCols~=netDomainCol] TD[id="netDomainCol"], -.netTable[hiddenCols~=netDomainCol] TD.netDomainCol, -.netTable[hiddenCols~=netSizeCol] TD[id="netSizeCol"], -.netTable[hiddenCols~=netSizeCol] TD.netSizeCol, -.netTable[hiddenCols~=netTimeCol] TD[id="netTimeCol"], -.netTable[hiddenCols~=netTimeCol] TD.netTimeCol { - display: none; -} - -/************************************************************************************************/ - -.netRow { - background: LightYellow; -} - -.netRow.loaded { - background: #FFFFFF; -} - -.netRow.loaded:hover { - background: #EFEFEF; -} - -.netCol { - padding: 0; - vertical-align: top; - border-bottom: 1px solid #EFEFEF; - white-space: nowrap; - height: 17px; -} - -.netLabel { - width: 100%; -} - -.netStatusCol { - padding-left: 10px; - color: rgb(128, 128, 128); -} - -.responseError > .netStatusCol { - color: red; -} - -.netDomainCol { - padding-left: 5px; -} - -.netSizeCol { - text-align: right; - padding-right: 10px; -} - -.netHrefLabel { - -moz-box-sizing: padding-box; - overflow: hidden; - z-index: 10; - position: absolute; - padding-left: 18px; - padding-top: 1px; - max-width: 15%; - font-weight: bold; -} - -.netFullHrefLabel { - display: none; - -moz-user-select: none; - padding-right: 10px; - padding-bottom: 3px; - max-width: 100%; - background: #FFFFFF; - z-index: 200; -} - -.netHrefCol:hover > .netFullHrefLabel { - display: block; -} - -.netRow.loaded:hover .netCol > .netFullHrefLabel { - background-color: #EFEFEF; -} - -.useA11y .a11yShowFullLabel { - display: block; - background-image: none !important; - border: 1px solid #CBE087; - background-color: LightYellow; - font-family: Monaco, monospace; - color: #000000; - font-size: 10px; - z-index: 2147483647; -} - -.netSizeLabel { - padding-left: 6px; -} - -.netStatusLabel, -.netDomainLabel, -.netSizeLabel, -.netBar { - padding: 1px 0 2px 0 !important; -} - -.responseError { - color: red; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.hasHeaders .netHrefLabel:hover { - cursor: pointer; - color: blue; - text-decoration: underline; -} - -/************************************************************************************************/ - -.netLoadingIcon { - position: absolute; - border: 0; - margin-left: 14px; - width: 16px; - height: 16px; - background: transparent no-repeat 0 0; - background-image: url(chrome://firebug/skin/loading_16.gif); - display:inline-block; -} - -.loaded .netLoadingIcon { - display: none; -} - -/************************************************************************************************/ - -.netBar, .netSummaryBar { - position: relative; - border-right: 50px solid transparent; -} - -.netResolvingBar { - position: absolute; - left: 0; - top: 0; - bottom: 0; - background: #FFFFFF url(chrome://firebug/skin/netBarResolving.gif) repeat-x; - z-index:60; -} - -.netConnectingBar { - position: absolute; - left: 0; - top: 0; - bottom: 0; - background: #FFFFFF url(chrome://firebug/skin/netBarConnecting.gif) repeat-x; - z-index:50; -} - -.netBlockingBar { - position: absolute; - left: 0; - top: 0; - bottom: 0; - background: #FFFFFF url(chrome://firebug/skin/netBarWaiting.gif) repeat-x; - z-index:40; -} - -.netSendingBar { - position: absolute; - left: 0; - top: 0; - bottom: 0; - background: #FFFFFF url(chrome://firebug/skin/netBarSending.gif) repeat-x; - z-index:30; -} - -.netWaitingBar { - position: absolute; - left: 0; - top: 0; - bottom: 0; - background: #FFFFFF url(chrome://firebug/skin/netBarResponded.gif) repeat-x; - z-index:20; - min-width: 1px; -} - -.netReceivingBar { - position: absolute; - left: 0; - top: 0; - bottom: 0; - background: #38D63B url(chrome://firebug/skin/netBarLoading.gif) repeat-x; - z-index:10; -} - -.netWindowLoadBar, -.netContentLoadBar { - position: absolute; - left: 0; - top: 0; - bottom: 0; - width: 1px; - background-color: red; - z-index: 70; - opacity: 0.5; - display: none; - margin-bottom:-1px; -} - -.netContentLoadBar { - background-color: Blue; -} - -.netTimeLabel { - -moz-box-sizing: padding-box; - position: absolute; - top: 1px; - left: 100%; - padding-left: 6px; - color: #444444; - min-width: 16px; -} - -/* - * Timing info tip is reusing net timeline styles to display the same - * colors for individual request phases. Notice that the info tip must - * respect also loaded and fromCache styles that also modify the - * actual color. These are used both on the same element in case - * of the tooltip. - */ -.loaded .netReceivingBar, -.loaded.netReceivingBar { - background: #B6B6B6 url(chrome://firebug/skin/netBarLoaded.gif) repeat-x; - border-color: #B6B6B6; -} - -.fromCache .netReceivingBar, -.fromCache.netReceivingBar { - background: #D6D6D6 url(chrome://firebug/skin/netBarCached.gif) repeat-x; - border-color: #D6D6D6; -} - -.netSummaryRow .netTimeLabel, -.loaded .netTimeLabel { - background: transparent; -} - -/************************************************************************************************/ -/* Time Info tip */ - -.timeInfoTip { - width: 150px; - height: 40px -} - -.timeInfoTipBar, -.timeInfoTipEventBar { - position: relative; - display: block; - margin: 0; - opacity: 1; - height: 15px; - width: 4px; -} - -.timeInfoTipEventBar { - width: 1px !important; -} - -.timeInfoTipCell.startTime { - padding-right: 8px; -} - -.timeInfoTipCell.elapsedTime { - text-align: right; - padding-right: 8px; -} - -/************************************************************************************************/ -/* Size Info tip */ - -.sizeInfoLabelCol { - font-weight: bold; - padding-right: 10px; - font-family: Lucida Grande, Tahoma, sans-serif; - font-size: 11px; -} - -.sizeInfoSizeCol { - font-weight: bold; -} - -.sizeInfoDetailCol { - color: gray; - text-align: right; -} - -.sizeInfoDescCol { - font-style: italic; -} - -/************************************************************************************************/ -/* Summary */ - -.netSummaryRow .netReceivingBar { - background: #BBBBBB; - border: none; -} - -.netSummaryLabel { - color: #222222; -} - -.netSummaryRow { - background: #BBBBBB !important; - font-weight: bold; -} - -.netSummaryRow .netBar { - border-right-color: #BBBBBB; -} - -.netSummaryRow > .netCol { - border-top: 1px solid #999999; - border-bottom: 2px solid; - -moz-border-bottom-colors: #EFEFEF #999999; - padding-top: 1px; - padding-bottom: 2px; -} - -.netSummaryRow > .netHrefCol:hover { - background: transparent !important; -} - -.netCountLabel { - padding-left: 18px; -} - -.netTotalSizeCol { - text-align: right; - padding-right: 10px; -} - -.netTotalTimeCol { - text-align: right; -} - -.netCacheSizeLabel { - position: absolute; - z-index: 1000; - left: 0; - top: 0; -} - -/************************************************************************************************/ - -.netLimitRow { - background: rgb(255, 255, 225) !important; - font-weight:normal; - color: black; - font-weight:normal; -} - -.netLimitLabel { - padding-left: 18px; -} - -.netLimitRow > .netCol { - border-bottom: 2px solid; - -moz-border-bottom-colors: #EFEFEF #999999; - vertical-align: middle !important; - padding-top: 2px; - padding-bottom: 2px; -} - -.netLimitButton { - font-size: 11px; - padding-top: 1px; - padding-bottom: 1px; -} - -/************************************************************************************************/ - -.netInfoCol { - border-top: 1px solid #EEEEEE; - background: url(chrome://firebug/skin/group.gif) repeat-x #FFFFFF; -} - -.netInfoBody { - margin: 10px 0 4px 10px; -} - -.netInfoTabs { - position: relative; - padding-left: 17px; -} - -.netInfoTab { - position: relative; - top: -3px; - margin-top: 10px; - padding: 4px 6px; - border: 1px solid transparent; - border-bottom: none; - _border: none; - font-weight: bold; - color: #565656; - cursor: pointer; -} - -/*.netInfoTab:hover { - cursor: pointer; -}*/ - -/* replaced by .netInfoTabSelected for IE6 support -.netInfoTab[selected="true"] { - cursor: default !important; - border: 1px solid #D7D7D7 !important; - border-bottom: none !important; - -moz-border-radius: 4px 4px 0 0; - background-color: #FFFFFF; -} -/**/ -.netInfoTabSelected { - cursor: default !important; - border: 1px solid #D7D7D7 !important; - border-bottom: none !important; - -moz-border-radius: 4px 4px 0 0; - -webkit-border-radius: 4px 4px 0 0; - border-radius: 4px 4px 0 0; - background-color: #FFFFFF; -} - -.logRow-netInfo.error .netInfoTitle { - color: red; -} - -.logRow-netInfo.loading .netInfoResponseText { - font-style: italic; - color: #888888; -} - -.loading .netInfoResponseHeadersTitle { - display: none; -} - -.netInfoResponseSizeLimit { - font-family: Lucida Grande, Tahoma, sans-serif; - padding-top: 10px; - font-size: 11px; -} - -.netInfoText { - display: none; - margin: 0; - border: 1px solid #D7D7D7; - border-right: none; - padding: 8px; - background-color: #FFFFFF; - font-family: Monaco, monospace; - white-space: pre-wrap; - /*overflow-x: auto; HTML is damaged in case of big (2-3MB) responses */ -} - -/* replaced by .netInfoTextSelected for IE6 support -.netInfoText[selected="true"] { - display: block; -} -/**/ -.netInfoTextSelected { - display: block; -} - -.netInfoParamName { - padding-right: 10px; - font-family: Lucida Grande, Tahoma, sans-serif; - font-weight: bold; - vertical-align: top; - text-align: right; - white-space: nowrap; -} - -.netInfoPostText .netInfoParamName { - width: 1px; /* Google Chrome need this otherwise the first column of - the post variables table will be larger than expected */ -} - -.netInfoParamValue { - width: 100%; -} - -.netInfoHeadersText, -.netInfoPostText, -.netInfoPutText { - padding-top: 0; -} - -.netInfoHeadersGroup, -.netInfoPostParams, -.netInfoPostSource { - margin-bottom: 4px; - border-bottom: 1px solid #D7D7D7; - padding-top: 8px; - padding-bottom: 2px; - font-family: Lucida Grande, Tahoma, sans-serif; - font-weight: bold; - color: #565656; -} - -.netInfoPostParamsTable, -.netInfoPostPartsTable, -.netInfoPostJSONTable, -.netInfoPostXMLTable, -.netInfoPostSourceTable { - margin-bottom: 10px; - width: 100%; -} - -.netInfoPostContentType { - color: #bdbdbd; - padding-left: 50px; - font-weight: normal; -} - -.netInfoHtmlPreview { - border: 0; - width: 100%; - height:100%; -} - -/************************************************************************************************/ -/* Request & Response Headers */ - -.netHeadersViewSource { - color: #bdbdbd; - margin-left: 200px; - font-weight: normal; -} - -.netHeadersViewSource:hover { - color: blue; - cursor: pointer; -} - -/************************************************************************************************/ - -.netActivationRow, -.netPageSeparatorRow { - background: rgb(229, 229, 229) !important; - font-weight: normal; - color: black; -} - -.netActivationLabel { - background: url(chrome://firebug/skin/infoIcon.png) no-repeat 3px 2px; - padding-left: 22px; -} - -/************************************************************************************************/ - -.netPageSeparatorRow { - height: 5px !important; -} - -.netPageSeparatorLabel { - padding-left: 22px; - height: 5px !important; -} - -.netPageRow { - background-color: rgb(255, 255, 255); -} - -.netPageRow:hover { - background: #EFEFEF; -} - -.netPageLabel { - padding: 1px 0 2px 18px !important; - font-weight: bold; -} - -/************************************************************************************************/ - -.netActivationRow > .netCol { - border-bottom: 2px solid; - -moz-border-bottom-colors: #EFEFEF #999999; - padding-top: 2px; - padding-bottom: 3px; -} -/* -.useA11y .panelNode-net .a11yFocus:focus, -.useA11y .panelNode-net .focusRow:focus { - outline-offset: -2px; - background-color: #FFFFD6 !important; -} - -.useA11y .panelNode-net .netHeaderCell:focus, -.useA11y .panelNode-net :focus .netHeaderCell, -.useA11y .panelNode-net :focus .netReceivingBar, -.useA11y .netSummaryRow :focus .netBar, -.useA11y .netSummaryRow:focus .netBar { - background-color: #FFFFD6; - background-image: none; - border-color: #FFFFD6; -} -/**/ - -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* Windows */ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ - - -/************************************************************************************************/ -/* Twisties */ - -.twisty, -.logRow-errorMessage > .hasTwisty > .errorTitle, -.logRow-log > .objectBox-array.hasTwisty, -.logRow-spy .spyHead .spyTitle, -.logGroup > .logRow, -.memberRow.hasChildren > .memberLabelCell > .memberLabel, -.hasHeaders .netHrefLabel, -.netPageRow > .netCol > .netPageTitle { - background-image: url(tree_open.gif); - background-repeat: no-repeat; - background-position: 2px 2px; - min-height: 12px; -} - -.logRow-errorMessage > .hasTwisty.opened > .errorTitle, -.logRow-log > .objectBox-array.hasTwisty.opened, -.logRow-spy.opened .spyHead .spyTitle, -.logGroup.opened > .logRow, -.memberRow.hasChildren.opened > .memberLabelCell > .memberLabel, -.nodeBox.highlightOpen > .nodeLabel > .twisty, -.nodeBox.open > .nodeLabel > .twisty, -.netRow.opened > .netCol > .netHrefLabel, -.netPageRow.opened > .netCol > .netPageTitle { - background-image: url(tree_close.gif); -} - -.twisty { - background-position: 4px 4px; -} - - - -/************************************************************************************************/ -/* Twisties IE6 */ - -/* IE6 has problems with > operator, and multiple classes */ - -* html .logRow-spy .spyHead .spyTitle, -* html .logGroup .logGroupLabel, -* html .hasChildren .memberLabelCell .memberLabel, -* html .hasHeaders .netHrefLabel { - background-image: url(tree_open.gif); - background-repeat: no-repeat; - background-position: 2px 2px; -} - -* html .opened .spyHead .spyTitle, -* html .opened .logGroupLabel, -* html .opened .memberLabelCell .memberLabel { - background-image: url(tree_close.gif); - background-repeat: no-repeat; - background-position: 2px 2px; -} - - - -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* Console */ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ - - -/* See license.txt for terms of usage */ - -.panelNode-console { - overflow-x: hidden; -} - -.objectLink { - text-decoration: none; -} - -.objectLink:hover { - cursor: pointer; - text-decoration: underline; -} - -.logRow { - position: relative; - margin: 0; - border-bottom: 1px solid #D7D7D7; - padding: 2px 4px 1px 6px; - background-color: #FFFFFF; - overflow: hidden !important; /* IE need this to avoid disappearing bug with collapsed logs */ -} - -.useA11y .logRow:focus { - border-bottom: 1px solid #000000 !important; - outline: none !important; - background-color: #FFFFAD !important; -} - -.useA11y .logRow:focus a.objectLink-sourceLink { - background-color: #FFFFAD; -} - -.useA11y .a11yFocus:focus, .useA11y .objectBox:focus { - outline: 2px solid #FF9933; - background-color: #FFFFAD; -} - -.useA11y .objectBox-null:focus, .useA11y .objectBox-undefined:focus{ - background-color: #888888 !important; -} - -.useA11y .logGroup.opened > .logRow { - border-bottom: 1px solid #ffffff; -} - -.logGroup { - background: url(group.gif) repeat-x #FFFFFF; - padding: 0 !important; - border: none !important; -} - -.logGroupBody { - display: none; - margin-left: 16px; - border-left: 1px solid #D7D7D7; - border-top: 1px solid #D7D7D7; - background: #FFFFFF; -} - -.logGroup > .logRow { - background-color: transparent !important; - font-weight: bold; -} - -.logGroup.opened > .logRow { - border-bottom: none; -} - -.logGroup.opened > .logGroupBody { - display: block; -} - -/*****************************************************************************************/ - -.logRow-command > .objectBox-text { - font-family: Monaco, monospace; - color: #0000FF; - white-space: pre-wrap; -} - -.logRow-info, -.logRow-warn, -.logRow-error, -.logRow-assert, -.logRow-warningMessage, -.logRow-errorMessage { - padding-left: 22px; - background-repeat: no-repeat; - background-position: 4px 2px; -} - -.logRow-assert, -.logRow-warningMessage, -.logRow-errorMessage { - padding-top: 0; - padding-bottom: 0; -} - -.logRow-info, -.logRow-info .objectLink-sourceLink { - background-color: #FFFFFF; -} - -.logRow-warn, -.logRow-warningMessage, -.logRow-warn .objectLink-sourceLink, -.logRow-warningMessage .objectLink-sourceLink { - background-color: cyan; -} - -.logRow-error, -.logRow-assert, -.logRow-errorMessage, -.logRow-error .objectLink-sourceLink, -.logRow-errorMessage .objectLink-sourceLink { - background-color: LightYellow; -} - -.logRow-error, -.logRow-assert, -.logRow-errorMessage { - color: #FF0000; -} - -.logRow-info { - /*background-image: url(chrome://firebug/skin/infoIcon.png);*/ -} - -.logRow-warn, -.logRow-warningMessage { - /*background-image: url(chrome://firebug/skin/warningIcon.png);*/ -} - -.logRow-error, -.logRow-assert, -.logRow-errorMessage { - /*background-image: url(chrome://firebug/skin/errorIcon.png);*/ -} - -/*****************************************************************************************/ - -.objectBox-string, -.objectBox-text, -.objectBox-number, -.objectLink-element, -.objectLink-textNode, -.objectLink-function, -.objectBox-stackTrace, -.objectLink-profile { - font-family: Monaco, monospace; -} - -.objectBox-string, -.objectBox-text, -.objectLink-textNode { - white-space: pre-wrap; -} - -.objectBox-number, -.objectLink-styleRule, -.objectLink-element, -.objectLink-textNode { - color: #000088; -} - -.objectBox-string { - color: #FF0000; -} - -.objectLink-function, -.objectBox-stackTrace, -.objectLink-profile { - color: DarkGreen; -} - -.objectBox-null, -.objectBox-undefined { - padding: 0 2px; - border: 1px solid #666666; - background-color: #888888; - color: #FFFFFF; -} - -.objectBox-exception { - padding: 0 2px 0 18px; - /*background: url(chrome://firebug/skin/errorIcon-sm.png) no-repeat 0 0;*/ - color: red; -} - -.objectLink-sourceLink { - position: absolute; - right: 4px; - top: 2px; - padding-left: 8px; - font-family: Lucida Grande, sans-serif; - font-weight: bold; - color: #0000FF; -} - -/************************************************************************************************/ - -.errorTitle { - margin-top: 0px; - margin-bottom: 1px; - padding-top: 2px; - padding-bottom: 2px; -} - -.errorTrace { - margin-left: 17px; -} - -.errorSourceBox { - margin: 2px 0; -} - -.errorSource-none { - display: none; -} - -.errorSource-syntax > .errorBreak { - visibility: hidden; -} - -.errorSource { - cursor: pointer; - font-family: Monaco, monospace; - color: DarkGreen; -} - -.errorSource:hover { - text-decoration: underline; -} - -.errorBreak { - cursor: pointer; - display: none; - margin: 0 6px 0 0; - width: 13px; - height: 14px; - vertical-align: bottom; - /*background: url(chrome://firebug/skin/breakpoint.png) no-repeat;*/ - opacity: 0.1; -} - -.hasBreakSwitch .errorBreak { - display: inline; -} - -.breakForError .errorBreak { - opacity: 1; -} - -.assertDescription { - margin: 0; -} - -/************************************************************************************************/ - -.logRow-profile > .logRow > .objectBox-text { - font-family: Lucida Grande, Tahoma, sans-serif; - color: #000000; -} - -.logRow-profile > .logRow > .objectBox-text:last-child { - color: #555555; - font-style: italic; -} - -.logRow-profile.opened > .logRow { - padding-bottom: 4px; -} - -.profilerRunning > .logRow { - /*background: transparent url(chrome://firebug/skin/loading_16.gif) no-repeat 2px 0 !important;*/ - padding-left: 22px !important; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.profileSizer { - width:100%; - overflow-x:auto; - overflow-y: scroll; -} - -.profileTable { - border-bottom: 1px solid #D7D7D7; - padding: 0 0 4px 0; -} - -.profileTable tr[odd="1"] { - background-color: #F5F5F5; - vertical-align:middle; -} - -.profileTable a { - vertical-align:middle; -} - -.profileTable td { - padding: 1px 4px 0 4px; -} - -.headerCell { - cursor: pointer; - -moz-user-select: none; - border-bottom: 1px solid #9C9C9C; - padding: 0 !important; - font-weight: bold; - /*background: #BBBBBB url(chrome://firebug/skin/tableHeader.gif) repeat-x;*/ -} - -.headerCellBox { - padding: 2px 4px; - border-left: 1px solid #D9D9D9; - border-right: 1px solid #9C9C9C; -} - -.headerCell:hover:active { - /*background: #959595 url(chrome://firebug/skin/tableHeaderActive.gif) repeat-x;*/ -} - -.headerSorted { - /*background: #7D93B2 url(chrome://firebug/skin/tableHeaderSorted.gif) repeat-x;*/ -} - -.headerSorted > .headerCellBox { - border-right-color: #6B7C93; - /*background: url(chrome://firebug/skin/arrowDown.png) no-repeat right;*/ -} - -.headerSorted.sortedAscending > .headerCellBox { - /*background-image: url(chrome://firebug/skin/arrowUp.png);*/ -} - -.headerSorted:hover:active { - /*background: #536B90 url(chrome://firebug/skin/tableHeaderSortedActive.gif) repeat-x;*/ -} - -.linkCell { - text-align: right; -} - -.linkCell > .objectLink-sourceLink { - position: static; -} - -/*****************************************************************************************/ - -.logRow-stackTrace { - padding-top: 0; - background: #f8f8f8; -} - -.logRow-stackTrace > .objectBox-stackFrame { - position: relative; - padding-top: 2px; -} - -/************************************************************************************************/ - -.objectLink-object { - font-family: Lucida Grande, sans-serif; - font-weight: bold; - color: DarkGreen; - white-space: pre-wrap; -} - -/* xxxpedro reps object representation .................................... */ -.objectProp-object { - color: DarkGreen; -} - -.objectProps { - color: #000; - font-weight: normal; -} - -.objectPropName { - /*font-style: italic;*/ - color: #777; -} - -/* -.objectProps .objectProp-string, -.objectProps .objectProp-number, -.objectProps .objectProp-object -{ - font-style: italic; -} -/**/ - -.objectProps .objectProp-string -{ - /*font-family: Monaco, monospace;*/ - color: #f55; -} -.objectProps .objectProp-number -{ - /*font-family: Monaco, monospace;*/ - color: #55a; -} -.objectProps .objectProp-object -{ - /*font-family: Lucida Grande,sans-serif;*/ - color: #585; -} -/* xxxpedro reps object representation .................................... */ - -/************************************************************************************************/ - -.selectorTag, -.selectorId, -.selectorClass { - font-family: Monaco, monospace; - font-weight: normal; -} - -.selectorTag { - color: #0000FF; -} - -.selectorId { - color: DarkBlue; -} - -.selectorClass { - color: red; -} - -.selectorHidden > .selectorTag { - color: #5F82D9; -} - -.selectorHidden > .selectorId { - color: #888888; -} - -.selectorHidden > .selectorClass { - color: #D86060; -} - -.selectorValue { - font-family: Lucida Grande, sans-serif; - font-style: italic; - color: #555555; -} - -/*****************************************************************************************/ - -.panelNode.searching .logRow { - display: none; -} - -.logRow.matched { - display: block !important; -} - -.logRow.matching { - position: absolute; - left: -1000px; - top: -1000px; - max-width: 0; - max-height: 0; - overflow: hidden; -} - -/*****************************************************************************************/ - -.objectLeftBrace, -.objectRightBrace, -.objectEqual, -.objectComma, -.arrayLeftBracket, -.arrayRightBracket, -.arrayComma { - font-family: Monaco, monospace; -} - -.objectLeftBrace, -.objectRightBrace, -.arrayLeftBracket, -.arrayRightBracket { - font-weight: bold; -} - -.objectLeftBrace, -.arrayLeftBracket { - margin-right: 4px; -} - -.objectRightBrace, -.arrayRightBracket { - margin-left: 4px; -} - -/*****************************************************************************************/ - -.logRow-dir { - padding: 0; -} - -/************************************************************************************************/ - -/* -.logRow-errorMessage > .hasTwisty > .errorTitle, -.logRow-spy .spyHead .spyTitle, -.logGroup > .logRow -*/ -.logRow-errorMessage .hasTwisty .errorTitle, -.logRow-spy .spyHead .spyTitle, -.logGroup .logRow { - cursor: pointer; - padding-left: 18px; - background-repeat: no-repeat; - background-position: 3px 3px; -} - -.logRow-errorMessage > .hasTwisty > .errorTitle { - background-position: 2px 3px; -} - -.logRow-errorMessage > .hasTwisty > .errorTitle:hover, -.logRow-spy .spyHead .spyTitle:hover, -.logGroup > .logRow:hover { - text-decoration: underline; -} - -/*****************************************************************************************/ - -.logRow-spy { - padding: 0 !important; -} - -.logRow-spy, -.logRow-spy .objectLink-sourceLink { - background: url(group.gif) repeat-x #FFFFFF; - padding-right: 4px; - right: 0; -} - -.logRow-spy.opened { - padding-bottom: 4px; - border-bottom: none; -} - -.spyTitle { - color: #000000; - font-weight: bold; - -moz-box-sizing: padding-box; - overflow: hidden; - z-index: 100; - padding-left: 18px; -} - -.spyCol { - padding: 0; - white-space: nowrap; - height: 16px; -} - -.spyTitleCol:hover > .objectLink-sourceLink, -.spyTitleCol:hover > .spyTime, -.spyTitleCol:hover > .spyStatus, -.spyTitleCol:hover > .spyTitle { - display: none; -} - -.spyFullTitle { - display: none; - -moz-user-select: none; - max-width: 100%; - background-color: Transparent; -} - -.spyTitleCol:hover > .spyFullTitle { - display: block; -} - -.spyStatus { - padding-left: 10px; - color: rgb(128, 128, 128); -} - -.spyTime { - margin-left:4px; - margin-right:4px; - color: rgb(128, 128, 128); -} - -.spyIcon { - margin-right: 4px; - margin-left: 4px; - width: 16px; - height: 16px; - vertical-align: middle; - background: transparent no-repeat 0 0; - display: none; -} - -.loading .spyHead .spyRow .spyIcon { - background-image: url(loading_16.gif); - display: block; -} - -.logRow-spy.loaded:not(.error) .spyHead .spyRow .spyIcon { - width: 0; - margin: 0; -} - -.logRow-spy.error .spyHead .spyRow .spyIcon { - background-image: url(errorIcon-sm.png); - display: block; - background-position: 2px 2px; -} - -.logRow-spy .spyHead .netInfoBody { - display: none; -} - -.logRow-spy.opened .spyHead .netInfoBody { - margin-top: 10px; - display: block; -} - -.logRow-spy.error .spyTitle, -.logRow-spy.error .spyStatus, -.logRow-spy.error .spyTime { - color: red; -} - -.logRow-spy.loading .spyResponseText { - font-style: italic; - color: #888888; -} - -/************************************************************************************************/ - -.caption { - font-family: Lucida Grande, Tahoma, sans-serif; - font-weight: bold; - color: #444444; -} - -.warning { - padding: 10px; - font-family: Lucida Grande, Tahoma, sans-serif; - font-weight: bold; - color: #888888; -} - - - - -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* DOM */ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ - - -/* See license.txt for terms of usage */ - -.panelNode-dom { - overflow-x: hidden !important; -} - -.domTable { - font-size: 1em; - width: 100%; - table-layout: fixed; - background: #fff; -} - -.domTableIE { - width: auto; -} - -.memberLabelCell { - padding: 2px 0 2px 0; - vertical-align: top; -} - -.memberValueCell { - padding: 1px 0 1px 5px; - display: block; - overflow: hidden; -} - -.memberLabel { - display: block; - cursor: default; - -moz-user-select: none; - overflow: hidden; - /*position: absolute;*/ - padding-left: 18px; - /*max-width: 30%;*/ - /*white-space: nowrap;*/ - background-color: #FFFFFF; - text-decoration: none; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.memberRow.hasChildren .memberLabelCell .memberLabel:hover { - cursor: pointer; - color: blue; - text-decoration: underline; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.userLabel { - color: #000000; - font-weight: bold; -} - -.userClassLabel { - color: #E90000; - font-weight: bold; -} - -.userFunctionLabel { - color: #025E2A; - font-weight: bold; -} - -.domLabel { - color: #000000; -} - -.domFunctionLabel { - color: #025E2A; -} - -.ordinalLabel { - color: SlateBlue; - font-weight: bold; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ -.scopesRow { - padding: 2px 18px; - background-color: LightYellow; - border-bottom: 5px solid #BEBEBE; - color: #666666; -} -.scopesLabel { - background-color: LightYellow; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.watchEditCell { - padding: 2px 18px; - background-color: LightYellow; - border-bottom: 1px solid #BEBEBE; - color: #666666; -} - -.editor-watchNewRow, -.editor-memberRow { - font-family: Monaco, monospace !important; -} - -.editor-memberRow { - padding: 1px 0 !important; -} - -.editor-watchRow { - padding-bottom: 0 !important; -} - -.watchRow > .memberLabelCell { - font-family: Monaco, monospace; - padding-top: 1px; - padding-bottom: 1px; -} - -.watchRow > .memberLabelCell > .memberLabel { - background-color: transparent; -} - -.watchRow > .memberValueCell { - padding-top: 2px; - padding-bottom: 2px; -} - -.watchRow > .memberLabelCell, -.watchRow > .memberValueCell { - background-color: #F5F5F5; - border-bottom: 1px solid #BEBEBE; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.watchToolbox { - z-index: 2147483647; - position: absolute; - right: 0; - padding: 1px 2px; -} - - -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/*************************************************************************************************/ -/* FROM ORIGINAL FIREBUG */ - - - - -/************************************************************************************************ - CSS Not organized -*************************************************************************************************/ -#fbConsole { - overflow-x: hidden !important; -} - -#fbCSS { - font: 1em Monaco, monospace; - padding: 0 7px; -} - -#fbstylesheetButtons select, #fbScriptButtons select { - font: 11px Lucida Grande, Tahoma, sans-serif; - margin-top: 1px; - padding-left: 3px; - background: #fafafa; - border: 1px inset #fff; - width: 220px; - outline: none; -} - -.Selector { margin-top:10px } -.CSSItem {margin-left: 4% } -.CSSText { padding-left:20px; } -.CSSProperty { color:#005500; } -.CSSValue { padding-left:5px; color:#000088; } - - -/************************************************************************************************ - Not organized -*************************************************************************************************/ - -#fbHTMLStatusBar { - display: inline; -} - -.fbToolbarButtons { - display: none; -} - -.fbStatusSeparator{ - display: block; - float: left; - padding-top: 4px; -} - -#fbStatusBarBox { - display: none; -} - -#fbToolbarContent { - display: block; - position: absolute; - _position: absolute; - top: 0; - padding-top: 4px; - height: 23px; - clip: rect(0, 2048px, 27px, 0); -} - -.fbTabMenuTarget { - display: none !important; - float: left; - width: 10px; - height: 10px; - margin-top: 6px; - background: url(tabMenuTarget.png); -} - -.fbTabMenuTarget:hover { - background: url(tabMenuTargetHover.png); -} - -.fbShadow { - float: left; - background: url(shadowAlpha.png) no-repeat bottom right !important; - background: url(shadow2.gif) no-repeat bottom right; - margin: 10px 0 0 10px !important; - margin: 10px 0 0 5px; -} - -.fbShadowContent { - display: block; - position: relative; - background-color: #fff; - border: 1px solid #a9a9a9; - top: -6px; - left: -6px; -} - -.fbMenu { - display: none; - position: absolute; - font-size: 11px; - line-height: 13px; - z-index: 2147483647; -} - -.fbMenuContent { - padding: 2px; -} - -.fbMenuSeparator { - display: block; - position: relative; - padding: 1px 18px 0; - text-decoration: none; - color: #000; - cursor: default; - background: #ACA899; - margin: 4px 0; -} - -.fbMenuOption -{ - display: block; - position: relative; - padding: 2px 18px; - text-decoration: none; - color: #000; - cursor: default; -} - -.fbMenuOption:hover -{ - color: #fff; - background: #316AC5; -} - -.fbMenuGroup { - background: transparent url(tabMenuPin.png) no-repeat right 0; -} - -.fbMenuGroup:hover { - background: #316AC5 url(tabMenuPin.png) no-repeat right -17px; -} - -.fbMenuGroupSelected { - color: #fff; - background: #316AC5 url(tabMenuPin.png) no-repeat right -17px; -} - -.fbMenuChecked { - background: transparent url(tabMenuCheckbox.png) no-repeat 4px 0; -} - -.fbMenuChecked:hover { - background: #316AC5 url(tabMenuCheckbox.png) no-repeat 4px -17px; -} - -.fbMenuRadioSelected { - background: transparent url(tabMenuRadio.png) no-repeat 4px 0; -} - -.fbMenuRadioSelected:hover { - background: #316AC5 url(tabMenuRadio.png) no-repeat 4px -17px; -} - -.fbMenuShortcut { - padding-right: 85px; -} - -.fbMenuShortcutKey { - position: absolute; - right: 0; - top: 2px; - width: 77px; -} - -#fbFirebugMenu { - top: 22px; - left: 0; -} - -.fbMenuDisabled { - color: #ACA899 !important; -} - -#fbFirebugSettingsMenu { - left: 245px; - top: 99px; -} - -#fbConsoleMenu { - top: 42px; - left: 48px; -} - -.fbIconButton { - display: block; -} - -.fbIconButton { - display: block; -} - -.fbIconButton { - display: block; - float: left; - height: 20px; - width: 20px; - color: #000; - margin-right: 2px; - text-decoration: none; - cursor: default; -} - -.fbIconButton:hover { - position: relative; - top: -1px; - left: -1px; - margin-right: 0; - _margin-right: 1px; - color: #333; - border: 1px solid #fff; - border-bottom: 1px solid #bbb; - border-right: 1px solid #bbb; -} - -.fbIconPressed { - position: relative; - margin-right: 0; - _margin-right: 1px; - top: 0 !important; - left: 0 !important; - height: 19px; - color: #333 !important; - border: 1px solid #bbb !important; - border-bottom: 1px solid #cfcfcf !important; - border-right: 1px solid #ddd !important; -} - - - -/************************************************************************************************ - Error Popup -*************************************************************************************************/ -#fbErrorPopup { - position: absolute; - right: 0; - bottom: 0; - height: 19px; - width: 75px; - background: url(sprite.png) #f1f2ee 0 0; - z-index: 999; -} - -#fbErrorPopupContent { - position: absolute; - right: 0; - top: 1px; - height: 18px; - width: 75px; - _width: 74px; - border-left: 1px solid #aca899; -} - -#fbErrorIndicator { - position: absolute; - top: 2px; - right: 5px; -} - - - - - - - - - - -.fbBtnInspectActive { - background: #aaa; - color: #fff !important; -} - -/************************************************************************************************ - General -*************************************************************************************************/ -.fbBody { - margin: 0; - padding: 0; - overflow: hidden; - - font-family: Lucida Grande, Tahoma, sans-serif; - font-size: 11px; - background: #fff; -} - -.clear { - clear: both; -} - -/************************************************************************************************ - Mini Chrome -*************************************************************************************************/ -#fbMiniChrome { - display: none; - right: 0; - height: 27px; - background: url(sprite.png) #f1f2ee 0 0; - margin-left: 1px; -} - -#fbMiniContent { - display: block; - position: relative; - left: -1px; - right: 0; - top: 1px; - height: 25px; - border-left: 1px solid #aca899; -} - -#fbToolbarSearch { - float: right; - border: 1px solid #ccc; - margin: 0 5px 0 0; - background: #fff url(search.png) no-repeat 4px 2px !important; - background: #fff url(search.gif) no-repeat 4px 2px; - padding-left: 20px; - font-size: 11px; -} - -#fbToolbarErrors { - float: right; - margin: 1px 4px 0 0; - font-size: 11px; -} - -#fbLeftToolbarErrors { - float: left; - margin: 7px 0px 0 5px; - font-size: 11px; -} - -.fbErrors { - padding-left: 20px; - height: 14px; - background: url(errorIcon.png) no-repeat !important; - background: url(errorIcon.gif) no-repeat; - color: #f00; - font-weight: bold; -} - -#fbMiniErrors { - display: inline; - display: none; - float: right; - margin: 5px 2px 0 5px; -} - -#fbMiniIcon { - float: right; - margin: 3px 4px 0; - height: 20px; - width: 20px; - float: right; - background: url(sprite.png) 0 -135px; - cursor: pointer; -} - - -/************************************************************************************************ - Master Layout -*************************************************************************************************/ -#fbChrome { - font-family: Lucida Grande, Tahoma, sans-serif; - font-size: 11px; - position: absolute; - _position: static; - top: 0; - left: 0; - height: 100%; - width: 100%; - border-collapse: collapse; - border-spacing: 0; - background: #fff; - overflow: hidden; -} - -#fbChrome > tbody > tr > td { - padding: 0; -} - -#fbTop { - height: 49px; -} - -#fbToolbar { - background: url(sprite.png) #f1f2ee 0 0; - height: 27px; - font-size: 11px; - line-height: 13px; -} - -#fbPanelBarBox { - background: url(sprite.png) #dbd9c9 0 -27px; - height: 22px; -} - -#fbContent { - height: 100%; - vertical-align: top; -} - -#fbBottom { - height: 18px; - background: #fff; -} - -/************************************************************************************************ - Sub-Layout -*************************************************************************************************/ - -/* fbToolbar -*************************************************************************************************/ -#fbToolbarIcon { - float: left; - padding: 0 5px 0; -} - -#fbToolbarIcon a { - background: url(sprite.png) 0 -135px; -} - -#fbToolbarButtons { - padding: 0 2px 0 5px; -} - -#fbToolbarButtons { - padding: 0 2px 0 5px; -} -/* -#fbStatusBarBox a { - text-decoration: none; - display: block; - float: left; - color: #000; - padding: 4px 5px; - margin: 0 0 0 1px; - cursor: default; -} - -#fbStatusBarBox a:hover { - color: #333; - padding: 3px 4px; - border: 1px solid #fff; - border-bottom: 1px solid #bbb; - border-right: 1px solid #bbb; -} -/**/ - -.fbButton { - text-decoration: none; - display: block; - float: left; - color: #000; - padding: 4px 6px 4px 7px; - cursor: default; -} - -.fbButton:hover { - color: #333; - background: #f5f5ef url(buttonBg.png); - padding: 3px 5px 3px 6px; - border: 1px solid #fff; - border-bottom: 1px solid #bbb; - border-right: 1px solid #bbb; -} - -.fbBtnPressed { - background: #e3e3db url(buttonBgHover.png) !important; - padding: 3px 4px 2px 6px !important; - margin: 1px 0 0 1px !important; - border: 1px solid #ACA899 !important; - border-color: #ACA899 #ECEBE3 #ECEBE3 #ACA899 !important; -} - -#fbStatusBarBox { - top: 4px; - cursor: default; -} - -.fbToolbarSeparator { - overflow: hidden; - border: 1px solid; - border-color: transparent #fff transparent #777; - _border-color: #eee #fff #eee #777; - height: 7px; - margin: 6px 3px; - float: left; -} - -.fbBtnSelected { - font-weight: bold; -} - -.fbStatusBar { - color: #aca899; -} - -.fbStatusBar a { - text-decoration: none; - color: black; -} - -.fbStatusBar a:hover { - color: blue; - cursor: pointer; -} - - -#fbWindowButtons { - position: absolute; - white-space: nowrap; - right: 0; - top: 0; - height: 17px; - width: 48px; - padding: 5px; - z-index: 6; - background: url(sprite.png) #f1f2ee 0 0; -} - -/* fbPanelBarBox -*************************************************************************************************/ - -#fbPanelBar1 { - width: 1024px; /* fixed width to avoid tabs breaking line */ - z-index: 8; - left: 0; - white-space: nowrap; - background: url(sprite.png) #dbd9c9 0 -27px; - position: absolute; - left: 4px; -} - -#fbPanelBar2Box { - background: url(sprite.png) #dbd9c9 0 -27px; - position: absolute; - height: 22px; - width: 300px; /* fixed width to avoid tabs breaking line */ - z-index: 9; - right: 0; -} - -#fbPanelBar2 { - position: absolute; - width: 290px; /* fixed width to avoid tabs breaking line */ - height: 22px; - padding-left: 4px; -} - -/* body -*************************************************************************************************/ -.fbPanel { - display: none; -} - -#fbPanelBox1, #fbPanelBox2 { - max-height: inherit; - height: 100%; - font-size: 1em; -} - -#fbPanelBox2 { - background: #fff; -} - -#fbPanelBox2 { - width: 300px; - background: #fff; -} - -#fbPanel2 { - margin-left: 6px; - background: #fff; -} - -#fbLargeCommandLine { - display: none; - position: absolute; - z-index: 9; - top: 27px; - right: 0; - width: 294px; - height: 201px; - border-width: 0; - margin: 0; - padding: 2px 0 0 2px; - resize: none; - outline: none; - font-size: 11px; - overflow: auto; - border-top: 1px solid #B9B7AF; - _right: -1px; - _border-left: 1px solid #fff; -} - -#fbLargeCommandButtons { - display: none; - background: #ECE9D8; - bottom: 0; - right: 0; - width: 294px; - height: 21px; - padding-top: 1px; - position: fixed; - border-top: 1px solid #ACA899; - z-index: 9; -} - -#fbSmallCommandLineIcon { - background: url(down.png) no-repeat; - position: absolute; - right: 2px; - bottom: 3px; - - z-index: 99; -} - -#fbSmallCommandLineIcon:hover { - background: url(downHover.png) no-repeat; -} - -.hide { - overflow: hidden !important; - position: fixed !important; - display: none !important; - visibility: hidden !important; -} - -/* fbBottom -*************************************************************************************************/ - -#fbCommand { - height: 18px; -} - -#fbCommandBox { - position: fixed; - _position: absolute; - width: 100%; - height: 18px; - bottom: 0; - overflow: hidden; - z-index: 9; - background: #fff; - border: 0; - border-top: 1px solid #ccc; -} - -#fbCommandIcon { - position: absolute; - color: #00f; - top: 2px; - left: 6px; - display: inline; - font: 11px Monaco, monospace; - z-index: 10; -} - -#fbCommandLine { - position: absolute; - width: 100%; - top: 0; - left: 0; - border: 0; - margin: 0; - padding: 2px 0 2px 32px; - font: 11px Monaco, monospace; - z-index: 9; - outline: none; -} - -#fbLargeCommandLineIcon { - background: url(up.png) no-repeat; - position: absolute; - right: 1px; - bottom: 1px; - z-index: 10; -} - -#fbLargeCommandLineIcon:hover { - background: url(upHover.png) no-repeat; -} - -div.fbFitHeight { - overflow: auto; - position: relative; -} - - -/************************************************************************************************ - Layout Controls -*************************************************************************************************/ - -/* fbToolbar buttons -*************************************************************************************************/ -.fbSmallButton { - overflow: hidden; - width: 16px; - height: 16px; - display: block; - text-decoration: none; - cursor: default; -} - -#fbWindowButtons .fbSmallButton { - float: right; -} - -#fbWindow_btClose { - background: url(min.png); -} - -#fbWindow_btClose:hover { - background: url(minHover.png); -} - -#fbWindow_btDetach { - background: url(detach.png); -} - -#fbWindow_btDetach:hover { - background: url(detachHover.png); -} - -#fbWindow_btDeactivate { - background: url(off.png); -} - -#fbWindow_btDeactivate:hover { - background: url(offHover.png); -} - - -/* fbPanelBarBox tabs -*************************************************************************************************/ -.fbTab { - text-decoration: none; - display: none; - float: left; - width: auto; - float: left; - cursor: default; - font-family: Lucida Grande, Tahoma, sans-serif; - font-size: 11px; - line-height: 13px; - font-weight: bold; - height: 22px; - color: #565656; -} - -.fbPanelBar span { - /*display: block; TODO: safe to remove this? */ - float: left; -} - -.fbPanelBar .fbTabL,.fbPanelBar .fbTabR { - height: 22px; - width: 8px; -} - -.fbPanelBar .fbTabText { - padding: 4px 1px 0; -} - -a.fbTab:hover { - background: url(sprite.png) 0 -73px; -} - -a.fbTab:hover .fbTabL { - background: url(sprite.png) -16px -96px; -} - -a.fbTab:hover .fbTabR { - background: url(sprite.png) -24px -96px; -} - -.fbSelectedTab { - background: url(sprite.png) #f1f2ee 0 -50px !important; - color: #000; -} - -.fbSelectedTab .fbTabL { - background: url(sprite.png) 0 -96px !important; -} - -.fbSelectedTab .fbTabR { - background: url(sprite.png) -8px -96px !important; -} - -/* splitters -*************************************************************************************************/ -#fbHSplitter { - position: fixed; - _position: absolute; - left: 0; - top: 0; - width: 100%; - height: 5px; - overflow: hidden; - cursor: n-resize !important; - background: url(pixel_transparent.gif); - z-index: 9; -} - -#fbHSplitter.fbOnMovingHSplitter { - height: 100%; - z-index: 100; -} - -.fbVSplitter { - background: #ece9d8; - color: #000; - border: 1px solid #716f64; - border-width: 0 1px; - border-left-color: #aca899; - width: 4px; - cursor: e-resize; - overflow: hidden; - right: 294px; - text-decoration: none; - z-index: 10; - position: absolute; - height: 100%; - top: 27px; -} - -/************************************************************************************************/ -div.lineNo { - font: 1em/1.4545em Monaco, monospace; - position: relative; - float: left; - top: 0; - left: 0; - margin: 0 5px 0 0; - padding: 0 5px 0 10px; - background: #eee; - color: #888; - border-right: 1px solid #ccc; - text-align: right; -} - -.sourceBox { - position: absolute; -} - -.sourceCode { - font: 1em Monaco, monospace; - overflow: hidden; - white-space: pre; - display: inline; -} - -/************************************************************************************************/ -.nodeControl { - margin-top: 3px; - margin-left: -14px; - float: left; - width: 9px; - height: 9px; - overflow: hidden; - cursor: default; - background: url(tree_open.gif); - _float: none; - _display: inline; - _position: absolute; -} - -div.nodeMaximized { - background: url(tree_close.gif); -} - -div.objectBox-element { - padding: 1px 3px; -} -.objectBox-selector{ - cursor: default; -} - -.selectedElement{ - background: highlight; - /* background: url(roundCorner.svg); Opera */ - color: #fff !important; -} -.selectedElement span{ - color: #fff !important; -} - -/* IE6 need this hack */ -* html .selectedElement { - position: relative; -} - -/* Webkit CSS Hack - bug in "highlight" named color */ -@media screen and (-webkit-min-device-pixel-ratio:0) { - .selectedElement{ - background: #316AC5; - color: #fff !important; - } -} - -/************************************************************************************************/ -/************************************************************************************************/ -.logRow * { - font-size: 1em; -} - -/* TODO: remove this? */ -/* TODO: xxxpedro - IE need this in windowless mode (cnn.com) check if the issue is related to -position. if so, override it at chrome.js initialization when creating the div */ -.logRow { - position: relative; - border-bottom: 1px solid #D7D7D7; - padding: 2px 4px 1px 6px; - zbackground-color: #FFFFFF; -} -/**/ - -.logRow-command { - font-family: Monaco, monospace; - color: blue; -} - -.objectBox-string, -.objectBox-text, -.objectBox-number, -.objectBox-function, -.objectLink-element, -.objectLink-textNode, -.objectLink-function, -.objectBox-stackTrace, -.objectLink-profile { - font-family: Monaco, monospace; -} - -.objectBox-null { - padding: 0 2px; - border: 1px solid #666666; - background-color: #888888; - color: #FFFFFF; -} - -.objectBox-string { - color: red; - - /* TODO: xxxpedro make long strings break line */ - /*white-space: pre; */ -} - -.objectBox-number { - color: #000088; -} - -.objectBox-function { - color: DarkGreen; -} - -.objectBox-object { - color: DarkGreen; - font-weight: bold; - font-family: Lucida Grande, sans-serif; -} - -.objectBox-array { - color: #000; -} - -/************************************************************************************************/ -.logRow-info,.logRow-error,.logRow-warn { - background: #fff no-repeat 2px 2px; - padding-left: 20px; - padding-bottom: 3px; -} - -.logRow-info { - background-image: url(infoIcon.png) !important; - background-image: url(infoIcon.gif); -} - -.logRow-warn { - background-color: cyan; - background-image: url(warningIcon.png) !important; - background-image: url(warningIcon.gif); -} - -.logRow-error { - background-color: LightYellow; - background-image: url(errorIcon.png) !important; - background-image: url(errorIcon.gif); - color: #f00; -} - -.errorMessage { - vertical-align: top; - color: #f00; -} - -.objectBox-sourceLink { - position: absolute; - right: 4px; - top: 2px; - padding-left: 8px; - font-family: Lucida Grande, sans-serif; - font-weight: bold; - color: #0000FF; -} - -/************************************************************************************************/ -/* -//TODO: remove this when console2 is finished -*/ -/* -.logRow-group { - background: #EEEEEE; - border-bottom: none; -} - -.logGroup { - background: #EEEEEE; -} - -.logGroupBox { - margin-left: 24px; - border-top: 1px solid #D7D7D7; - border-left: 1px solid #D7D7D7; -}/**/ - -/************************************************************************************************/ -.selectorTag,.selectorId,.selectorClass { - font-family: Monaco, monospace; - font-weight: normal; -} - -.selectorTag { - color: #0000FF; -} - -.selectorId { - color: DarkBlue; -} - -.selectorClass { - color: red; -} - -/************************************************************************************************/ -.objectBox-element { - font-family: Monaco, monospace; - color: #000088; -} - -.nodeChildren { - padding-left: 26px; -} - -.nodeTag { - color: blue; - cursor: pointer; -} - -.nodeValue { - color: #FF0000; - font-weight: normal; -} - -.nodeText,.nodeComment { - margin: 0 2px; - vertical-align: top; -} - -.nodeText { - color: #333333; - font-family: Monaco, monospace; -} - -.nodeComment { - color: DarkGreen; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.nodeHidden, .nodeHidden * { - color: #888888; -} - -.nodeHidden .nodeTag { - color: #5F82D9; -} - -.nodeHidden .nodeValue { - color: #D86060; -} - -.selectedElement .nodeHidden, .selectedElement .nodeHidden * { - color: SkyBlue !important; -} - - -/************************************************************************************************/ -.log-object { - /* - _position: relative; - _height: 100%; - /**/ -} - -.property { - position: relative; - clear: both; - height: 15px; -} - -.propertyNameCell { - vertical-align: top; - float: left; - width: 28%; - position: absolute; - left: 0; - z-index: 0; -} - -.propertyValueCell { - float: right; - width: 68%; - background: #fff; - position: absolute; - padding-left: 5px; - display: table-cell; - right: 0; - z-index: 1; - /* - _position: relative; - /**/ -} - -.propertyName { - font-weight: bold; -} - -.FirebugPopup { - height: 100% !important; -} - -.FirebugPopup #fbWindowButtons { - display: none !important; -} - -.FirebugPopup #fbHSplitter { - display: none !important; -} diff --git a/test/firebug-lite/skin/xp/firebug.html b/test/firebug-lite/skin/xp/firebug.html deleted file mode 100644 index 2296091..0000000 --- a/test/firebug-lite/skin/xp/firebug.html +++ /dev/null @@ -1,215 +0,0 @@ - - - - -Firebug Lite - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      - - - - -
      -   -   -   -
      - - -
      -
      - - - -   - - - - - - - - - Inspect - - - - - Clear - - - - - - - - - - - - - -
      - -
      - - - - - -
       
      - -
      -
      -
      -
      -
      -
      - - -
       
      - - -
      - - -
      -
      -
      - -
      - - - - - -
      - Run - Clear - - -
      - -
      -
      -
      >>>
      - - -
      -
      - - - - - - - - - \ No newline at end of file diff --git a/test/firebug-lite/skin/xp/firebug.png b/test/firebug-lite/skin/xp/firebug.png deleted file mode 100644 index e10affebb48dc2aa7a70c575b87b901d91de1aca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1167 zcmV;A1aSL_P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXP% z1vMe5=_CX>@2HM@dakSAh-}000B(Nkl7?fcTwQeNIxiXejg>Qttn`vK11&PA8F>~71F-R#aSS$46%VwcNq zmUy$PU6|;Ganl8yG1G0R6SPVzR7DKMg8faQ?fc{G0<0lue3B<8IXQXG=Q-c+c|>7x zSt29=tS;3MP{?Pgb1T>`FX?oKQn^gAkio+eiL`~|I1CI7pt)-RPc-)&28u#yHGWiYuEn5w(aV9rAh}N#A>e4Az|mPJuCLE*$qkR9}Pxv=>pbEkG*ch>B zlsu}sa$qg5*^57#CScCvx%wkob_Qd|9zGrHVLCp^(}fg?M1sA0_aP-HQd&69 zN=nD%_UJ|CZk(pHyhwC1#>mJpotc~XM^8~k#kL$|rNZYYzv9cITbX+t=fJ@O?AqPO zrUnrC#k`cVDk`~LinG7`icxP6@@oWRLxc^5oDx8(t!G2?Ce%&cP~QTYi|FtfT2Fk9 zX<0FScQiax_kFKp@gsT=B+7NX*rdh^nAH*~* zV$s;EMNzMwVt(N%kwPumOpeZgN^6sknfL>0y$v+j0#7o6`QAwcps6Z>fPsp%dET;F zsc`n(1-i{C!ufG7XPU{RQ@q_I+1(N3?xSa9i#A(Z1WeEJq~{}wGf#LpGfQu{olvN8 zt;&B4U#6inN6%7}k)_Qa(O@v+I-R?%>H@)1Loae((hQ9VDu1_Ypm3GtFV$f;8<7|ao_s4v8 z_zPtOvrH`(51aCu^Ze~L}K(;eby zeG*S&7xL&gBrjazct^`i#Z;uU5sm}4jVR^NT_xIEbVjFA+{*|)*`{&O$TBY5aUK5_ zp}Db;EJV&D%LSxkAsq`=bB!o2Z$19DFj{GuknZP;5BdlVoZt#?GNbRrkt;qu_Wl9p zOr7jvc^#ohJxjcphY0Lq8oQWBY94H@j^Bo_Q0Mh<@uJ~-!0+cum_DYZ5wA-1(jY43wJMoAe$u-1C-Fd;ES zgb)|JqErZh%MxMyL5NgUj1m4MrvJ-D=k5uE+2y(~&iUh3oM8GsrsLOSlx0u4o$rRQ F`U22=Vrl>Y diff --git a/test/firebug-lite/skin/xp/html.css b/test/firebug-lite/skin/xp/html.css deleted file mode 100644 index 9d0afb5..0000000 --- a/test/firebug-lite/skin/xp/html.css +++ /dev/null @@ -1,272 +0,0 @@ -/* See license.txt for terms of usage */ - -.panelNode-html { - -moz-box-sizing: padding-box; - padding: 4px 0 0 2px; -} - -.nodeBox { - position: relative; - font-family: Monaco, monospace; - padding-left: 13px; - -moz-user-select: -moz-none; -} -.nodeBox.search-selection { - -moz-user-select: text; -} -.twisty { - position: absolute; - left: 0px; - top: 0px; - width: 14px; - height: 14px; -} - -.nodeChildBox { - margin-left: 12px; - display: none; -} - -.nodeLabel, -.nodeCloseLabel { - margin: -2px 2px 0 2px; - border: 2px solid transparent; - -moz-border-radius: 3px; - padding: 0 2px; - color: #000088; -} - -.nodeCloseLabel { - display: none; -} - -.nodeTag { - cursor: pointer; - color: blue; -} - -.nodeValue { - color: #FF0000; - font-weight: normal; -} - -.nodeText, -.nodeComment { - margin: 0 2px; - vertical-align: top; -} - -.nodeText { - color: #333333; -} - -.nodeWhiteSpace { - border: 1px solid LightGray; - white-space: pre; /* otherwise the border will be collapsed around zero pixels */ - margin-left: 1px; - color: gray; -} - - -.nodeWhiteSpace_Space { - border: 1px solid #ddd; -} - -.nodeTextEntity { - border: 1px solid gray; - white-space: pre; /* otherwise the border will be collapsed around zero pixels */ - margin-left: 1px; -} - -.nodeComment { - color: DarkGreen; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.nodeBox.highlightOpen > .nodeLabel { - background-color: #EEEEEE; -} - -.nodeBox.highlightOpen > .nodeCloseLabel, -.nodeBox.highlightOpen > .nodeChildBox, -.nodeBox.open > .nodeCloseLabel, -.nodeBox.open > .nodeChildBox { - display: block; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.nodeBox.selected > .nodeLabel > .nodeLabelBox, -.nodeBox.selected > .nodeLabel { - border-color: Highlight; - background-color: Highlight; - color: HighlightText !important; -} - -.nodeBox.selected > .nodeLabel > .nodeLabelBox, -.nodeBox.selected > .nodeLabel > .nodeLabelBox > .nodeTag, -.nodeBox.selected > .nodeLabel > .nodeLabelBox > .nodeAttr > .nodeValue, -.nodeBox.selected > .nodeLabel > .nodeLabelBox > .nodeText { - color: inherit !important; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.nodeBox.highlighted > .nodeLabel { - border-color: Highlight !important; - background-color: cyan !important; - color: #000000 !important; -} - -.nodeBox.highlighted > .nodeLabel > .nodeLabelBox, -.nodeBox.highlighted > .nodeLabel > .nodeLabelBox > .nodeTag, -.nodeBox.highlighted > .nodeLabel > .nodeLabelBox > .nodeAttr > .nodeValue, -.nodeBox.highlighted > .nodeLabel > .nodeLabelBox > .nodeText { - color: #000000 !important; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.nodeBox.nodeHidden .nodeLabel > .nodeLabelBox, -.nodeBox.nodeHidden .nodeCloseLabel, -.nodeBox.nodeHidden .nodeLabel > .nodeLabelBox > .nodeText, -.nodeBox.nodeHidden .nodeText { - color: #888888; -} - -.nodeBox.nodeHidden .nodeLabel > .nodeLabelBox > .nodeTag, -.nodeBox.nodeHidden .nodeCloseLabel > .nodeCloseLabelBox > .nodeTag { - color: #5F82D9; -} - -.nodeBox.nodeHidden .nodeLabel > .nodeLabelBox > .nodeAttr > .nodeValue { - color: #D86060; -} - -.nodeBox.nodeHidden.selected > .nodeLabel > .nodeLabelBox, -.nodeBox.nodeHidden.selected > .nodeLabel > .nodeLabelBox > .nodeTag, -.nodeBox.nodeHidden.selected > .nodeLabel > .nodeLabelBox > .nodeAttr > .nodeValue, -.nodeBox.nodeHidden.selected > .nodeLabel > .nodeLabelBox > .nodeText { - color: SkyBlue !important; -} - -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -.nodeBox.mutated > .nodeLabel, -.nodeAttr.mutated, -.nodeValue.mutated, -.nodeText.mutated, -.nodeBox.mutated > .nodeText { - background-color: #EFFF79; - color: #FF0000 !important; -} - -.nodeBox.selected.mutated > .nodeLabel, -.nodeBox.selected.mutated > .nodeLabel > .nodeLabelBox, -.nodeBox.selected > .nodeLabel > .nodeLabelBox > .nodeAttr.mutated > .nodeValue, -.nodeBox.selected > .nodeLabel > .nodeLabelBox > .nodeAttr > .nodeValue.mutated, -.nodeBox.selected > .nodeLabel > .nodeLabelBox > .nodeText.mutated { - background-color: #EFFF79; - border-color: #EFFF79; - color: #FF0000 !important; -} - -/************************************************************************************************/ - -.logRow-dirxml { - padding-left: 0; -} - -.soloElement > .nodeBox { - padding-left: 0; -} - -.useA11y .nodeLabel.focused { - outline: 2px solid #FF9933; - -moz-outline-radius: 3px; - outline-offset: -2px; -} - -.useA11y .nodeLabelBox:focus { - outline: none; -} - -/************************************************************************************************/ - -.breakpointCode .twisty { - display: none; -} - -.breakpointCode .nodeBox.containerNodeBox, -.breakpointCode .nodeLabel { - padding-left: 0px; - margin-left: 0px; - font-family: Monaco, monospace !important; -} - -.breakpointCode .nodeTag, -.breakpointCode .nodeAttr, -.breakpointCode .nodeText, -.breakpointCode .nodeValue, -.breakpointCode .nodeLabel { - color: DarkGreen !important; -} - -.breakpointMutationType { - position: absolute; - top: 4px; - right: 20px; - color: gray; -} - - - - - - -/************************************************************************************************/ -/************************************************************************************************/ -/************************************************************************************************/ -/************************************************************************************************/ -/************************************************************************************************/ -/************************************************************************************************/ -/************************************************************************************************/ -/************************************************************************************************/ -/************************************************************************************************/ -/************************************************************************************************/ - - - -/************************************************************************************************/ -/* Twisties */ - -.twisty, -.logRow-errorMessage > .hasTwisty > .errorTitle, -.logRow-log > .objectBox-array.hasTwisty, -.logRow-spy .spyHead .spyTitle, -.logGroup > .logRow, -.memberRow.hasChildren > .memberLabelCell > .memberLabel, -.hasHeaders .netHrefLabel, -.netPageRow > .netCol > .netPageTitle { - background-image: url(twistyClosed.png); - background-repeat: no-repeat; - background-position: 2px 2px; - min-height: 12px; -} - -.logRow-errorMessage > .hasTwisty.opened > .errorTitle, -.logRow-log > .objectBox-array.hasTwisty.opened, -.logRow-spy.opened .spyHead .spyTitle, -.logGroup.opened > .logRow, -.memberRow.hasChildren.opened > .memberLabelCell > .memberLabel, -.nodeBox.highlightOpen > .nodeLabel > .twisty, -.nodeBox.open > .nodeLabel > .twisty, -.netRow.opened > .netCol > .netHrefLabel, -.netPageRow.opened > .netCol > .netPageTitle { - background-image: url(twistyOpen.png); -} - -.twisty { - background-position: 4px 4px; -} \ No newline at end of file diff --git a/test/firebug-lite/skin/xp/infoIcon.gif b/test/firebug-lite/skin/xp/infoIcon.gif deleted file mode 100644 index 0618e208c3488f9d332eff840219c4b37806a396..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 359 zcmZ?wbhEHbMdn4SjS?t zoyB-Jv&kW5)5FYWr^BHcuFBo-x|KV6=V7X!nNE z?k%I;dq(?@3=Urz9KJI+{9thW#o+W`(Eq=2#($TR|K+p(uR8F5_u2oH1I2%W&PAz- zC8;S2<(VZJ3hti10St;iSs1w(>=|?zfB@uC2e$kJ^8+|EnA%*k!W#MOQK{ljl)GVz=%0?7rtE9wY7Lo;JgN;%aBBhkF zup$d#AvGJB@i#x7d!6%U9&aT1>bvKh+xgD9@4TZarC_79XA_3Y)u z4jj;IA&G`4T$SEtNOwJyD9b09DTwq1MCN*%!X+xO|0N{Rs4^;&b|i*sHEGPq;n|zOEfbH<6(;%L`k^mT)7z~ywlRx3h4?$ zl>}*o?-02Jb-IWCddBfMi57}>wIB`^Hlv*vh?pjx5|0aenzD001sDKWl9*QR=`djc O0000nb99Af5rT)t{mCEg5urg=A(g z{C|6SPb~9Xage|wB`SrZk2FOMYM!buln2sX?5Y+T78iB(Zu9cS7|LZyZ++}u$^oi1 z_j@S}bW9OzU2R+RMy&~OT>X-oZ98$jq#ogNfJ!BM-42wHGZk*6s2KD}U*IA%epmxb zm}|6BK9YoIF;*xSL!+z@<64lB7->LTW2Vi4ostCA(z&2XniwNIv}fFo-`MbG;)u4G z^p@F!)|9HhZprHd_vXjDoxs6WkK-6P0@lfxnGT>*p(QHoUV=u1FAqb@b%*W=a3{`LsH5k^AvQNL>6fPpy#oU(&MuH(*aEX4b35*} zn4n7)`I2U%=+Z=?BVZQ?vjQFW4gD@~XSOO6b{qu81`4&LFuU2(ilxW+1|ZkNMnWe79C$gs zWT?Ele|HR{JGPe)5BTW>0Ey?-Ls6S#GoV0tbt6ku7B&*0 z;i9QM$W1Rj*rRIdceL)rAOSl+sDe3LkB87<%){;ZdHp6|SNlopDXRx< zxBDF9-lTo&v`8$humFygUij@qgT=Qzhj8{ym2-{Xciwqq_Xwk%=O3B-MNAL_6e`3U zyxwmXex4`g0^1RYw~Dth3av3Dl^AAlpO3mG!nLr#&ZZ7c_wUboI+deC+&%TFjK2Lm z!Y&f1h|T_On%RCV&=4bx`!>(YezqGVhl&QpED?N6GV)HmzJ9&rh$x*i?*@o9#6QI< z5ZI_MRX;0+pY8$`j)eF#TlUyG(eE%E7S!rj;mj^M5vhUicPm zVWQ2z+imFyg}SRABmOBY_@osR!>7Ov!ioK`NB6_Rv}7Ud?35ed5Sb@?yND?kv~RCa wqs^a3Sh>&&L4)!LKI?D2&k@))k(LESaga|C278ChSzn3NWVkcuNoY&{0f?~U_5c6? diff --git a/test/firebug-lite/skin/xp/min.png b/test/firebug-lite/skin/xp/min.png deleted file mode 100644 index 1034d66fb4405598401302e3e624b1674d2bf1e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 552 zcmV+@0@wYCP)vmZ_X00D$aL_t(I zjiuAUOB+EH$MNsZCL1?R8&!4bS6fS<)tz`g=*viD*Jl^CK z`t%GY-@^kYv5587_1khrGe5s5z@kn#$OJ&Z!eFXD1Sm(L2g^?Y zYmr`er0{)dYkvX6!fog80Qn7&_6-2NexGu6D>c-py(Qzi=>Y9E03D+rytQ-Lq?j9f z2uM00HtcO|a&62|cs!S*R1Cm$(*e`E!c#83wM^skESnnwvbgx22+@Yv_J;w1RwKFy zozi=wY0ONJ#dDq19mIX%q}AnE8w#$f!{9Ff q>@2^m0u@I4O!e0v_iIDIzt$ZPov@8OQ*!|T00004nJ za0`Jja>QWe}Xi&D$;i?WOTH_Q7mFfclLx;Tbd^e&ye){i+*pmo2d_v|Tm-%WA| zXmI?Fy){a=&u=f4TRr{YyjOcz1)84U;wyZtH?bkx zx+N`yTY>4zLPu-Cz0D_%tZP1UcQ?mxR;7exlD+Hw9x3Ds8E&w9mVc-F%e}wTn|nOB zsFnO>dbZ5cgE>_2UfT)14Y$J0A1JWga=XiV?aW^J%?{U&Jlo*F)ij&up5HFxF55(& zhFj`OqF8JjSv9WT`ccMbRy@JCSFNt*@K@_Avt;>Z#4=cjXfhpFiC*?;WmcxcgY`cc YmzC#;_!)WW0t1}E)78&qol`;+0Lys1;s5{u diff --git a/test/firebug-lite/skin/xp/off.png b/test/firebug-lite/skin/xp/off.png deleted file mode 100644 index b70b1d24d881014f43bbc8f6ac6e5d84921c0ece..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 742 zcmVPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FZT01FZU(%pXi0007cNklqH)0mG!ByR2T(Q_4JHo86*cHY zh~fooLU0lPU?Oy!fyZLq%=)}Z(j3lpdV?PzJq7_g47OL4;4Cdfcc&3D43;LRvAT0esjMcVWGjFG2rKDI*|i%PS;bLS zOj^x8?AdMrgjL6pn?>%C8nl8ug2ocIJP%

      yFlpb(nCwj+ns@?rq|_a5+Sz>mY} zr1X%NW9QG3U*lzXY6iI&#FUa>3Zz8EqS%W(06f3b&D#M#ZMSc7>DpDCfv>#leGEWO zRXKAD^Q^?;4+{R z*+y2$wpbIZSBe$Gz!q6u%R;fVxJXEDRS*mknw|xqwB`U-O+&?E#A9&?hjA3<128}S z8BCLil3M}G82%vuYA?5-7kT*D(ni<03miUKkNb2303$sQNtKG|np%Aw5HY@^{4e<8 zPN(2ZBUQ~!(A>nHO@}mm_der&PbqPwGre}hdcqaPq`BZKOL4H$-NnmK@5!yJW2e_k z)HInN8)KxWhw=V?3Y<=&!bE7Au>sg-5uFp^WuMKtN`AVIJ~PC`^=AyOm>A(GLW9&~ zD|Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FZT01FZU(%pXi0006zNklLBO?ccg<(Vi96RihU3|k%V;awJqJeI@l%)iVo_6hv)OYp8NjsJn)aIDi0D60lEO+ zUt(r~8@r3=iv~|2TucG{LTU=bZDDP0X624n%=$VCEHOJWM*7tooR*ioVKDu1bo(Q?>Hx@q&+GP(AA5&) zXDe$?b>M1l1i)~bcs4e%;dCcv`zF%whw!-EWJ;wv0Bk^?#;}?i@E<({K>SjeXk#Yp7uEqW^LZ-5|E1)5lTj@kXlJxvSm!hUq`CLwgTuyOog&g>}9I&!tKMTxN8rXmn$R?8jYzYK#)z_n3j>6(1HNdJs0D!4vl4@YSl0heE5;PeM zs;uEqNTZG5txeV=>(X^@H|S8XSO`J|~)U zqm&yBpABjvF(64=ux(8w2GoBhsN1zDZlSv-+7B~OddfivTMi;8{IJUd1z4WI - - - - - diff --git a/test/firebug-lite/skin/xp/search.gif b/test/firebug-lite/skin/xp/search.gif deleted file mode 100644 index 2a620987e0e1b7e9ad3213c1c0541cc7db5afea0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 550 zcmZ?wbhEHbN5Ue#OE(%(37LBq6V z9n+Td&t5rW;i_4SRxet#bn%j9%U7*mvS!Pg4O(=etw(i)p zW8a(u7dP)YI{(m>`G>D=+jn@?$s4Or-8^vY%$n0T*POm}_~iLRr_OIYcjxG-3rEge zK6d8fwhQ-8oWHv3@`D{$9-h2#Vqg^X to)YGxrtD|QY%Y26QkOZasnngjVb*LG0!~jl%~&`CUUzEyhBY!+0{{*nXwCot diff --git a/test/firebug-lite/skin/xp/search.png b/test/firebug-lite/skin/xp/search.png deleted file mode 100644 index fba33b8a57d351da68abc3340dd4e589bc55764d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 685 zcmV;e0#f~nP)#l3+^+pwak93=7Z|VPQhts0;rO9~&RUt*+FN7~L36 zT)GisL=jOEKtN*@DU?oWX&E}5(#K3^oZtp@;Ysf9{_Z{ZTypLD4RDN|2}L5e!mZIB zPVgYBs>x(x>852`PZ*>4TO0xUJuGWFNZDW5&SL~3w^7#Gh(FVO(dO+!J zkSd|QcRG$9Z!Wq-&8%V5C?k>8AcUf5kHv>AtKMXq7IqfLi;dlc<4~`ap=t(7RSR+h z56vi{nloG5JO3=$yv;<_dHpvJ|UZ~3kek5~Z%{1Ls^2Zt> zpc6CS5?fUh#fpVSpBMWSKMpqg5e-UsHTF5HZRE!Nq5!dhgXrbJhy|9`EkjZE40d+L zsLxHVEfj#_Hhr4?j(hhXRwbwS;`FiZY&hscM3EqQY%rS%vs2UaT1nqJ74{1(pUv4L z&tB%QT)kZh`9)>u+(7?YW_{efYprfO*eaJnyx|y#AcHVI!Z8}FJ7B?}@^y1*E)?%M z@_gj(aBN|AW`2BP@}m3CFS=d;<0J)~-~(kI!*QHtci56&mJO$@Wfs$$?-o<}z6(PG zoua_^CRbA*DwRrR8=@XB2xV?I&UQkgD8bZouqdBdRM+4BOsKt=&JT7Odg1KqYHIQy z$k_qa;DOgCXMZgxKaNe!_vr;aEl~RrhyRGUf8lx0^xWLSWuMc&5^oKpehV-FA-Vn? Tug%)J00000NkvXXu0mjfX&yMP diff --git a/test/firebug-lite/skin/xp/shadow.gif b/test/firebug-lite/skin/xp/shadow.gif deleted file mode 100644 index af7f537e391f08327e417c7be6323c917d5d3788..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4364 zcmeH~`9Bkm1IFhn#FWr1l_*z|D{WJftISm@$4F91mrqH>qTDfTa$Anf*leuLoO4ue zV{GFw|)Su9pZM@MI8 zXLoluhr<~f8X6uR9vK-K8ylOMnVFrPotv9mSXfwDS=rdw*xcOQ+S=lBxjQ>MySux5 zK7a4O0RGSa4g9YeILQ?j002M$&Hn`d&n5t(e1MLq!ZqrbAEBa$HC&si*>xWeD#O#S z(QpmXAiXC;&9s~*jG`$@!LkV7k^mHtfP4oCiX>{^XQo@y^H`rDuV#l@=mfh@8qSOz z%VJ_@&b0)MJIvzz?yM^=H39GvQZLzw{$!ZB{+*=I4)!E_JvafeTpYDktw=Sptt}_%;c55rAjW@-KXrQetiY8i9OKjO~74)h0 zFE-vl8%FU=H&G|Xmc=NU>ko0P%e1L1{YxqOXKsX5`PQS-J@CK@+bT%&P-DWGyKL9< zFG^WCR$1?lLf7Xw^hc$X>dMWsqm*vTB^4$-zm$o;T#>s(N-)eTZzlEDL zwSW7zH@>#3IvONw`^POu(-kWC{n^m?RVI)`L*BSAl*mzA{5?menuRRP#b%y zi1r$b%1(+LLuoqXc|>bB`f;Ll`@F{8^hb!}=qZuraf~r9>3*Db(6Px~WRvbQ^tpY|(4Z2T*gAni=NY*IusZJavx?pQjbbN6#1K zs<+P5Goc6m7N=NR{Vj=ej{aL3{kZjS*>AA}3*}&x)j~ysfAj*wC%<)}@_EI9#j1xb zR*Ti;Y0--{gn`z@Z@0JymcCnwSug#tkdIlay`#(G8qc&Y zH~Br5SZS7zvR-L%N5-r$*GX+Ft=!rDt8Hgntyft(zrt79&S`CWETcV%R~;sFYu`?_ z6S4X&@N<$r-L|hJUiX0PY|b}0+?9OUhtO+#-7oq<(%^>&M)Jjg=W6tu!7U2QpxXPJ zUd*nQ zlJZ(^T#X7?@zZL*n8Cg*^=Pe&ZW*}#m=ROm*Z_3TEYf7l9WB0}H^y%8?~v z_Aj2wRekB#CH|nkq=r7&RupYlsXat03{!b_RQ#rBnQYMuZ>@mrVGp&ss!nP|K;=o` zUS8cXamq)&k*31I(8%(W(l1|HT*QsX6YHCGXiFLD!+1CY)m5KGi83AHdU{`5nmLUck#6J z&3xwRqM{_*fYX{eYOT)pwB*t%C9PNa4R=9g^`^)6baY>p%5i!=>yi)s^ZOkYh>$w_rF2pHK0Mf6V#0jj6Q)!Qw* z=$Xm<9(kjz{PsXNJ&RwUVl0GW1xx#W-gk+3;V`M=g>G^7p8z$pcJ})?YR2`{G?`UA}mO>U_)1obC&+iwNml z_3JvyJ=usnqD8KReFFCEb=}^}R)J6M<1~7`p(UivYz+s=oZiBSxlFf*HyrDDDYW>K zbDo#Zpedw2yO5GXCHNWF8KwS;(&)lBr|s^n@{+4p&b#^TJ|zpDar(PeLiL1ddbHp; z4X9iin&oV(?4sOk@1Pe}{j5-zJTT!@N_XIDdI>cSbmozZ^NyjtZnh@&7CER>0{Lg{ zJCmkrjgy8HXvYRp&p-n}s{ z2K{}kqVUzH6Kx0>p^u%{u(1sj4)z~=d)&;|9d5_oc5v+NwGUsv`H*!Bq1xML z(Xf8~wd5_g&7OXk$c9b0%}tM{9*&mz20SU&-ZQ0VKq-9VYA)->lSe&+at#}1C6YJ1 zFZBEr7umehU~}DPf6ox#Y}2SW*6vMz_wY*Crr`w37D?zHnXKQ0tV`Oyf7|_QP+B)J$_wU-Ut#hZ@R;a12vC{f2&GSGjbXnIpNtmn7H@Ahyf9(2` zX~tE#jkZj7?3#!V<0?O7U&E?)O-9sn6<-6dWo~v(A%%Iz!fmhOnmVVw&3ND>v_)P@ z=Zr@f??^7&ob;%3)}fv!Qvx)nTo0j%>{M8NHJ}|*H zVGueNRO+`y*MTNAZ#x#j!aE`&c2{bzb}RwSb_8WH#*IfhmIcFh_D;25W=^%QY}D=S z=u2H@m$k3X3hi>u?2NiTwy%wt?rz+|TM} zA;kY1W@k9o#NMKq@@Eq zY53`#6V=z`gq%0E*PnLQ^9#i!g~HUFFZPCV4u$F|hXG_ljJ?4BZqO29Y~dF++z@IT zDQi`(d(+F<1{9ukBV08nT+BDzi6id{(Y@Df?6wvDQy|>a>Bz&>h^yfd&o~J0tq7{@ zM<0lbuhYlUk_f+P(ETl)z%65B`Nx>$k4H@-rDY=dA(5a6Kb>f&E0L*@uCG7Fskz2O zq8e^TB}ckqQlpegqtcx`GPk1CJVS9D%~U6pZfE4-927_fMZD%n*g`o-M;EDqi=CoJ zUq_ci-0p zN}pe>D=l`v5c*_K>`0{ZA1AauBzD?Makd;S+=pK9b6)~s#0@ZO9QO@B%)w*~4{~pZ zgOS_70MhOWLgN$+V)nHh8G~paur!%UjkC6o6B>xyGx?;t7I)BDMy}%A(R>q7+NY}Z zPl^ND(qeJP{LiTlm?%NxxxsOo{*Gt3{CMniyzW4-j&lP0cKmK?{Az82wr>JN{*JMH zqR#JxMUO;1{X{cpG`u3Ql#^(i7JXelsS4tJ%RdN~kGWQ%IV(OKayttmc08054l5$x;#n(Aje;~yrJLRWRYVKM}(16~X z3UrwN+2|;Egn#PaPpQ+K)NYeB@>*(~|EYLqbTU^nV+Nj@mi7dM#SO@0RcI3At?``PS9dL=Hs+Bdx! zdZLD#{!lu-r#ZdMBjfv@^e+BDyhBAsqm7YX~r{cLuWh*R$#&Uvh9?zDNUvg8=pd0BKmZ z3?f?&nGM2bgBjThgW1P<*@|GC5)5|=fm1=^)UY@W22OJjr^Ul*gL8CYIr@kk17yxI zFhKA+K&%6xr2{Yq<4s_AGX&lOiNA)$!x?z%LA)&we;u4_56iuU$aO&GI$?7Wj9k~j zTsK~>J2=k+miGXWX9Wj{xC6vT0f(*&>|e@z0Veps2)+oy8zjLGOF%LR0fU71JVFqd z7y=`1gdvC#NMaQRA{e-BOx=x3^UB~{`l6}U}3c$6k> mNRx4)$-Se2KGVRJG=-nEko^8U73WMVE8{ diff --git a/test/firebug-lite/skin/xp/shadow2.gif b/test/firebug-lite/skin/xp/shadow2.gif deleted file mode 100644 index 099cbf35d455e13d49010e736c40bab22c3d1a23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3093 zcmV+w4C?boNk%w1VITt_1B4d<%F4>i%gfEp&Ct-$(b3V<)6>}4*xcOQ-QC^Z-rnNk z;_2z>>gww2>+A0B?(*{T_V)Jo_xJet`1$$y{QUg={r&#_{{R2~|NsC0|NsC0|NsC0 z|NsC0|NsC0|NsC0A^8LW0018VEC2ui03ZV(0{{j7;3tk`X`X1Ru59bRa4gSsZQppV z?|kq7z@TtQEE-fBW&+q&HUw43mgoTEOh>323ij9tskdcy;CXAGqn3@z$jQok#>>vn(9v7X($&`2*gn+R+}+;a zB-`NQFo8M@6i-F;d2kBmaafxiU`5mNUP^ zthuvE&YnYm1TDI>Mbf5IKSZs%HA2>|V+VvSyS7M-wsRk)t-JR+-oAsA11`LHH{!;V zTSKnA`7`Fuqo2bqz4~eD*0Zn1uD$zf?%u=C1~0z+ZS&~;K~K*<)cW@D=aG+3|J(ce z_#fTR&mYnL{s0d0Uw{PiF<^lR*8Xu|f(-sMUxN_ZvS5T1mN8+47%uc+h8&i1VTT}A z@nMK0jM&!CIM#4ujy%G!V~;?t@MDlfUR30f2A+uI zl4lIbWROli*<+Ma=166gHC~Bjj9PBlVwYZ~2xgcij!9;SW}ew$nrddqW}6kh31@_I z&e>p{b|#2to(1m7XMleG*grYeVOs>ZF#s&KBp>RYU`>PBm=w%v-WY`X61TCcvU25hjV4NI(O z#vbcgvdU`4Y_pa<3$0|*{!Z&ywbm+zZMKGO%dKGEe(P7b;_5|ixptk4E?w%b3s<}D zvITFveH8S#a3R7 zah4iy%w@+Oe+hEPVvbC5nI@l%X38qB$#TnXz6^7mGS5tB%{JeObIyA1%yXYU{|so* zLJvxG(S{z4bfQWx&1ln3KMHl!l1@!^rB+{!Y1UeA%5~SCehqf0VvkK~*=C=LcG{}0 z&33D9zYS~La?eV4-L~G1cdmNx&1>I&{|b2E!VXS&v4$UxY~qS9%Xs6?J`Q=bl21-; z<(6NIdFI+~&Uv@~o_`K*=%SBHdgfn@WP*Dd+}Wnk9;}GFF#K6&f9l<^j1MnJxkMH53%;$Sm6|=|; zEOId(Tm1ea9>OR_I*_r9RPiDjjkm_UoUx6IP$L|NBgZ*{k{I zda#+!3}G~Na?EMYpqkc<0XDNK7ie;`h2H!o48@s1a+cGa3=AhaC$Y_So}iuXyo);H z2}F991fKRh#XR$w2z=VppY#N1JO%1bg09n`=tQVF6-rKqiqoOrgeW&9noWvY)1uSF zX#O-c>P(I<)1$})X)#4AOp^Z6q`X9FE>&tvmd?_pu!LzVWvWV=qSB_N#HlEC3QC@O z(x;pRY9@thNupBHsFFnLBbCZXrY6#<6zg#=g+8EQD+dC2K;;j?l6o#B2vOt3l3Q(6bZ-Z3IQ@K+-PIv#*tyFT8c&$s0RuK0xeJ>qiDxY|SR^^{9J=0?xC&V%mq{-ldM z>K4zs!o%+Gw97m0=FYpf1265w8$0s4&b+HbFY44=I`)dry`O_G=j59?`dZGulfy6M z^xHW8D$c)$12EwP95@2|&A@v@Fy0hgHwMei!Eb{w+a#Pe3Y*QsW5Y1mG~6`~Yt6$~ z12NS^95oU<&BRMXG163AG!_fZ#Xo~F&t#l48r#gqGs7{=blfr?tIWqI12V~k95Nz% z%*Y!&wgc0yDkD94|7v%gpOSGrH7V zE;ftH&EJAEx8$5HI$O)m)50^f^xP~yE6dNv0yMD%9V|lo%Fw$)G_Dl>T`NY*%F(Za zG^-??DoUHm(xbvOs5IRvPHW23mjX4VL>(zoJId6HLN%gPT_{!y%GG~@HJ@aiCtBOd z)^ox&oOInLUaQI1X96~vgdHYg<7=P%JcO~gv}`OjyGqXv7_yU{k7-j|K-RwYAENyv zZZpZ-O9HpTvaRhti2F$AE>gOQwC;(OJ0tA|QoJqp?(5WBh2*~X81t=fGxEFNX$1Io z1n!V|^T^;CBX~m)jw6P1OyN5GH^kZCa2i$oV-x>Q#t(9F7qyu-hQv-Yu(Q$Z<{&$T)P6Ixr~T`0M+@BJ z9t5^S$nH9$`}5|mcVPBidVlu@-WfFbo(29md_R0L6`zg5BgpYUV>~t>Paw(6!~F1%kJ z@^4N2IvxhH{b1Az~Of$cznwr7FK;el|Yfy2asum^(0VS;lbf~|mp z!NG!dqkmBEOYgNTygh)bl1 zm?w#v1BpFEiIQiDjlqeXgNcyfiHRYKpaY8aon(rQK#GN-ilc*yjSv6?5Dow^i?mpa zws?!Un2Wl&i@ey2zW9s47>vR=jKo-s#(0d#n2gG}jLg`K&iIVb7>&|6jnr6;)_9HB z*oy%m00lq-1MrRD7>?pNj^tR5=6H_in2zeWj_lZu?)Z-I7?1KekMvlN_IQu@n2-9n jkNnt={`ijo8IS@wkOZlY1W*75;ED>lkPLY#Apih7!xnFd diff --git a/test/firebug-lite/skin/xp/shadowAlpha.png b/test/firebug-lite/skin/xp/shadowAlpha.png deleted file mode 100644 index a2561df971728d988424100c74c817916eca1979..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3403 zcmeAS@N?(olHy`uVBq!ia0y~yV738bR}L1Sh{z?w93Z7#;u=xnT$Gwvl9`{U5R#dj z$`F!Ks$i<%mYSqsWME*TU}$J%1Vly(x&~$j21QvmX+Ul4C7!;n>{pmr1x4l8+mz-4 zg*Xd5B8wRqxP?HN@zUM8KR`j2bVpxD28NCO+HqZdXMAQjaPeGm)a##I4DP>8^|Q}*osX?x zu(w4E^8SQ>2<4nWJ;;$Ch1?$dLgm)?6;Yr9_CdHMW*W(@x+ip*R06EH_T4pml(Y0_%+Z_b^VZki z+Ig-L)GH{z-FHJSJv;l^O{dMW8|Geryoiy(edpWebG3Q>oX-o7q}^hCpz*y@X6IS? ZpGWQ1{0Pup3+%oyc)I$ztaD0e0swh%>OlYi diff --git a/test/firebug-lite/skin/xp/sprite.png b/test/firebug-lite/skin/xp/sprite.png deleted file mode 100644 index 33d2c4d4649ec35b7771213977d7c83180907ccd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40027 zcmeHQ32;*Xd5@PDnyRAS950pn@kTqkzH)Dmsf-xivbj>rOel&QW5GYq_;B z)^62WJ7syy&Nz!Zhwjd}GXh?Vx}fNeI;$WeSGYt75(r7>K01B9{r$h!U#D{!sG23D zUw>WS>+kx1-~alq|NGv1kALH)>vH_%egHYkmn~Vz|3&m`eHpy&eDdEe=AW@@<#pF! z{q~ARMl$Zb;kqTTfJjQ z-49H~@+FIJ{aXX8SFc%Py!7JFEf#aEGb}pCQcuFo*49=h(+|^=k!dr)i1R_~gG1sj zM~k1tn=rJ<>mW;49KjrhxXe7QJPI*#?CosJZ(Dwm`=g&A!{iokN zc!NF*aGGQ|UK{&0GIfOm@ZYVh;`Qms^41DxIk(u1JO>0^M) zNfpJ8Aao=m9e;}4G!l=PjKrhVPUl`AwFw-JIvNKZepUd3-<~oW%Tg?#UBKCWz%)&V z-zg>sQcS7OjGS~AaQvxJx6=nfSK27*@P&}$4^F4e;!ZbfyipS_b?EzVvhK8*U^7DM$jQw^S0}$0 zF~&}r$Q5!R0mL}jVyu}Er(2<#EJb-qOC%COEEi%?wqT7c2fk*8$~|Ijakv<$p6KlBY|& zcuh&p7M~(U^0egmpTL=`NgGy(?(gp!Mqcf&!wQ~!({X9fX0pvpiI0`zTPJNKY$9y} z1yS*ua6wMO{qeYdC%B=z4vChsiW&*U%c;1Xr-B30?Ub>)n$j1=MR|@;OGq;y8L4Cj zNLcKO0;{_a*<&+}Knh-nj5A1e2NhLnkYJ>SO>XCGhs_v~)PxIR{ozV9A{mc+T`4fqXAL0yt(Zx2k z6I{V5SY0$OeSz->w;4L5suxhXa7&bOs zD`zz=F$>tp2x7v6I59%7#MPA-MMP4H#OYOvT1l#)RM1~XJV{C=>WPOmY`n;r{Hcej z1hHt;{u+g4aWG?C?1ox`f~YK%gb2N0lG|$%<}=?P2<%up zy9*F0F_mki6>_|2WDlcUPma3Ve*3BQOFx z*3O(i?;?Eg;U}`5L2+rhvJ7ce9*mqwR4hSFjSbkdXEzpHd5J1=`0z0$?dXx9(|ZqbPEIziyh1({+V2h@u1DW# z9>e!$WF&|$EuYn2$ryyj+(cedHnt2H^ONJZ+%dKcNWWaAt0$;>o?exznT;t2?1I~GLE(y<29yiDwGm&eT7}?|BLmV0M?A&FsCe)}O#1E* z24sy@`-%Y_+qR-*?JqF#p1*`=!i0YD4?vL-sz1AuQboqHeWRnR!#Z;RcaeMLHE?;o z{nlYw=5pz)oV~as1B3^%;saVdtpC%ruQVXsC?8^QQ@Zv#Al4U#ryv)R4#t!A1hPPqF~Zv|cO&c};bQcOd)>b3kWH-672(sQkuajI zEvWnT3oI8_Oz;%is=j6QKcMxcb+GmyMDK=;2sAYl5i)@t`UsnH1$#gaA$gyI2P+oz$dpaa79;N4wKzv+osJpu>DhH=Hz#LzRa%UqKU;=KFWZzl=ym%>Ma8jWY9MGO zdyU=>aJvH+J7DgYZRiRFkTt=6!YUl>MakX+$ai_+^0*-zxt^r2x*iuUbZ{_X?d(`6 z*?j^n$Ldi~S;ZWnx1$r&KKcN{57E0DCq4XiVAAiGFIjx6kMTBo?KCbi4gk>!g(#}2 zMu_UO_w|j+ATf1j4azT>gU|QxhpVYY4G=xDXOBCLODq_KYxYc(Ew~&(4sf6R%g!JMz~)gTAahG`F>*{%AcqN!W}pK1ZHe zh6yYyN+t+scxfMOKg6~tEn6xXc#re+6b?dDII2om(kgFWL4NnZBA$cWH`snS97OFS z53*+9^@o0lDIM*o?CelsNjv`^S0ltS7V*^WD{W|JM=@B~;Qg`?C-wHmX5^b0*!kn9 z5juPbbDsP$h$2iQf?|#;qA^`b@91b`p3!s?MmU6EIEn*@k7AuBjkkaJFxvWhQR>e|S$>|%uiw2JFWhxE@+p++`~qaM zzYN!YFX4WF@nuS&Wt_UI;txuE@#<@MV*Pq*vl}(sn)>*!+gA*Ta-?;2uscwq!NzXv zc=%CdU2s0Cw(dc(%fz;a{|;RwdT}GcJQ)fpH9FfNh=JMNbc#c51fAXO*m(2x$giG- z%MS0wROW4%b156N@K@l#GmO*i`#3O7ro<=v{qXbO%Q;QlRECS$$;o74vP2Pr&EyJezYjLeH)Kq+rMG>_QPk`z7Yr?dUg2R8CZ2v(lNOP{yHz?aTuNUM@vg9 zf}HoeJ6qvH4;or{Vv5t?ym|BB;VMX6j;u?^kxO*Vk#OF(=M(JOw3Y`08&ObLfYOp; zOqo0dc@wAckbsE~KKO$&{f-2GuBUTGND{kD8_E-H>9owc@S-cwTR0ax_wI*>J0mam z&{;WosH@wLS6+RE6M_qy-`>PUOpt@RJwl)BL?`2?W`X2{!C|l0&&7=gGp0>eS?<7L z^c?sIPd)xCvM;>f^`Pd~-Jx;o67JsWr2cH7`8&guA&F3{cC&Z(BWh$MIDiz6ru zpMvlGXW?n%djEneaL4=_9659VCusy|XlTHK1z$@T7L!2F`5^Z(GLYHciiPpnM{nZ9 z*54u6+l9IV`>=WQCRDd>L(WHQxim2mjc}6W9g%O||JV4=l9@Ph^boFIcr`A%cn&7X z%4eLpAzfhBB@3~B!^AnP@gCU(v75;%C$}7TeeWS$dfqxz z+;|JZw2g&b<7);GSsCq}?e?92B{>=S#94@Tx59eo8U6?Gd8>tvo)9XEvM_CCEiF7G zG=B<=>^$zk`Vgs{&;JO=fqlGzc%@y%IJpkd0FAf#{#u;k4sTayCfZutQC(=FqBINj zhdxK9KOgzr!T1_?A$;ZiYQm5iqL9<%cynqqBxYZ6VfO9yufBol;e)8{*nusrWoT^) z;L=hH7grTw_ZQ7*>yBb(IW^_TaU82zf$sWaI9z`mvui6+!ZpHpa|339w>E7-e((fp zdg`#bXEN%J2QW9k7ne-U!;XWE*w+~3O3#Y|wBvtUe0aSsfStSdB8y`}%V+Cog`rVo zoH=vXw)at8mW^GcV(=PY&b(mm6|m;cS9dT%9W6M- zzFnIe#;hp?*s`|?f9x*BWz$QrB)1X1;%Ts!d>@T(yp3g5<>QOe5wPV#NNy6)(jtb@ zU_0{MK~$FK;iH2A>}fS{`*|KLENH_Hs}k;It7tp-(k5e}Y1iw#C0P6zlPp;*-ixwtwPRn5ksQ(@E;(GEX~8^V}T%AYIQ-`?|llS| zxv6<249-QVi6yBi3gww484B*6z5(HleBwZ>1U+3GLp09UPTc5s*g?SM{+oLf)tZ__ zR!(p@Fh5waj_C($l(<4b1Dm6(NVVp>bAC-z*80u6IrHYmcX|1bKE0ZCzF*XXfkUxT zgTe~DWM4fd9|gm diff --git a/test/firebug-lite/skin/xp/tabHoverMid.png b/test/firebug-lite/skin/xp/tabHoverMid.png deleted file mode 100644 index fbccab54d050bb7d2f503df9fb040d6328cda5ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7Eg!3HE>ee_)kq!^2X+?^QKos)S9lS| zxv6<249-QVi6yBi3gww484B*6z5(HleBwYw37#&FAsp9Z`wnt8IPkEj?~G{Df4iTh zUTFpEiAG(HZx0IX^c+8!zj<@$l###afwqn82Tlb`aXeaJq9ByTdv(stQpRt=O8dMf yu2?qz()u?OCY5`Aw6~OJI8i(I?dNUp820>T70JFbhpioG7lWs(pUXO@geCwfnO58Y diff --git a/test/firebug-lite/skin/xp/tabHoverRight.png b/test/firebug-lite/skin/xp/tabHoverRight.png deleted file mode 100644 index 3db0f361799c5fd3c8d44453c0e74eed59fe203e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 436 zcmeAS@N?(olHy`uVBq!ia0vp^96&6_!3HG%UcQ?Eq!^2X+?^QKos)S9lS| zxv6<249-QVi6yBi3gww484B*6z5(HleBwZ>_&r@5Lp09UPBip)Hsoosf4=iA3(pD; z&MOQ5{@0dvVya_Ub%g0mfZ3I@nv;eW`n7KZ+$YNXJXc=!=H*AnNfR767*w8_Z?CDX zdr^Pfl*Iy{f+nQKHhnLiYs8rq9;!GzpE(ovEA@kR#xggRnuT|SWierz+*$L z?K+CB9g!yH*+yE2beElS| zxv6<249-QVi6yBi3gww484B*6z5(HleBwZ>WISCQLp09UPPFx7HWX;xFL_&9#6_4> zv5;FUL;0O2qxnPikR_*CCv+^}lieuaDw{t^Y1*~y>UsBnn`~Qtoc-+c?@Oi};9lv)z3{>08%V(x%&Y={0ohZWh?Hcy?s7>7ombZ$Ca?6_Wft=M8hi<>IyH zWiRzacpYq*^IvLCa>H(OHco>(hvUjh3(J$Tg%w*2ugm5?@~G~9!1&hqOGnz%cW)2w z;xRscetG(u>+?A#2Bk=-@f>#W>J(u5`0iWV_M_}-JNE2STUv6V==Z-U&V-NqQa1m5 oT5;oim8xIQk57N9R-LoIqLa7d%*7w4fPu;2>FVdQ&MBb@0HlJn00000 diff --git a/test/firebug-lite/skin/xp/tabMenuCheckbox.png b/test/firebug-lite/skin/xp/tabMenuCheckbox.png deleted file mode 100644 index 4726e62208e024a017a7c5325e160e202976d7d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^oItF^!3HFIe|>%mq!^2X+?^QKos)S9l5Y=V1NPK>@SUgxxb#j0)Hj=K%#H@hrp<0(ziY;Cn$qB$lOko9uweeR$HkHl1f*xW@hE+`)>M8>*Knp@$Fl1{s~J39 L{an^LB{Ts5ttLz; diff --git a/test/firebug-lite/skin/xp/tabMenuPin.png b/test/firebug-lite/skin/xp/tabMenuPin.png deleted file mode 100644 index eb4b11efe5ee01103c2d5fa2f0f6b8921e640cce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^Ahr?*6Oeql{{BWF#aJBV?!>U}oXkrghb_t5-G$*l z2rk&Wd@@jkv%n*=n1O*?7=#%aX3dcR3MP5FIEGl9PX6=%zddu_fg=s#0eWXoobYfk z*AwM9ym6JoM(JSIE|W9~gNGBHJsxveA7kVT`LtA$cXJ=#lFR3Ow<;}=p3c?sFd}rp wjoy_^uD3LPOZa8_Shkpi?Q|4a@x+^%p~OOFcBy}4KhQP?Pgg&ebxsLQ0DvV!;s5{u diff --git a/test/firebug-lite/skin/xp/tabMenuRadio.png b/test/firebug-lite/skin/xp/tabMenuRadio.png deleted file mode 100644 index 55b982d7c8e69c12497a020b798010f570d5cdaa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^96+qZ!2~4VM)CImDaPU;cPEB*=VV?2Ic!PZ?k)`f zL2$v|<&%LToCO|{#S9GG!XV7ZFl&wkP%zlj#W6(VeDa_F|LvL04jgG<4hU>wbuu(E zI@G%0+`(6?{{R0Ud^0rTn!}DBW=RzbRSDkBeS9S@b7yCW4qd@!}UDqW~jjJ h3p(-_6b@=KGECU6@Nto2r904g22WQ%mvv4FO#l_>J;wk5 diff --git a/test/firebug-lite/skin/xp/tabMenuTarget.png b/test/firebug-lite/skin/xp/tabMenuTarget.png deleted file mode 100644 index 957bd9f2adabb791aee25df923efebc85e86c0da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^+(695!2~4VPBOj%q*&4&eI0=`L$_*zFOXs@3GxeO z_zz_L?>wMC0Z1Erx;TbNOiliC{=FVdQ&MBb@07%~_*#H0l diff --git a/test/firebug-lite/skin/xp/tabMenuTargetHover.png b/test/firebug-lite/skin/xp/tabMenuTargetHover.png deleted file mode 100644 index 200a37083d6d9f325c493ffe490dde115521f2bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^+(695!2~4VPBOj%q*&4&eI0=`L$_*zFOXs@3GxeO z_zz_L?>wMC0Z3bVx;TbNOij+o$VfQAJ>!G7@X{t$r>obmC!aDkGgCU#P++h$Fvl^h q<&0Y)y9?7ee_)kq!^2X+?^QKos)S9lS| zxv6<249-QVi6yBi3gww484B*6z5(HleBwYwiJmTwAsp9J&u!#wFyL{y`2L2+8+&%4 zGYo4Ea4j%!auMQE=QX)@`L5_R>p0N^#|jw^6rJk}>SBJS{xf{lH9>|C+!9KCv*g_a yas}qkY?A&t1opP!-NXCf1kI#W7yNzsv!Jk1CJ%pG6qjqKbLh*2~7agCR0=Z diff --git a/test/firebug-lite/skin/xp/tabRight.png b/test/firebug-lite/skin/xp/tabRight.png deleted file mode 100644 index 501130796a5fa80c352b87defde9def6510f91fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 448 zcmeAS@N?(olHy`uVBq!ia0vp^96&6_!3HG%UcQ?Eq!^2X+?^QKos)S9lS| zxv6<249-QVi6yBi3gww484B*6z5(HleBwZ>q&;06Lp09UPK@Ho;O zx^+9}gqbCCH{D$GF^DTyKw)O&sg(}|4b6+$R&YpmI?oIA&q-r3G`^Dd`jpF0eFfvf z@ay1Lxm|3g&V^n{DDfM`+31cr$fOL+ubRRmc= z*UoY&Fg|=n%#&?-(2L*x>(+<;_*fBhM1kk_FwOXRu3klbVJI*x89ZJ6T-G@yGywoy-Kj7D diff --git a/test/firebug-lite/skin/xp/textEditorBorders.gif b/test/firebug-lite/skin/xp/textEditorBorders.gif deleted file mode 100644 index 0ee5497874cec4a5599e562dd7c00b8c57bc5a44..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117 zcmZ?wbhEHb6lY*$c+APLV&#f6XU^Qcd-vtbm#<#E`uzFx&!0d4{{8#^|9=K-K=GfT zb5UwyNotBhd1gt5g1e`00E6OB7Dg@xeg++o4v@hNEW974Dl+V{P!?d(JSND4Tx0C=3O*LgTp`yasZ&&(KOonh?z*!QeilV$8X*|!YF7G{jGr7TetkrpMD z&_dc5MOuhTDP`+ch}5NoLsMHuF z0K~@8Y3?=_1Rq~N0;U&O0RcjQ05mByfoksR>Ii>1W_tkv0MMmQqEch-DXzvx=ACRv zc;Yzxaq-#JzrGIu0Jv#BzJ34*0s!zwFz31ez#qb#+X4W8GM!2XKm-5)e`q8r3;;m| z05zJ2I}reJ2mr7V%=u{mz=kmAjR1g63XPxxAld;~@o`~MaR8V>0M@l(qlU|W}pLrZZ`nt<&QNw8sO3*fK2+2HTkUoLJk1c z?LXG0-2njr2*Hkoa2;&`06=hA0H6mLjA;b`%x-|M#SF$`C4=#`3INpya62Y6k(RXl zj}VAQ0DpJQ{LbZpLI5BEkSxeK7Bm{o%7H<%ak8^ z7vL8Z5)u{`6cH5_6B8AekdTm+B1lTh$jHdb%E`;iDJUo^Dl4ietE#A}sjIKj&{(CZ zrLCo-tE;Dz5V`pb?=iun*=gG ztFLcpxPHB{@y3mtH*ej#ZF>85Q&V&EojWZpt*v+O-n)1Iew%Gu+k*!WAGWtYdi2=o z@#Bt;Cr_R}?R4wx?CR?7?&<0E?CpK_?6=>ZKY!u-;>F9CeSQ7?1AzkruU-uf4h_A2 zJsdJT{N~Nux4-{BGBO%5I{NP2`}bpGA3ltaPsC14Oiq6MI5qX@(==^*dS>SH=h@l0 zx%v4oUlvjq78VzmmcD-d_KlIwU@-krR2CLAJ1Yx@gAK#Z#ev~u=fZJwVX-)F9vm+Y z&&$Wl&nF-#C?q5xEFvN*Dk3H>E-oP{DIrB55TvDLWMyUKVRG{*w9WX1<|3e2qS75c=!Ab>= zj~;!mptH+;xq?47F!1Wt;QHkTRtg9o8TqFICMM&)7qH@=v|PY1{)jC|GRllaoMj4q zopn1VfK7`X!`{PD!Aaw?;^yZb#$LhY@VN0x@=oCE`EvPv1QZ3P1#bxD3cHDjiVTXL z5=#^}l|V~8kSvn&BuEg3rBBIFWHn{yFVS@~;a>30xC|3~F7U8|+HrB|Q$w4|NLT4(lRUhnGa`jLeTpi%#4S6GM#+ zj`OEjQ4QkNXfg?WbToZFaU`iLxiRH<>fVjnX_QUQoAuM>GPp7(GrO}Ix0Gk6=R|I` z-KLU@%l(wswf)kLlKj+yfStyL5`|xj`gYwcuGpQshqBjYpGFD3WPbm^ft#g=4`!A{ z9CABsbVRZoRX%fcredLTv1<0%%<+#WCQpu557rEy>aXoS-F~L!?9Fr6&R@E4?&9f7 zr!LoAsi~{IdiL7g`u2vd>n|EdZX#|8+}3QeYmT|IucfJV@}AUv*S5R|o$a!Zk{-7| zQGR-`3*TMbtMKg3^T?Nq{m6mQ!HHp!x8Wnb?~BHZrm&x57bO`C0Oo!N0KlpTu-^c{ zs~Nxp53oZMK(Q7;uo}RX8^FU5kkU4Qrqvx_bj?B87z;`5@>5Q72U!r#!6@Hz^G#iFcWN2 zZ0>B=*a_@A*k?JyIC?m3II}n#xwN@zxfQr8vC>!)wgM-ItKre$xyDQ6?Z6A-1Mw4l znfwC$wE{$eT>|}rsX{_Rb;3Tvr-YY8DnxBXr^F74O^e%!&r4KG`b*)YqNQ31o2B)o zKgpbz#mQ3SH07q{uPUS~S}WEn@hJ5v*Qlhb+N+7HO{oW{-&=K5BURH=OGg{8J+0HD zYolAg`lw#6e!M||p`DR|vC=iKCY9tUg#z+05B8?Aaao z9i^Q#oy}a_UBlhd+;^|5^=S1R@?!W%`kMNY{I>?w26hH52FsJ&Lo&h!!|@R|k(;6} zM~}xS#)idJQikGXXyk+%`ec$`O4~+(w9ri#(@`0onKfCAY_FVi+t~A(cSz@F6$}^J z6rC={?@rtErlj$JYH3*+*P)E^=%YiGepNjuI;x#(9@n~^^*c9sA?o6%I?k)5^~wzm zH->H{H({GkwwT{bYZH0U(C+_;@zlO^s=KV$>e;$2R|D;ouUP!T9d~-{}8rAAl*qO#EVx<+S+^?E3{(zuPZ~REW$l?ZxfH z=OtX1?N{X8WX}JPS9q;x{kQVV?)ty~BL9DI4?Xv*{Lk*m89&RfxaX4pmHgqE^5{yx zs-EL+O#9Q_EB2Su>p1I`8yXs&nEEZ|t^I$l|I)dS!PI}7x8grJH&s8q=@)+hR=|TS z7=kAxLMb%C1cHF@KolY#A~}(6$TH*z$`Dn6dc$JIQh{bgQ_%gaj;yyZ2AC^sdTjOV zX6z3*0y!o)^SI=>TDZwr9QF#1%p=6p#hZ_J;=}QE@*ffK6~qa42<;Sh6A=}8D|$&R zN8D3FMq*L&iBv72K$<4wEo&&JCNHeOp)jvFp){uaTIHSUJGJRmpuw&wrKP9sq7$uK zy!xWvkO8luxe?X4dd=8cb<;Sr>*friyX7TocAE&>%XU5X;|>c>;?BA*ZmuM^9q!fZ z`aM~_w7mU&ihY~?<^%KsQ-kgVqe#{vMWN$l#eWg8f=8{+O!4dRa_aMQOW z&L_vE3~vlb8`$iZK9ot$8p#gNd9y7s54F7@A75~?(5$GtICS^K-i#8d{pU;N4i=Uz z9Nu_j>S#j6SQYgc<3!TQZ#9LrQm4@c2;2>o0G_ z-)jACIpRGU`7ZuFbu9G5x^c4!^+~SDv5$>Yg`d2p#in1*?ECEed3LsZ&SLK6JpBv$ zOYQ>4!p?<-Me<_DlF`z>r8i%7zh-~!`X>8r`?nd!dPWVhI;^N}c($ezs zvP2@0N~LRSYwPRlGMP*+mn#$sl}e>nt2G*pR;$(Nbb7tsU@#bsMw7{8u~@8DtIcM! z+wBgA!|8OoTrRiUy|uNqy}j-6c)VV(&*$6O*#Z5365-zE7X+#VCH$%XXA=;_S52Z@@oz*!bv=CIazsb4zPm`x8<}Cz;YkrO~??Jxo?_ANy(lz~HkX z4tIEDl=pn>1%G^Ea%y^pf~olq4nKbUM0F)}@y*h*WaaJZJL%f`d)bGNa>a&HrPgS5 zdV|qqwpeZUO^4Iv-rDwfeLJ9lpl}46G+rI}McjFS-7#6~xSenf{1+esd?KYp3Opsx zHo#6|!;$?IL1WDKjPrv2E+OIYrMXt*0QF@{#?M-*V1V}O3A{S!%iKZw0vXX5cVTX@ zdy$4F=eFfOW1InJR=5hm21rAAC=2`L=^^IZf#OBR1>q3u9miKDpKCkK>0KMGuxWo2 z@U!c#gzp)XG3!dGr`5epZdd$(OS-TPNBUVM6OZWVYFTw~cFc!+`_C4C_%Hp4%rEG$w2E{$sZ|WCIn-4Au`Y&6|AV-@&Q2d*j}AfkNTiifB)jiM2q9lP=9hqG5V{>Z!1 zz0q|3mS%%cSQD!xUT(Uod|XWJRyLOoX_PHxGlGr#N9OY`VW2>_s{L1oM)jl$9H%DT zJ5ZwTz(g_BowziunvBnmi*5X64iSk-Kf};aTW@JKG*V5RmQHCZ(RS0R3@wBC`MT0nbiF)>R@cV|@6q=VR%3eDKva*uUzDcP4~Vnl4TEpawnRQHZ!Tj# zlit!9II@~}BUjOM%{crZg@0#v)0NT05%WyEiDzHFW_s>Y_9Twu{{H+KI67pfE_WRD2TBbvbn3kFFa=m31R-0f24iQSNf*2apI+xHVKOU4? zL4@s1V+WrA?>mGB`2_^ZY_H&uM7#J@$aVVyBAR7?4Ts3=i|Cxh%{M=syS}-USH#*} zK3{IwloZw`I#wkJI#NK`03XLGb;<%vFIX zl79%m2WOh^1mj4%q7mak`R2Q!A`>3b4`Y*V{bVyd2kNx4~KRJ*CM9A4zpkosLsy`z*JPGr4Ehj+)qPH$K_kF zd7{n(9AG*r7v^6GC5O%;W>T6hxMCDJOajcLjaYs!!;!;Ph}q0lOMS(?OP@J_*<)Ll zhAJop20;QR!mM}fu_X=wg_S2%xAb1cB&E zrtPs9M@^+6UzX(CnpZ^BG>+iqjoY>s8I+bWi=6*Yv#nK)qGd`1^S4H9ZDt%TOND%O L`)q75=;;3dF|oR- diff --git a/test/firebug-lite/skin/xp/textEditorCorners.png b/test/firebug-lite/skin/xp/textEditorCorners.png deleted file mode 100644 index a0f839dc598edd80d093e1cf954134a916db5af0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3960 zcmYjUXH=6**L?u#O}f%WdKaluf)Jz$NE1a7rAaSRL^Kdo1f+wA0-y@lQhQUs)9 zXa+(sgwR0(k(Yb*e(O6wX3g4X&)HMxqwxo2N4X1ZS2_KU1|j7U8M@#IdxSrpIV`=K;*3|H zMKB;aU1F=?(&p?*oFb{CI^VhUY@>`MoY!whO~7A+X_VSQZ*bGChfl*$hZUPgS|e&B zYS{hItj%4@j_s7fi3`F&5AvHEL7DTMfIWyjpX&}8nGO_Clu!(JC*W{2VQMbV$;g0F zxM`k+BSE4ZslN*IGzdnkp7?FgPPVr(13-hDR$C}QLk?`|%VV2>4uP&r6gd#405hW2 zJ_i6{uEG)wz;#MMDLqo11@NN*Dp`h(+<=ZZ^4K^4YC;#6Lm~K`?9R5|BXd9C!*yV) z?$OHYTYxkfV5D25cnzp$0VW(BB_07Y%s|e{^1A-RHkTX~L3CUY=d^+nA@D3pI~77a+$*MhBZ9-<;aLrOxVV-AE<@ttX#b zPS(D?eLFBvTmMX|i^0FZ2!v zQk$AeY%1(ZDtufULR+i0k#QL+KJ!gpA;&>y%io2m%gB_Koyj&oJq^w9x`%p2%`8xl z0EO(${M=rSj~6q`(%J}E$K!E00^#S+ef$RG0FPMAIukiY_YS5(AS4n+I0Z$;14bq$ z#@0|xUImSl)vqW-`>B?K0{4|`M8f>>p`)XKR&0V`2Tvm6n zv$KtjM@Mq@oEBW1oLp(|+d@ePaY@4u=f|HOO2lDQiE(B*3ESq zQN}0mLn?A=1|f|vLCW%5xXC3VhUzvQjljjD0&-E&GU5DsyR7Uxn2!wRH@`Y55^{y;Le)am{l+HtNgQOlFr)J0URkSa)4cST`{U%& z*P6V$+g=`|z!1&mq1fv+!x$|tg zag6c11$WFD(UYzUv@Ze_AzFUIMN*AdFu}NmxLLP%Cc_!~;~0eo1<|X`HQb1Ij|;G1 z@4ET?4y- z*W-Pn?im2C=C#)H56E}OeNyFqFf+8BASP-Sf17!VAsbh*p*0_xkHLTSpB}bv@+F{u z8W+e;-#@#AT0;)L&l3;cl&{Ni>w61%)6PwKR(r%Z)>OcY0(Y_|Ak+0N)Ub`}gk*jM z$UHQpl77){u4D^8y!$2XE$K`6x6bHCNr)epTQ_5nG5M9*j$9%a8GzMLYM`T-x^fZd zD7n}{!Ca}!rd`FUUCG^%%G1$(K5HyMpKnHbGWjkQ;7iI?aHa%mTY zR9Q+`gnMMcZ0M^N92eh6>mTIyn6H~#7amGCNneys7-e7Gg^TwBtu9-STN>;0RA`os zfAaWrubo)7|H=0^0V_nW0!cg$voW)<+W ze82eMFh$tc`*U{P^J8;QD@yiV_jz|5ei;zciAg62stKwfDjBN5lsR36E~@Tr7UiUj zJX!sOK5^umUTcdtXlK`z*W5&>UpJ4`PAvh66?p#Uxd@ewNp<4s6@xj6Ndy$?GZEnn9{l(B^PZKH6*{$ zyU~Lcxu3RSvoh~Ae41zzT;@tb>WR zM(xE}%icGS$LFOE(#F?S*Hd}8xnUoOGOJ~zu=3Nf#)Qs^unYtmq^4pGYW>L-2Hfs= zC4J$gn6Qq7V&}P+&@F9tA$}pXB=0W@D>MV=t)U^^4oHh|7d^{SQfYiCLZ0e_lxK+N zKHde-tV*sXs=C{-(rDYze~0&gE`I28&vqO1Ft+g#A$XiGTX_aD+-0~IS+$V#nOM1D>PRm>T;>e14|X4Qbho`qP}A`;dZ!^HVs zhIb*@3FoTQdxvBH!ZLWQ-$yB;&Z1x>TM0BBcnOcjW9F_Ul@#FOc=(lxi>~dM=g(`^ z8YAFJM+7v)7PZp7c97MV&o^o22Q##TXs)*EXT@nu2Pf@SR|#BsxGx#F_3KvOx|~nX zqC3f34Xw$2B>P)4P|&DDk07?BD*EOH{X63e~dqQ7F7RY*nxo2Akhl=9~-M8a;$hFVW^#GKv+JL^`OOf+X8sVsLaT+r2L@1LJ%`r-hbo|QHG?xN6 zFEL?dYXugDJv4R|ta; zKtN@KbdU@Uej5NN>3=!Uc4DV%GyDT@>U zt?D4^KOpqpc=vAGi(}N1>i~7W8_}2lFZ;Kgkpza?68q!Go$|j5p2+~;-?WhSe+7ie z1O8$L{|`K68Z9tur2m^~$dr&eYM}d%SdX)dY7>Yz_5fKK9sQqTxpu$NjW+HafrP%n zdCtEh?@uKkl7$$$s}V2tLy{wf+eMF(R}fQewN;TpFwHSU?=BT|eMOV^A9_xR$&O8O znsAu#QToc^R9k&jTF_UI3T=DajFc1D%JXC&HS5Cm`YZNG?-(rOAA$QdB1#lthC7el znSQs%eN}VDh!l|>B|D{YCy%JXH#Ie~BmKj1^}!2(FRUf<-=nZ{Wcn?m1m5Jp`e%fp zs9Pgf;3j*xT|1s^)Da}P`IkbFhlbBT)qnZC=%WI*8XxRx(Ql@%wbHdxuZbAWB3?NM zo1bbUYPrt5v)dd)q61Dme?R-PpY=IhDTl42eS&9PN(SnJ$yT5f;mD|nA46=oM z$r?C*XZ>-+z0pGzdyA`EYD%j1D2mot;|96Meg5u~jax68HT?f9Zz(-BcRzLZIZyYl zaKXbD+`~_$AVN1O|0aoh&=;jQ1dc;Z)R;%E@@6N{kN)*wgR(PR&SMvw`|DX0(;qf~ eaFWq5OFp3xyjg7(l{rBA2R76*1()kQeEB~+uV_F3 diff --git a/test/firebug-lite/skin/xp/titlebarMid.png b/test/firebug-lite/skin/xp/titlebarMid.png deleted file mode 100644 index 10998ae7b37f7462d6d8780c092b2c42f2b87249..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 273 zcmeAS@N?(olHy`uVBq!ia0vp^EI=&H!3HFw3-t_u6k~CayA#8@b22Z19JVBHcNd2L zAh=-f^2tCE&H|6fVg?3oVGw3ym^DWND9B#o>FdgVlZ};CPx{!U2mgRVk|nMYCC>S| zxv6<249-QVi6yBi3gww484B*6z5(HleBwYwIi4<#ArhBcCv4FxtmpF^vf0ZtmW3wW?R6r@!BMzW0`(AIn1J}M@~KJ_Bfp%=6Xf@ zz*W^<8$T2>{TEPd+2($FN}ccfdoNwrRMcl3+}ZqT`{}$MCAqmNTD=YHw5@>lGI+ZB KxvXlS| zxv6<249-QVi6yBi3gww484B*6z5(HleBwYwzMd|QArhC9@9eDoThFF)V9^SVlMPBA zzMqd5VN_!?IdJI2iH3MqGu;(c5fT?zB{(?~q)xT0Ywhgpba6J^YG9l^!|_IdNxQ6F d35zQOLvk9Y)x(dMYJdhac)I$ztaD0e0sz`NNu~e* diff --git a/test/firebug-lite/skin/xp/tree_close.gif b/test/firebug-lite/skin/xp/tree_close.gif deleted file mode 100644 index e26728ab36b9d612af0edb49ea297da5d6c4b96a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 300 zcmZ?wbhEHbnIzhYznme}4D*^ZPGfK7RlH z`Nxm1KYo1s@#Fj7zrX+f{qvv3K=GfTb5UwyNotBhd1gt5g1e`00E6OB7Dg@xdj=hl z_dp(HU^6-3oZ!L3;dnwN<42~M?d-(mhgZg_IrAp$ZsjqS@NN|<J`-rmugEauac+Ic? diff --git a/test/firebug-lite/skin/xp/tree_open.gif b/test/firebug-lite/skin/xp/tree_open.gif deleted file mode 100644 index edf662f36f32f39352a4033cde8c43baef3611e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 202 zcmV;*05$(dNk%w1VF>^U0E8X@0001qrohU=v&+M@%fq$I#J11Ky1dKU*U`n<)XCY@ z%H7z{-rCXO-PGdV*W}^Z=;hz&=HKb&;O_0{@bK&N^X~KW@AUNX_xJPo`1Sbs_W1bs z{r&s>{rvy`|NsC0A^s6Va%Ew3Wn>_CX>@2HM@dak03rDV0SW*g04x9i000R92><{E zGT;%6WFUHI>Wy6sbX+!Wn+9l=G-5#CKckC<0+>J=qlkk6SSS#qgn=*^2nwbW=@0?{ EJ89T&G5`Po diff --git a/test/firebug-lite/skin/xp/twistyClosed.png b/test/firebug-lite/skin/xp/twistyClosed.png deleted file mode 100644 index f80319b0a4e21532f5139acd618ce6782117b2d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 334 zcmV-U0kQsxP)1EtgQQRS5LtMzbrwA?yc}HH6?GB;baT0Ow3G2}Uok zHZ&NcAq(C>m59+ZoP+%k$L{2MaLq1=`W8Dud*c$1alVL@3 g)*%1<;7x!50Gzmo@IIg>jQ{`u07*qoM6N<$f_#RHXaE2J diff --git a/test/firebug-lite/skin/xp/twistyOpen.png b/test/firebug-lite/skin/xp/twistyOpen.png deleted file mode 100644 index 868012434599b589e3d75190202fe6b4a16270cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 309 zcmV-50m}Y~P)j*YPNxz}~_W*jQMJ*jNY_HW3qJ$j|;{+%Yjh7DXTI z56m}@x3hwX@T)q!Emk{P?@u40(V&mXcqqWm)7g@~sjgSfEMqi;Xx*xG1SO027%Zja z3u|B{GbFdrh09XI_j^v><6-N<#u!A=#hwaOl5I99vJ`oGci}h;klUiRafr(2!})Hs za^Y)mMiPh6(!xz{g6A>fw=mCfzTr7{>*dawCI0!rhX4Zrv(|{FCa*++00000NkvXX Hu0mjfk~@O2 diff --git a/test/firebug-lite/skin/xp/up.png b/test/firebug-lite/skin/xp/up.png deleted file mode 100644 index 2174d03a9c91a29a40ce8e9cfd715e9b9320f178..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 619 zcmV-x0+juUP)vmZ_X00GBIL_t(I zjir-4h!a5+$A3Hfp&N7OLOAf6gQOHW4z;rpP76^GI}1A@mL|kbk8Dso#aMc^{UIn8 zDjZ1ALaoH=xD=v=aAe(F-0vBSP4t!v8uV2&%=`c5z5mS9lv4ap7?Z`v3zuBrI^g_8 z;{gwkJ>75tG^G^p&R=W`+jc8w&N6@e1j4qbDrFGhe|XQ%%NNKXa8Eva(lG!cB^#CH z6|99t!p~p-c)hi-NNIV6owvOPkOM*`ozhYb8O1a8U0SN~<;`mc#vX)9AvA$X(wP84 z6NF>)bAXhnG$|ydSw^*f1%UqgV+>s{oQG2G0VoNhA4PGq&gQMV0Gz&alm3JC0wh#9 zKuk8uAENvr$-tx9tkY|)VaEw}oX~5nQEk>q2Hvl{3E+1HzE3JMYWF$-oVtH|U+=Yc zi|re2453d042jc(&C6H$9!Ho$V2ZrtL}nyXa@ab+k@6gdVeSV+-T)JgN-CL0fCOZ= z*L%!VV(yNJP(^?OZ#($r96eOVvZg=X*j^yw(`Xl!f9V`h)vmZ_X00DzZL_t(I zjir-KOB+!XhM(h1jFXHIQ$%-J1iF$LXcdG~;$P^Z3pcLaRr&`q`2&*fT)XL_i~fa_ zQYiJK%;2ghsGzuMn}svAHkZ>yZX~0T2K&P0ex3I@=W;oss{D`K!D3q^0$u@?e|WmU zn>E!4Kvb12k)~5BNAoXUQhnaQDV0Y$O_uWG;|DI@zr$o{w659`Rb^A;=lt?Y<GJe9t4ZPjvxOfU{G~SoXeBI}a+r9Otte;PK85 z0N<9DaBcyz+W_bKcitQ)d*;HjO5Rf`kO!vOa_fB}*);1Y1`8NeTV=L55&DoAZW377+_cXIbt0H!Q3 z_X`w@-LFos(r^skJ?3G3F%B5Fdjs&Mr`sLTs5qIi=w9K;=mz_x!ftPh&UFb-r46vmZ_X00C-AL_t(I zjir;ZOF~f;#((GaRIvBdAc=w+8=8cmDH4u%Lb(A(07#^Mkopg(g^U z)IR}}kT13HoER*}AZiUazP>~C1xk&M2h3jp*b&JBdyMv(@&~H9KEPk~0rA~|dRYjc QCIA2c07*qoM6N<$f>7|)4gdfE diff --git a/test/firebug-lite/skin/xp/warningIcon.gif b/test/firebug-lite/skin/xp/warningIcon.gif deleted file mode 100644 index 84972788620159cbf2bfc443acbdea47350e69de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 357 zcmZ?wbhEHbE&KGfouIlu9-6#HcaB$ zG?i=146bdnIajS>*t>-D$U2T4+ZlK7W;nHt{p>EbO9$C5A7VRmhT+CZ)|;nUZ(U}7 zaE0aZ4VEXjnD5?Ycy^ch`90=WkCD>#a_b-_~zF~Uzj^Wc=rqAz~zJ6r< z@s;uCcg9~o82|rg_)j8G{3qyKl$uzQnxasiS(2gP?&%xAp!k!8k&D5eK?meLkVhTZ zau3W8h|mygJ8~u4lObW+>2n{Mco{e@gr`I#q?iebooI6SC$mJn?L%ahn2UG`Lq&?~ z@grF)Ic%m^c(92os;bHgx;wM0dxu2?y0fZ~Y@8+83$Y2csYTc*2 diff --git a/test/firebug-lite/skin/xp/warningIcon.png b/test/firebug-lite/skin/xp/warningIcon.png deleted file mode 100644 index de51084e8489f498b89dd9a59d82eb9564b7d050..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 516 zcmV+f0{i`mP)X+Z1;#G+8)`#`)nwDij+1|+};(+Jd*z{tojUrGNrgOti&26irp z_}33i3=gldFg&}%ydKD%4m4mlSOTPRRTp>8w%MHj-#%jkasQt=!|=bOgW><(yI^TB zesYWX|At9i|AA_qz?K0SLTh@t|9^bL1XtwZ!T_=ktQjT-!jEsTfHbZKahQM#GSy9g zGw=!jV;}@%)c=6I5d!peNPt)%qXt$R0@A3+&Ho=o(%2Y6D=A@WxvV2T-}@x_m?j12e;Kn75?FIa%Y*5~(_)p>;wfs>Yo>SSa9R12cEf^3|A z?HDV=w@(OLSFdJZ*t3U$;p|ydO|Ks_Gd#G$auApZ7BB&cJHLN2R-V|*!SL$`L^DVe z48y>e_e>0@wy}el)6tV$3kUcAYBiJJ3`|`A816m!$KYVc!0_$`6T_P)%nWzVvoQSm z#aIlqs1HRWRI?%|K>)EC$csSy9f(f>@eyb`{RmSF5MTfvB)oWs%O|`50000