dothtml 5.2.2 → 5.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/lib/dothtml.js +1 -1
  2. package/package.json +2 -1
  3. package/.vscode/launch.json +0 -34
  4. package/.vscode/settings.json +0 -6
  5. package/azure-pipelines.yml +0 -14
  6. package/babel.config.js +0 -1
  7. package/jest.config.ts +0 -207
  8. package/out.md +0 -1340
  9. package/src/arg-callback-obj.ts +0 -76
  10. package/src/built-in-components/nav-link.ts +0 -21
  11. package/src/built-in-components/router.ts +0 -315
  12. package/src/component.ts +0 -415
  13. package/src/dot-util.ts +0 -69
  14. package/src/dot.ts +0 -1147
  15. package/src/dothtml.ts +0 -39
  16. package/src/err.ts +0 -22
  17. package/src/event-bus.ts +0 -39
  18. package/src/i-dot.ts +0 -787
  19. package/src/node-polyfill.ts +0 -11
  20. package/src/observable-array.ts +0 -289
  21. package/src/styling/css-types.ts/css-angle.ts +0 -18
  22. package/src/styling/css-types.ts/css-color.ts +0 -233
  23. package/src/styling/css-types.ts/css-complex.ts +0 -20
  24. package/src/styling/css-types.ts/css-data-type.ts +0 -9
  25. package/src/styling/css-types.ts/css-filter.ts +0 -134
  26. package/src/styling/css-types.ts/css-length.ts +0 -20
  27. package/src/styling/css-types.ts/css-number.ts +0 -12
  28. package/src/styling/css-types.ts/css-percentage.ts +0 -10
  29. package/src/styling/css-types.ts/css-transform.ts +0 -220
  30. package/src/styling/css-types.ts/css-unknown.ts +0 -13
  31. package/src/styling/css-types.ts/css-url.ts +0 -41
  32. package/src/styling/i-dotcss.ts +0 -1198
  33. package/src/styling/style-builder.ts +0 -967
  34. package/src/styling/unit-function-tables.ts +0 -24
  35. package/tsconfig.json +0 -99
  36. package/unittests/advanced-bindings.test.ts +0 -421
  37. package/unittests/array-evaluation.test.ts +0 -7
  38. package/unittests/basic-functionality.test.ts +0 -88
  39. package/unittests/calc.test.ts +0 -6
  40. package/unittests/class-binding.test.ts +0 -227
  41. package/unittests/components/component-decorator.-.ts +0 -14
  42. package/unittests/components/components-data.test.ts +0 -153
  43. package/unittests/components/components.test.ts +0 -258
  44. package/unittests/computed.test.ts +0 -35
  45. package/unittests/core.ts +0 -66
  46. package/unittests/element-and-attribute-coverage.test.ts +0 -472
  47. package/unittests/hooks.test.ts +0 -67
  48. package/unittests/immutable-if.test.ts +0 -19
  49. package/unittests/input-bindings.test.ts +0 -166
  50. package/unittests/integration.test.ts +0 -5
  51. package/unittests/iterations.test.ts +0 -18
  52. package/unittests/logic.test.ts +0 -18
  53. package/unittests/non-function-props-rerender.test.ts +0 -86
  54. package/unittests/refs.test.ts +0 -36
  55. package/unittests/routing.-.ts +0 -56
  56. package/unittests/scopes.test.ts +0 -22
  57. package/unittests/special-tags.test.ts +0 -39
  58. package/unittests/styles.test.ts +0 -9
  59. package/unittests/styling/animations.test.ts +0 -14
  60. package/unittests/styling/filters.test.ts +0 -23
  61. package/unittests/styling/inline-styling.test.ts +0 -18
  62. package/unittests/styling/pseudo-selectors.test.ts +0 -33
  63. package/unittests/styling/transformations.test.ts +0 -234
  64. package/unittests/styling/value-interpretation.test.ts +0 -3
  65. package/unittests/testpage.ts +0 -5
  66. package/unittests/wait.test.ts +0 -31
  67. package/webpack.config.js +0 -28
@@ -1,11 +0,0 @@
1
-
2
- var NodePolyfill: unknown = window.Node;
3
- if(!Node){
4
- NodePolyfill = class{
5
- ELEMENT_NODE: number = 1;
6
- ATTRIBUTE_NODE: number = 2;
7
- TEXT_NODE: number = 3;
8
- };
9
- }
10
-
11
- export default (NodePolyfill as Node);
@@ -1,289 +0,0 @@
1
-
2
-
3
- export default function ObservableArray(items/*, ...target: Array<any>*/) {
4
- var _self = this,
5
- _array = [],
6
- _handlers = {
7
- itemadded: [],
8
- itemremoved: [],
9
- itemset: [],
10
- read: []
11
- };
12
-
13
- function defineIndexProperty(index) {
14
- if (!(index in _self)) {
15
- Object.defineProperty(_self, index, {
16
- configurable: true,
17
- enumerable: true,
18
- get: function() {
19
- raiseEvent({
20
- type: "read",
21
- index: index,
22
- item: _array[index]
23
- });
24
- return _array[index];
25
- },
26
- set: function(v) {
27
- if(_array[index] != v){
28
- _array[index] = v;
29
- raiseEvent({
30
- type: "itemset",
31
- index: index,
32
- item: v
33
- });
34
- }
35
- }
36
- });
37
- }
38
- }
39
-
40
- function raiseEvent(event) {
41
- _handlers[event.type].forEach(function(h) {
42
- h.call(_self, event);
43
- });
44
- }
45
-
46
- Object.defineProperty(_self, "addEventListener", {
47
- configurable: false,
48
- enumerable: false,
49
- writable: false,
50
- value: function(eventName, handler) {
51
- eventName = ("" + eventName).toLowerCase();
52
- if (!(eventName in _handlers)) throw new Error("Invalid event name.");
53
- if (typeof handler !== "function") throw new Error("Invalid handler.");
54
- _handlers[eventName].push(handler);
55
- }
56
- });
57
-
58
- Object.defineProperty(_self, "removeEventListener", {
59
- configurable: false,
60
- enumerable: false,
61
- writable: false,
62
- value: function(eventName, handler) {
63
- eventName = ("" + eventName).toLowerCase();
64
- if (!(eventName in _handlers)) throw new Error("Invalid event name.");
65
- if (typeof handler !== "function") throw new Error("Invalid handler.");
66
- var h = _handlers[eventName];
67
- var ln = h.length;
68
- while (--ln >= 0) {
69
- if (h[ln] === handler) {
70
- h.splice(ln, 1);
71
- }
72
- }
73
- }
74
- });
75
-
76
- Object.defineProperty(_self, "push", {
77
- configurable: false,
78
- enumerable: false,
79
- writable: false,
80
- value: function() {
81
- var index;
82
- for (var i = 0, ln = arguments.length; i < ln; i++) {
83
- index = _array.length;
84
- _array.push(arguments[i]);
85
- defineIndexProperty(index);
86
- raiseEvent({
87
- type: "itemadded",
88
- index: index,
89
- item: arguments[i]
90
- });
91
- }
92
- return _array.length;
93
- }
94
- });
95
-
96
- Object.defineProperty(_self, "pop", {
97
- configurable: false,
98
- enumerable: false,
99
- writable: false,
100
- value: function() {
101
- if (_array.length > -1) {
102
- var index = _array.length - 1,
103
- item = _array.pop();
104
- delete _self[index];
105
- raiseEvent({
106
- type: "itemremoved",
107
- index: index,
108
- item: item
109
- });
110
- return item;
111
- }
112
- }
113
- });
114
-
115
- Object.defineProperty(_self, "unshift", {
116
- configurable: false,
117
- enumerable: false,
118
- writable: false,
119
- value: function() {
120
- for (var i = 0, ln = arguments.length; i < ln; i++) {
121
- _array.splice(i, 0, arguments[i]);
122
- defineIndexProperty(_array.length - 1);
123
- raiseEvent({
124
- type: "itemadded",
125
- index: i,
126
- item: arguments[i]
127
- });
128
- }
129
- // Not sure why this was here. Nothing should be getting set.
130
- // for (; i < _array.length; i++) {
131
- // raiseEvent({
132
- // type: "itemset",
133
- // index: i,
134
- // item: _array[i]
135
- // });
136
- // }
137
- return _array.length;
138
- }
139
- });
140
-
141
- Object.defineProperty(_self, "shift", {
142
- configurable: false,
143
- enumerable: false,
144
- writable: false,
145
- value: function() {
146
- if (_array.length > -1) {
147
- var item = _array.shift();
148
- delete _self[_array.length];
149
- raiseEvent({
150
- type: "itemremoved",
151
- index: 0,
152
- item: item
153
- });
154
- return item;
155
- }
156
- }
157
- });
158
-
159
- Object.defineProperty(_self, "splice", {
160
- configurable: false,
161
- enumerable: false,
162
- writable: false,
163
- value: function(index, howMany /*, element1, element2, ... */ ) {
164
- var removed = [],
165
- item,
166
- pos;
167
-
168
- index = index == null ? 0 : index < 0 ? _array.length + index : index;
169
-
170
- howMany = howMany == null ? _array.length - index : howMany > 0 ? howMany : 0;
171
-
172
- var removeEvents = [];
173
- while (howMany--) {
174
- item = _array.splice(index, 1)[0];
175
- removed.push(item);
176
- delete _self[_array.length];
177
- removeEvents.push({
178
- type: "itemremoved",
179
- index: index + removed.length - 1,
180
- item: item
181
- });
182
- }
183
- for(var i = removeEvents.length - 1; i >= 0; i--){
184
- raiseEvent(removeEvents[i]);
185
- }
186
- for (var i = 2, ln = arguments.length; i < ln; i++) {
187
- _array.splice(index, 0, arguments[i]);
188
- defineIndexProperty(_array.length - 1);
189
- raiseEvent({
190
- type: "itemadded",
191
- index: index,
192
- item: arguments[i]
193
- });
194
- index++;
195
- }
196
-
197
- return removed;
198
- }
199
- });
200
-
201
- Object.defineProperty(_self, "length", {
202
- configurable: false,
203
- enumerable: false,
204
- get: function() {
205
- return _array.length;
206
- },
207
- set: function(value) {
208
- var n = Number(value);
209
- var length = _array.length;
210
- if (n % 1 === 0 && n >= 0) {
211
- if (n < length) {
212
- _self.splice(n);
213
- } else if (n > length) {
214
- _self.push.apply(_self, new Array(n - length));
215
- }
216
- } else {
217
- throw new RangeError("Invalid array length");
218
- }
219
- _array.length = n;
220
- return value;
221
- }
222
- });
223
-
224
- Object.getOwnPropertyNames(Array.prototype).forEach(function(name) {
225
- if (!(name in _self)) {
226
- Object.defineProperty(_self, name, {
227
- configurable: false,
228
- enumerable: false,
229
- writable: false,
230
- value: Array.prototype[name]
231
- });
232
- }
233
- });
234
-
235
- if (items instanceof Array) {
236
- _self.push.apply(_self, items);
237
- }
238
- }
239
-
240
- ObservableArray.prototype.length = 0;
241
-
242
- /**
243
-
244
- (function testing() {
245
-
246
- var x = new ObservableArray(["a", "b", "c", "d"]);
247
-
248
- console.log("original array: %o", x.slice());
249
-
250
- x.addEventListener("itemadded", function(e) {
251
- console.log("Added %o at index %d.", e.item, e.index);
252
- });
253
-
254
- x.addEventListener("itemset", function(e) {
255
- console.log("Set index %d to %o.", e.index, e.item);
256
- });
257
-
258
- x.addEventListener("itemremoved", function(e) {
259
- console.log("Removed %o at index %d.", e.item, e.index);
260
- });
261
-
262
- console.log("popping and unshifting...");
263
- x.unshift(x.pop());
264
-
265
- console.log("updated array: %o", x.slice());
266
-
267
- console.log("reversing array...");
268
- console.log("updated array: %o", x.reverse().slice());
269
-
270
- console.log("splicing...");
271
- x.splice(1, 2, "x");
272
- console.log("setting index 2...");
273
- x[2] = "foo";
274
-
275
- console.log("setting length to 10...");
276
- x.length = 10;
277
- console.log("updated array: %o", x.slice());
278
-
279
- console.log("setting length to 2...");
280
- x.length = 2;
281
-
282
- console.log("extracting first element via shift()");
283
- x.shift();
284
-
285
- console.log("updated array: %o", x.slice());
286
-
287
- })();
288
-
289
- */
@@ -1,18 +0,0 @@
1
- import { floatRegex } from "../../dot-util";
2
- import CssDataType from "./css-data-type";
3
-
4
- export default class CssAngle extends CssDataType{
5
- angle: number;
6
- units: string;
7
- constructor(value: string|number){
8
- super("angle");
9
- value = value || "0deg";
10
- if(!isNaN(value as number)) value = `${Math.round(value as number)}deg`;
11
- this.angle = Number((value as string).match(floatRegex)[0]);
12
- this.units = (value as string).split(floatRegex)[1] || "deg";
13
- }
14
-
15
- toString(){
16
- return this.angle + this.units;
17
- }
18
- }
@@ -1,233 +0,0 @@
1
- import CssDataType from "./css-data-type";
2
-
3
- export default class CssColor extends CssDataType{
4
- r: number;
5
- g: number;
6
- b: number;
7
- a: number;
8
- constructor(value){
9
- super("color");
10
- this.r = 0;
11
- this.g = 0;
12
- this.b = 0;
13
- this.a = 1;
14
-
15
- // This is typically the way dothtml passes in values to colors. Flatten.
16
- if(Array.isArray(value) && value.length == 1) value = value[0];
17
-
18
- if(typeof value == "number") {
19
- this.b = value & 0xFF;
20
- value >>= 8;
21
- this.g = value & 0xFF;
22
- value >>= 8;
23
- this.r = value & 0xFF;
24
- }
25
- else if(typeof value == "string") {
26
- // value = value[0];
27
- if(value == "" || value == "none" || value == "initial" || value == "inherit"){} //Nothing more needs to be done.
28
- else if(value[0] == "#"){
29
- var cH = value.split("#")[1];
30
- if(cH.length == 3){
31
- this.r = Number("0x" + cH[0] + "" + cH[0]);
32
- this.g = Number("0x" + cH[1] + "" + cH[1]);
33
- this.b = Number("0x" + cH[2] + "" + cH[2]);
34
-
35
- }
36
- else if(cH.length == 6){
37
- this.r = Number("0x" + cH[0] + "" + cH[1]);
38
- this.g = Number("0x" + cH[2] + "" + cH[3]);
39
- this.b = Number("0x" + cH[4] + "" + cH[5]);
40
- }
41
- //else throw value + " is not a valid color"; //or just stick with black.
42
- }
43
- else if(value.toLowerCase().indexOf("rgb") === 0){
44
- //This also handles rgba.
45
- var cData = value.split("(")[1];
46
- cData = cData.split(")")[0];
47
- var cDataItems = cData.split(",");
48
- if(cDataItems.length == 3 || cDataItems.length == 4){
49
- this.r = Number(cDataItems[0]);
50
- this.g = Number(cDataItems[1]);
51
- this.b = Number(cDataItems[2]);
52
- this.a = Number(cDataItems[3] || 1);
53
- }
54
- }
55
- else{
56
- var r = 0;
57
- var g = 0;
58
- var b = 0;
59
- switch(value.toLowerCase()){
60
- case 'aliceblue':r=0xF0;g=0xF8;b=0xFF;break;
61
- case 'antiquewhite':r=0xFA;g=0xEB;b=0xD7;break;
62
- case 'aqua':r=0x00;g=0xFF;b=0xFF;break;
63
- case 'aquamarine':r=0x7F;g=0xFF;b=0xD4;break;
64
- case 'azure':r=0xF0;g=0xFF;b=0xFF;break;
65
- case 'beige':r=0xF5;g=0xF5;b=0xDC;break;
66
- case 'bisque':r=0xFF;g=0xE4;b=0xC4;break;
67
- case 'black':r=0x00;g=0x00;b=0x00;break;
68
- case 'blanchedalmond':r=0xFF;g=0xEB;b=0xCD;break;
69
- case 'blue':r=0x00;g=0x00;b=0xFF;break;
70
- case 'blueviolet':r=0x8A;g=0x2B;b=0xE2;break;
71
- case 'brown':r=0xA5;g=0x2A;b=0x2A;break;
72
- case 'burlywood':r=0xDE;g=0xB8;b=0x87;break;
73
- case 'cadetblue':r=0x5F;g=0x9E;b=0xA0;break;
74
- case 'chartreuse':r=0x7F;g=0xFF;b=0x00;break;
75
- case 'chocolate':r=0xD2;g=0x69;b=0x1E;break;
76
- case 'coral':r=0xFF;g=0x7F;b=0x50;break;
77
- case 'cornflowerblue':r=0x64;g=0x95;b=0xED;break;
78
- case 'cornsilk':r=0xFF;g=0xF8;b=0xDC;break;
79
- case 'crimson':r=0xDC;g=0x14;b=0x3C;break;
80
- case 'cyan':r=0x00;g=0xFF;b=0xFF;break;
81
- case 'darkblue':r=0x00;g=0x00;b=0x8B;break;
82
- case 'darkcyan':r=0x00;g=0x8B;b=0x8B;break;
83
- case 'darkgoldenrod':r=0xB8;g=0x86;b=0x0B;break;
84
- case 'darkgray':r=0xA9;g=0xA9;b=0xA9;break;
85
- case 'darkgrey':r=0xA9;g=0xA9;b=0xA9;break;
86
- case 'darkgreen':r=0x00;g=0x64;b=0x00;break;
87
- case 'darkkhaki':r=0xBD;g=0xB7;b=0x6B;break;
88
- case 'darkmagenta':r=0x8B;g=0x00;b=0x8B;break;
89
- case 'darkolivegreen':r=0x55;g=0x6B;b=0x2F;break;
90
- case 'darkorange':r=0xFF;g=0x8C;b=0x00;break;
91
- case 'darkorchid':r=0x99;g=0x32;b=0xCC;break;
92
- case 'darkred':r=0x8B;g=0x00;b=0x00;break;
93
- case 'darksalmon':r=0xE9;g=0x96;b=0x7A;break;
94
- case 'darkseagreen':r=0x8F;g=0xBC;b=0x8F;break;
95
- case 'darkslateblue':r=0x48;g=0x3D;b=0x8B;break;
96
- case 'darkslategray':r=0x2F;g=0x4F;b=0x4F;break;
97
- case 'darkslategrey':r=0x2F;g=0x4F;b=0x4F;break;
98
- case 'darkturquoise':r=0x00;g=0xCE;b=0xD1;break;
99
- case 'darkviolet':r=0x94;g=0x00;b=0xD3;break;
100
- case 'deeppink':r=0xFF;g=0x14;b=0x93;break;
101
- case 'deepskyblue':r=0x00;g=0xBF;b=0xFF;break;
102
- case 'dimgray':r=0x69;g=0x69;b=0x69;break;
103
- case 'dimgrey':r=0x69;g=0x69;b=0x69;break;
104
- case 'dodgerblue':r=0x1E;g=0x90;b=0xFF;break;
105
- case 'firebrick':r=0xB2;g=0x22;b=0x22;break;
106
- case 'floralwhite':r=0xFF;g=0xFA;b=0xF0;break;
107
- case 'forestgreen':r=0x22;g=0x8B;b=0x22;break;
108
- case 'fuchsia':r=0xFF;g=0x00;b=0xFF;break;
109
- case 'gainsboro':r=0xDC;g=0xDC;b=0xDC;break;
110
- case 'ghostwhite':r=0xF8;g=0xF8;b=0xFF;break;
111
- case 'gold':r=0xFF;g=0xD7;b=0x00;break;
112
- case 'goldenrod':r=0xDA;g=0xA5;b=0x20;break;
113
- case 'gray':r=0x80;g=0x80;b=0x80;break;
114
- case 'grey':r=0x80;g=0x80;b=0x80;break;
115
- case 'green':r=0x00;g=0x80;b=0x00;break;
116
- case 'greenyellow':r=0xAD;g=0xFF;b=0x2F;break;
117
- case 'honeydew':r=0xF0;g=0xFF;b=0xF0;break;
118
- case 'hotpink':r=0xFF;g=0x69;b=0xB4;break;
119
- case 'indianred':r=0xCD;g=0x5C;b=0x5C;break;
120
- case 'indigo':r=0x4B;g=0x00;b=0x82;break;
121
- case 'ivory':r=0xFF;g=0xFF;b=0xF0;break;
122
- case 'khaki':r=0xF0;g=0xE6;b=0x8C;break;
123
- case 'lavender':r=0xE6;g=0xE6;b=0xFA;break;
124
- case 'lavenderblush':r=0xFF;g=0xF0;b=0xF5;break;
125
- case 'lawngreen':r=0x7C;g=0xFC;b=0x00;break;
126
- case 'lemonchiffon':r=0xFF;g=0xFA;b=0xCD;break;
127
- case 'lightblue':r=0xAD;g=0xD8;b=0xE6;break;
128
- case 'lightcoral':r=0xF0;g=0x80;b=0x80;break;
129
- case 'lightcyan':r=0xE0;g=0xFF;b=0xFF;break;
130
- case 'lightgoldenrodyellow':r=0xFA;g=0xFA;b=0xD2;break;
131
- case 'lightgray':r=0xD3;g=0xD3;b=0xD3;break;
132
- case 'lightgrey':r=0xD3;g=0xD3;b=0xD3;break;
133
- case 'lightgreen':r=0x90;g=0xEE;b=0x90;break;
134
- case 'lightpink':r=0xFF;g=0xB6;b=0xC1;break;
135
- case 'lightsalmon':r=0xFF;g=0xA0;b=0x7A;break;
136
- case 'lightseagreen':r=0x20;g=0xB2;b=0xAA;break;
137
- case 'lightskyblue':r=0x87;g=0xCE;b=0xFA;break;
138
- case 'lightslategray':r=0x77;g=0x88;b=0x99;break;
139
- case 'lightslategrey':r=0x77;g=0x88;b=0x99;break;
140
- case 'lightsteelblue':r=0xB0;g=0xC4;b=0xDE;break;
141
- case 'lightyellow':r=0xFF;g=0xFF;b=0xE0;break;
142
- case 'lime':r=0x00;g=0xFF;b=0x00;break;
143
- case 'limegreen':r=0x32;g=0xCD;b=0x32;break;
144
- case 'linen':r=0xFA;g=0xF0;b=0xE6;break;
145
- case 'magenta':r=0xFF;g=0x00;b=0xFF;break;
146
- case 'maroon':r=0x80;g=0x00;b=0x00;break;
147
- case 'mediumaquamarine':r=0x66;g=0xCD;b=0xAA;break;
148
- case 'mediumblue':r=0x00;g=0x00;b=0xCD;break;
149
- case 'mediumorchid':r=0xBA;g=0x55;b=0xD3;break;
150
- case 'mediumpurple':r=0x93;g=0x70;b=0xDB;break;
151
- case 'mediumseagreen':r=0x3C;g=0xB3;b=0x71;break;
152
- case 'mediumslateblue':r=0x7B;g=0x68;b=0xEE;break;
153
- case 'mediumspringgreen':r=0x00;g=0xFA;b=0x9A;break;
154
- case 'mediumturquoise':r=0x48;g=0xD1;b=0xCC;break;
155
- case 'mediumvioletred':r=0xC7;g=0x15;b=0x85;break;
156
- case 'midnightblue':r=0x19;g=0x19;b=0x70;break;
157
- case 'mintcream':r=0xF5;g=0xFF;b=0xFA;break;
158
- case 'mistyrose':r=0xFF;g=0xE4;b=0xE1;break;
159
- case 'moccasin':r=0xFF;g=0xE4;b=0xB5;break;
160
- case 'navajowhite':r=0xFF;g=0xDE;b=0xAD;break;
161
- case 'navy':r=0x00;g=0x00;b=0x80;break;
162
- case 'oldlace':r=0xFD;g=0xF5;b=0xE6;break;
163
- case 'olive':r=0x80;g=0x80;b=0x00;break;
164
- case 'olivedrab':r=0x6B;g=0x8E;b=0x23;break;
165
- case 'orange':r=0xFF;g=0xA5;b=0x00;break;
166
- case 'orangered':r=0xFF;g=0x45;b=0x00;break;
167
- case 'orchid':r=0xDA;g=0x70;b=0xD6;break;
168
- case 'palegoldenrod':r=0xEE;g=0xE8;b=0xAA;break;
169
- case 'palegreen':r=0x98;g=0xFB;b=0x98;break;
170
- case 'paleturquoise':r=0xAF;g=0xEE;b=0xEE;break;
171
- case 'palevioletred':r=0xDB;g=0x70;b=0x93;break;
172
- case 'papayawhip':r=0xFF;g=0xEF;b=0xD5;break;
173
- case 'peachpuff':r=0xFF;g=0xDA;b=0xB9;break;
174
- case 'peru':r=0xCD;g=0x85;b=0x3F;break;
175
- case 'pink':r=0xFF;g=0xC0;b=0xCB;break;
176
- case 'plum':r=0xDD;g=0xA0;b=0xDD;break;
177
- case 'powderblue':r=0xB0;g=0xE0;b=0xE6;break;
178
- case 'purple':r=0x80;g=0x00;b=0x80;break;
179
- case 'rebeccapurple':r=0x66;g=0x33;b=0x99;break;
180
- case 'red':r=0xFF;g=0x00;b=0x00;break;
181
- case 'rosybrown':r=0xBC;g=0x8F;b=0x8F;break;
182
- case 'royalblue':r=0x41;g=0x69;b=0xE1;break;
183
- case 'saddlebrown':r=0x8B;g=0x45;b=0x13;break;
184
- case 'salmon':r=0xFA;g=0x80;b=0x72;break;
185
- case 'sandybrown':r=0xF4;g=0xA4;b=0x60;break;
186
- case 'seagreen':r=0x2E;g=0x8B;b=0x57;break;
187
- case 'seashell':r=0xFF;g=0xF5;b=0xEE;break;
188
- case 'sienna':r=0xA0;g=0x52;b=0x2D;break;
189
- case 'silver':r=0xC0;g=0xC0;b=0xC0;break;
190
- case 'skyblue':r=0x87;g=0xCE;b=0xEB;break;
191
- case 'slateblue':r=0x6A;g=0x5A;b=0xCD;break;
192
- case 'slategray':r=0x70;g=0x80;b=0x90;break;
193
- case 'slategrey':r=0x70;g=0x80;b=0x90;break;
194
- case 'snow':r=0xFF;g=0xFA;b=0xFA;break;
195
- case 'springgreen':r=0x00;g=0xFF;b=0x7F;break;
196
- case 'steelblue':r=0x46;g=0x82;b=0xB4;break;
197
- case 'tan':r=0xD2;g=0xB4;b=0x8C;break;
198
- case 'teal':r=0x00;g=0x80;b=0x80;break;
199
- case 'thistle':r=0xD8;g=0xBF;b=0xD8;break;
200
- case 'tomato':r=0xFF;g=0x63;b=0x47;break;
201
- case 'turquoise':r=0x40;g=0xE0;b=0xD0;break;
202
- case 'violet':r=0xEE;g=0x82;b=0xEE;break;
203
- case 'wheat':r=0xF5;g=0xDE;b=0xB3;break;
204
- case 'white':r=0xFF;g=0xFF;b=0xFF;break;
205
- case 'whitesmoke':r=0xF5;g=0xF5;b=0xF5;break;
206
- case 'yellow':r=0xFF;g=0xFF;b=0x00;break;
207
- case 'yellowgreen':r=0x9A;g=0xCD;b=0x32;break;
208
- }
209
- this.r = r;
210
- this.g = g;
211
- this.b = b;
212
- }
213
- }
214
- else if(value.length == 3 || value.length == 4){
215
- this.r = value[0];
216
- this.g = value[1];
217
- this.b = value[2];
218
- if(value.length == 4){
219
- this.a = value[3];
220
- }
221
- }
222
- }
223
-
224
- toString(){
225
- var R = Math.round;
226
- var X = Math.max;
227
- var N = Math.min;
228
- if(this.a == 1)
229
- return "rgb(" + N(255, X(0, R(this.r))) + ", " + N(255, X(0, R(this.g))) + ", " + N(255, X(0, R(this.b))) + ")";
230
- else
231
- return "rgba(" + N(255, X(0, R(this.r))) + ", " + N(255, X(0, R(this.g))) + ", " + N(255, X(0, R(this.b))) + ", " + N(1, X(0, this.a)) + ")";
232
- }
233
- }
@@ -1,20 +0,0 @@
1
- import { floatRegex } from "../../dot-util";
2
- import CssDataType from "./css-data-type";
3
-
4
- export default class CssComplex extends CssDataType{
5
- parts: string[];
6
- numbers: string;
7
- constructor(value){
8
- super("complex");
9
- this.parts = (" " + value + " ").split(floatRegex);
10
- this.numbers = value.match(floatRegex);
11
- }
12
-
13
- toString(){
14
- var ret = this.parts[0];
15
- for(var i = 0; i < this.numbers.length; i++){
16
- ret += this.numbers[i] + this.parts[i+1];
17
- }
18
- return ret;
19
- }
20
- }
@@ -1,9 +0,0 @@
1
- export declare type CssDataTypeToken = "url"|"number"|"length"|"angle"|"color"|"transformation"|"filter"|"complex"|"unknown";
2
-
3
- export default abstract class CssDataType{
4
- type: CssDataTypeToken;
5
-
6
- constructor(type: CssDataTypeToken){
7
- this.type = type;
8
- }
9
- }