Auto generating the icon sprites

canary
WolverinDEV 2020-08-09 00:08:56 +02:00
parent 6b623a4d11
commit 2d13b750b2
10 changed files with 804 additions and 3466 deletions

View File

@ -40,7 +40,7 @@ const APP_FILE_LIST_SHARED_SOURCE: ProjectResource[] = [
},
{ /* javascript files as manifest.json */
"type": "js",
"search-pattern": /.*\.(js|json)$/,
"search-pattern": /.*\.(js|json|svg)$/,
"build-target": "dev|rel",
"path": "js/",

716
package-lock.json generated
View File

@ -1572,6 +1572,12 @@
"@types/node": "*"
}
},
"@types/xml-parser": {
"version": "1.2.29",
"resolved": "https://registry.npmjs.org/@types/xml-parser/-/xml-parser-1.2.29.tgz",
"integrity": "sha512-l5ID65aPDctN/dZYkDgLOEBuoHrD8S9TyfD5soORUtVHKyOs7Wr66iNxAtcmT/tER1GeYqp51jR6l08gmsRcZg==",
"dev": true
},
"@webassemblyjs/ast": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz",
@ -2023,6 +2029,12 @@
"sprintf-js": "~1.0.2"
}
},
"arr-diff": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
"integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
"dev": true
},
"arr-filter": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz",
@ -2146,6 +2158,12 @@
"integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
"dev": true
},
"array-unique": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
"integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
"dev": true
},
"arrify": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
@ -2256,6 +2274,12 @@
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
"dev": true
},
"at-least-node": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
"integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
"dev": true
},
"atob": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
@ -4515,6 +4539,41 @@
}
}
},
"expand-brackets": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
"integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
"dev": true,
"requires": {
"debug": "^2.3.3",
"define-property": "^0.2.5",
"extend-shallow": "^2.0.1",
"posix-character-classes": "^0.1.0",
"regex-not": "^1.0.0",
"snapdragon": "^0.8.1",
"to-regex": "^3.0.1"
},
"dependencies": {
"define-property": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
"integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
"dev": true,
"requires": {
"is-descriptor": "^0.1.0"
}
},
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"dev": true,
"requires": {
"is-extendable": "^0.1.0"
}
}
}
},
"expand-tilde": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
@ -4632,6 +4691,77 @@
}
}
},
"extglob": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
"integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
"dev": true,
"requires": {
"array-unique": "^0.3.2",
"define-property": "^1.0.0",
"expand-brackets": "^2.1.4",
"extend-shallow": "^2.0.1",
"fragment-cache": "^0.2.1",
"regex-not": "^1.0.0",
"snapdragon": "^0.8.1",
"to-regex": "^3.0.1"
},
"dependencies": {
"define-property": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
"integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
"dev": true,
"requires": {
"is-descriptor": "^1.0.0"
}
},
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"dev": true,
"requires": {
"is-extendable": "^0.1.0"
}
},
"is-accessor-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
"integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
"dev": true,
"requires": {
"kind-of": "^6.0.0"
}
},
"is-data-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
"integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
"dev": true,
"requires": {
"kind-of": "^6.0.0"
}
},
"is-descriptor": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
"integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
"dev": true,
"requires": {
"is-accessor-descriptor": "^1.0.0",
"is-data-descriptor": "^1.0.0",
"kind-of": "^6.0.2"
}
},
"kind-of": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
"dev": true
}
}
},
"extsprintf": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
@ -4751,6 +4881,12 @@
"integrity": "sha512-x4FEgaz3zNRtJfLFqJmHWxkMDDvXVtaznj2V9jiP8ACUJrUgist4bP9FmDL2Vew2Y9mEQI/tG4GqabaitYp9CQ==",
"dev": true
},
"fast-xml-parser": {
"version": "3.17.4",
"resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.17.4.tgz",
"integrity": "sha512-qudnQuyYBgnvzf5Lj/yxMcf4L9NcVWihXJg7CiU1L+oUCq8MUnFEfH2/nXR/W5uq+yvUN1h7z6s7vs2v1WkL1A==",
"dev": true
},
"fastq": {
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz",
@ -7618,6 +7754,12 @@
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
"isobject": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
"integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
"dev": true
},
"isstream": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
@ -8580,6 +8722,107 @@
"integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=",
"dev": true
},
"micromatch": {
"version": "3.1.10",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
"integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
"dev": true,
"requires": {
"arr-diff": "^4.0.0",
"array-unique": "^0.3.2",
"braces": "^2.3.1",
"define-property": "^2.0.2",
"extend-shallow": "^3.0.2",
"extglob": "^2.0.4",
"fragment-cache": "^0.2.1",
"kind-of": "^6.0.2",
"nanomatch": "^1.2.9",
"object.pick": "^1.3.0",
"regex-not": "^1.0.0",
"snapdragon": "^0.8.1",
"to-regex": "^3.0.2"
},
"dependencies": {
"braces": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
"integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
"dev": true,
"requires": {
"arr-flatten": "^1.1.0",
"array-unique": "^0.3.2",
"extend-shallow": "^2.0.1",
"fill-range": "^4.0.0",
"isobject": "^3.0.1",
"repeat-element": "^1.1.2",
"snapdragon": "^0.8.1",
"snapdragon-node": "^2.0.1",
"split-string": "^3.0.2",
"to-regex": "^3.0.1"
},
"dependencies": {
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"dev": true,
"requires": {
"is-extendable": "^0.1.0"
}
}
}
},
"fill-range": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
"integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
"dev": true,
"requires": {
"extend-shallow": "^2.0.1",
"is-number": "^3.0.0",
"repeat-string": "^1.6.1",
"to-regex-range": "^2.1.0"
},
"dependencies": {
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"dev": true,
"requires": {
"is-extendable": "^0.1.0"
}
}
}
},
"is-number": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
"integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
"dev": true,
"requires": {
"kind-of": "^3.0.2"
},
"dependencies": {
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"dev": true,
"requires": {
"is-buffer": "^1.1.5"
}
}
}
},
"kind-of": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
"dev": true
}
}
},
"miller-rabin": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
@ -9534,6 +9777,33 @@
"integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
"dev": true
},
"path": {
"version": "0.12.7",
"resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz",
"integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=",
"dev": true,
"requires": {
"process": "^0.11.1",
"util": "^0.10.3"
},
"dependencies": {
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true
},
"util": {
"version": "0.10.4",
"resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
"integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
"dev": true,
"requires": {
"inherits": "2.0.3"
}
}
}
},
"path-browserify": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
@ -9803,6 +10073,12 @@
"integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
"dev": true
},
"potpack": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.1.tgz",
"integrity": "sha512-15vItUAbViaYrmaB/Pbw7z6qX2xENbFSTA7Ii4tgbPtasxm5v6ryKhKtL91tpWovDJzTiZqdwzhcFBCwiMVdVw==",
"dev": true
},
"prepend-http": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
@ -13470,6 +13746,144 @@
}
}
},
"watchpack-chokidar2": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz",
"integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==",
"dev": true,
"optional": true,
"requires": {
"chokidar": "^2.1.8"
},
"dependencies": {
"anymatch": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
"integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
"dev": true,
"optional": true,
"requires": {
"micromatch": "^3.1.4",
"normalize-path": "^2.1.1"
},
"dependencies": {
"normalize-path": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
"integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
"dev": true,
"optional": true,
"requires": {
"remove-trailing-separator": "^1.0.1"
}
}
}
},
"braces": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
"integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
"dev": true,
"optional": true,
"requires": {
"arr-flatten": "^1.1.0",
"array-unique": "^0.3.2",
"extend-shallow": "^2.0.1",
"fill-range": "^4.0.0",
"isobject": "^3.0.1",
"repeat-element": "^1.1.2",
"snapdragon": "^0.8.1",
"snapdragon-node": "^2.0.1",
"split-string": "^3.0.2",
"to-regex": "^3.0.1"
}
},
"chokidar": {
"version": "2.1.8",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
"integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
"dev": true,
"optional": true,
"requires": {
"anymatch": "^2.0.0",
"async-each": "^1.0.1",
"braces": "^2.3.2",
"fsevents": "^1.2.7",
"glob-parent": "^3.1.0",
"inherits": "^2.0.3",
"is-binary-path": "^1.0.0",
"is-glob": "^4.0.0",
"normalize-path": "^3.0.0",
"path-is-absolute": "^1.0.0",
"readdirp": "^2.2.1",
"upath": "^1.1.1"
}
},
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"dev": true,
"optional": true,
"requires": {
"is-extendable": "^0.1.0"
}
},
"fill-range": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
"integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
"dev": true,
"optional": true,
"requires": {
"extend-shallow": "^2.0.1",
"is-number": "^3.0.0",
"repeat-string": "^1.6.1",
"to-regex-range": "^2.1.0"
}
},
"glob-parent": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
"integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
"dev": true,
"optional": true,
"requires": {
"is-glob": "^3.1.0",
"path-dirname": "^1.0.0"
},
"dependencies": {
"is-glob": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
"integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
"dev": true,
"optional": true,
"requires": {
"is-extglob": "^2.1.0"
}
}
}
},
"is-number": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
"integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
"dev": true,
"optional": true,
"requires": {
"kind-of": "^3.0.2"
}
},
"normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
"dev": true,
"optional": true
}
}
},
"webpack": {
"version": "4.42.1",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-4.42.1.tgz",
@ -14305,6 +14719,299 @@
"source-map": "~0.6.1"
}
},
"webpack-svg-sprite-generator": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/webpack-svg-sprite-generator/-/webpack-svg-sprite-generator-1.0.6.tgz",
"integrity": "sha512-/LGZF6Ykh7v7DnA6DcG6HjtQmwd/fVpY2/h+aL/TWhWtAxDpK/zuCxxxzbz5y7aS1okpuyiSKjfnslw3x6t6hQ==",
"dev": true,
"requires": {
"fs-extra": "^9.0.1",
"path": "^0.12.7",
"potpack": "^1.0.1",
"webpack": "^4.44.1"
},
"dependencies": {
"binary-extensions": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz",
"integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==",
"dev": true,
"optional": true
},
"cacache": {
"version": "12.0.4",
"resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz",
"integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==",
"dev": true,
"requires": {
"bluebird": "^3.5.5",
"chownr": "^1.1.1",
"figgy-pudding": "^3.5.1",
"glob": "^7.1.4",
"graceful-fs": "^4.1.15",
"infer-owner": "^1.0.3",
"lru-cache": "^5.1.1",
"mississippi": "^3.0.0",
"mkdirp": "^0.5.1",
"move-concurrently": "^1.0.1",
"promise-inflight": "^1.0.1",
"rimraf": "^2.6.3",
"ssri": "^6.0.1",
"unique-filename": "^1.1.1",
"y18n": "^4.0.0"
}
},
"chokidar": {
"version": "3.4.2",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz",
"integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==",
"dev": true,
"optional": true,
"requires": {
"anymatch": "~3.1.1",
"braces": "~3.0.2",
"fsevents": "~2.1.2",
"glob-parent": "~5.1.0",
"is-binary-path": "~2.1.0",
"is-glob": "~4.0.1",
"normalize-path": "~3.0.0",
"readdirp": "~3.4.0"
}
},
"enhanced-resolve": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz",
"integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==",
"dev": true,
"requires": {
"graceful-fs": "^4.1.2",
"memory-fs": "^0.5.0",
"tapable": "^1.0.0"
},
"dependencies": {
"memory-fs": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz",
"integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==",
"dev": true,
"requires": {
"errno": "^0.1.3",
"readable-stream": "^2.0.1"
}
}
}
},
"find-cache-dir": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz",
"integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==",
"dev": true,
"requires": {
"commondir": "^1.0.1",
"make-dir": "^2.0.0",
"pkg-dir": "^3.0.0"
}
},
"fs-extra": {
"version": "9.0.1",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz",
"integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==",
"dev": true,
"requires": {
"at-least-node": "^1.0.0",
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^1.0.0"
}
},
"fsevents": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
"integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
"dev": true,
"optional": true
},
"is-binary-path": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
"dev": true,
"optional": true,
"requires": {
"binary-extensions": "^2.0.0"
}
},
"jsonfile": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz",
"integrity": "sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==",
"dev": true,
"requires": {
"graceful-fs": "^4.1.6",
"universalify": "^1.0.0"
}
},
"lru-cache": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
"integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
"dev": true,
"requires": {
"yallist": "^3.0.2"
}
},
"make-dir": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
"integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
"dev": true,
"requires": {
"pify": "^4.0.1",
"semver": "^5.6.0"
}
},
"memory-fs": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz",
"integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=",
"dev": true,
"requires": {
"errno": "^0.1.3",
"readable-stream": "^2.0.1"
}
},
"normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
"dev": true,
"optional": true
},
"pify": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
"integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
"dev": true
},
"readdirp": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz",
"integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==",
"dev": true,
"optional": true,
"requires": {
"picomatch": "^2.2.1"
}
},
"schema-utils": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
"integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
"dev": true,
"requires": {
"ajv": "^6.1.0",
"ajv-errors": "^1.0.0",
"ajv-keywords": "^3.1.0"
}
},
"serialize-javascript": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz",
"integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==",
"dev": true,
"requires": {
"randombytes": "^2.1.0"
}
},
"ssri": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz",
"integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==",
"dev": true,
"requires": {
"figgy-pudding": "^3.5.1"
}
},
"terser-webpack-plugin": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz",
"integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==",
"dev": true,
"requires": {
"cacache": "^12.0.2",
"find-cache-dir": "^2.1.0",
"is-wsl": "^1.1.0",
"schema-utils": "^1.0.0",
"serialize-javascript": "^3.1.0",
"source-map": "^0.6.1",
"terser": "^4.1.2",
"webpack-sources": "^1.4.0",
"worker-farm": "^1.7.0"
}
},
"universalify": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz",
"integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==",
"dev": true
},
"watchpack": {
"version": "1.7.4",
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz",
"integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==",
"dev": true,
"requires": {
"chokidar": "^3.4.1",
"graceful-fs": "^4.1.2",
"neo-async": "^2.5.0",
"watchpack-chokidar2": "^2.0.0"
}
},
"webpack": {
"version": "4.44.1",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz",
"integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==",
"dev": true,
"requires": {
"@webassemblyjs/ast": "1.9.0",
"@webassemblyjs/helper-module-context": "1.9.0",
"@webassemblyjs/wasm-edit": "1.9.0",
"@webassemblyjs/wasm-parser": "1.9.0",
"acorn": "^6.4.1",
"ajv": "^6.10.2",
"ajv-keywords": "^3.4.1",
"chrome-trace-event": "^1.0.2",
"enhanced-resolve": "^4.3.0",
"eslint-scope": "^4.0.3",
"json-parse-better-errors": "^1.0.2",
"loader-runner": "^2.4.0",
"loader-utils": "^1.2.3",
"memory-fs": "^0.4.1",
"micromatch": "^3.1.10",
"mkdirp": "^0.5.3",
"neo-async": "^2.6.1",
"node-libs-browser": "^2.2.1",
"schema-utils": "^1.0.0",
"tapable": "^1.1.3",
"terser-webpack-plugin": "^1.4.3",
"watchpack": "^1.7.4",
"webpack-sources": "^1.4.1"
}
},
"y18n": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz",
"integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==",
"dev": true
},
"yallist": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
"integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
"dev": true
}
}
},
"webrtc-adapter": {
"version": "7.5.1",
"resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-7.5.1.tgz",
@ -14448,6 +15155,15 @@
"integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==",
"dev": true
},
"xml-parser": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/xml-parser/-/xml-parser-1.2.1.tgz",
"integrity": "sha1-wx9MNPKXXbgq0BMiISBZJzYVb80=",
"dev": true,
"requires": {
"debug": "^2.2.0"
}
},
"xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",

View File

@ -40,6 +40,7 @@
"@types/sha256": "^0.2.0",
"@types/twemoji": "^12.1.1",
"@types/websocket": "0.0.40",
"@types/xml-parser": "^1.2.29",
"babel-loader": "^8.1.0",
"chunk-manifest-webpack-plugin": "^1.1.2",
"circular-dependency-plugin": "^5.2.0",
@ -49,6 +50,7 @@
"csso-cli": "^3.0.0",
"ejs": "^3.0.2",
"exports-loader": "^0.7.0",
"fast-xml-parser": "^3.17.4",
"file-loader": "^6.0.0",
"fs-extra": "latest",
"gulp": "^4.0.2",
@ -59,6 +61,7 @@
"mini-css-extract-plugin": "^0.9.0",
"mkdirp": "^0.5.1",
"node-sass": "^4.14.1",
"potpack": "^1.0.1",
"raw-loader": "^4.0.0",
"sass": "1.22.10",
"sass-loader": "^8.0.2",
@ -74,7 +77,9 @@
"webpack": "^4.42.1",
"webpack-bundle-analyzer": "^3.6.1",
"webpack-cli": "^3.3.11",
"worker-plugin": "^4.0.2"
"webpack-svg-sprite-generator": "^1.0.6",
"worker-plugin": "^4.0.2",
"xml-parser": "^1.2.1"
},
"repository": {
"type": "git",

View File

@ -38,6 +38,4 @@ import "!style-loader!css-loader?url=false!sass-loader?sourceMap=true!./static/m
import "!style-loader!css-loader?url=false!sass-loader?sourceMap=true!./static/overlay-image-preview.scss"
import "!style-loader!css-loader?url=false!sass-loader?sourceMap=true!./static/ts/tab.scss"
import "!style-loader!css-loader?url=false!sass-loader?sourceMap=true!./static/ts/icons.scss"
import "!style-loader!css-loader?url=false!sass-loader?sourceMap=true!./static/ts/icons_em.scss"
import "!style-loader!css-loader?url=false!sass-loader?sourceMap=true!./static/ts/country.scss"

View File

@ -279,6 +279,12 @@ $animation_seperator_length: .1s;
}
}
.icon_empty {
display: inline-block;
height: 16px;
width: 16px;
}
html, body {
overflow: hidden;
}

File diff suppressed because it is too large Load Diff

View File

@ -1,607 +0,0 @@
/* sprite bounds (px): width="496" height="400" */
.icon_em {
display: inline-block;
background: url('../../../img/client_icon_sprite.svg'), url('../../img/client_icon_sprite.svg') no-repeat;
background-size: calc(496em / 16) calc(400em / 16);
height: 1em;
width: 1em;
}
/* Icons 1em */
.icon_em.client-d_sound {
background-position: calc(0em / 16) calc(0em / 16);
}
.icon_em.client-d_sound_me {
background-position: calc(-32em / 16) calc(0em / 16);
}
.icon_em.client-d_sound_user {
background-position: calc(-64em / 16) calc(0em / 16);
}
.icon_em.client-about {
background-position: calc(-96em / 16) calc(0em / 16);
}
.icon_em.client-activate_microphone {
background-position: calc(-128em / 16) calc(0em / 16);
}
.icon_em.client-add {
background-position: calc(-160em / 16) calc(0em / 16);
}
.icon_em.client-add_foe {
background-position: calc(-192em / 16) calc(0em / 16);
}
.icon_em.client-add_folder {
background-position: calc(-224em / 16) calc(0em / 16);
}
.icon_em.client-add_friend {
background-position: calc(-256em / 16) calc(0em / 16);
}
.icon_em.client-addon {
background-position: calc(-288em / 16) calc(0em / 16);
}
.icon_em.client-addon-collection {
background-position: calc(-320em / 16) calc(0em / 16);
}
.icon_em.client-apply {
background-position: calc(-352em / 16) calc(0em / 16);
}
.icon_em.client-arrow_down {
background-position: calc(-384em / 16) calc(0em / 16);
}
.icon_em.client-arrow_left {
background-position: calc(-416em / 16) calc(0em / 16);
}
.icon_em.client-arrow_right {
background-position: calc(-448em / 16) calc(0em / 16);
}
.icon_em.client-arrow_up {
background-position: calc(-480em / 16) calc(0em / 16);
}
.icon_em.client-away {
background-position: calc(0em / 16) calc(-32em / 16);
}
.icon_em.client-ban_client {
background-position: calc(-32em / 16) calc(-32em / 16);
}
.icon_em.client-ban_list {
background-position: calc(-64em / 16) calc(-32em / 16);
}
.icon_em.client-bookmark_add {
background-position: calc(-96em / 16) calc(-32em / 16);
}
.icon_em.client-bookmark_add_folder {
background-position: calc(-128em / 16) calc(-32em / 16);
}
.icon_em.client-bookmark_duplicate {
background-position: calc(-160em / 16) calc(-32em / 16);
}
.icon_em.client-bookmark_manager {
background-position: calc(-192em / 16) calc(-32em / 16);
}
.icon_em.client-bookmark_remove {
background-position: calc(-224em / 16) calc(-32em / 16);
}
.icon_em.client-broken_image {
background-position: calc(-256em / 16) calc(-32em / 16);
}
.icon_em.client-browse-addon-online {
background-position: calc(-288em / 16) calc(-32em / 16);
}
.icon_em.client-capture {
background-position: calc(-320em / 16) calc(-32em / 16);
}
.icon_em.client-changelog {
background-position: calc(-352em / 16) calc(-32em / 16);
}
.icon_em.client-change_nickname {
background-position: calc(-384em / 16) calc(-32em / 16);
}
.icon_em.client-channel_chat {
background-position: calc(-416em / 16) calc(-32em / 16);
}
.icon_em.client-channel_collapse_all {
background-position: calc(-448em / 16) calc(-32em / 16);
}
.icon_em.client-channel_commander {
background-position: calc(-480em / 16) calc(-32em / 16);
}
.icon_em.client-channel_create {
background-position: calc(0em / 16) calc(-64em / 16);
}
.icon_em.client-channel_create_sub {
background-position: calc(-32em / 16) calc(-64em / 16);
}
.icon_em.client-channel_default {
background-position: calc(-64em / 16) calc(-64em / 16);
}
.icon_em.client-channel_delete {
background-position: calc(-96em / 16) calc(-64em / 16);
}
.icon_em.client-channel_edit {
background-position: calc(-128em / 16) calc(-64em / 16);
}
.icon_em.client-channel_expand_all {
background-position: calc(-160em / 16) calc(-64em / 16);
}
.icon_em.client-channel_green {
background-position: calc(-192em / 16) calc(-64em / 16);
}
.icon_em.client-channel_green_subscribed {
background-position: calc(-224em / 16) calc(-64em / 16);
}
.icon_em.client-channel_private {
background-position: calc(-256em / 16) calc(-64em / 16);
}
.icon_em.client-channel_red {
background-position: calc(-288em / 16) calc(-64em / 16);
}
.icon_em.client-channel_red_subscribed {
background-position: calc(-320em / 16) calc(-64em / 16);
}
.icon_em.client-channel_switch {
background-position: calc(-352em / 16) calc(-64em / 16);
}
.icon_em.client-channel_unsubscribed {
background-position: calc(-384em / 16) calc(-64em / 16);
}
.icon_em.client-channel_yellow {
background-position: calc(-416em / 16) calc(-64em / 16);
}
.icon_em.client-channel_yellow_subscribed {
background-position: calc(-448em / 16) calc(-64em / 16);
}
.icon_em.client-check_update {
background-position: calc(-480em / 16) calc(-64em / 16);
}
.icon_em.client-client_hide {
background-position: calc(0em / 16) calc(-96em / 16);
}
.icon_em.client-client_show {
background-position: calc(-32em / 16) calc(-96em / 16);
}
.icon_em.client-close_button {
background-position: calc(-64em / 16) calc(-96em / 16);
}
.icon_em.client-complaint_list {
background-position: calc(-96em / 16) calc(-96em / 16);
}
.icon_em.client-conflict-icon {
background-position: calc(-128em / 16) calc(-96em / 16);
}
.icon_em.client-connect {
background-position: calc(-160em / 16) calc(-96em / 16);
}
.icon_em.client-contact {
background-position: calc(-192em / 16) calc(-96em / 16);
}
.icon_em.client-copy {
background-position: calc(-224em / 16) calc(-96em / 16);
}
.icon_em.client-copy_url {
background-position: calc(-256em / 16) calc(-96em / 16);
}
.icon_em.client-default {
background-position: calc(-288em / 16) calc(-96em / 16);
}
.icon_em.client-default_for_all_bookmarks {
background-position: calc(-320em / 16) calc(-96em / 16);
}
.icon_em.client-delete {
background-position: calc(-352em / 16) calc(-96em / 16);
}
.icon_em.client-delete_avatar {
background-position: calc(-384em / 16) calc(-96em / 16);
}
.icon_em.client-disconnect {
background-position: calc(-416em / 16) calc(-96em / 16);
}
.icon_em.client-down {
background-position: calc(-448em / 16) calc(-96em / 16);
}
.icon_em.client-download {
background-position: calc(-480em / 16) calc(-96em / 16);
}
.icon_em.client-edit {
background-position: calc(0em / 16) calc(-128em / 16);
}
.icon_em.client-edit_friend_foe_status {
background-position: calc(-32em / 16) calc(-128em / 16);
}
.icon_em.client-emoticon {
background-position: calc(-64em / 16) calc(-128em / 16);
}
.icon_em.client-error {
background-position: calc(-96em / 16) calc(-128em / 16);
}
.icon_em.client-file_home {
background-position: calc(-128em / 16) calc(-128em / 16);
}
.icon_em.client-file_refresh {
background-position: calc(-160em / 16) calc(-128em / 16);
}
.icon_em.client-filetransfer {
background-position: calc(-192em / 16) calc(-128em / 16);
}
.icon_em.client-find {
background-position: calc(-224em / 16) calc(-128em / 16);
}
.icon_em.client-folder {
background-position: calc(-256em / 16) calc(-128em / 16);
}
.icon_em.client-folder_up {
background-position: calc(-288em / 16) calc(-128em / 16);
}
.icon_em.client-group_100 {
background-position: calc(-320em / 16) calc(-128em / 16);
}
.icon_em.client-group_200 {
background-position: calc(-352em / 16) calc(-128em / 16);
}
.icon_em.client-group_300 {
background-position: calc(-384em / 16) calc(-128em / 16);
}
.icon_em.client-group_500 {
background-position: calc(-416em / 16) calc(-128em / 16);
}
.icon_em.client-group_600 {
background-position: calc(-448em / 16) calc(-128em / 16);
}
.icon_em.client-guisetup {
background-position: calc(-480em / 16) calc(-128em / 16);
}
.icon_em.client-hardware_input_muted {
background-position: calc(0em / 16) calc(-160em / 16);
}
.icon_em.client-hardware_output_muted {
background-position: calc(-32em / 16) calc(-160em / 16);
}
.icon_em.client-hoster_button {
background-position: calc(-64em / 16) calc(-160em / 16);
}
.icon_em.client-hotkeys {
background-position: calc(-96em / 16) calc(-160em / 16);
}
.icon_em.client-icon-pack {
background-position: calc(-128em / 16) calc(-160em / 16);
}
.icon_em.client-iconsview {
background-position: calc(-160em / 16) calc(-160em / 16);
}
.icon_em.client-iconviewer {
background-position: calc(-192em / 16) calc(-160em / 16);
}
.icon_em.client-identity_default {
background-position: calc(-224em / 16) calc(-160em / 16);
}
.icon_em.client-identity_export {
background-position: calc(-256em / 16) calc(-160em / 16);
}
.icon_em.client-identity_import {
background-position: calc(-288em / 16) calc(-160em / 16);
}
.icon_em.client-identity_manager {
background-position: calc(-320em / 16) calc(-160em / 16);
}
.icon_em.client-info {
background-position: calc(-352em / 16) calc(-160em / 16);
}
.icon_em.client-input_muted {
background-position: calc(-384em / 16) calc(-160em / 16);
}
.icon_em.client-input_muted_local {
background-position: calc(-416em / 16) calc(-160em / 16);
}
.icon_em.client-invite_buddy {
background-position: calc(-448em / 16) calc(-160em / 16);
}
.icon_em.client-is_talker {
background-position: calc(-480em / 16) calc(-160em / 16);
}
.icon_em.client-kick_channel {
background-position: calc(0em / 16) calc(-192em / 16);
}
.icon_em.client-kick_server {
background-position: calc(-32em / 16) calc(-192em / 16);
}
.icon_em.client-listview {
background-position: calc(-64em / 16) calc(-192em / 16);
}
.icon_em.client-loading_image {
background-position: calc(-96em / 16) calc(-192em / 16);
}
.icon_em.client-message_incoming {
background-position: calc(-128em / 16) calc(-192em / 16);
}
.icon_em.client-message_info {
background-position: calc(-160em / 16) calc(-192em / 16);
}
.icon_em.client-message_outgoing {
background-position: calc(-192em / 16) calc(-192em / 16);
}
.icon_em.client-messages {
background-position: calc(-224em / 16) calc(-192em / 16);
}
.icon_em.client-moderated {
background-position: calc(-256em / 16) calc(-192em / 16);
}
.icon_em.client-move_client_to_own_channel {
background-position: calc(-288em / 16) calc(-192em / 16);
}
.icon_em.client-music {
background-position: calc(-320em / 16) calc(-192em / 16);
}
.icon_em.client-new_chat {
background-position: calc(-352em / 16) calc(-192em / 16);
}
.icon_em.client-notifications {
background-position: calc(-384em / 16) calc(-192em / 16);
}
.icon_em.client-offline_messages {
background-position: calc(-416em / 16) calc(-192em / 16);
}
.icon_em.client-on_whisperlist {
background-position: calc(-448em / 16) calc(-192em / 16);
}
.icon_em.client-output_muted {
background-position: calc(-480em / 16) calc(-192em / 16);
}
.icon_em.client-permission_channel {
background-position: calc(0em / 16) calc(-224em / 16);
}
.icon_em.client-permission_client {
background-position: calc(-32em / 16) calc(-224em / 16);
}
.icon_em.client-permission_overview {
background-position: calc(-64em / 16) calc(-224em / 16);
}
.icon_em.client-permission_server_groups {
background-position: calc(-96em / 16) calc(-224em / 16);
}
.icon_em.client-phoneticsnickname {
background-position: calc(-128em / 16) calc(-224em / 16);
}
.icon_em.client-ping_1 {
background-position: calc(-160em / 16) calc(-224em / 16);
}
.icon_em.client-ping_2 {
background-position: calc(-192em / 16) calc(-224em / 16);
}
.icon_em.client-ping_3 {
background-position: calc(-224em / 16) calc(-224em / 16);
}
.icon_em.client-ping_4 {
background-position: calc(-256em / 16) calc(-224em / 16);
}
.icon_em.client-ping_calculating {
background-position: calc(-288em / 16) calc(-224em / 16);
}
.icon_em.client-ping_disconnected {
background-position: calc(-320em / 16) calc(-224em / 16);
}
.icon_em.client-play {
background-position: calc(-352em / 16) calc(-224em / 16);
}
.icon_em.client-player_chat {
background-position: calc(-384em / 16) calc(-224em / 16);
}
.icon_em.client-player_commander_off {
background-position: calc(-416em / 16) calc(-224em / 16);
}
.icon_em.client-player_commander_on {
background-position: calc(-448em / 16) calc(-224em / 16);
}
.icon_em.client-player_off {
background-position: calc(-480em / 16) calc(-224em / 16);
}
.icon_em.client-player_on {
background-position: calc(0em / 16) calc(-256em / 16);
}
.icon_em.client-player_whisper {
background-position: calc(-32em / 16) calc(-256em / 16);
}
.icon_em.client-plugins {
background-position: calc(-64em / 16) calc(-256em / 16);
}
.icon_em.client-poke {
background-position: calc(-96em / 16) calc(-256em / 16);
}
.icon_em.client-present {
background-position: calc(-128em / 16) calc(-256em / 16);
}
.icon_em.client-recording_start {
background-position: calc(-160em / 16) calc(-256em / 16);
}
.icon_em.client-recording_stop {
background-position: calc(-192em / 16) calc(-256em / 16);
}
.icon_em.client-refresh {
background-position: calc(-224em / 16) calc(-256em / 16);
}
.icon_em.client-register {
background-position: calc(-256em / 16) calc(-256em / 16);
}
.icon_em.client-reload {
background-position: calc(-288em / 16) calc(-256em / 16);
}
.icon_em.client-remove_foe {
background-position: calc(-320em / 16) calc(-256em / 16);
}
.icon_em.client-remove_friend {
background-position: calc(-352em / 16) calc(-256em / 16);
}
.icon_em.client-security {
background-position: calc(-384em / 16) calc(-256em / 16);
}
.icon_em.client-selectfolder {
background-position: calc(-416em / 16) calc(-256em / 16);
}
.icon_em.client-send_complaint {
background-position: calc(-448em / 16) calc(-256em / 16);
}
.icon_em.client-server_green {
background-position: calc(-480em / 16) calc(-256em / 16);
}
.icon_em.client-server_log {
background-position: calc(0em / 16) calc(-288em / 16);
}
.icon_em.client-server_query {
background-position: calc(-32em / 16) calc(-288em / 16);
}
.icon_em.client-settings {
background-position: calc(-64em / 16) calc(-288em / 16);
}
.icon_em.client-sort_by_name {
background-position: calc(-96em / 16) calc(-288em / 16);
}
.icon_em.client-soundpack {
background-position: calc(-128em / 16) calc(-288em / 16);
}
.icon_em.client-sound-pack {
background-position: calc(-160em / 16) calc(-288em / 16);
}
.icon_em.client-stop {
background-position: calc(-192em / 16) calc(-288em / 16);
}
.icon_em.client-subscribe_mode {
background-position: calc(-224em / 16) calc(-288em / 16);
}
.icon_em.client-subscribe_to_all_channels {
background-position: calc(-256em / 16) calc(-288em / 16);
}
.icon_em.client-subscribe_to_channel {
background-position: calc(-288em / 16) calc(-288em / 16);
}
.icon_em.client-subscribe_to_channel_family {
background-position: calc(-320em / 16) calc(-288em / 16);
}
.icon_em.client-switch_advanced {
background-position: calc(-352em / 16) calc(-288em / 16);
}
.icon_em.client-switch_standard {
background-position: calc(-384em / 16) calc(-288em / 16);
}
.icon_em.client-sync-disable {
background-position: calc(-416em / 16) calc(-288em / 16);
}
.icon_em.client-sync-enable {
background-position: calc(-448em / 16) calc(-288em / 16);
}
.icon_em.client-sync-icon {
background-position: calc(-480em / 16) calc(-288em / 16);
}
.icon_em.client-tab_close_button {
background-position: calc(0em / 16) calc(-320em / 16);
}
.icon_em.client-talk_power_grant {
background-position: calc(-32em / 16) calc(-320em / 16);
}
.icon_em.client-talk_power_grant_next {
background-position: calc(-64em / 16) calc(-320em / 16);
}
.icon_em.client-talk_power_request {
background-position: calc(-96em / 16) calc(-320em / 16);
}
.icon_em.client-talk_power_request_cancel {
background-position: calc(-128em / 16) calc(-320em / 16);
}
.icon_em.client-talk_power_revoke {
background-position: calc(-160em / 16) calc(-320em / 16);
}
.icon_em.client-talk_power_revoke_all_grant_next {
background-position: calc(-192em / 16) calc(-320em / 16);
}
.icon_em.client-temp_server_password {
background-position: calc(-224em / 16) calc(-320em / 16);
}
.icon_em.client-temp_server_password_add {
background-position: calc(-256em / 16) calc(-320em / 16);
}
.icon_em.client-textformat {
background-position: calc(-288em / 16) calc(-320em / 16);
}
.icon_em.client-textformat_bold {
background-position: calc(-320em / 16) calc(-320em / 16);
}
.icon_em.client-textformat_foreground {
background-position: calc(-352em / 16) calc(-320em / 16);
}
.icon_em.client-textformat_italic {
background-position: calc(-384em / 16) calc(-320em / 16);
}
.icon_em.client-textformat_underline {
background-position: calc(-416em / 16) calc(-320em / 16);
}
.icon_em.client-theme {
background-position: calc(-448em / 16) calc(-320em / 16);
}
.icon_em.client-toggle_server_query_clients {
background-position: calc(-480em / 16) calc(-320em / 16);
}
.icon_em.client-toggle_whisper {
background-position: calc(0em / 16) calc(-352em / 16);
}
.icon_em.client-token {
background-position: calc(-32em / 16) calc(-352em / 16);
}
.icon_em.client-token_use {
background-position: calc(-64em / 16) calc(-352em / 16);
}
.icon_em.client-translation {
background-position: calc(-96em / 16) calc(-352em / 16);
}
.icon_em.client-unsubscribe_from_all_channels {
background-position: calc(-128em / 16) calc(-352em / 16);
}
.icon_em.client-unsubscribe_from_channel_family {
background-position: calc(-160em / 16) calc(-352em / 16);
}
.icon_em.client-unsubscribe_mode {
background-position: calc(-192em / 16) calc(-352em / 16);
}
.icon_em.client-up {
background-position: calc(-224em / 16) calc(-352em / 16);
}
.icon_em.client-upload {
background-position: calc(-256em / 16) calc(-352em / 16);
}
.icon_em.client-upload_avatar {
background-position: calc(-288em / 16) calc(-352em / 16);
}
.icon_em.client-urlcatcher {
background-position: calc(-320em / 16) calc(-352em / 16);
}
.icon_em.client-user-account {
background-position: calc(-352em / 16) calc(-352em / 16);
}
.icon_em.client-virtualserver_edit {
background-position: calc(-384em / 16) calc(-352em / 16);
}
.icon_em.client-volume {
background-position: calc(-416em / 16) calc(-352em / 16);
}
.icon_em.client-warning {
background-position: calc(-448em / 16) calc(-352em / 16);
}
.icon_em.client-warning_external_link {
background-position: calc(-480em / 16) calc(-352em / 16);
}
.icon_em.client-warning_info {
background-position: calc(0em / 16) calc(-384em / 16);
}
.icon_em.client-warning_question {
background-position: calc(-32em / 16) calc(-384em / 16);
}
.icon_em.client-weblist {
background-position: calc(-64em / 16) calc(-384em / 16);
}
.icon_em.client-whisper {
background-position: calc(-96em / 16) calc(-384em / 16);
}
.icon_em.client-whisperlists {
background-position: calc(-128em / 16) calc(-384em / 16);
}
.icon_em.client-channel_green_subscribed2 {
background-position: calc(-160em / 16) calc(-384em / 16);
}
.icon_em.client-home {
background-position: calc(-192em / 16) calc(-384em / 16);
}

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 334 KiB

View File

@ -33,6 +33,7 @@ import {FileTransferState, TransferProvider,} from "tc-shared/file/Transfer";
import {MenuEntryType, spawn_context_menu} from "tc-shared/ui/elements/ContextMenu";
import {copy_to_clipboard} from "tc-shared/utils/helpers";
import ContextMenuEvent = JQuery.ContextMenuEvent;
import "svg-sprite/client-icons";
/* required import for init */
import "../css/load-css"

View File

@ -3,6 +3,8 @@ import * as fs from "fs";
import trtransformer from "./tools/trgen/ts_transformer";
import {exec} from "child_process";
import * as util from "util";
import { Plugin as SvgSpriteGenerator } from "webpack-svg-sprite-generator";
import LoaderIndexGenerator = require("./loader/IndexGenerator");
import {Configuration} from "webpack";
@ -15,6 +17,38 @@ const WorkerPlugin = require('worker-plugin');
const TerserPlugin = require('terser-webpack-plugin');
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
/*
const sourceFolder = path.join(__dirname, "..", "shared", "img", "icon-sprite");
const publicCssUrl = "url('../../../img/client_icon_sprite_new.svg'), url('../../img/client_icon_sprite_new.svg')";
const cssConfigurations: SpriteCssOptions[] = [
{
scale: 1,
selector: ".icon",
prefix: "client-",
unit: "px"
},
{
scale: 1.5,
selector: ".icon_x24",
prefix: "client-",
unit: "px"
},
{
scale: 2,
selector: ".icon_x32",
prefix: "client-",
unit: "px"
},
{
scale: 1,
selector: ".icon_em",
prefix: "client-",
unit: "em"
}
];
*/
export let isDevelopment = process.env.NODE_ENV === 'development';
console.log("Webpacking for %s (%s)", isDevelopment ? "development" : "production", process.env.NODE_ENV || "NODE_ENV not specified");
const generate_definitions = async (target: string) => {
@ -81,6 +115,46 @@ export const config = async (target: "web" | "client"): Promise<Configuration> =
maxSize: 1024 * 128
}),
new webpack.DefinePlugin(await generate_definitions(target)),
new SvgSpriteGenerator({
dtsOutputFolder: path.join(__dirname, "shared", "generated"),
configurations: {
"client-icons": {
folder: path.join(__dirname, "shared", "img", "icon-sprite"),
cssOptions: [
{
scale: 1,
selector: ".icon",
prefix: "client-",
unit: "px"
},
{
scale: 1.5,
selector: ".icon_x24",
prefix: "client-",
unit: "px"
},
{
scale: 2,
selector: ".icon_x32",
prefix: "client-",
unit: "px"
},
{
scale: 1,
selector: ".icon_em",
prefix: "client-",
unit: "em"
}
],
dtsOptions: {
enumName: "ClientIcon",
classUnionName: "ClientIconClass",
module: true,
cssClassPrefix: "client-"
}
}
}
}),
new LoaderIndexGenerator({
buildTarget: target,