plotly.js 2.10.0 → 2.11.1

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 (73) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/CONTRIBUTING.md +17 -0
  3. package/README.md +3 -3
  4. package/dist/README.md +23 -23
  5. package/dist/plotly-basic.js +2 -2
  6. package/dist/plotly-basic.min.js +2 -2
  7. package/dist/plotly-cartesian.js +2 -2
  8. package/dist/plotly-cartesian.min.js +2 -2
  9. package/dist/plotly-finance.js +2 -2
  10. package/dist/plotly-finance.min.js +2 -2
  11. package/dist/plotly-geo-assets.js +2 -2
  12. package/dist/plotly-geo.js +2 -2
  13. package/dist/plotly-geo.min.js +2 -2
  14. package/dist/plotly-gl2d.js +429 -352
  15. package/dist/plotly-gl2d.min.js +10 -10
  16. package/dist/plotly-gl3d.js +51 -10
  17. package/dist/plotly-gl3d.min.js +3 -3
  18. package/dist/plotly-mapbox.js +2 -2
  19. package/dist/plotly-mapbox.min.js +2 -2
  20. package/dist/plotly-strict.js +39790 -947
  21. package/dist/plotly-strict.min.js +11 -11
  22. package/dist/plotly-with-meta.js +705 -623
  23. package/dist/plotly.js +676 -594
  24. package/dist/plotly.min.js +4 -4
  25. package/lib/index-strict.js +5 -0
  26. package/package.json +9 -8
  27. package/src/generated/regl-codegen/30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0 +658 -0
  28. package/src/generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b +457 -0
  29. package/src/generated/regl-codegen/3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d +2050 -0
  30. package/src/generated/regl-codegen/453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45 +452 -0
  31. package/src/generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210 +1423 -0
  32. package/src/generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923 +2184 -0
  33. package/src/generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034 +2000 -0
  34. package/src/generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623 +637 -0
  35. package/src/generated/regl-codegen/a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470 +635 -0
  36. package/src/generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019 +3311 -0
  37. package/src/generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81 +660 -0
  38. package/src/generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d +2700 -0
  39. package/src/generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5 +3325 -0
  40. package/src/generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7 +2436 -0
  41. package/src/lib/prepare_regl.js +7 -3
  42. package/src/traces/parcoords/base_index.js +24 -0
  43. package/src/traces/parcoords/index.js +4 -22
  44. package/src/traces/parcoords/plot-strict.js +9 -0
  45. package/src/traces/parcoords/plot.js +5 -2
  46. package/src/traces/parcoords/regl_precompiled.js +12 -0
  47. package/src/traces/parcoords/strict.js +7 -0
  48. package/src/traces/scattergl/base_index.js +29 -0
  49. package/src/traces/scattergl/index.js +3 -26
  50. package/src/traces/scattergl/plot.js +5 -2
  51. package/src/traces/scattergl/plot_strict.js +9 -0
  52. package/src/traces/scattergl/regl_precompiled.js +24 -0
  53. package/src/traces/scattergl/strict.js +7 -0
  54. package/src/traces/scatterpolargl/base_index.js +29 -0
  55. package/src/traces/scatterpolargl/index.js +3 -26
  56. package/src/traces/scatterpolargl/plot.js +4 -0
  57. package/src/traces/scatterpolargl/plot_strict.js +13 -0
  58. package/src/traces/scatterpolargl/regl_precompiled.js +24 -0
  59. package/src/traces/scatterpolargl/strict.js +7 -0
  60. package/src/traces/splom/base_index.js +36 -0
  61. package/src/traces/splom/base_plot.js +5 -2
  62. package/src/traces/splom/base_plot_strict.js +9 -0
  63. package/src/traces/splom/index.js +3 -33
  64. package/src/traces/splom/regl_precompiled.js +24 -0
  65. package/src/traces/splom/strict.js +7 -0
  66. package/src/version.js +1 -1
  67. package/stackgl_modules/index.js +49 -8
  68. package/stackgl_modules/package-lock.json +10 -10
  69. package/stackgl_modules/package.json +2 -2
  70. package/tasks/bundle.js +18 -0
  71. package/tasks/partial_bundle.js +26 -23
  72. package/tasks/stats.js +3 -3
  73. package/tasks/util/constants.js +13 -1
@@ -35174,7 +35174,7 @@ var robustSum = _glvis_("robust-sum")
35174
35174
  var robustScale = _glvis_("robust-scale")
35175
35175
  var compress = _glvis_("robust-compress")
35176
35176
 
35177
- var NUM_EXPANDED = 4
35177
+ var NUM_EXPANDED = 6
35178
35178
 
35179
35179
  function determinant_2(sum, scale, prod, compress) {
35180
35180
  return function robustDeterminant2(m) {
@@ -35188,10 +35188,24 @@ function determinant_3(sum, scale, prod, compress) {
35188
35188
  }
35189
35189
  }
35190
35190
 
35191
+ function determinant_4(sum, scale, prod, compress) {
35192
+ return function robustDeterminant4(m) {
35193
+ return compress(sum(sum(scale(sum(scale(sum(prod(m[2][2], m[3][3]), prod(-m[2][3], m[3][2])), m[1][1]), sum(scale(sum(prod(m[2][1], m[3][3]), prod(-m[2][3], m[3][1])), -m[1][2]), scale(sum(prod(m[2][1], m[3][2]), prod(-m[2][2], m[3][1])), m[1][3]))), m[0][0]), scale(sum(scale(sum(prod(m[2][2], m[3][3]), prod(-m[2][3], m[3][2])), m[1][0]), sum(scale(sum(prod(m[2][0], m[3][3]), prod(-m[2][3], m[3][0])), -m[1][2]), scale(sum(prod(m[2][0], m[3][2]), prod(-m[2][2], m[3][0])), m[1][3]))), -m[0][1])), sum(scale(sum(scale(sum(prod(m[2][1], m[3][3]), prod(-m[2][3], m[3][1])), m[1][0]), sum(scale(sum(prod(m[2][0], m[3][3]), prod(-m[2][3], m[3][0])), -m[1][1]), scale(sum(prod(m[2][0], m[3][1]), prod(-m[2][1], m[3][0])), m[1][3]))), m[0][2]), scale(sum(scale(sum(prod(m[2][1], m[3][2]), prod(-m[2][2], m[3][1])), m[1][0]), sum(scale(sum(prod(m[2][0], m[3][2]), prod(-m[2][2], m[3][0])), -m[1][1]), scale(sum(prod(m[2][0], m[3][1]), prod(-m[2][1], m[3][0])), m[1][2]))), -m[0][3]))))
35194
+ }
35195
+ }
35196
+
35197
+ function determinant_5(sum, scale, prod, compress) {
35198
+ return function robustDeterminant5(m) {
35199
+ return compress(sum(sum(scale(sum(sum(scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][2]), sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), -m[2][3]), scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][4]))), m[1][1]), scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), -m[2][3]), scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), m[2][4]))), -m[1][2])), sum(scale(sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), -m[2][2]), scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][4]))), m[1][3]), scale(sum(scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), -m[2][2]), scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][3]))), -m[1][4]))), m[0][0]), scale(sum(sum(scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][2]), sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), -m[2][3]), scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][4]))), m[1][0]), scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][3]), scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), m[2][4]))), -m[1][2])), sum(scale(sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][2]), scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), m[2][4]))), m[1][3]), scale(sum(scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), -m[2][2]), scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), m[2][3]))), -m[1][4]))), -m[0][1])), sum(scale(sum(sum(scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), -m[2][3]), scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), m[2][4]))), m[1][0]), scale(sum(scale(sum(prod(m[3][3], m[4][4]), prod(-m[3][4], m[4][3])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][3]), scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), m[2][4]))), -m[1][1])), sum(scale(sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][4]))), m[1][3]), scale(sum(scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][3]))), -m[1][4]))), m[0][2]), sum(scale(sum(sum(scale(sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), -m[2][2]), scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][4]))), m[1][0]), scale(sum(scale(sum(prod(m[3][2], m[4][4]), prod(-m[3][4], m[4][2])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][2]), scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), m[2][4]))), -m[1][1])), sum(scale(sum(scale(sum(prod(m[3][1], m[4][4]), prod(-m[3][4], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][4]), prod(-m[3][4], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][4]))), m[1][2]), scale(sum(scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][2]))), -m[1][4]))), -m[0][3]), scale(sum(sum(scale(sum(scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][1]), sum(scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), -m[2][2]), scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][3]))), m[1][0]), scale(sum(scale(sum(prod(m[3][2], m[4][3]), prod(-m[3][3], m[4][2])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), -m[2][2]), scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), m[2][3]))), -m[1][1])), sum(scale(sum(scale(sum(prod(m[3][1], m[4][3]), prod(-m[3][3], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][3]), prod(-m[3][3], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][3]))), m[1][2]), scale(sum(scale(sum(prod(m[3][1], m[4][2]), prod(-m[3][2], m[4][1])), m[2][0]), sum(scale(sum(prod(m[3][0], m[4][2]), prod(-m[3][2], m[4][0])), -m[2][1]), scale(sum(prod(m[3][0], m[4][1]), prod(-m[3][1], m[4][0])), m[2][2]))), -m[1][3]))), m[0][4])))))
35200
+ }
35201
+ }
35202
+
35191
35203
  function compileDeterminant(n) {
35192
35204
  var fn =
35193
35205
  n === 2 ? determinant_2 :
35194
- n === 3 ? determinant_3 : undefined
35206
+ n === 3 ? determinant_3 :
35207
+ n === 4 ? determinant_4 :
35208
+ n === 5 ? determinant_5 : undefined
35195
35209
  return fn(robustSum, robustScale, twoProduct, compress)
35196
35210
  }
35197
35211
 
@@ -35200,7 +35214,7 @@ var CACHE = [
35200
35214
  function robustDeterminant1(m) { return [m[0][0]] }
35201
35215
  ]
35202
35216
 
35203
- function proc(det0, det1, det2, det3, CACHE, gen) {
35217
+ function proc(det0, det1, det2, det3, det4, det5, CACHE, gen) {
35204
35218
  return function robustDeterminant(m) {
35205
35219
  switch (m.length) {
35206
35220
  case 0:
@@ -35211,6 +35225,10 @@ function proc(det0, det1, det2, det3, CACHE, gen) {
35211
35225
  return det2(m)
35212
35226
  case 3:
35213
35227
  return det3(m)
35228
+ case 4:
35229
+ return det4(m)
35230
+ case 5:
35231
+ return det5(m)
35214
35232
  }
35215
35233
  var det = CACHE[m.length]
35216
35234
  if (!det) det = CACHE[m.length] = gen(m.length)
@@ -35454,13 +35472,16 @@ generateInSphereTest()
35454
35472
 
35455
35473
  var determinant = _glvis_("robust-determinant")
35456
35474
 
35457
- var NUM_EXPAND = 3
35475
+ var NUM_EXPAND = 6
35458
35476
 
35459
35477
  function generateSolver(n) {
35460
35478
  var fn =
35461
- n === 2 ? solve2d : solve3d
35479
+ n === 2 ? solve2d :
35480
+ n === 3 ? solve3d :
35481
+ n === 4 ? solve4d :
35482
+ n === 5 ? solve5d : solve6d
35462
35483
 
35463
- if(n < NUM_EXPAND) {
35484
+ if(n < 6) {
35464
35485
  return fn(determinant[n])
35465
35486
  }
35466
35487
  return fn(determinant)
@@ -35486,18 +35507,38 @@ function solve3d(det) {
35486
35507
  }
35487
35508
  }
35488
35509
 
35510
+ function solve4d(det) {
35511
+ return function robustLinearSolve4d(A, b) {
35512
+ return [det([[+b[0], +A[0][1], +A[0][2], +A[0][3]], [+b[1], +A[1][1], +A[1][2], +A[1][3]], [+b[2], +A[2][1], +A[2][2], +A[2][3]], [+b[3], +A[3][1], +A[3][2], +A[3][3]]]), det([[+A[0][0], +b[0], +A[0][2], +A[0][3]], [+A[1][0], +b[1], +A[1][2], +A[1][3]], [+A[2][0], +b[2], +A[2][2], +A[2][3]], [+A[3][0], +b[3], +A[3][2], +A[3][3]]]), det([[+A[0][0], +A[0][1], +b[0], +A[0][3]], [+A[1][0], +A[1][1], +b[1], +A[1][3]], [+A[2][0], +A[2][1], +b[2], +A[2][3]], [+A[3][0], +A[3][1], +b[3], +A[3][3]]]), det([[+A[0][0], +A[0][1], +A[0][2], +b[0]], [+A[1][0], +A[1][1], +A[1][2], +b[1]], [+A[2][0], +A[2][1], +A[2][2], +b[2]], [+A[3][0], +A[3][1], +A[3][2], +b[3]]]), det(A)]
35513
+ }
35514
+ }
35515
+
35516
+ function solve5d(det) {
35517
+ return function robustLinearSolve5d(A, b) {
35518
+ return [det([[+b[0], +A[0][1], +A[0][2], +A[0][3], +A[0][4]], [+b[1], +A[1][1], +A[1][2], +A[1][3], +A[1][4]], [+b[2], +A[2][1], +A[2][2], +A[2][3], +A[2][4]], [+b[3], +A[3][1], +A[3][2], +A[3][3], +A[3][4]], [+b[4], +A[4][1], +A[4][2], +A[4][3], +A[4][4]]]), det([[+A[0][0], +b[0], +A[0][2], +A[0][3], +A[0][4]], [+A[1][0], +b[1], +A[1][2], +A[1][3], +A[1][4]], [+A[2][0], +b[2], +A[2][2], +A[2][3], +A[2][4]], [+A[3][0], +b[3], +A[3][2], +A[3][3], +A[3][4]], [+A[4][0], +b[4], +A[4][2], +A[4][3], +A[4][4]]]), det([[+A[0][0], +A[0][1], +b[0], +A[0][3], +A[0][4]], [+A[1][0], +A[1][1], +b[1], +A[1][3], +A[1][4]], [+A[2][0], +A[2][1], +b[2], +A[2][3], +A[2][4]], [+A[3][0], +A[3][1], +b[3], +A[3][3], +A[3][4]], [+A[4][0], +A[4][1], +b[4], +A[4][3], +A[4][4]]]), det([[+A[0][0], +A[0][1], +A[0][2], +b[0], +A[0][4]], [+A[1][0], +A[1][1], +A[1][2], +b[1], +A[1][4]], [+A[2][0], +A[2][1], +A[2][2], +b[2], +A[2][4]], [+A[3][0], +A[3][1], +A[3][2], +b[3], +A[3][4]], [+A[4][0], +A[4][1], +A[4][2], +b[4], +A[4][4]]]), det([[+A[0][0], +A[0][1], +A[0][2], +A[0][3], +b[0]], [+A[1][0], +A[1][1], +A[1][2], +A[1][3], +b[1]], [+A[2][0], +A[2][1], +A[2][2], +A[2][3], +b[2]], [+A[3][0], +A[3][1], +A[3][2], +A[3][3], +b[3]], [+A[4][0], +A[4][1], +A[4][2], +A[4][3], +b[4]]]), det(A)]
35519
+ }
35520
+ }
35521
+
35522
+ function solve6d(det) {
35523
+ return function robustLinearSolve6d(A, b) {
35524
+ return [det([[+b[0], +A[0][1], +A[0][2], +A[0][3], +A[0][4], +A[0][5]], [+b[1], +A[1][1], +A[1][2], +A[1][3], +A[1][4], +A[1][5]], [+b[2], +A[2][1], +A[2][2], +A[2][3], +A[2][4], +A[2][5]], [+b[3], +A[3][1], +A[3][2], +A[3][3], +A[3][4], +A[3][5]], [+b[4], +A[4][1], +A[4][2], +A[4][3], +A[4][4], +A[4][5]], [+b[5], +A[5][1], +A[5][2], +A[5][3], +A[5][4], +A[5][5]]]), det([[+A[0][0], +b[0], +A[0][2], +A[0][3], +A[0][4], +A[0][5]], [+A[1][0], +b[1], +A[1][2], +A[1][3], +A[1][4], +A[1][5]], [+A[2][0], +b[2], +A[2][2], +A[2][3], +A[2][4], +A[2][5]], [+A[3][0], +b[3], +A[3][2], +A[3][3], +A[3][4], +A[3][5]], [+A[4][0], +b[4], +A[4][2], +A[4][3], +A[4][4], +A[4][5]], [+A[5][0], +b[5], +A[5][2], +A[5][3], +A[5][4], +A[5][5]]]), det([[+A[0][0], +A[0][1], +b[0], +A[0][3], +A[0][4], +A[0][5]], [+A[1][0], +A[1][1], +b[1], +A[1][3], +A[1][4], +A[1][5]], [+A[2][0], +A[2][1], +b[2], +A[2][3], +A[2][4], +A[2][5]], [+A[3][0], +A[3][1], +b[3], +A[3][3], +A[3][4], +A[3][5]], [+A[4][0], +A[4][1], +b[4], +A[4][3], +A[4][4], +A[4][5]], [+A[5][0], +A[5][1], +b[5], +A[5][3], +A[5][4], +A[5][5]]]), det([[+A[0][0], +A[0][1], +A[0][2], +b[0], +A[0][4], +A[0][5]], [+A[1][0], +A[1][1], +A[1][2], +b[1], +A[1][4], +A[1][5]], [+A[2][0], +A[2][1], +A[2][2], +b[2], +A[2][4], +A[2][5]], [+A[3][0], +A[3][1], +A[3][2], +b[3], +A[3][4], +A[3][5]], [+A[4][0], +A[4][1], +A[4][2], +b[4], +A[4][4], +A[4][5]], [+A[5][0], +A[5][1], +A[5][2], +b[5], +A[5][4], +A[5][5]]]), det([[+A[0][0], +A[0][1], +A[0][2], +A[0][3], +b[0], +A[0][5]], [+A[1][0], +A[1][1], +A[1][2], +A[1][3], +b[1], +A[1][5]], [+A[2][0], +A[2][1], +A[2][2], +A[2][3], +b[2], +A[2][5]], [+A[3][0], +A[3][1], +A[3][2], +A[3][3], +b[3], +A[3][5]], [+A[4][0], +A[4][1], +A[4][2], +A[4][3], +b[4], +A[4][5]], [+A[5][0], +A[5][1], +A[5][2], +A[5][3], +b[5], +A[5][5]]]), det([[+A[0][0], +A[0][1], +A[0][2], +A[0][3], +A[0][4], +b[0]], [+A[1][0], +A[1][1], +A[1][2], +A[1][3], +A[1][4], +b[1]], [+A[2][0], +A[2][1], +A[2][2], +A[2][3], +A[2][4], +b[2]], [+A[3][0], +A[3][1], +A[3][2], +A[3][3], +A[3][4], +b[3]], [+A[4][0], +A[4][1], +A[4][2], +A[4][3], +A[4][4], +b[4]], [+A[5][0], +A[5][1], +A[5][2], +A[5][3], +A[5][4], +b[5]]]), det(A)]
35525
+ }
35526
+ }
35527
+
35489
35528
  var CACHE = [
35490
35529
  robustLinearSolve0d,
35491
35530
  robustLinearSolve1d
35492
35531
  ]
35493
35532
 
35494
- function proc(s0, s1, s2, s3, CACHE, g) {
35533
+ function proc(s0, s1, s2, s3, s4, s5, CACHE, g) {
35495
35534
  return function dispatchLinearSolve(A, b) {
35496
35535
  switch (A.length) {
35497
35536
  case 0: return s0(A, b);
35498
35537
  case 1: return s1(A, b);
35499
35538
  case 2: return s2(A, b);
35500
35539
  case 3: return s3(A, b);
35540
+ case 4: return s4(A, b);
35541
+ case 5: return s5(A, b);
35501
35542
  }
35502
35543
  var s = CACHE[A.length];
35503
35544
  if (!s) s = CACHE[A.length] = g(A.length);
@@ -35506,7 +35547,7 @@ function proc(s0, s1, s2, s3, CACHE, g) {
35506
35547
  }
35507
35548
 
35508
35549
  function generateDispatch() {
35509
- while(CACHE.length <= NUM_EXPAND) {
35550
+ while(CACHE.length < NUM_EXPAND) {
35510
35551
  CACHE.push(generateSolver(CACHE.length))
35511
35552
  }
35512
35553
  module.exports = proc.apply(undefined, CACHE.concat([CACHE, generateSolver]))
@@ -35,9 +35,9 @@
35
35
  "ndarray-pack": "plotly/ndarray-pack#v1.3.0",
36
36
  "ndarray-sort": "plotly/ndarray-sort#v1.1.0",
37
37
  "right-now": "^1.0.0",
38
- "robust-determinant": "plotly/robust-determinant#v1.2.1",
38
+ "robust-determinant": "plotly/robust-determinant#v1.2.2",
39
39
  "robust-in-sphere": "1.2.1",
40
- "robust-linear-solve": "plotly/robust-linear-solve#v1.1.1",
40
+ "robust-linear-solve": "plotly/robust-linear-solve#v1.1.2",
41
41
  "robust-orientation": "1.2.1",
42
42
  "simplicial-complex-contour": "plotly/simplicial-complex-contour#v1.1.0",
43
43
  "surface-nets": "plotly/surface-nets#v1.1.1",
@@ -1577,8 +1577,8 @@
1577
1577
  "integrity": "sha1-TPYsSzGNgwhRYBK7jBF1Lzkymxs="
1578
1578
  },
1579
1579
  "node_modules/robust-determinant": {
1580
- "version": "1.2.1",
1581
- "resolved": "git+ssh://git@github.com/plotly/robust-determinant.git#7cb499bb02411de80ae1a90e54893e46af82ca5e",
1580
+ "version": "1.2.2",
1581
+ "resolved": "git+ssh://git@github.com/plotly/robust-determinant.git#0414d049016d32d18f7dae934cb7d5968e00504a",
1582
1582
  "license": "MIT",
1583
1583
  "dependencies": {
1584
1584
  "robust-compress": "^1.0.0",
@@ -1608,8 +1608,8 @@
1608
1608
  }
1609
1609
  },
1610
1610
  "node_modules/robust-linear-solve": {
1611
- "version": "1.1.1",
1612
- "resolved": "git+ssh://git@github.com/plotly/robust-linear-solve.git#90ad6de2ce011a1e0b53d9e9f6bf8d117053c492",
1611
+ "version": "1.1.2",
1612
+ "resolved": "git+ssh://git@github.com/plotly/robust-linear-solve.git#c9deb96692f9b9c1479bc92a40e0cc985480ecef",
1613
1613
  "license": "MIT",
1614
1614
  "dependencies": {
1615
1615
  "robust-determinant": "^1.1.0"
@@ -3434,8 +3434,8 @@
3434
3434
  "integrity": "sha1-TPYsSzGNgwhRYBK7jBF1Lzkymxs="
3435
3435
  },
3436
3436
  "robust-determinant": {
3437
- "version": "git+ssh://git@github.com/plotly/robust-determinant.git#7cb499bb02411de80ae1a90e54893e46af82ca5e",
3438
- "from": "robust-determinant@plotly/robust-determinant#v1.2.1",
3437
+ "version": "git+ssh://git@github.com/plotly/robust-determinant.git#0414d049016d32d18f7dae934cb7d5968e00504a",
3438
+ "from": "robust-determinant@plotly/robust-determinant#v1.2.2",
3439
3439
  "requires": {
3440
3440
  "robust-compress": "^1.0.0",
3441
3441
  "robust-scale": "^1.0.0",
@@ -3464,8 +3464,8 @@
3464
3464
  }
3465
3465
  },
3466
3466
  "robust-linear-solve": {
3467
- "version": "git+ssh://git@github.com/plotly/robust-linear-solve.git#90ad6de2ce011a1e0b53d9e9f6bf8d117053c492",
3468
- "from": "robust-linear-solve@plotly/robust-linear-solve#v1.1.1",
3467
+ "version": "git+ssh://git@github.com/plotly/robust-linear-solve.git#c9deb96692f9b9c1479bc92a40e0cc985480ecef",
3468
+ "from": "robust-linear-solve@plotly/robust-linear-solve#v1.1.2",
3469
3469
  "requires": {
3470
3470
  "robust-determinant": "^1.1.0"
3471
3471
  }
@@ -39,9 +39,9 @@
39
39
  "ndarray-pack": "plotly/ndarray-pack#v1.3.0",
40
40
  "ndarray-sort": "plotly/ndarray-sort#v1.1.0",
41
41
  "right-now": "^1.0.0",
42
- "robust-determinant": "plotly/robust-determinant#v1.2.1",
42
+ "robust-determinant": "plotly/robust-determinant#v1.2.2",
43
43
  "robust-in-sphere": "1.2.1",
44
- "robust-linear-solve": "plotly/robust-linear-solve#v1.1.1",
44
+ "robust-linear-solve": "plotly/robust-linear-solve#v1.1.2",
45
45
  "robust-orientation": "1.2.1",
46
46
  "simplicial-complex-contour": "plotly/simplicial-complex-contour#v1.1.0",
47
47
  "surface-nets": "plotly/surface-nets#v1.1.1",
package/tasks/bundle.js CHANGED
@@ -10,6 +10,11 @@ var pathToPlotlyDist = constants.pathToPlotlyDist;
10
10
  var pathToPlotlyIndex = constants.pathToPlotlyIndex;
11
11
  var pathToPlotlyDistMin = constants.pathToPlotlyDistMin;
12
12
  var pathToPlotlyDistWithMeta = constants.pathToPlotlyDistWithMeta;
13
+
14
+ var pathToPlotlyStrict = constants.pathToPlotlyStrict;
15
+ var pathToPlotlyStrictDist = constants.pathToPlotlyStrictDist;
16
+ var pathToPlotlyStrictDistMin = constants.pathToPlotlyStrictDistMin;
17
+
13
18
  var pathToPlotlyGeoAssetsSrc = constants.pathToPlotlyGeoAssetsSrc;
14
19
  var pathToPlotlyGeoAssetsDist = constants.pathToPlotlyGeoAssetsDist;
15
20
 
@@ -39,6 +44,19 @@ tasks.push(function(done) {
39
44
  });
40
45
  });
41
46
 
47
+ // Browserify plotly.js-strict
48
+ tasks.push(function(done) {
49
+ _bundle(pathToPlotlyStrict, pathToPlotlyStrictDist, {
50
+ standalone: 'Plotly',
51
+ pathToMinBundle: pathToPlotlyStrictDistMin
52
+ }, function() {
53
+ prependFile(pathToPlotlyStrictDist, header, common.throwOnError);
54
+ prependFile(pathToPlotlyStrictDistMin, header, common.throwOnError);
55
+
56
+ done();
57
+ });
58
+ });
59
+
42
60
  // Browserify the geo assets
43
61
  tasks.push(function(done) {
44
62
  _bundle(pathToPlotlyGeoAssetsSrc, pathToPlotlyGeoAssetsDist, {
@@ -20,34 +20,37 @@ module.exports = function partialBundle(tasks, opts) {
20
20
  var transformList = opts.transformList;
21
21
  var calendars = opts.calendars;
22
22
 
23
- tasks.push(function(done) {
24
- var partialIndex = mainIndex;
23
+ // skip strict bundle which is no longer a partial bundle and has a special index file for regl traces
24
+ if(name !== 'strict') {
25
+ tasks.push(function(done) {
26
+ var partialIndex = mainIndex;
25
27
 
26
- var all = ['calendars'].concat(allTransforms).concat(allTraces);
27
- var includes = (calendars ? ['calendars'] : []).concat(transformList).concat(traceList);
28
- var excludes = all.filter(function(e) { return includes.indexOf(e) === -1; });
28
+ var all = ['calendars'].concat(allTransforms).concat(allTraces);
29
+ var includes = (calendars ? ['calendars'] : []).concat(transformList).concat(traceList);
30
+ var excludes = all.filter(function(e) { return includes.indexOf(e) === -1; });
29
31
 
30
- excludes.forEach(function(t) {
31
- var WHITESPACE_BEFORE = '\\s*';
32
- // remove require
33
- var newCode = partialIndex.replace(
34
- new RegExp(
35
- WHITESPACE_BEFORE +
36
- 'require\\(\'\\./' + t + '\'\\),',
37
- 'g'), ''
38
- );
32
+ excludes.forEach(function(t) {
33
+ var WHITESPACE_BEFORE = '\\s*';
34
+ // remove require
35
+ var newCode = partialIndex.replace(
36
+ new RegExp(
37
+ WHITESPACE_BEFORE +
38
+ 'require\\(\'\\./' + t + '\'\\),',
39
+ 'g'), ''
40
+ );
39
41
 
40
- // test removal
41
- if(newCode === partialIndex) {
42
- console.error('Unable to find and drop require for ' + t);
43
- throw 'Error generating index for partial bundle!';
44
- }
42
+ // test removal
43
+ if(newCode === partialIndex) {
44
+ console.error('Unable to find and drop require for ' + t);
45
+ throw 'Error generating index for partial bundle!';
46
+ }
45
47
 
46
- partialIndex = newCode;
47
- });
48
+ partialIndex = newCode;
49
+ });
48
50
 
49
- common.writeFile(index, partialIndex, done);
50
- });
51
+ common.writeFile(index, partialIndex, done);
52
+ });
53
+ }
51
54
 
52
55
  tasks.push(function(done) {
53
56
  var bundleOpts = {
package/tasks/stats.js CHANGED
@@ -123,9 +123,9 @@ function getMainBundleInfo() {
123
123
  '> The minified version of each partial bundle is also published to npm in a separate "dist-min" package.',
124
124
  '',
125
125
  [
126
- '> The strict partial bundle includes everything except the traces that require function constructors.',
127
- 'Over time we hope to include more of the remaining trace types here, after which we intend to work on other strict CSP issues',
128
- 'such as inline CSS that we may not be able to include in the main bundle.',
126
+ '> The strict bundle now includes all traces, but the regl-based traces are built differently to avoid function constructors.',
127
+ 'This results in about a 10% larger bundle size, which is why this method is not used by default.',
128
+ 'Over time we intend to use the strict bundle to work on other strict CSP issues such as inline CSS.'
129
129
  ].join(' '),
130
130
  '',
131
131
  '---',
@@ -16,11 +16,13 @@ function startsWithLowerCase(v) {
16
16
  return v.charAt(0) !== v.charAt(0).toUpperCase();
17
17
  }
18
18
 
19
+
19
20
  var pathToPlotlyIndex = path.join(pathToLib, 'index.js');
20
21
  var pathToPlotlyStrict = path.join(pathToLib, 'index-strict.js');
21
22
  var mainIndex = fs.readFileSync(pathToPlotlyIndex, 'utf-8');
22
23
  var allTraces = fs.readdirSync(path.join(pathToSrc, 'traces'))
23
24
  .filter(startsWithLowerCase);
25
+
24
26
  var allTransforms = fs.readdirSync(path.join(pathToSrc, 'transforms'))
25
27
  .filter(function(v) {
26
28
  return startsWithLowerCase(v) && v !== 'helpers.js';
@@ -133,17 +135,21 @@ var partialBundleTraces = {
133
135
  'mesh3d',
134
136
  'ohlc',
135
137
  'parcats',
138
+ 'parcoords',
136
139
  'pie',
137
140
  'pointcloud',
138
141
  'sankey',
139
142
  'scatter',
140
- 'scatter',
143
+ 'scattergl',
141
144
  'scatter3d',
142
145
  'scattercarpet',
143
146
  'scattergeo',
144
147
  'scattermapbox',
145
148
  'scatterpolar',
149
+ 'scatterpolargl',
150
+ 'scattersmith',
146
151
  'scatterternary',
152
+ 'splom',
147
153
  'streamtube',
148
154
  'sunburst',
149
155
  'surface',
@@ -194,6 +200,8 @@ module.exports = {
194
200
  pathToPlotlyDist: path.join(pathToDist, 'plotly.js'),
195
201
  pathToPlotlyDistMin: path.join(pathToDist, 'plotly.min.js'),
196
202
  pathToPlotlyDistWithMeta: path.join(pathToDist, 'plotly-with-meta.js'),
203
+ pathToPlotlyStrictDist: path.join(pathToDist, 'plotly-strict.js'),
204
+ pathToPlotlyStrictDistMin: path.join(pathToDist, 'plotly-strict.min.js'),
197
205
 
198
206
  pathToSchemaDiff: path.join(pathToTest, 'plot-schema.json'),
199
207
  pathToSchemaDist: path.join(pathToDist, 'plot-schema.json'),
@@ -201,6 +209,9 @@ module.exports = {
201
209
 
202
210
  partialBundleNames: partialBundleNames,
203
211
 
212
+ reglCodegenSubdir: path.join('generated', 'regl-codegen'),
213
+ pathToReglCodegenSrc: path.join(pathToSrc, 'generated', 'regl-codegen'),
214
+
204
215
  pathToTopojsonSrc: pathToTopojsonSrc,
205
216
  pathToTopojsonDist: path.join(pathToDist, 'topojson/'),
206
217
  pathToPlotlyGeoAssetsSrc: path.join(pathToSrc, 'assets/geo_assets.js'),
@@ -210,6 +221,7 @@ module.exports = {
210
221
  pathToCSSBuild: path.join(pathToBuild, 'plotcss.js'),
211
222
 
212
223
  pathToTestDashboardBundle: path.join(pathToBuild, 'test_dashboard-bundle.js'),
224
+ pathToReglCodegenBundle: path.join(pathToBuild, 'regl_codegen-bundle.js'),
213
225
 
214
226
  pathToImageTest: pathToImageTest,
215
227
  pathToTestImageMocks: path.join(pathToImageTest, 'mocks/'),