@elastic/charts 46.0.1 → 46.3.0

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 (154) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/chart_types/flame_chart/flame_api.d.ts +52 -0
  3. package/dist/chart_types/flame_chart/flame_api.d.ts.map +1 -0
  4. package/dist/chart_types/flame_chart/flame_api.js +34 -0
  5. package/dist/chart_types/flame_chart/flame_api.js.map +1 -0
  6. package/dist/chart_types/flame_chart/flame_chart.d.ts +2 -0
  7. package/dist/chart_types/flame_chart/flame_chart.d.ts.map +1 -0
  8. package/dist/chart_types/flame_chart/flame_chart.js +681 -0
  9. package/dist/chart_types/flame_chart/flame_chart.js.map +1 -0
  10. package/dist/chart_types/flame_chart/internal_chart_state.d.ts +2 -0
  11. package/dist/chart_types/flame_chart/internal_chart_state.d.ts.map +1 -0
  12. package/dist/chart_types/flame_chart/internal_chart_state.js +33 -0
  13. package/dist/chart_types/flame_chart/internal_chart_state.js.map +1 -0
  14. package/dist/chart_types/flame_chart/render/common.d.ts +2 -0
  15. package/dist/chart_types/flame_chart/render/common.d.ts.map +1 -0
  16. package/dist/chart_types/flame_chart/render/common.js +11 -0
  17. package/dist/chart_types/flame_chart/render/common.js.map +1 -0
  18. package/dist/chart_types/flame_chart/render/draw_a_frame.d.ts +2 -0
  19. package/dist/chart_types/flame_chart/render/draw_a_frame.d.ts.map +1 -0
  20. package/dist/chart_types/flame_chart/render/draw_a_frame.js +63 -0
  21. package/dist/chart_types/flame_chart/render/draw_a_frame.js.map +1 -0
  22. package/dist/chart_types/flame_chart/render/draw_canvas.d.ts +2 -0
  23. package/dist/chart_types/flame_chart/render/draw_canvas.d.ts.map +1 -0
  24. package/dist/chart_types/flame_chart/render/draw_canvas.js +115 -0
  25. package/dist/chart_types/flame_chart/render/draw_canvas.js.map +1 -0
  26. package/dist/chart_types/flame_chart/render/draw_webgl.d.ts +2 -0
  27. package/dist/chart_types/flame_chart/render/draw_webgl.d.ts.map +1 -0
  28. package/dist/chart_types/flame_chart/render/draw_webgl.js +42 -0
  29. package/dist/chart_types/flame_chart/render/draw_webgl.js.map +1 -0
  30. package/dist/chart_types/flame_chart/render/ensure_webgl.d.ts +2 -0
  31. package/dist/chart_types/flame_chart/render/ensure_webgl.d.ts.map +1 -0
  32. package/dist/chart_types/flame_chart/render/ensure_webgl.js +34 -0
  33. package/dist/chart_types/flame_chart/render/ensure_webgl.js.map +1 -0
  34. package/dist/chart_types/flame_chart/shaders.d.ts +2 -0
  35. package/dist/chart_types/flame_chart/shaders.d.ts.map +1 -0
  36. package/dist/chart_types/flame_chart/shaders.js +14 -0
  37. package/dist/chart_types/flame_chart/shaders.js.map +1 -0
  38. package/dist/chart_types/flame_chart/types.d.ts +2 -0
  39. package/dist/chart_types/flame_chart/types.d.ts.map +1 -0
  40. package/dist/chart_types/flame_chart/types.js +18 -0
  41. package/dist/chart_types/flame_chart/types.js.map +1 -0
  42. package/dist/chart_types/index.d.ts +1 -0
  43. package/dist/chart_types/index.d.ts.map +1 -1
  44. package/dist/chart_types/index.js +1 -0
  45. package/dist/chart_types/index.js.map +1 -1
  46. package/dist/chart_types/partition_chart/layout/types/config_types.d.ts +1 -9
  47. package/dist/chart_types/partition_chart/layout/types/config_types.d.ts.map +1 -1
  48. package/dist/chart_types/partition_chart/layout/types/viewmodel_types.d.ts.map +1 -1
  49. package/dist/chart_types/partition_chart/layout/types/viewmodel_types.js.map +1 -1
  50. package/dist/chart_types/partition_chart/layout/viewmodel/picked_shapes.js.map +1 -1
  51. package/dist/chart_types/partition_chart/renderer/dom/highlighter.js +1 -2
  52. package/dist/chart_types/partition_chart/renderer/dom/highlighter.js.map +1 -1
  53. package/dist/chart_types/partition_chart/specs/index.d.ts +4 -3
  54. package/dist/chart_types/partition_chart/specs/index.d.ts.map +1 -1
  55. package/dist/chart_types/partition_chart/specs/index.js.map +1 -1
  56. package/dist/chart_types/partition_chart/state/selectors/geometries.js.map +1 -1
  57. package/dist/chart_types/xy_chart/annotations/rect/dimensions.js +11 -4
  58. package/dist/chart_types/xy_chart/annotations/rect/dimensions.js.map +1 -1
  59. package/dist/chart_types/xy_chart/annotations/rect/tooltip.js +9 -10
  60. package/dist/chart_types/xy_chart/annotations/rect/tooltip.js.map +1 -1
  61. package/dist/chart_types/xy_chart/annotations/types.d.ts.map +1 -1
  62. package/dist/chart_types/xy_chart/renderer/canvas/animations/animation.d.ts +57 -0
  63. package/dist/chart_types/xy_chart/renderer/canvas/animations/animation.d.ts.map +1 -0
  64. package/dist/chart_types/xy_chart/renderer/canvas/animations/animation.js +98 -0
  65. package/dist/chart_types/xy_chart/renderer/canvas/animations/animation.js.map +1 -0
  66. package/dist/chart_types/xy_chart/renderer/canvas/animations/index.d.ts +2 -0
  67. package/dist/chart_types/xy_chart/renderer/canvas/animations/index.d.ts.map +1 -0
  68. package/dist/chart_types/xy_chart/renderer/canvas/animations/index.js +77 -0
  69. package/dist/chart_types/xy_chart/renderer/canvas/animations/index.js.map +1 -0
  70. package/dist/chart_types/xy_chart/renderer/canvas/annotations/index.js +5 -3
  71. package/dist/chart_types/xy_chart/renderer/canvas/annotations/index.js.map +1 -1
  72. package/dist/chart_types/xy_chart/renderer/canvas/annotations/lines.js +16 -8
  73. package/dist/chart_types/xy_chart/renderer/canvas/annotations/lines.js.map +1 -1
  74. package/dist/chart_types/xy_chart/renderer/canvas/annotations/rect.js +41 -9
  75. package/dist/chart_types/xy_chart/renderer/canvas/annotations/rect.js.map +1 -1
  76. package/dist/chart_types/xy_chart/renderer/canvas/renderers.js +74 -64
  77. package/dist/chart_types/xy_chart/renderer/canvas/renderers.js.map +1 -1
  78. package/dist/chart_types/xy_chart/renderer/canvas/xy_chart.js +9 -1
  79. package/dist/chart_types/xy_chart/renderer/canvas/xy_chart.js.map +1 -1
  80. package/dist/chart_types/xy_chart/renderer/common/utils.d.ts +2 -0
  81. package/dist/chart_types/xy_chart/renderer/common/utils.d.ts.map +1 -0
  82. package/dist/chart_types/xy_chart/renderer/common/utils.js +15 -0
  83. package/dist/chart_types/xy_chart/renderer/common/utils.js.map +1 -0
  84. package/dist/chart_types/xy_chart/renderer/dom/annotations/annotations.js +21 -7
  85. package/dist/chart_types/xy_chart/renderer/dom/annotations/annotations.js.map +1 -1
  86. package/dist/chart_types/xy_chart/renderer/dom/annotations/line_marker.js +18 -11
  87. package/dist/chart_types/xy_chart/renderer/dom/annotations/line_marker.js.map +1 -1
  88. package/dist/chart_types/xy_chart/state/selectors/get_annotation_tooltip_state.js +2 -1
  89. package/dist/chart_types/xy_chart/state/selectors/get_annotation_tooltip_state.js.map +1 -1
  90. package/dist/chart_types/xy_chart/state/selectors/get_highlighted_annotation_ids_selector.d.ts +2 -0
  91. package/dist/chart_types/xy_chart/state/selectors/get_highlighted_annotation_ids_selector.d.ts.map +1 -0
  92. package/dist/chart_types/xy_chart/state/selectors/get_highlighted_annotation_ids_selector.js +28 -0
  93. package/dist/chart_types/xy_chart/state/selectors/get_highlighted_annotation_ids_selector.js.map +1 -0
  94. package/dist/chart_types/xy_chart/state/selectors/get_multiple_rectangle_annotations.js +1 -4
  95. package/dist/chart_types/xy_chart/state/selectors/get_multiple_rectangle_annotations.js.map +1 -1
  96. package/dist/chart_types/xy_chart/utils/specs.d.ts +1 -1
  97. package/dist/chart_types/xy_chart/utils/specs.d.ts.map +1 -1
  98. package/dist/common/animation.d.ts +9 -0
  99. package/dist/common/animation.d.ts.map +1 -0
  100. package/dist/common/animation.js +3 -0
  101. package/dist/common/animation.js.map +1 -0
  102. package/dist/common/event_handler_selectors.js +3 -7
  103. package/dist/common/event_handler_selectors.js.map +1 -1
  104. package/dist/common/kingly.d.ts +2 -0
  105. package/dist/common/kingly.d.ts.map +1 -0
  106. package/dist/common/kingly.js +481 -0
  107. package/dist/common/kingly.js.map +1 -0
  108. package/dist/common/webgl_constants.d.ts +2 -0
  109. package/dist/common/webgl_constants.d.ts.map +1 -0
  110. package/dist/common/webgl_constants.js +559 -0
  111. package/dist/common/webgl_constants.js.map +1 -0
  112. package/dist/components/chart_container.js +2 -2
  113. package/dist/components/chart_container.js.map +1 -1
  114. package/dist/components/chart_resizer.js +2 -4
  115. package/dist/components/chart_resizer.js.map +1 -1
  116. package/dist/components/tooltip/tooltip.js +17 -18
  117. package/dist/components/tooltip/tooltip.js.map +1 -1
  118. package/dist/index.d.ts +5 -1
  119. package/dist/index.d.ts.map +1 -1
  120. package/dist/index.js +6 -1
  121. package/dist/index.js.map +1 -1
  122. package/dist/specs/constants.d.ts +1 -1
  123. package/dist/specs/settings.d.ts +11 -2
  124. package/dist/specs/settings.d.ts.map +1 -1
  125. package/dist/specs/settings.js.map +1 -1
  126. package/dist/state/chart_state.js +2 -0
  127. package/dist/state/chart_state.js.map +1 -1
  128. package/dist/state/reducers/interactions.js +20 -21
  129. package/dist/state/reducers/interactions.js.map +1 -1
  130. package/dist/state/selectors/get_chart_container_dimensions.js +15 -17
  131. package/dist/state/selectors/get_chart_container_dimensions.js.map +1 -1
  132. package/dist/theme.scss +1 -0
  133. package/dist/theme_dark.css +1 -1
  134. package/dist/theme_dark.css.map +1 -1
  135. package/dist/theme_light.css +1 -1
  136. package/dist/theme_light.css.map +1 -1
  137. package/dist/theme_only_dark.css +1 -1
  138. package/dist/theme_only_dark.css.map +1 -1
  139. package/dist/theme_only_light.css +1 -1
  140. package/dist/theme_only_light.css.map +1 -1
  141. package/dist/utils/logger.js +1 -1
  142. package/dist/utils/logger.js.map +1 -1
  143. package/dist/utils/themes/merge_utils.d.ts +3 -2
  144. package/dist/utils/themes/merge_utils.d.ts.map +1 -1
  145. package/dist/utils/themes/merge_utils.js +17 -28
  146. package/dist/utils/themes/merge_utils.js.map +1 -1
  147. package/dist/utils/themes/theme.d.ts +19 -6
  148. package/dist/utils/themes/theme.d.ts.map +1 -1
  149. package/dist/utils/themes/theme.js.map +1 -1
  150. package/dist/utils/time_functions.d.ts +27 -0
  151. package/dist/utils/time_functions.d.ts.map +1 -0
  152. package/dist/utils/time_functions.js +29 -0
  153. package/dist/utils/time_functions.js.map +1 -0
  154. package/package.json +2 -1
@@ -0,0 +1,481 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ var _a, _b, _c, _d, _e;
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.frag = exports.vert = exports.readPixel = exports.getRenderer = exports.bindVertexArray = exports.getAttributes = exports.createTexture = exports.NullTexture = exports.bindFramebuffer = exports.GL_FRAMEBUFFER = exports.GL_DRAW_FRAMEBUFFER = exports.GL_READ_FRAMEBUFFER = exports.clearRect = exports.createLinkedProgram = exports.createCompiledShader = exports.GL_VERTEX_SHADER = exports.GL_FRAGMENT_SHADER = exports.resetState = void 0;
30
+ var webgl_constants_1 = require("./webgl_constants");
31
+ var GL_DEBUG = true;
32
+ var currentPrograms = new WeakMap();
33
+ var currentVertexArrayObjects = new WeakMap();
34
+ var currentDepthTests = new WeakMap();
35
+ var currentReadFrameBuffers = new WeakMap();
36
+ var currentDrawFrameBuffers = new WeakMap();
37
+ var currentViewport = new WeakMap();
38
+ var currentScissor = new WeakMap();
39
+ var currentClearColor = new WeakMap();
40
+ var currentClearDepth = new WeakMap();
41
+ var currentFlags = new WeakMap();
42
+ var programUniforms = new WeakMap();
43
+ var locationUniformValues = new WeakMap();
44
+ var setGlobalConstants = new WeakSet();
45
+ var resetState = function (gl) {
46
+ currentPrograms.delete(gl);
47
+ currentVertexArrayObjects.delete(gl);
48
+ currentDepthTests.delete(gl);
49
+ currentReadFrameBuffers.delete(gl);
50
+ currentDrawFrameBuffers.delete(gl);
51
+ currentViewport.delete(gl);
52
+ currentScissor.delete(gl);
53
+ currentClearColor.delete(gl);
54
+ currentClearDepth.delete(gl);
55
+ currentFlags.delete(gl);
56
+ setGlobalConstants.delete(gl);
57
+ };
58
+ exports.resetState = resetState;
59
+ var setViewport = function (gl) {
60
+ var xyWidthHeight = [];
61
+ for (var _i = 1; _i < arguments.length; _i++) {
62
+ xyWidthHeight[_i - 1] = arguments[_i];
63
+ }
64
+ var key = xyWidthHeight.join('|');
65
+ if (currentViewport.get(gl) !== key) {
66
+ gl.viewport.apply(gl, __spreadArray([], __read(xyWidthHeight), false));
67
+ currentViewport.set(gl, key);
68
+ }
69
+ };
70
+ var setScissor = function (gl) {
71
+ var xyWidthHeight = [];
72
+ for (var _i = 1; _i < arguments.length; _i++) {
73
+ xyWidthHeight[_i - 1] = arguments[_i];
74
+ }
75
+ var key = xyWidthHeight.join('|');
76
+ if (currentScissor.get(gl) !== key) {
77
+ gl.scissor.apply(gl, __spreadArray([], __read(xyWidthHeight), false));
78
+ currentScissor.set(gl, key);
79
+ }
80
+ };
81
+ var clearColor = function (gl) {
82
+ var rgba = [];
83
+ for (var _i = 1; _i < arguments.length; _i++) {
84
+ rgba[_i - 1] = arguments[_i];
85
+ }
86
+ var key = rgba.join('|');
87
+ if (currentClearColor.get(gl) !== key) {
88
+ gl.clearColor.apply(gl, __spreadArray([], __read(rgba), false));
89
+ currentClearColor.set(gl, key);
90
+ }
91
+ };
92
+ var clearDepth = function (gl, depth) {
93
+ if (currentClearDepth.get(gl) !== depth) {
94
+ gl.clearDepth(depth);
95
+ currentClearDepth.set(gl, depth);
96
+ }
97
+ };
98
+ var flagSet = function (gl, key, value) {
99
+ var flags = currentFlags.get(gl);
100
+ if (flags[key] !== value) {
101
+ if (value) {
102
+ gl.enable(key);
103
+ }
104
+ else {
105
+ gl.disable(key);
106
+ }
107
+ flags[key] = value;
108
+ }
109
+ };
110
+ exports.GL_FRAGMENT_SHADER = 0x8b30;
111
+ exports.GL_VERTEX_SHADER = 0x8b31;
112
+ var createCompiledShader = function (gl, shaderType, source) {
113
+ var shader = gl.createShader(shaderType);
114
+ if (!shader)
115
+ throw new Error("Whoa, shader could not be created");
116
+ gl.shaderSource(shader, source);
117
+ gl.compileShader(shader);
118
+ if (GL_DEBUG && !gl.getShaderParameter(shader, webgl_constants_1.GL.COMPILE_STATUS)) {
119
+ var shaderTypeName = shaderType === exports.GL_VERTEX_SHADER ? 'vertex' : 'fragment';
120
+ throw new Error("Whoa, compilation error in a " + shaderTypeName + " shader: " + gl.getShaderInfoLog(shader));
121
+ }
122
+ return shader;
123
+ };
124
+ exports.createCompiledShader = createCompiledShader;
125
+ var createLinkedProgram = function (gl, vertexShader, fragmentShader, attributeLocations) {
126
+ if (attributeLocations === void 0) { attributeLocations = new Map(); }
127
+ var program = gl.createProgram();
128
+ if (!program)
129
+ throw new Error("Whoa, shader program could not be created");
130
+ gl.attachShader(program, vertexShader);
131
+ gl.attachShader(program, fragmentShader);
132
+ if (GL_DEBUG && gl.getProgramParameter(program, webgl_constants_1.GL.ATTACHED_SHADERS) !== 2)
133
+ throw new Error('Did not manage to attach the two shaders');
134
+ attributeLocations.forEach(function (i, name) { return gl.bindAttribLocation(program, i, name); });
135
+ gl.linkProgram(program);
136
+ if (GL_DEBUG) {
137
+ if (!gl.getProgramParameter(program, webgl_constants_1.GL.LINK_STATUS))
138
+ throw new Error("Whoa, shader program failed to link: " + gl.getProgramInfoLog(program));
139
+ gl.validateProgram(program);
140
+ if (!gl.getProgramParameter(program, webgl_constants_1.GL.LINK_STATUS))
141
+ throw new Error("Whoa, could not validate the shader program: " + gl.getProgramInfoLog(program));
142
+ }
143
+ if (!GL_DEBUG) {
144
+ window.setTimeout(function () {
145
+ gl.detachShader(program, vertexShader);
146
+ gl.detachShader(program, fragmentShader);
147
+ gl.deleteShader(vertexShader);
148
+ gl.deleteShader(fragmentShader);
149
+ });
150
+ }
151
+ return program;
152
+ };
153
+ exports.createLinkedProgram = createLinkedProgram;
154
+ var uniformSetterLookup = (_a = {},
155
+ _a[webgl_constants_1.GL.BOOL] = function (gl, location) { return function (value) {
156
+ if (locationUniformValues.get(location) !== value) {
157
+ gl.uniform1ui(location, value);
158
+ locationUniformValues.set(location, value);
159
+ }
160
+ }; },
161
+ _a[webgl_constants_1.GL.INT] = function (gl, location) { return function (value) {
162
+ if (locationUniformValues.get(location) !== value) {
163
+ gl.uniform1i(location, value);
164
+ locationUniformValues.set(location, value);
165
+ }
166
+ }; },
167
+ _a[webgl_constants_1.GL.FLOAT_VEC2] = function (gl, location) { return function (values) {
168
+ var value = values.join('|');
169
+ if (locationUniformValues.get(location) !== value) {
170
+ gl.uniform2fv(location, values);
171
+ locationUniformValues.set(location, value);
172
+ }
173
+ }; },
174
+ _a[webgl_constants_1.GL.FLOAT_VEC3] = function (gl, location) { return function (values) {
175
+ var value = values.join('|');
176
+ if (locationUniformValues.get(location) !== value) {
177
+ gl.uniform3fv(location, values);
178
+ locationUniformValues.set(location, value);
179
+ }
180
+ }; },
181
+ _a[webgl_constants_1.GL.INT_VEC2] = function (gl, location) { return function (values) {
182
+ var value = values.join('|');
183
+ if (locationUniformValues.get(location) !== value) {
184
+ gl.uniform2iv(location, values);
185
+ locationUniformValues.set(location, value);
186
+ }
187
+ }; },
188
+ _a[webgl_constants_1.GL.FLOAT] = function (gl, location) { return function (value) {
189
+ if (locationUniformValues.get(location) !== value) {
190
+ gl.uniform1f(location, value);
191
+ locationUniformValues.set(location, value);
192
+ }
193
+ }; },
194
+ _a[webgl_constants_1.GL.FLOAT_MAT2] = function (gl, location) { return function (array) {
195
+ var value = array.join('|');
196
+ if (locationUniformValues.get(location) !== value) {
197
+ gl.uniformMatrix2fv(location, false, array);
198
+ locationUniformValues.set(location, value);
199
+ }
200
+ }; },
201
+ _a[webgl_constants_1.GL.FLOAT_MAT4] = function (gl, location) { return function (array) {
202
+ var value = array.join('|');
203
+ if (locationUniformValues.get(location) !== value) {
204
+ gl.uniformMatrix4fv(location, false, array);
205
+ locationUniformValues.set(location, value);
206
+ }
207
+ }; },
208
+ _a[webgl_constants_1.GL.SAMPLER_2D] = function (gl, location) { return function (_a) {
209
+ var setUniform = _a.setUniform;
210
+ if (locationUniformValues.get(location) !== setUniform) {
211
+ setUniform(location);
212
+ locationUniformValues.set(location, setUniform);
213
+ }
214
+ }; },
215
+ _a);
216
+ var getUniforms = function (gl, program) {
217
+ if (programUniforms.has(program))
218
+ return programUniforms.get(program);
219
+ var uniforms = new Map(__spreadArray([], __read(new Array(gl.getProgramParameter(program, webgl_constants_1.GL.ACTIVE_UNIFORMS))), false).map(function (_, index) {
220
+ var activeUniform = gl.getActiveUniform(program, index);
221
+ if (!activeUniform)
222
+ throw new Error("Whoa, active uniform not found");
223
+ var name = activeUniform.name, type = activeUniform.type;
224
+ var location = gl.getUniformLocation(program, name);
225
+ if (location === null)
226
+ throw new Error("Whoa, uniform location " + location + " (name: " + name + ", type: " + type + ") not found");
227
+ var setValue = uniformSetterLookup[type](gl, location);
228
+ if (GL_DEBUG && !setValue)
229
+ throw new Error("No setValue for uniform GL[" + type + "] (name: " + name + ") implemented yet");
230
+ return [name, setValue];
231
+ }));
232
+ programUniforms.set(program, uniforms);
233
+ return uniforms;
234
+ };
235
+ var clearRect = function (gl, _a) {
236
+ var rect = _a.rect, color = _a.color, depth = _a.depth, stencilIndex = _a.stencilIndex;
237
+ if (rect) {
238
+ flagSet(gl, webgl_constants_1.GL.SCISSOR_TEST, true);
239
+ setScissor.apply(void 0, __spreadArray([gl], __read(rect), false));
240
+ }
241
+ var flags = 0;
242
+ if (color) {
243
+ clearColor.apply(void 0, __spreadArray([gl], __read(color), false));
244
+ flags |= webgl_constants_1.GL.COLOR_BUFFER_BIT;
245
+ }
246
+ if (typeof depth === 'number') {
247
+ clearDepth(gl, depth);
248
+ flags |= webgl_constants_1.GL.DEPTH_BUFFER_BIT;
249
+ }
250
+ if (typeof stencilIndex === 'number') {
251
+ gl.clearStencil(stencilIndex);
252
+ flags |= webgl_constants_1.GL.STENCIL_BUFFER_BIT;
253
+ }
254
+ gl.clear(flags);
255
+ };
256
+ exports.clearRect = clearRect;
257
+ var textureSrcFormatLookup = (_b = {},
258
+ _b[webgl_constants_1.GL.RGBA8] = webgl_constants_1.GL.RGBA,
259
+ _b[webgl_constants_1.GL.RGBA32F] = webgl_constants_1.GL.RGBA,
260
+ _b);
261
+ var textureTypeLookup = (_c = {},
262
+ _c[webgl_constants_1.GL.RGBA8] = webgl_constants_1.GL.UNSIGNED_BYTE,
263
+ _c[webgl_constants_1.GL.RGBA32F] = webgl_constants_1.GL.FLOAT,
264
+ _c);
265
+ exports.GL_READ_FRAMEBUFFER = 0x8ca8;
266
+ exports.GL_DRAW_FRAMEBUFFER = 0x8ca9;
267
+ exports.GL_FRAMEBUFFER = 0x8d40;
268
+ var bindFramebuffer = function (gl, target, targetFrameBuffer) {
269
+ var updateReadTarget = (target === exports.GL_READ_FRAMEBUFFER || target === exports.GL_FRAMEBUFFER) &&
270
+ targetFrameBuffer !== currentReadFrameBuffers.get(gl);
271
+ var updateWriteTarget = (target === exports.GL_DRAW_FRAMEBUFFER || target === exports.GL_FRAMEBUFFER) &&
272
+ targetFrameBuffer !== currentDrawFrameBuffers.get(gl);
273
+ if (updateReadTarget)
274
+ currentReadFrameBuffers.set(gl, targetFrameBuffer);
275
+ if (updateWriteTarget)
276
+ currentDrawFrameBuffers.set(gl, targetFrameBuffer);
277
+ if (updateReadTarget || updateWriteTarget) {
278
+ var targetToUpdate = updateReadTarget && updateWriteTarget
279
+ ? exports.GL_FRAMEBUFFER
280
+ : updateReadTarget
281
+ ? exports.GL_READ_FRAMEBUFFER
282
+ : exports.GL_DRAW_FRAMEBUFFER;
283
+ gl.bindFramebuffer(targetToUpdate, targetFrameBuffer);
284
+ }
285
+ };
286
+ exports.bindFramebuffer = bindFramebuffer;
287
+ exports.NullTexture = {
288
+ clear: function () { },
289
+ setUniform: function () { },
290
+ target: function () { return null; },
291
+ delete: function () { },
292
+ width: 0,
293
+ height: 0,
294
+ };
295
+ var createTexture = function (gl, _a) {
296
+ var textureIndex = _a.textureIndex, internalFormat = _a.internalFormat, width = _a.width, height = _a.height, data = _a.data, _b = _a.min, min = _b === void 0 ? webgl_constants_1.GL.NEAREST : _b, _c = _a.mag, mag = _c === void 0 ? webgl_constants_1.GL.NEAREST : _c;
297
+ if (GL_DEBUG && !(0 <= textureIndex && textureIndex <= gl.getParameter(webgl_constants_1.GL.MAX_COMBINED_TEXTURE_IMAGE_UNITS)))
298
+ throw new Error('WebGL2 is guaranteed to support at least 32 textures but not necessarily more than that');
299
+ var srcFormat = textureSrcFormatLookup[internalFormat];
300
+ var type = textureTypeLookup[internalFormat];
301
+ var texture = gl.createTexture();
302
+ var setTextureContents = function () {
303
+ gl.activeTexture(webgl_constants_1.GL.TEXTURE0 + textureIndex);
304
+ gl.bindTexture(webgl_constants_1.GL.TEXTURE_2D, texture);
305
+ gl.texImage2D(webgl_constants_1.GL.TEXTURE_2D, 0, internalFormat, width, height, 0, srcFormat, type, data);
306
+ };
307
+ setTextureContents();
308
+ gl.texParameteri(webgl_constants_1.GL.TEXTURE_2D, webgl_constants_1.GL.TEXTURE_MIN_FILTER, min);
309
+ gl.texParameteri(webgl_constants_1.GL.TEXTURE_2D, webgl_constants_1.GL.TEXTURE_MAG_FILTER, mag);
310
+ gl.texParameteri(webgl_constants_1.GL.TEXTURE_2D, webgl_constants_1.GL.TEXTURE_WRAP_S, webgl_constants_1.GL.CLAMP_TO_EDGE);
311
+ gl.texParameteri(webgl_constants_1.GL.TEXTURE_2D, webgl_constants_1.GL.TEXTURE_WRAP_T, webgl_constants_1.GL.CLAMP_TO_EDGE);
312
+ if (GL_DEBUG) {
313
+ var error = gl.getError();
314
+ if (error !== gl.NO_ERROR && error !== gl.CONTEXT_LOST_WEBGL)
315
+ throw new Error("Failed to set the texture with texImage2D, code " + error);
316
+ }
317
+ var frameBuffer = null;
318
+ var getTarget = function () {
319
+ if (!frameBuffer) {
320
+ frameBuffer = gl.createFramebuffer();
321
+ (0, exports.bindFramebuffer)(gl, exports.GL_DRAW_FRAMEBUFFER, frameBuffer);
322
+ gl.framebufferTexture2D(exports.GL_FRAMEBUFFER, webgl_constants_1.GL.COLOR_ATTACHMENT0, webgl_constants_1.GL.TEXTURE_2D, texture, 0);
323
+ if (GL_DEBUG && gl.checkFramebufferStatus(exports.GL_DRAW_FRAMEBUFFER) !== webgl_constants_1.GL.FRAMEBUFFER_COMPLETE) {
324
+ throw new Error("Target framebuffer is not complete");
325
+ }
326
+ }
327
+ return frameBuffer;
328
+ };
329
+ return {
330
+ clear: function () {
331
+ (0, exports.bindFramebuffer)(gl, exports.GL_DRAW_FRAMEBUFFER, getTarget());
332
+ (0, exports.clearRect)(gl, { color: [0, 0, 0, 0] });
333
+ },
334
+ setUniform: function (location) { return gl.uniform1i(location, textureIndex); },
335
+ target: getTarget,
336
+ delete: function () {
337
+ if (frameBuffer) {
338
+ if (currentReadFrameBuffers.get(gl) === frameBuffer)
339
+ (0, exports.bindFramebuffer)(gl, exports.GL_READ_FRAMEBUFFER, null);
340
+ if (currentDrawFrameBuffers.get(gl) === frameBuffer)
341
+ (0, exports.bindFramebuffer)(gl, exports.GL_DRAW_FRAMEBUFFER, null);
342
+ gl.deleteFramebuffer(frameBuffer);
343
+ }
344
+ gl.deleteTexture(texture);
345
+ return true;
346
+ },
347
+ width: width,
348
+ height: height,
349
+ };
350
+ };
351
+ exports.createTexture = createTexture;
352
+ var attribSizeLookup = (_d = {}, _d[webgl_constants_1.GL.FLOAT_VEC2] = 2, _d[webgl_constants_1.GL.FLOAT_VEC4] = 4, _d[webgl_constants_1.GL.FLOAT] = 1, _d[webgl_constants_1.GL.INT] = 1, _d);
353
+ var attribElementTypeLookup = (_e = {},
354
+ _e[webgl_constants_1.GL.FLOAT_VEC2] = webgl_constants_1.GL.FLOAT,
355
+ _e[webgl_constants_1.GL.FLOAT_VEC4] = webgl_constants_1.GL.FLOAT,
356
+ _e[webgl_constants_1.GL.FLOAT] = webgl_constants_1.GL.FLOAT,
357
+ _e[webgl_constants_1.GL.INT] = webgl_constants_1.GL.INT,
358
+ _e);
359
+ var integerTypes = new Set([webgl_constants_1.GL.BYTE, webgl_constants_1.GL.SHORT, webgl_constants_1.GL.INT, webgl_constants_1.GL.UNSIGNED_BYTE, webgl_constants_1.GL.UNSIGNED_SHORT, webgl_constants_1.GL.UNSIGNED_INT]);
360
+ var getAttributes = function (gl, program, attributeLocations) {
361
+ return new Map(__spreadArray([], __read(new Array(gl.getProgramParameter(program, webgl_constants_1.GL.ACTIVE_ATTRIBUTES))), false).map(function (_, index) {
362
+ var normalize = false;
363
+ var stride = 0;
364
+ var offset = 0;
365
+ var activeAttribInfo = gl.getActiveAttrib(program, index);
366
+ if (!activeAttribInfo)
367
+ throw new Error("Whoa, active attribute info could not be read");
368
+ var name = activeAttribInfo.name, type = activeAttribInfo.type;
369
+ if (name.startsWith('gl_'))
370
+ return [name, function () { }];
371
+ var location = attributeLocations.get(name);
372
+ if (typeof location !== 'number')
373
+ throw new Error("Whoa, attribute location was not found in the cache");
374
+ var buffer = gl.createBuffer();
375
+ gl.bindBuffer(webgl_constants_1.GL.ARRAY_BUFFER, buffer);
376
+ gl.enableVertexAttribArray(location);
377
+ var attribSize = attribSizeLookup[type];
378
+ var attribElementType = attribElementTypeLookup[type];
379
+ if (GL_DEBUG && (attribSize === undefined || attribElementType === undefined))
380
+ throw new Error("Attribute type " + type + " is not yet properly covered");
381
+ if (integerTypes.has(attribElementType)) {
382
+ gl.vertexAttribIPointer(location, attribSize, webgl_constants_1.GL.INT, stride, offset);
383
+ }
384
+ else {
385
+ gl.vertexAttribPointer(location, attribSize, webgl_constants_1.GL.FLOAT, normalize, stride, offset);
386
+ }
387
+ var setValue = function (data) {
388
+ gl.bindBuffer(webgl_constants_1.GL.ARRAY_BUFFER, buffer);
389
+ gl.bufferData(webgl_constants_1.GL.ARRAY_BUFFER, data, webgl_constants_1.GL.STATIC_DRAW);
390
+ };
391
+ return [name, setValue];
392
+ }));
393
+ };
394
+ exports.getAttributes = getAttributes;
395
+ var bindVertexArray = function (gl, vertexArrayObject) {
396
+ if (vertexArrayObject !== currentVertexArrayObjects.get(gl)) {
397
+ currentVertexArrayObjects.set(gl, vertexArrayObject);
398
+ gl.bindVertexArray(vertexArrayObject);
399
+ }
400
+ };
401
+ exports.bindVertexArray = bindVertexArray;
402
+ var getRenderer = function (gl, program, vao, _a) {
403
+ var _b = _a.depthTest, depthTest = _b === void 0 ? false : _b, _c = _a.blend, blend = _c === void 0 ? true : _c;
404
+ var uniforms = getUniforms(gl, program);
405
+ return function (_a) {
406
+ var _b;
407
+ var uniformValues = _a.uniformValues, viewport = _a.viewport, target = _a.target, clear = _a.clear, scissor = _a.scissor, draw = _a.draw;
408
+ if (!setGlobalConstants.has(gl)) {
409
+ setGlobalConstants.add(gl);
410
+ currentFlags.set(gl, (_b = {}, _b[webgl_constants_1.GL.DITHER] = true, _b));
411
+ gl.blendFuncSeparate(webgl_constants_1.GL.SRC_ALPHA, webgl_constants_1.GL.ONE_MINUS_SRC_ALPHA, 1, 1);
412
+ gl.blendEquation(webgl_constants_1.GL.FUNC_ADD);
413
+ flagSet(gl, webgl_constants_1.GL.DITHER, false);
414
+ gl.depthMask(true);
415
+ gl.depthFunc(webgl_constants_1.GL.LESS);
416
+ gl.depthRange(0, 1);
417
+ flagSet(gl, webgl_constants_1.GL.CULL_FACE, true);
418
+ gl.cullFace(webgl_constants_1.GL.BACK);
419
+ gl.hint(webgl_constants_1.GL.FRAGMENT_SHADER_DERIVATIVE_HINT, webgl_constants_1.GL.NICEST);
420
+ }
421
+ if (depthTest !== currentDepthTests.get(gl)) {
422
+ currentDepthTests.set(gl, depthTest);
423
+ flagSet(gl, webgl_constants_1.GL.DEPTH_TEST, depthTest);
424
+ }
425
+ flagSet(gl, webgl_constants_1.GL.BLEND, blend);
426
+ if (program !== currentPrograms.get(gl)) {
427
+ currentPrograms.set(gl, program);
428
+ gl.useProgram(program);
429
+ }
430
+ if (vao)
431
+ (0, exports.bindVertexArray)(gl, vao);
432
+ if (viewport)
433
+ setViewport(gl, viewport.x, viewport.y, viewport.width, viewport.height);
434
+ if (uniformValues)
435
+ uniforms.forEach(function (setValue, name) { return uniformValues[name] && setValue(uniformValues[name]); });
436
+ (0, exports.bindFramebuffer)(gl, exports.GL_DRAW_FRAMEBUFFER, target);
437
+ if (clear)
438
+ (0, exports.clearRect)(gl, clear);
439
+ if (draw) {
440
+ flagSet(gl, webgl_constants_1.GL.SCISSOR_TEST, scissor !== undefined);
441
+ if (scissor) {
442
+ setScissor.apply(void 0, __spreadArray([gl], __read(scissor), false));
443
+ }
444
+ gl.drawArraysInstanced(draw.geom, draw.offset, draw.count, draw.instanceCount || 1);
445
+ }
446
+ };
447
+ };
448
+ exports.getRenderer = getRenderer;
449
+ var pickPixel = new Uint8Array(4);
450
+ var readPixel = function (gl, canvasX, canvasY) {
451
+ gl.readPixels(canvasX, canvasY, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE, pickPixel);
452
+ return pickPixel;
453
+ };
454
+ exports.readPixel = readPixel;
455
+ var templateConcat = function (strings) {
456
+ var args = [];
457
+ for (var _i = 1; _i < arguments.length; _i++) {
458
+ args[_i - 1] = arguments[_i];
459
+ }
460
+ return strings
461
+ .map(function (s, i) { var _a; return "" + s + ((_a = args[i]) !== null && _a !== void 0 ? _a : ''); })
462
+ .join('')
463
+ .trim();
464
+ };
465
+ var vert = function (strings) {
466
+ var args = [];
467
+ for (var _i = 1; _i < arguments.length; _i++) {
468
+ args[_i - 1] = arguments[_i];
469
+ }
470
+ return "#version 300 es\n#pragma STDGL invariant(all)\nprecision highp int;\nprecision highp float;\n" + templateConcat.apply(void 0, __spreadArray([strings], __read(args), false));
471
+ };
472
+ exports.vert = vert;
473
+ var frag = function (strings) {
474
+ var args = [];
475
+ for (var _i = 1; _i < arguments.length; _i++) {
476
+ args[_i - 1] = arguments[_i];
477
+ }
478
+ return "#version 300 es\nprecision highp int;\nprecision highp float;\n" + templateConcat.apply(void 0, __spreadArray([strings], __read(args), false));
479
+ };
480
+ exports.frag = frag;
481
+ //# sourceMappingURL=kingly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kingly.js","sourceRoot":"","sources":["../../src/common/kingly.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=webgl_constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webgl_constants.d.ts","sourceRoot":"","sources":["../../src/common/webgl_constants.ts"],"names":[],"mappings":""}