@elastic/charts 46.3.0 → 46.6.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 (28) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/chart_types/flame_chart/flame_chart.js +107 -45
  3. package/dist/chart_types/flame_chart/flame_chart.js.map +1 -1
  4. package/dist/chart_types/flame_chart/render/common.js +1 -1
  5. package/dist/chart_types/flame_chart/render/draw_a_frame.js +13 -15
  6. package/dist/chart_types/flame_chart/render/draw_a_frame.js.map +1 -1
  7. package/dist/chart_types/flame_chart/render/draw_canvas.js +8 -6
  8. package/dist/chart_types/flame_chart/render/draw_canvas.js.map +1 -1
  9. package/dist/chart_types/flame_chart/render/draw_webgl.js +2 -2
  10. package/dist/chart_types/flame_chart/render/draw_webgl.js.map +1 -1
  11. package/dist/chart_types/flame_chart/render/ensure_webgl.js +21 -20
  12. package/dist/chart_types/flame_chart/render/ensure_webgl.js.map +1 -1
  13. package/dist/chart_types/flame_chart/render/upload_to_webgl.d.ts +2 -0
  14. package/dist/chart_types/flame_chart/render/upload_to_webgl.d.ts.map +1 -0
  15. package/dist/chart_types/flame_chart/render/upload_to_webgl.js +12 -0
  16. package/dist/chart_types/flame_chart/render/upload_to_webgl.js.map +1 -0
  17. package/dist/chart_types/flame_chart/shaders.js +20 -10
  18. package/dist/chart_types/flame_chart/shaders.js.map +1 -1
  19. package/dist/chart_types/flame_chart/types.js.map +1 -1
  20. package/dist/common/default_theme_attributes.d.ts +2 -0
  21. package/dist/common/default_theme_attributes.d.ts.map +1 -0
  22. package/dist/common/default_theme_attributes.js +5 -0
  23. package/dist/common/default_theme_attributes.js.map +1 -0
  24. package/dist/common/kingly.js +84 -67
  25. package/dist/common/kingly.js.map +1 -1
  26. package/dist/state/selectors/get_legend_size.js +2 -2
  27. package/dist/state/selectors/get_legend_size.js.map +1 -1
  28. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"draw_canvas.js","sourceRoot":"","sources":["../../../../src/chart_types/flame_chart/render/draw_canvas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"draw_canvas.js","sourceRoot":"","sources":["../../../../src/chart_types/flame_chart/render/draw_canvas.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ var MIN_FILL_RATIO = [1 - MAX_PADDING_RATIO, 0.6];
8
8
  var CORNER_RADIUS_RATIO = 0.25;
9
9
  var VERTICES_PER_GEOM = 4;
10
10
  var DUMMY_INDEX = -1;
11
- var drawWebgl = function (gl, logicalTime, canvasWidth, canvasHeight, xOffset, yOffset, pickTexture, renderer, hoverIndex, rowHeight, currentFocus, instanceCount, focusLayer, pickLayer) {
11
+ var drawWebgl = function (gl, logicalTime, canvasWidth, canvasHeight, xOffset, yOffset, pickTexture, renderer, hoverIndex, rowHeight, f, instanceCount, focusLayer, pickLayer) {
12
12
  return renderer({
13
13
  target: pickLayer ? pickTexture.target() : null,
14
14
  uniformValues: {
@@ -21,7 +21,7 @@ var drawWebgl = function (gl, logicalTime, canvasWidth, canvasHeight, xOffset, y
21
21
  hoverIndex: Number.isFinite(hoverIndex) ? hoverIndex + shaders_1.GEOM_INDEX_OFFSET : DUMMY_INDEX,
22
22
  rowHeight0: rowHeight,
23
23
  rowHeight1: rowHeight,
24
- focus: currentFocus,
24
+ focus: [f[0], f[1], 0, 0, f[2], f[3], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
25
25
  },
26
26
  viewport: { x: xOffset, y: yOffset, width: canvasWidth, height: canvasHeight },
27
27
  clear: {
@@ -1 +1 @@
1
- {"version":3,"file":"draw_webgl.js","sourceRoot":"","sources":["../../../../src/chart_types/flame_chart/render/draw_webgl.ts"],"names":[],"mappings":";;;AASA,sCAA+C;AAC/C,mCAAgE;AAGhE,IAAM,iBAAiB,GAAG,IAAI,CAAC;AAC/B,IAAM,cAAc,GAAG,CAAC,CAAC,GAAG,iBAAiB,EAAE,GAAG,CAAC,CAAC;AACpD,IAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,IAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,IAAM,WAAW,GAAG,CAAC,CAAC,CAAC;AAGhB,IAAM,SAAS,GAAG,UACvB,EAA0B,EAC1B,WAAmB,EACnB,WAAmB,EACnB,YAAoB,EACpB,OAAe,EACf,OAAe,EACf,WAAoB,EACpB,QAAgB,EAChB,UAAkB,EAClB,SAAiB,EACjB,YAA8C,EAC9C,aAAqB,EACrB,UAAmB,EACnB,SAAkB;IAElB,OAAA,QAAQ,CAAC;QACP,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI;QAC/C,aAAa,EAAE;YACb,SAAS,WAAA;YACT,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC;YAC/B,UAAU,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;YACvC,KAAK,EAAE,SAAS,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,2BAAkB,EAAE,yBAAgB,CAAC;YACjF,YAAY,EAAE,cAAc;YAC5B,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,SAAS,GAAG,mBAAmB;YAC9E,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,2BAAiB,CAAC,CAAC,CAAC,WAAW;YACtF,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,SAAS;YACrB,KAAK,EAAE,YAAY;SACpB;QACD,QAAQ,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE;QAC9E,KAAK,EAAE;YACL,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACpD,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC;SACpD;QACD,IAAI,EACF,SAAS,IAAI,CAAC,UAAU;YACtB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACE,IAAI,EAAE,EAAE,CAAC,cAAc;gBACvB,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,iBAAiB;gBACxB,aAAa,eAAA;aACd;KACR,CAAC;AA5BF,CA4BE,CAAC;AA5CQ,QAAA,SAAS,aA4CjB"}
1
+ {"version":3,"file":"draw_webgl.js","sourceRoot":"","sources":["../../../../src/chart_types/flame_chart/render/draw_webgl.ts"],"names":[],"mappings":";;;AASA,sCAA+C;AAC/C,mCAAgE;AAGhE,IAAM,iBAAiB,GAAG,IAAI,CAAC;AAC/B,IAAM,cAAc,GAAG,CAAC,CAAC,GAAG,iBAAiB,EAAE,GAAG,CAAC,CAAC;AACpD,IAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,IAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,IAAM,WAAW,GAAG,CAAC,CAAC,CAAC;AAGhB,IAAM,SAAS,GAAG,UACvB,EAA0B,EAC1B,WAAmB,EACnB,WAAmB,EACnB,YAAoB,EACpB,OAAe,EACf,OAAe,EACf,WAAoB,EACpB,QAAgB,EAChB,UAAkB,EAClB,SAAiB,EACjB,CAAmC,EACnC,aAAqB,EACrB,UAAmB,EACnB,SAAkB;IAElB,OAAA,QAAQ,CAAC;QACP,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI;QAC/C,aAAa,EAAE;YACb,SAAS,WAAA;YACT,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC;YAC/B,UAAU,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;YACvC,KAAK,EAAE,SAAS,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,2BAAkB,EAAE,yBAAgB,CAAC;YACjF,YAAY,EAAE,cAAc;YAC5B,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,SAAS,GAAG,mBAAmB;YAC9E,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,2BAAiB,CAAC,CAAC,CAAC,WAAW;YACtF,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,SAAS;YACrB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACpE;QACD,QAAQ,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE;QAC9E,KAAK,EAAE;YACL,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACpD,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC;SACpD;QACD,IAAI,EACF,SAAS,IAAI,CAAC,UAAU;YACtB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACE,IAAI,EAAE,EAAE,CAAC,cAAc;gBACvB,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,iBAAiB;gBACxB,aAAa,eAAA;aACd;KACR,CAAC;AA5BF,CA4BE,CAAC;AA5CQ,QAAA,SAAS,aA4CjB"}
@@ -1,34 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.uploadToWebgl = exports.ensureWebgl = void 0;
3
+ exports.ensureWebgl = void 0;
4
4
  var kingly_1 = require("../../../common/kingly");
5
+ var webgl_constants_1 = require("../../../common/webgl_constants");
5
6
  var shaders_1 = require("../shaders");
6
7
  var types_1 = require("../types");
7
8
  function ensureWebgl(gl, instanceAttributes) {
9
+ (0, kingly_1.resetState)(gl);
8
10
  var vao = gl.createVertexArray();
9
11
  if (!vao)
10
12
  return types_1.NULL_GL_RESOURCES;
11
13
  (0, kingly_1.bindVertexArray)(gl, vao);
12
- var attributeLocations = new Map(instanceAttributes.map(function (name, i) { return [name, i]; }));
13
- instanceAttributes.forEach(function (name) {
14
- var attributeLocation = attributeLocations.get(name);
15
- if (typeof attributeLocation === 'number')
16
- gl.vertexAttribDivisor(attributeLocation, 1);
17
- });
18
- var geomProgram = (0, kingly_1.createLinkedProgram)(gl, (0, kingly_1.createCompiledShader)(gl, kingly_1.GL_VERTEX_SHADER, shaders_1.rectVert), (0, kingly_1.createCompiledShader)(gl, kingly_1.GL_FRAGMENT_SHADER, shaders_1.roundedRectFrag), attributeLocations);
19
- var pickProgram = (0, kingly_1.createLinkedProgram)(gl, (0, kingly_1.createCompiledShader)(gl, kingly_1.GL_VERTEX_SHADER, shaders_1.rectVert), (0, kingly_1.createCompiledShader)(gl, kingly_1.GL_FRAGMENT_SHADER, shaders_1.colorFrag), attributeLocations);
20
- var roundedRectRenderer = (0, kingly_1.getRenderer)(gl, geomProgram, vao, { depthTest: false, blend: true });
21
- var pickTextureRenderer = (0, kingly_1.getRenderer)(gl, pickProgram, vao, { depthTest: false, blend: false });
22
- var attributes = (0, kingly_1.getAttributes)(gl, geomProgram, attributeLocations);
14
+ instanceAttributes.forEach(function (name) { return gl.vertexAttribDivisor(shaders_1.attributeLocations[name], 1); });
15
+ var geomProgram = (0, kingly_1.createLinkedProgram)(gl, (0, kingly_1.createCompiledShader)(gl, webgl_constants_1.GL.VERTEX_SHADER, shaders_1.roundedRectVert), (0, kingly_1.createCompiledShader)(gl, webgl_constants_1.GL.FRAGMENT_SHADER, shaders_1.roundedRectFrag), shaders_1.attributeLocations);
16
+ var pickProgram = (0, kingly_1.createLinkedProgram)(gl, (0, kingly_1.createCompiledShader)(gl, webgl_constants_1.GL.VERTEX_SHADER, shaders_1.simpleRectVert), (0, kingly_1.createCompiledShader)(gl, webgl_constants_1.GL.FRAGMENT_SHADER, shaders_1.colorFrag), shaders_1.attributeLocations);
17
+ var blockUniformsData = (0, kingly_1.blockUniforms)(gl, 'Settings', [
18
+ 'focus',
19
+ 'resolution',
20
+ 'gapPx',
21
+ 'minFillRatio',
22
+ 'rowHeight0',
23
+ 'rowHeight1',
24
+ 't',
25
+ 'cornerRadiusPx',
26
+ 'hoverIndex',
27
+ 'pickLayer',
28
+ ], [geomProgram, pickProgram]);
29
+ var roundedRectRenderer = (0, kingly_1.getRenderer)(gl, geomProgram, blockUniformsData, vao, { depthTest: false, blend: true });
30
+ var pickTextureRenderer = (0, kingly_1.getRenderer)(gl, pickProgram, blockUniformsData, vao, { depthTest: false, blend: false });
31
+ var attributes = (0, kingly_1.getAttributes)(gl, geomProgram, shaders_1.attributeLocations);
23
32
  return { roundedRectRenderer: roundedRectRenderer, pickTextureRenderer: pickTextureRenderer, attributes: attributes };
24
33
  }
25
34
  exports.ensureWebgl = ensureWebgl;
26
- function uploadToWebgl(gl, attributes, columnarViewModel) {
27
- attributes.forEach(function (setValue, key) {
28
- var value = columnarViewModel[key];
29
- if (value instanceof Float32Array)
30
- setValue(value);
31
- });
32
- }
33
- exports.uploadToWebgl = uploadToWebgl;
34
35
  //# sourceMappingURL=ensure_webgl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ensure_webgl.js","sourceRoot":"","sources":["../../../../src/chart_types/flame_chart/render/ensure_webgl.ts"],"names":[],"mappings":";;;AAQA,iDASgC;AAEhC,sCAAkE;AAClE,kCAA0D;AAG1D,SAAgB,WAAW,CAAC,EAA0B,EAAE,kBAA4B;IAKlF,IAAM,GAAG,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;IACnC,IAAI,CAAC,GAAG;QAAE,OAAO,yBAAiB,CAAC;IAEnC,IAAA,wBAAe,EAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAEzB,IAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAS,IAAK,OAAA,CAAC,IAAI,EAAE,CAAC,CAAC,EAAT,CAAS,CAAC,CAAC,CAAC;IAG3F,kBAAkB,CAAC,OAAO,CAAC,UAAC,IAAI;QAC9B,IAAM,iBAAiB,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,OAAO,iBAAiB,KAAK,QAAQ;YAAE,EAAE,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAMH,IAAM,WAAW,GAAG,IAAA,4BAAmB,EACrC,EAAE,EACF,IAAA,6BAAoB,EAAC,EAAE,EAAE,yBAAgB,EAAE,kBAAQ,CAAC,EACpD,IAAA,6BAAoB,EAAC,EAAE,EAAE,2BAAkB,EAAE,yBAAe,CAAC,EAC7D,kBAAkB,CACnB,CAAC;IAEF,IAAM,WAAW,GAAG,IAAA,4BAAmB,EACrC,EAAE,EACF,IAAA,6BAAoB,EAAC,EAAE,EAAE,yBAAgB,EAAE,kBAAQ,CAAC,EACpD,IAAA,6BAAoB,EAAC,EAAE,EAAE,2BAAkB,EAAE,mBAAS,CAAC,EACvD,kBAAkB,CACnB,CAAC;IAOF,IAAM,mBAAmB,GAAG,IAAA,oBAAW,EAAC,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACjG,IAAM,mBAAmB,GAAG,IAAA,oBAAW,EAAC,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAElG,IAAM,UAAU,GAAG,IAAA,sBAAa,EAAC,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;IAEtE,OAAO,EAAE,mBAAmB,qBAAA,EAAE,mBAAmB,qBAAA,EAAE,UAAU,YAAA,EAAE,CAAC;AAClE,CAAC;AA/CD,kCA+CC;AAGD,SAAgB,aAAa,CAC3B,EAA0B,EAC1B,UAAsB,EACtB,iBAA6C;IAE7C,UAAU,CAAC,OAAO,CAAC,UAAC,QAAQ,EAAE,GAAG;QAC/B,IAAM,KAAK,GAAG,iBAAiB,CAAC,GAA8B,CAAC,CAAC;QAChE,IAAI,KAAK,YAAY,YAAY;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AATD,sCASC"}
1
+ {"version":3,"file":"ensure_webgl.js","sourceRoot":"","sources":["../../../../src/chart_types/flame_chart/render/ensure_webgl.ts"],"names":[],"mappings":";;;AAQA,iDAQgC;AAChC,mEAAqD;AACrD,sCAA6G;AAC7G,kCAA0D;AAG1D,SAAgB,WAAW,CACzB,EAA0B,EAC1B,kBAA0D;IAE1D,IAAA,mBAAU,EAAC,EAAE,CAAC,CAAC;IAMf,IAAM,GAAG,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;IACnC,IAAI,CAAC,GAAG;QAAE,OAAO,yBAAiB,CAAC;IAEnC,IAAA,wBAAe,EAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAGzB,kBAAkB,CAAC,OAAO,CAAC,UAAC,IAAI,IAAK,OAAA,EAAE,CAAC,mBAAmB,CAAC,4BAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAnD,CAAmD,CAAC,CAAC;IAM1F,IAAM,WAAW,GAAG,IAAA,4BAAmB,EACrC,EAAE,EACF,IAAA,6BAAoB,EAAC,EAAE,EAAE,oBAAE,CAAC,aAAa,EAAE,yBAAe,CAAC,EAC3D,IAAA,6BAAoB,EAAC,EAAE,EAAE,oBAAE,CAAC,eAAe,EAAE,yBAAe,CAAC,EAC7D,4BAAkB,CACnB,CAAC;IAEF,IAAM,WAAW,GAAG,IAAA,4BAAmB,EACrC,EAAE,EACF,IAAA,6BAAoB,EAAC,EAAE,EAAE,oBAAE,CAAC,aAAa,EAAE,wBAAc,CAAC,EAC1D,IAAA,6BAAoB,EAAC,EAAE,EAAE,oBAAE,CAAC,eAAe,EAAE,mBAAS,CAAC,EACvD,4BAAkB,CACnB,CAAC;IAEF,IAAM,iBAAiB,GAAG,IAAA,sBAAa,EACrC,EAAE,EACF,UAAU,EACV;QACE,OAAO;QACP,YAAY;QACZ,OAAO;QACP,cAAc;QACd,YAAY;QACZ,YAAY;QACZ,GAAG;QACH,gBAAgB;QAChB,YAAY;QACZ,WAAW;KACZ,EACD,CAAC,WAAW,EAAE,WAAW,CAAC,CAC3B,CAAC;IAOF,IAAM,mBAAmB,GAAG,IAAA,oBAAW,EAAC,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACpH,IAAM,mBAAmB,GAAG,IAAA,oBAAW,EAAC,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAErH,IAAM,UAAU,GAAG,IAAA,sBAAa,EAAC,EAAE,EAAE,WAAW,EAAE,4BAAkB,CAAC,CAAC;IAEtE,OAAO,EAAE,mBAAmB,qBAAA,EAAE,mBAAmB,qBAAA,EAAE,UAAU,YAAA,EAAE,CAAC;AAClE,CAAC;AAjED,kCAiEC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=upload_to_webgl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload_to_webgl.d.ts","sourceRoot":"","sources":["../../../../src/chart_types/flame_chart/render/upload_to_webgl.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.uploadToWebgl = void 0;
4
+ function uploadToWebgl(gl, attributes, columnarViewModel) {
5
+ attributes.forEach(function (setValue, key) {
6
+ var value = columnarViewModel[key];
7
+ if (value instanceof Float32Array)
8
+ setValue(value);
9
+ });
10
+ }
11
+ exports.uploadToWebgl = uploadToWebgl;
12
+ //# sourceMappingURL=upload_to_webgl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload_to_webgl.js","sourceRoot":"","sources":["../../../../src/chart_types/flame_chart/render/upload_to_webgl.ts"],"names":[],"mappings":";;;AAYA,SAAgB,aAAa,CAC3B,EAA0B,EAC1B,UAAsB,EACtB,iBAA6C;IAE7C,UAAU,CAAC,OAAO,CAAC,UAAC,QAAQ,EAAE,GAAG;QAC/B,IAAM,KAAK,GAAG,iBAAiB,CAAC,GAA8B,CAAC,CAAC;QAChE,IAAI,KAAK,YAAY,YAAY;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AATD,sCASC"}
@@ -1,14 +1,24 @@
1
1
  "use strict";
2
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
- return cooked;
5
- };
6
2
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.colorFrag = exports.roundedRectFrag = exports.rectVert = exports.GEOM_INDEX_OFFSET = void 0;
8
- var kingly_1 = require("../../common/kingly");
3
+ exports.colorFrag = exports.roundedRectFrag = exports.roundedRectVert = exports.simpleRectVert = exports.GEOM_INDEX_OFFSET = exports.attributeLocations = void 0;
4
+ exports.attributeLocations = {
5
+ position0: 0,
6
+ position1: 1,
7
+ size0: 2,
8
+ size1: 3,
9
+ color: 4,
10
+ };
9
11
  exports.GEOM_INDEX_OFFSET = 1;
10
- exports.rectVert = (0, kingly_1.vert)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n in vec2 position0, position1;\n in float size0, size1;\n in vec4 color;\n\n uniform bool pickLayer;\n uniform float t; // 0: start position; 1: end position\n uniform vec2 resolution;\n uniform vec2 gapPx;\n // at least this ratio of the rectangle's full width/height must be filled, else the pixel gap eats small rectangles:\n uniform vec2 minFillRatio;\n uniform float cornerRadiusPx;\n uniform float rowHeight0, rowHeight1;\n uniform mat2 focus; // [[focusLoX, focusHiX], [focusLoY, focusHiY]]\n uniform int hoverIndex;\n\n out vec4 fragmentColor;\n out vec2 corners[4];\n out float radiusPx;\n\n const vec4 UNIT4 = vec4(1.0);\n const uvec4 BIT_SHIFTERS = uvec4(24, 16, 8, 0); // helps pack a 32bit unsigned integer into the RGBA bytes\n const float HOVER_OPACITY = 0.382; // arbitrary; set to the smaller part of the golden ratio\n const int GEOM_INDEX_OFFSET = ", ";\n\n void main() {\n // calculate the basic geometry invariant of gaps, rounding or zoom levels\n int x = gl_VertexID & 1; // x yields 0, 1, 0, 1 for gl_VertexID 0, 1, 2, 3\n int y = (gl_VertexID >> 1) & 1; // y yields 0, 0, 1, 1 for gl_VertexID 0, 1, 2, 3\n int datumIndex = gl_VertexID >> 2; // integer division by 2^2, as each geom is represented with 4 vertices\n vec2 unitSquareCoord = vec2(x, y);\n vec2 position = mix(position0, position1, t);\n vec2 size = mix(vec2(size0, rowHeight0), vec2(size1, rowHeight1), t);\n vec2 withGapXY = size * unitSquareCoord;\n\n // determine what we're zooming/panning into\n vec2 focusX = focus[0];\n vec2 focusY = focus[1];\n float viewableX = focusX[1] - focusX[0];\n float viewableY = focusY[1] - focusY[0];\n vec2 viewable = vec2(viewableX, viewableY);\n vec2 zoomedResolution = resolution / viewable;\n\n // calculate the gap-aware geometry\n vec2 gapRatio = gapPx / zoomedResolution;\n // gl_VertexID iterates as an integer index 0, 1, 2, ..., (offset + 0, offset + 1, ..., offset + count - 1)\n // these four coordinates form a rectangle, set up as two counterclockwise triangles with gl.TRIANGLE_STRIP\n // clip coordinate x/y goes from -1 to 1 of the viewport, so we center with this 0.5 subtraction\n vec2 xy = withGapXY - min(gapRatio, (1.0 - minFillRatio) * withGapXY) * sign(unitSquareCoord) + position;\n vec2 pan = vec2(focusX[0], focusY[0]);\n vec2 zoomPannedXY = (xy - pan) / viewable;\n\n // output the position and color values (approx. return values of our vertex shader)\n // project [0, 1] normalized values to [-1, 1] homogeneous clip space values\n gl_Position = vec4(2.0 * zoomPannedXY - 1.0, 0, 1);\n fragmentColor = pickLayer\n ? vec4((uvec4(gl_InstanceID + GEOM_INDEX_OFFSET) >> BIT_SHIFTERS) % uvec4(256)) / 255.0\n : vec4(color.rgb, (gl_InstanceID == hoverIndex - GEOM_INDEX_OFFSET ? HOVER_OPACITY : 1.0) * color.a);\n\n // calculate rounded corner metrics for interpolation\n vec2 pixelSize = size * zoomedResolution;\n radiusPx = min(cornerRadiusPx, 0.5 * min(pixelSize.x, pixelSize.y));\n\n // output the corner helper values (approx. return values of our vertex shader)\n corners[0] = vec2(x, y) * size * zoomedResolution - radiusPx;\n corners[1] = vec2(1 - x, y) * size * zoomedResolution - radiusPx;\n corners[2] = vec2(x, 1 - y) * size * zoomedResolution - radiusPx;\n corners[3] = vec2(1 - x, 1 - y) * size * zoomedResolution - radiusPx;\n }"], ["\n in vec2 position0, position1;\n in float size0, size1;\n in vec4 color;\n\n uniform bool pickLayer;\n uniform float t; // 0: start position; 1: end position\n uniform vec2 resolution;\n uniform vec2 gapPx;\n // at least this ratio of the rectangle's full width/height must be filled, else the pixel gap eats small rectangles:\n uniform vec2 minFillRatio;\n uniform float cornerRadiusPx;\n uniform float rowHeight0, rowHeight1;\n uniform mat2 focus; // [[focusLoX, focusHiX], [focusLoY, focusHiY]]\n uniform int hoverIndex;\n\n out vec4 fragmentColor;\n out vec2 corners[4];\n out float radiusPx;\n\n const vec4 UNIT4 = vec4(1.0);\n const uvec4 BIT_SHIFTERS = uvec4(24, 16, 8, 0); // helps pack a 32bit unsigned integer into the RGBA bytes\n const float HOVER_OPACITY = 0.382; // arbitrary; set to the smaller part of the golden ratio\n const int GEOM_INDEX_OFFSET = ", ";\n\n void main() {\n // calculate the basic geometry invariant of gaps, rounding or zoom levels\n int x = gl_VertexID & 1; // x yields 0, 1, 0, 1 for gl_VertexID 0, 1, 2, 3\n int y = (gl_VertexID >> 1) & 1; // y yields 0, 0, 1, 1 for gl_VertexID 0, 1, 2, 3\n int datumIndex = gl_VertexID >> 2; // integer division by 2^2, as each geom is represented with 4 vertices\n vec2 unitSquareCoord = vec2(x, y);\n vec2 position = mix(position0, position1, t);\n vec2 size = mix(vec2(size0, rowHeight0), vec2(size1, rowHeight1), t);\n vec2 withGapXY = size * unitSquareCoord;\n\n // determine what we're zooming/panning into\n vec2 focusX = focus[0];\n vec2 focusY = focus[1];\n float viewableX = focusX[1] - focusX[0];\n float viewableY = focusY[1] - focusY[0];\n vec2 viewable = vec2(viewableX, viewableY);\n vec2 zoomedResolution = resolution / viewable;\n\n // calculate the gap-aware geometry\n vec2 gapRatio = gapPx / zoomedResolution;\n // gl_VertexID iterates as an integer index 0, 1, 2, ..., (offset + 0, offset + 1, ..., offset + count - 1)\n // these four coordinates form a rectangle, set up as two counterclockwise triangles with gl.TRIANGLE_STRIP\n // clip coordinate x/y goes from -1 to 1 of the viewport, so we center with this 0.5 subtraction\n vec2 xy = withGapXY - min(gapRatio, (1.0 - minFillRatio) * withGapXY) * sign(unitSquareCoord) + position;\n vec2 pan = vec2(focusX[0], focusY[0]);\n vec2 zoomPannedXY = (xy - pan) / viewable;\n\n // output the position and color values (approx. return values of our vertex shader)\n // project [0, 1] normalized values to [-1, 1] homogeneous clip space values\n gl_Position = vec4(2.0 * zoomPannedXY - 1.0, 0, 1);\n fragmentColor = pickLayer\n ? vec4((uvec4(gl_InstanceID + GEOM_INDEX_OFFSET) >> BIT_SHIFTERS) % uvec4(256)) / 255.0\n : vec4(color.rgb, (gl_InstanceID == hoverIndex - GEOM_INDEX_OFFSET ? HOVER_OPACITY : 1.0) * color.a);\n\n // calculate rounded corner metrics for interpolation\n vec2 pixelSize = size * zoomedResolution;\n radiusPx = min(cornerRadiusPx, 0.5 * min(pixelSize.x, pixelSize.y));\n\n // output the corner helper values (approx. return values of our vertex shader)\n corners[0] = vec2(x, y) * size * zoomedResolution - radiusPx;\n corners[1] = vec2(1 - x, y) * size * zoomedResolution - radiusPx;\n corners[2] = vec2(x, 1 - y) * size * zoomedResolution - radiusPx;\n corners[3] = vec2(1 - x, 1 - y) * size * zoomedResolution - radiusPx;\n }"])), exports.GEOM_INDEX_OFFSET);
11
- exports.roundedRectFrag = (0, kingly_1.frag)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n in vec4 fragmentColor;\n in vec2 corners[4];\n in float radiusPx;\n\n out vec4 fragColor;\n\n void main() {\n // rounded corners: discard pixels that lie beyond each corner \"circle\" in the quadrant beyond its respective corner\n for(int i = 0; i < 4; i++) {\n vec2 corner = corners[i];\n if(corner.x < 0.0 && corner.y < 0.0 && length(corner) > radiusPx) discard;\n }\n fragColor = fragmentColor;\n }"], ["\n in vec4 fragmentColor;\n in vec2 corners[4];\n in float radiusPx;\n\n out vec4 fragColor;\n\n void main() {\n // rounded corners: discard pixels that lie beyond each corner \"circle\" in the quadrant beyond its respective corner\n for(int i = 0; i < 4; i++) {\n vec2 corner = corners[i];\n if(corner.x < 0.0 && corner.y < 0.0 && length(corner) > radiusPx) discard;\n }\n fragColor = fragmentColor;\n }"])));
12
- exports.colorFrag = (0, kingly_1.frag)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n in vec4 fragmentColor;\n out vec4 fragColor;\n void main() { fragColor = fragmentColor; }"], ["\n in vec4 fragmentColor;\n out vec4 fragColor;\n void main() { fragColor = fragmentColor; }"])));
13
- var templateObject_1, templateObject_2, templateObject_3;
12
+ var vertTop = "#version 300 es\n #pragma STDGL invariant(all)\n precision highp int;\n precision highp float;\n";
13
+ var fragTop = "#version 300 es\n precision highp int;\n precision highp float;\n";
14
+ var attribDefs = "\n layout(location=" + exports.attributeLocations.position0 + ") in vec2 position0;\n layout(location=" + exports.attributeLocations.position1 + ") in vec2 position1;\n layout(location=" + exports.attributeLocations.size0 + ") in float size0;\n layout(location=" + exports.attributeLocations.size1 + ") in float size1;\n layout(location=" + exports.attributeLocations.color + ") in vec4 color;\n";
15
+ var uniformDefs = "\n uniform Settings {\n mat4 focus; // [[focusLoX, focusHiX], [focusLoY, focusHiY]]\n vec2 resolution;\n vec2 gapPx;\n vec2 minFillRatio; // at least this ratio of the rectangle's full width/height must be filled\n float rowHeight0;\n float rowHeight1;\n float t; // 0: start position; 1: end position\n float cornerRadiusPx;\n int hoverIndex;\n bool pickLayer;\n };\n";
16
+ var constants = "\n const vec4 UNIT4 = vec4(1.0);\n const uvec4 BIT_SHIFTERS = uvec4(24, 16, 8, 0); // helps pack a 32bit unsigned integer into the RGBA bytes\n const float HOVER_OPACITY = 0.382; // arbitrary; set to the smaller part of the golden ratio\n const int GEOM_INDEX_OFFSET = " + exports.GEOM_INDEX_OFFSET + ";\n";
17
+ var structGeom = "\n struct Geom {\n vec2 unitSquareCoord;\n vec2 size;\n vec4 glPosition;\n vec4 fragmentColor;\n };\n";
18
+ var getViewable = "\n vec2 getViewable() {\n float viewableX = focus[0][1] - focus[0][0];\n float viewableY = focus[1][1] - focus[1][0];\n return vec2(viewableX, viewableY);\n }\n";
19
+ var getGeom = "\n Geom getGeom(vec2 viewable, vec2 gapRatio, vec2 maxGapRatio) {\n // calculate the basic geometry invariant of gaps, rounding or zoom levels\n int x = gl_VertexID & 1; // x yields 0, 1, 0, 1 for gl_VertexID 0, 1, 2, 3\n int y = (gl_VertexID >> 1) & 1; // y yields 0, 0, 1, 1 for gl_VertexID 0, 1, 2, 3\n vec2 unitSquareCoord = vec2(x, y);\n vec2 position = mix(position0, position1, t);\n vec2 size = mix(vec2(size0, rowHeight0), vec2(size1, rowHeight1), t);\n vec2 fullSizeXY = size * unitSquareCoord;\n\n // determine what we're zooming/panning into\n vec2 baseXY = fullSizeXY + position;\n vec2 pan = vec2(focus[0][0], focus[1][0]);\n\n // gl_VertexID iterates as an integer index 0, 1, 2, ..., (offset + 0, offset + 1, ..., offset + count - 1)\n // these four coordinates form a rectangle, set up as two counterclockwise triangles with gl.TRIANGLE_STRIP\n // clip coordinate x/y goes from -1 to 1 of the viewport, so we center with this 0.5 subtraction\n vec2 gr = min(gapRatio, maxGapRatio * fullSizeXY);\n vec2 xy = baseXY - sign(unitSquareCoord) * gr;\n vec2 zoomPannedXY = (xy - pan) / viewable;\n\n // output the position and color values (approx. return values of our vertex shader)\n // project [0, 1] normalized values to [-1, 1] homogeneous clip space values\n vec4 glPosition = vec4(2.0 * zoomPannedXY - 1.0, 0, 1);\n\n vec4 fragmentColor = pickLayer\n ? vec4((uvec4(gl_InstanceID + GEOM_INDEX_OFFSET) >> BIT_SHIFTERS) % uvec4(256)) / 255.0\n : vec4(color.rgb, (gl_InstanceID == hoverIndex - GEOM_INDEX_OFFSET ? HOVER_OPACITY : 1.0) * color.a);\n\n return Geom(\n unitSquareCoord,\n size,\n glPosition,\n fragmentColor\n );\n }\n";
20
+ exports.simpleRectVert = vertTop + "\n " + attribDefs + "\n " + uniformDefs + "\n\n out vec4 fragmentColor;\n\n " + constants + "\n " + structGeom + "\n " + getViewable + "\n " + getGeom + "\n\n void main() {\n Geom g = getGeom(getViewable(), vec2(0), vec2(0));\n gl_Position = g.glPosition;\n fragmentColor = g.fragmentColor;\n }\n";
21
+ exports.roundedRectVert = vertTop + "\n " + attribDefs + "\n " + uniformDefs + "\n\n out vec4 fragmentColor;\n out vec2 corners[4];\n out float radiusPx;\n\n " + constants + "\n " + structGeom + "\n " + getViewable + "\n " + getGeom + "\n\n void main() {\n vec2 viewable = getViewable();\n\n // calculate the gap-aware geometry\n vec2 zoomedResolution = resolution / viewable;\n vec2 gapRatio = gapPx / zoomedResolution;\n\n vec2 maxGapRatio = 1.0 - minFillRatio;\n Geom g = getGeom(viewable, gapRatio, maxGapRatio);\n\n gl_Position = g.glPosition;\n fragmentColor = g.fragmentColor;\n\n // calculate rounded corner metrics for interpolation\n vec2 pixelSize = g.size * zoomedResolution;\n radiusPx = min(cornerRadiusPx, 0.5 * min(pixelSize.x, pixelSize.y));\n\n // output the corner helper values (approx. return values of our vertex shader)\n corners[0] = g.unitSquareCoord * g.size * zoomedResolution - radiusPx;\n corners[1] = (g.unitSquareCoord * vec2(-1, 1) + vec2(1, 0)) * g.size * zoomedResolution - radiusPx;\n corners[2] = (g.unitSquareCoord * vec2(1, -1) + vec2(0, 1)) * g.size * zoomedResolution - radiusPx;\n corners[3] = (1.0 - g.unitSquareCoord) * g.size * zoomedResolution - radiusPx;\n }\n";
22
+ exports.roundedRectFrag = fragTop + "\n in vec4 fragmentColor;\n in vec2 corners[4];\n in float radiusPx;\n\n out vec4 fragColor;\n\n void main() {\n if(( min(0.0, sign(corners[0].x) + sign(corners[0].y) + sign(radiusPx - length(corners[0])) + 2.0)\n + min(0.0, sign(corners[1].x) + sign(corners[1].y) + sign(radiusPx - length(corners[1])) + 2.0)\n + min(0.0, sign(corners[2].x) + sign(corners[2].y) + sign(radiusPx - length(corners[2])) + 2.0)\n + min(0.0, sign(corners[3].x) + sign(corners[3].y) + sign(radiusPx - length(corners[3])) + 2.0)\n ) < 0.0) discard;\n fragColor = fragmentColor;\n }\n";
23
+ exports.colorFrag = fragTop + "\n in vec4 fragmentColor;\n out vec4 fragColor;\n void main() { fragColor = fragmentColor; }\n";
14
24
  //# sourceMappingURL=shaders.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shaders.js","sourceRoot":"","sources":["../../../src/chart_types/flame_chart/shaders.ts"],"names":[],"mappings":";;;;;;;AAQA,8CAAiD;AAGpC,QAAA,iBAAiB,GAAG,CAAC,CAAC;AAGtB,QAAA,QAAQ,OAAuB,aAAI,s7GAAA,23BAuBd,EAAiB,q/EA6C/C,KA7C8B,yBAAiB,EA6C9C;AAGQ,QAAA,eAAe,OAAuB,aAAI,sfAAA,kbAcnD,KAAC;AAGQ,QAAA,SAAS,OAAuB,aAAI,qKAAA,iGAGJ,KAAC"}
1
+ {"version":3,"file":"shaders.js","sourceRoot":"","sources":["../../../src/chart_types/flame_chart/shaders.ts"],"names":[],"mappings":";;;AASa,QAAA,kBAAkB,GAAG;IAChC,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,CAAC;IACZ,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACT,CAAC;AAGW,QAAA,iBAAiB,GAAG,CAAC,CAAC;AAEnC,IAAM,OAAO,GAAuB,qGAInC,CAAC;AAEF,IAAM,OAAO,GAAuB,qEAGnC,CAAC;AAEF,IAAM,UAAU,GAAuB,yBACnB,0BAAkB,CAAC,SAAS,gDAC5B,0BAAkB,CAAC,SAAS,gDAC5B,0BAAkB,CAAC,KAAK,6CACxB,0BAAkB,CAAC,KAAK,6CACxB,0BAAkB,CAAC,KAAK,uBAC3C,CAAC;AAEF,IAAM,WAAW,GAAuB,kZAavC,CAAC;AAEF,IAAM,SAAS,GAAuB,sRAIJ,yBAAiB,QAClD,CAAC;AAEF,IAAM,UAAU,GAAuB,qHAOtC,CAAC;AAEF,IAAM,WAAW,GAAuB,6KAMvC,CAAC;AAEF,IAAM,OAAO,GAAuB,wtDAoCnC,CAAC;AAGW,QAAA,cAAc,GAA0B,OAAO,YACxD,UAAU,YACV,WAAW,2CAIX,SAAS,YACT,UAAU,YACV,WAAW,YACX,OAAO,8JAOV,CAAC;AAGW,QAAA,eAAe,GAA0B,OAAO,YACzD,UAAU,YACV,WAAW,0FAMX,SAAS,YACT,UAAU,YACV,WAAW,YACX,OAAO,kgCAyBV,CAAC;AAGW,QAAA,eAAe,GAA0B,OAAO,imBAe5D,CAAC;AAGW,QAAA,SAAS,GAA0B,OAAO,sGAItD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/chart_types/flame_chart/types.ts"],"names":[],"mappings":";;;AAmBa,QAAA,iBAAiB,GAAG;IAC/B,mBAAmB,EAAE,cAAO,CAAC;IAC7B,mBAAmB,EAAE,cAAO,CAAC;IAC7B,UAAU,EAAE,IAAI,GAAG,EAAE;CACtB,CAAC;AAmBW,QAAA,qBAAqB,GAAG;IACnC,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,IAAI,YAAY,EAAE;IACzB,KAAK,EAAE,IAAI,YAAY,EAAE;IACzB,SAAS,EAAE,IAAI,YAAY,EAAE;IAC7B,SAAS,EAAE,IAAI,YAAY,EAAE;IAC7B,KAAK,EAAE,IAAI,YAAY,EAAE;IACzB,KAAK,EAAE,IAAI,YAAY,EAAE;CAC1B,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/chart_types/flame_chart/types.ts"],"names":[],"mappings":";;;AAmBa,QAAA,iBAAiB,GAAgB;IAC5C,mBAAmB,EAAE,cAAO,CAAC;IAC7B,mBAAmB,EAAE,cAAO,CAAC;IAC7B,UAAU,EAAE,IAAI,GAAG,EAAE;CACtB,CAAC;AAmBW,QAAA,qBAAqB,GAAG;IACnC,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,IAAI,YAAY,EAAE;IACzB,KAAK,EAAE,IAAI,YAAY,EAAE;IACzB,SAAS,EAAE,IAAI,YAAY,EAAE;IAC7B,SAAS,EAAE,IAAI,YAAY,EAAE;IAC7B,KAAK,EAAE,IAAI,YAAY,EAAE;IACzB,KAAK,EAAE,IAAI,YAAY,EAAE;CAC1B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=default_theme_attributes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default_theme_attributes.d.ts","sourceRoot":"","sources":["../../src/common/default_theme_attributes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_FONT_FAMILY = void 0;
4
+ exports.DEFAULT_FONT_FAMILY = '"Inter UI", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"';
5
+ //# sourceMappingURL=default_theme_attributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default_theme_attributes.js","sourceRoot":"","sources":["../../src/common/default_theme_attributes.ts"],"names":[],"mappings":";;;AASa,QAAA,mBAAmB,GAC9B,mJAAmJ,CAAC"}
@@ -26,7 +26,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
26
26
  };
27
27
  var _a, _b, _c, _d, _e;
28
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;
29
+ exports.testContextLoss = exports.getRenderer = exports.bindVertexArray = exports.getAttributes = exports.readPixel = exports.createTexture = exports.NullTexture = exports.bindFramebuffer = exports.clearRect = exports.blockUniforms = exports.createLinkedProgram = exports.createCompiledShader = exports.resetState = void 0;
30
30
  var webgl_constants_1 = require("./webgl_constants");
31
31
  var GL_DEBUG = true;
32
32
  var currentPrograms = new WeakMap();
@@ -107,23 +107,20 @@ var flagSet = function (gl, key, value) {
107
107
  flags[key] = value;
108
108
  }
109
109
  };
110
- exports.GL_FRAGMENT_SHADER = 0x8b30;
111
- exports.GL_VERTEX_SHADER = 0x8b31;
112
110
  var createCompiledShader = function (gl, shaderType, source) {
113
111
  var shader = gl.createShader(shaderType);
114
112
  if (!shader)
115
113
  throw new Error("Whoa, shader could not be created");
116
114
  gl.shaderSource(shader, source);
117
115
  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';
116
+ if (GL_DEBUG && !gl.getShaderParameter(shader, webgl_constants_1.GL.COMPILE_STATUS) && !gl.isContextLost()) {
117
+ var shaderTypeName = shaderType === webgl_constants_1.GL.VERTEX_SHADER ? 'vertex' : 'fragment';
120
118
  throw new Error("Whoa, compilation error in a " + shaderTypeName + " shader: " + gl.getShaderInfoLog(shader));
121
119
  }
122
120
  return shader;
123
121
  };
124
122
  exports.createCompiledShader = createCompiledShader;
125
123
  var createLinkedProgram = function (gl, vertexShader, fragmentShader, attributeLocations) {
126
- if (attributeLocations === void 0) { attributeLocations = new Map(); }
127
124
  var program = gl.createProgram();
128
125
  if (!program)
129
126
  throw new Error("Whoa, shader program could not be created");
@@ -131,13 +128,16 @@ var createLinkedProgram = function (gl, vertexShader, fragmentShader, attributeL
131
128
  gl.attachShader(program, fragmentShader);
132
129
  if (GL_DEBUG && gl.getProgramParameter(program, webgl_constants_1.GL.ATTACHED_SHADERS) !== 2)
133
130
  throw new Error('Did not manage to attach the two shaders');
134
- attributeLocations.forEach(function (i, name) { return gl.bindAttribLocation(program, i, name); });
131
+ Object.entries(attributeLocations).forEach(function (_a) {
132
+ var _b = __read(_a, 2), name = _b[0], i = _b[1];
133
+ return gl.bindAttribLocation(program, i, name);
134
+ });
135
135
  gl.linkProgram(program);
136
136
  if (GL_DEBUG) {
137
- if (!gl.getProgramParameter(program, webgl_constants_1.GL.LINK_STATUS))
137
+ if (!gl.getProgramParameter(program, webgl_constants_1.GL.LINK_STATUS) && !gl.isContextLost())
138
138
  throw new Error("Whoa, shader program failed to link: " + gl.getProgramInfoLog(program));
139
139
  gl.validateProgram(program);
140
- if (!gl.getProgramParameter(program, webgl_constants_1.GL.LINK_STATUS))
140
+ if (!gl.getProgramParameter(program, webgl_constants_1.GL.LINK_STATUS) && !gl.isContextLost())
141
141
  throw new Error("Whoa, could not validate the shader program: " + gl.getProgramInfoLog(program));
142
142
  }
143
143
  if (!GL_DEBUG) {
@@ -213,7 +213,7 @@ var uniformSetterLookup = (_a = {},
213
213
  }
214
214
  }; },
215
215
  _a);
216
- var getUniforms = function (gl, program) {
216
+ var getUniforms = function (gl, program, uboInfo) {
217
217
  if (programUniforms.has(program))
218
218
  return programUniforms.get(program);
219
219
  var uniforms = new Map(__spreadArray([], __read(new Array(gl.getProgramParameter(program, webgl_constants_1.GL.ACTIVE_UNIFORMS))), false).map(function (_, index) {
@@ -222,9 +222,9 @@ var getUniforms = function (gl, program) {
222
222
  throw new Error("Whoa, active uniform not found");
223
223
  var name = activeUniform.name, type = activeUniform.type;
224
224
  var location = gl.getUniformLocation(program, name);
225
- if (location === null)
225
+ if (location === null && !uboInfo.has(name))
226
226
  throw new Error("Whoa, uniform location " + location + " (name: " + name + ", type: " + type + ") not found");
227
- var setValue = uniformSetterLookup[type](gl, location);
227
+ var setValue = location ? uniformSetterLookup[type](gl, location) : function () { };
228
228
  if (GL_DEBUG && !setValue)
229
229
  throw new Error("No setValue for uniform GL[" + type + "] (name: " + name + ") implemented yet");
230
230
  return [name, setValue];
@@ -232,6 +232,27 @@ var getUniforms = function (gl, program) {
232
232
  programUniforms.set(program, uniforms);
233
233
  return uniforms;
234
234
  };
235
+ function blockUniforms(gl, uniformBlockName, uboVariableNames, _a) {
236
+ var _b = __read(_a), program = _b[0], otherPrograms = _b.slice(1);
237
+ var blockIndex = gl.getUniformBlockIndex(program, uniformBlockName);
238
+ var blockSize = gl.getActiveUniformBlockParameter(program, blockIndex, webgl_constants_1.GL.UNIFORM_BLOCK_DATA_SIZE);
239
+ var uboBuffer = gl.createBuffer();
240
+ if (uboBuffer === null)
241
+ throw new Error('Whoa, could not create uboBuffer');
242
+ gl.bindBuffer(gl.UNIFORM_BUFFER, uboBuffer);
243
+ gl.bufferData(gl.UNIFORM_BUFFER, blockSize, gl.DYNAMIC_DRAW);
244
+ gl.bindBufferBase(gl.UNIFORM_BUFFER, 0, uboBuffer);
245
+ var uboVariableIndices = gl.getUniformIndices(program, uboVariableNames);
246
+ if (uboVariableIndices === null)
247
+ throw new Error('Whoa, could not get uboVariableIndices');
248
+ var uboVariableOffsets = gl.getActiveUniforms(program, uboVariableIndices, gl.UNIFORM_OFFSET);
249
+ var uniforms = new Map(uboVariableNames.map(function (name, i) { return [name, { index: uboVariableIndices[i], offset: uboVariableOffsets[i] }]; }));
250
+ __spreadArray([program], __read(otherPrograms), false).forEach(function (p) {
251
+ return gl.uniformBlockBinding(p, gl.getUniformBlockIndex(p, uniformBlockName), 0);
252
+ });
253
+ return { uboBuffer: uboBuffer, uniforms: uniforms };
254
+ }
255
+ exports.blockUniforms = blockUniforms;
235
256
  var clearRect = function (gl, _a) {
236
257
  var rect = _a.rect, color = _a.color, depth = _a.depth, stencilIndex = _a.stencilIndex;
237
258
  if (rect) {
@@ -262,13 +283,10 @@ var textureTypeLookup = (_c = {},
262
283
  _c[webgl_constants_1.GL.RGBA8] = webgl_constants_1.GL.UNSIGNED_BYTE,
263
284
  _c[webgl_constants_1.GL.RGBA32F] = webgl_constants_1.GL.FLOAT,
264
285
  _c);
265
- exports.GL_READ_FRAMEBUFFER = 0x8ca8;
266
- exports.GL_DRAW_FRAMEBUFFER = 0x8ca9;
267
- exports.GL_FRAMEBUFFER = 0x8d40;
268
286
  var bindFramebuffer = function (gl, target, targetFrameBuffer) {
269
- var updateReadTarget = (target === exports.GL_READ_FRAMEBUFFER || target === exports.GL_FRAMEBUFFER) &&
287
+ var updateReadTarget = (target === webgl_constants_1.GL.READ_FRAMEBUFFER || target === webgl_constants_1.GL.FRAMEBUFFER) &&
270
288
  targetFrameBuffer !== currentReadFrameBuffers.get(gl);
271
- var updateWriteTarget = (target === exports.GL_DRAW_FRAMEBUFFER || target === exports.GL_FRAMEBUFFER) &&
289
+ var updateWriteTarget = (target === webgl_constants_1.GL.DRAW_FRAMEBUFFER || target === webgl_constants_1.GL.FRAMEBUFFER) &&
272
290
  targetFrameBuffer !== currentDrawFrameBuffers.get(gl);
273
291
  if (updateReadTarget)
274
292
  currentReadFrameBuffers.set(gl, targetFrameBuffer);
@@ -276,10 +294,10 @@ var bindFramebuffer = function (gl, target, targetFrameBuffer) {
276
294
  currentDrawFrameBuffers.set(gl, targetFrameBuffer);
277
295
  if (updateReadTarget || updateWriteTarget) {
278
296
  var targetToUpdate = updateReadTarget && updateWriteTarget
279
- ? exports.GL_FRAMEBUFFER
297
+ ? webgl_constants_1.GL.FRAMEBUFFER
280
298
  : updateReadTarget
281
- ? exports.GL_READ_FRAMEBUFFER
282
- : exports.GL_DRAW_FRAMEBUFFER;
299
+ ? webgl_constants_1.GL.READ_FRAMEBUFFER
300
+ : webgl_constants_1.GL.DRAW_FRAMEBUFFER;
283
301
  gl.bindFramebuffer(targetToUpdate, targetFrameBuffer);
284
302
  }
285
303
  };
@@ -293,9 +311,11 @@ exports.NullTexture = {
293
311
  height: 0,
294
312
  };
295
313
  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;
314
+ var textureIndex = _a.textureIndex, internalFormat = _a.internalFormat, w = _a.width, h = _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
315
  if (GL_DEBUG && !(0 <= textureIndex && textureIndex <= gl.getParameter(webgl_constants_1.GL.MAX_COMBINED_TEXTURE_IMAGE_UNITS)))
298
316
  throw new Error('WebGL2 is guaranteed to support at least 32 textures but not necessarily more than that');
317
+ var width = Math.ceil(w);
318
+ var height = Math.ceil(h);
299
319
  var srcFormat = textureSrcFormatLookup[internalFormat];
300
320
  var type = textureTypeLookup[internalFormat];
301
321
  var texture = gl.createTexture();
@@ -318,17 +338,20 @@ var createTexture = function (gl, _a) {
318
338
  var getTarget = function () {
319
339
  if (!frameBuffer) {
320
340
  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");
341
+ (0, exports.bindFramebuffer)(gl, webgl_constants_1.GL.DRAW_FRAMEBUFFER, frameBuffer);
342
+ gl.framebufferTexture2D(webgl_constants_1.GL.FRAMEBUFFER, webgl_constants_1.GL.COLOR_ATTACHMENT0, webgl_constants_1.GL.TEXTURE_2D, texture, 0);
343
+ if (GL_DEBUG) {
344
+ var framebufferStatus = gl.checkFramebufferStatus(webgl_constants_1.GL.DRAW_FRAMEBUFFER);
345
+ if (framebufferStatus !== webgl_constants_1.GL.FRAMEBUFFER_COMPLETE) {
346
+ throw new Error("Target framebuffer is not complete");
347
+ }
325
348
  }
326
349
  }
327
350
  return frameBuffer;
328
351
  };
329
352
  return {
330
353
  clear: function () {
331
- (0, exports.bindFramebuffer)(gl, exports.GL_DRAW_FRAMEBUFFER, getTarget());
354
+ (0, exports.bindFramebuffer)(gl, webgl_constants_1.GL.DRAW_FRAMEBUFFER, getTarget());
332
355
  (0, exports.clearRect)(gl, { color: [0, 0, 0, 0] });
333
356
  },
334
357
  setUniform: function (location) { return gl.uniform1i(location, textureIndex); },
@@ -336,9 +359,9 @@ var createTexture = function (gl, _a) {
336
359
  delete: function () {
337
360
  if (frameBuffer) {
338
361
  if (currentReadFrameBuffers.get(gl) === frameBuffer)
339
- (0, exports.bindFramebuffer)(gl, exports.GL_READ_FRAMEBUFFER, null);
362
+ (0, exports.bindFramebuffer)(gl, webgl_constants_1.GL.READ_FRAMEBUFFER, null);
340
363
  if (currentDrawFrameBuffers.get(gl) === frameBuffer)
341
- (0, exports.bindFramebuffer)(gl, exports.GL_DRAW_FRAMEBUFFER, null);
364
+ (0, exports.bindFramebuffer)(gl, webgl_constants_1.GL.DRAW_FRAMEBUFFER, null);
342
365
  gl.deleteFramebuffer(frameBuffer);
343
366
  }
344
367
  gl.deleteTexture(texture);
@@ -349,6 +372,12 @@ var createTexture = function (gl, _a) {
349
372
  };
350
373
  };
351
374
  exports.createTexture = createTexture;
375
+ var pickPixel = new Uint8Array(4);
376
+ var readPixel = function (gl, canvasX, canvasY) {
377
+ gl.readPixels(canvasX, canvasY, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE, pickPixel);
378
+ return pickPixel;
379
+ };
380
+ exports.readPixel = readPixel;
352
381
  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
382
  var attribElementTypeLookup = (_e = {},
354
383
  _e[webgl_constants_1.GL.FLOAT_VEC2] = webgl_constants_1.GL.FLOAT,
@@ -368,9 +397,7 @@ var getAttributes = function (gl, program, attributeLocations) {
368
397
  var name = activeAttribInfo.name, type = activeAttribInfo.type;
369
398
  if (name.startsWith('gl_'))
370
399
  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");
400
+ var location = attributeLocations[name];
374
401
  var buffer = gl.createBuffer();
375
402
  gl.bindBuffer(webgl_constants_1.GL.ARRAY_BUFFER, buffer);
376
403
  gl.enableVertexAttribArray(location);
@@ -399,9 +426,10 @@ var bindVertexArray = function (gl, vertexArrayObject) {
399
426
  }
400
427
  };
401
428
  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);
429
+ var getRenderer = function (gl, program, _a, vao, _b) {
430
+ var uniforms = _a.uniforms, uboBuffer = _a.uboBuffer;
431
+ var _c = _b.depthTest, depthTest = _c === void 0 ? false : _c, _d = _b.blend, blend = _d === void 0 ? true : _d, _e = _b.frontFace, frontFace = _e === void 0 ? webgl_constants_1.GL.CCW : _e;
432
+ var allUniforms = getUniforms(gl, program, uniforms);
405
433
  return function (_a) {
406
434
  var _b;
407
435
  var uniformValues = _a.uniformValues, viewport = _a.viewport, target = _a.target, clear = _a.clear, scissor = _a.scissor, draw = _a.draw;
@@ -414,6 +442,7 @@ var getRenderer = function (gl, program, vao, _a) {
414
442
  gl.depthMask(true);
415
443
  gl.depthFunc(webgl_constants_1.GL.LESS);
416
444
  gl.depthRange(0, 1);
445
+ gl.frontFace(frontFace);
417
446
  flagSet(gl, webgl_constants_1.GL.CULL_FACE, true);
418
447
  gl.cullFace(webgl_constants_1.GL.BACK);
419
448
  gl.hint(webgl_constants_1.GL.FRAGMENT_SHADER_DERIVATIVE_HINT, webgl_constants_1.GL.NICEST);
@@ -431,9 +460,16 @@ var getRenderer = function (gl, program, vao, _a) {
431
460
  (0, exports.bindVertexArray)(gl, vao);
432
461
  if (viewport)
433
462
  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);
463
+ if (uniformValues) {
464
+ allUniforms.forEach(function (setValue, name) { return uniformValues[name] && !uniforms.has(name) && setValue(uniformValues[name]); });
465
+ gl.bindBuffer(webgl_constants_1.GL.UNIFORM_BUFFER, uboBuffer);
466
+ uniforms.forEach(function (_a, name) {
467
+ var offset = _a.offset;
468
+ var value = new Float32Array([uniformValues[name]].flat());
469
+ gl.bufferSubData(webgl_constants_1.GL.UNIFORM_BUFFER, offset, value, 0);
470
+ });
471
+ }
472
+ (0, exports.bindFramebuffer)(gl, webgl_constants_1.GL.DRAW_FRAMEBUFFER, target);
437
473
  if (clear)
438
474
  (0, exports.clearRect)(gl, clear);
439
475
  if (draw) {
@@ -446,36 +482,17 @@ var getRenderer = function (gl, program, vao, _a) {
446
482
  };
447
483
  };
448
484
  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];
485
+ var testContextLoss = function (gl) {
486
+ var lossTimeMs = 5000;
487
+ var regainTimeMs = 0;
488
+ var ext = gl.getExtension('WEBGL_lose_context');
489
+ if (ext) {
490
+ window.setInterval(function () {
491
+ console.log('Context loss test triggered, the webgl rendering will freeze or disappear');
492
+ ext.loseContext();
493
+ window.setTimeout(function () { return ext.restoreContext(); }, regainTimeMs);
494
+ }, lossTimeMs);
477
495
  }
478
- return "#version 300 es\nprecision highp int;\nprecision highp float;\n" + templateConcat.apply(void 0, __spreadArray([strings], __read(args), false));
479
496
  };
480
- exports.frag = frag;
497
+ exports.testContextLoss = testContextLoss;
481
498
  //# sourceMappingURL=kingly.js.map