numbl 0.1.1 → 0.1.2

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 (209) hide show
  1. package/README.md +1 -1
  2. package/dist-cli/cli.js +6063 -2321
  3. package/dist-lib/graphics/types.d.ts +262 -0
  4. package/dist-lib/lib.d.ts +19 -0
  5. package/dist-lib/lib.js +53709 -0
  6. package/dist-lib/numbl-core/diagnostics/errors.d.ts +8 -0
  7. package/dist-lib/numbl-core/diagnostics/index.d.ts +27 -0
  8. package/dist-lib/numbl-core/executeCode.d.ts +70 -0
  9. package/dist-lib/numbl-core/externalAccessDirective.d.ts +6 -0
  10. package/dist-lib/numbl-core/fileIOAdapter.d.ts +61 -0
  11. package/dist-lib/numbl-core/functionResolve.d.ts +59 -0
  12. package/dist-lib/numbl-core/helpers/arithmetic.d.ts +47 -0
  13. package/dist-lib/numbl-core/helpers/bessel.d.ts +40 -0
  14. package/dist-lib/numbl-core/helpers/check-helpers.d.ts +50 -0
  15. package/dist-lib/numbl-core/helpers/constants.d.ts +6 -0
  16. package/dist-lib/numbl-core/helpers/dummy.d.ts +5 -0
  17. package/dist-lib/numbl-core/helpers/erf.d.ts +5 -0
  18. package/dist-lib/numbl-core/helpers/linsolve.d.ts +26 -0
  19. package/dist-lib/numbl-core/helpers/ode-rk.d.ts +83 -0
  20. package/dist-lib/numbl-core/helpers/prng.d.ts +17 -0
  21. package/dist-lib/numbl-core/helpers/reduction/cumulative.d.ts +8 -0
  22. package/dist-lib/numbl-core/helpers/reduction/min-max.d.ts +5 -0
  23. package/dist-lib/numbl-core/helpers/reduction-helpers.d.ts +58 -0
  24. package/dist-lib/numbl-core/helpers/registry.d.ts +7 -0
  25. package/dist-lib/numbl-core/helpers/shape-utils.d.ts +7 -0
  26. package/dist-lib/numbl-core/helpers/sparse-arithmetic.d.ts +16 -0
  27. package/dist-lib/numbl-core/helpers/string.d.ts +5 -0
  28. package/dist-lib/numbl-core/interpreter/builtins/arithmetic.d.ts +4 -0
  29. package/dist-lib/numbl-core/interpreter/builtins/array-construction.d.ts +4 -0
  30. package/dist-lib/numbl-core/interpreter/builtins/array-extras.d.ts +5 -0
  31. package/dist-lib/numbl-core/interpreter/builtins/array-manipulation.d.ts +7 -0
  32. package/dist-lib/numbl-core/interpreter/builtins/cell-struct.d.ts +5 -0
  33. package/dist-lib/numbl-core/interpreter/builtins/complex.d.ts +4 -0
  34. package/dist-lib/numbl-core/interpreter/builtins/dictionary.d.ts +15 -0
  35. package/dist-lib/numbl-core/interpreter/builtins/fft.d.ts +7 -0
  36. package/dist-lib/numbl-core/interpreter/builtins/help-text.d.ts +5 -0
  37. package/dist-lib/numbl-core/interpreter/builtins/index.d.ts +34 -0
  38. package/dist-lib/numbl-core/interpreter/builtins/introspection.d.ts +6 -0
  39. package/dist-lib/numbl-core/interpreter/builtins/linear-algebra.d.ts +9 -0
  40. package/dist-lib/numbl-core/interpreter/builtins/math.d.ts +4 -0
  41. package/dist-lib/numbl-core/interpreter/builtins/misc.d.ts +4 -0
  42. package/dist-lib/numbl-core/interpreter/builtins/numerical.d.ts +10 -0
  43. package/dist-lib/numbl-core/interpreter/builtins/predicates.d.ts +4 -0
  44. package/dist-lib/numbl-core/interpreter/builtins/prng.d.ts +4 -0
  45. package/dist-lib/numbl-core/interpreter/builtins/reductions.d.ts +6 -0
  46. package/dist-lib/numbl-core/interpreter/builtins/set-operations.d.ts +4 -0
  47. package/dist-lib/numbl-core/interpreter/builtins/sparse.d.ts +4 -0
  48. package/dist-lib/numbl-core/interpreter/builtins/special-math.d.ts +4 -0
  49. package/dist-lib/numbl-core/interpreter/builtins/string-extras.d.ts +5 -0
  50. package/dist-lib/numbl-core/interpreter/builtins/strings.d.ts +7 -0
  51. package/dist-lib/numbl-core/interpreter/builtins/time-system.d.ts +5 -0
  52. package/dist-lib/numbl-core/interpreter/builtins/type-constructors.d.ts +5 -0
  53. package/dist-lib/numbl-core/interpreter/builtins/types.d.ts +109 -0
  54. package/dist-lib/numbl-core/interpreter/builtins/utility.d.ts +4 -0
  55. package/dist-lib/numbl-core/interpreter/builtins/validation.d.ts +4 -0
  56. package/dist-lib/numbl-core/interpreter/interpreter.d.ts +146 -0
  57. package/dist-lib/numbl-core/interpreter/interpreterExec.d.ts +51 -0
  58. package/dist-lib/numbl-core/interpreter/interpreterFunctions.d.ts +41 -0
  59. package/dist-lib/numbl-core/interpreter/interpreterSpecialBuiltins.d.ts +18 -0
  60. package/dist-lib/numbl-core/interpreter/jit/index.d.ts +7 -0
  61. package/dist-lib/numbl-core/interpreter/jit/jitCodegen.d.ts +5 -0
  62. package/dist-lib/numbl-core/interpreter/jit/jitHelpers.d.ts +5 -0
  63. package/dist-lib/numbl-core/interpreter/jit/jitLoop.d.ts +25 -0
  64. package/dist-lib/numbl-core/interpreter/jit/jitLoopAnalysis.d.ts +25 -0
  65. package/dist-lib/numbl-core/interpreter/jit/jitLower.d.ts +20 -0
  66. package/dist-lib/numbl-core/interpreter/jit/jitTypes.d.ts +168 -0
  67. package/dist-lib/numbl-core/interpreter/types.d.ts +77 -0
  68. package/dist-lib/numbl-core/jsUserFunctions.d.ts +25 -0
  69. package/dist-lib/numbl-core/lexer/helpers.d.ts +15 -0
  70. package/dist-lib/numbl-core/lexer/index.d.ts +4 -0
  71. package/dist-lib/numbl-core/lexer/keywords.d.ts +3 -0
  72. package/dist-lib/numbl-core/lexer/token-config.d.ts +94 -0
  73. package/dist-lib/numbl-core/lexer/tokenizer.d.ts +9 -0
  74. package/dist-lib/numbl-core/lexer/types.d.ts +78 -0
  75. package/dist-lib/numbl-core/lowering/classInfo.d.ts +36 -0
  76. package/dist-lib/numbl-core/lowering/constants.d.ts +4 -0
  77. package/dist-lib/numbl-core/lowering/errors.d.ts +17 -0
  78. package/dist-lib/numbl-core/lowering/index.d.ts +3 -0
  79. package/dist-lib/numbl-core/lowering/itemTypes.d.ts +87 -0
  80. package/dist-lib/numbl-core/lowering/loweringContext.d.ts +206 -0
  81. package/dist-lib/numbl-core/native/bridge-resolve.d.ts +14 -0
  82. package/dist-lib/numbl-core/native/lapack-bridge.d.ts +387 -0
  83. package/dist-lib/numbl-core/native/ts-lapack-bridge.d.ts +9 -0
  84. package/dist-lib/numbl-core/parser/ArgumentsParser.d.ts +28 -0
  85. package/dist-lib/numbl-core/parser/ClassParser.d.ts +18 -0
  86. package/dist-lib/numbl-core/parser/CommandParser.d.ts +31 -0
  87. package/dist-lib/numbl-core/parser/ControlFlowParser.d.ts +16 -0
  88. package/dist-lib/numbl-core/parser/ExpressionParser.d.ts +32 -0
  89. package/dist-lib/numbl-core/parser/FunctionParser.d.ts +10 -0
  90. package/dist-lib/numbl-core/parser/Parser.d.ts +17 -0
  91. package/dist-lib/numbl-core/parser/ParserBase.d.ts +35 -0
  92. package/dist-lib/numbl-core/parser/StatementParser.d.ts +13 -0
  93. package/dist-lib/numbl-core/parser/errors.d.ts +15 -0
  94. package/dist-lib/numbl-core/parser/index.d.ts +7 -0
  95. package/dist-lib/numbl-core/parser/types.d.ts +316 -0
  96. package/dist-lib/numbl-core/runtime/compare.d.ts +5 -0
  97. package/dist-lib/numbl-core/runtime/constructors.d.ts +35 -0
  98. package/dist-lib/numbl-core/runtime/convert.d.ts +10 -0
  99. package/dist-lib/numbl-core/runtime/display.d.ts +6 -0
  100. package/dist-lib/numbl-core/runtime/error.d.ts +73 -0
  101. package/dist-lib/numbl-core/runtime/index.d.ts +12 -0
  102. package/dist-lib/numbl-core/runtime/indexing.d.ts +10 -0
  103. package/dist-lib/numbl-core/runtime/plotUtils.d.ts +215 -0
  104. package/dist-lib/numbl-core/runtime/runtime.d.ts +314 -0
  105. package/dist-lib/numbl-core/runtime/runtimeDispatch.d.ts +27 -0
  106. package/dist-lib/numbl-core/runtime/runtimeHelpers.d.ts +31 -0
  107. package/dist-lib/numbl-core/runtime/runtimeIndexing.d.ts +28 -0
  108. package/dist-lib/numbl-core/runtime/runtimeMemberAccess.d.ts +26 -0
  109. package/dist-lib/numbl-core/runtime/runtimeOperators.d.ts +24 -0
  110. package/dist-lib/numbl-core/runtime/runtimePlot.d.ts +99 -0
  111. package/dist-lib/numbl-core/runtime/sentinels.d.ts +4 -0
  112. package/dist-lib/numbl-core/runtime/specialBuiltinNames.d.ts +2 -0
  113. package/dist-lib/numbl-core/runtime/specialBuiltins.d.ts +13 -0
  114. package/dist-lib/numbl-core/runtime/struct-access.d.ts +6 -0
  115. package/dist-lib/numbl-core/runtime/syncChannel.d.ts +1 -0
  116. package/dist-lib/numbl-core/runtime/tensor-construction.d.ts +10 -0
  117. package/dist-lib/numbl-core/runtime/types.d.ts +110 -0
  118. package/dist-lib/numbl-core/runtime/utils.d.ts +20 -0
  119. package/dist-lib/numbl-core/stdlib-bundle.d.ts +3 -0
  120. package/dist-lib/numbl-core/systemAdapter.d.ts +23 -0
  121. package/dist-lib/numbl-core/version.d.ts +2 -0
  122. package/dist-lib/numbl-core/workspace/index.d.ts +4 -0
  123. package/dist-lib/numbl-core/workspace/types.d.ts +16 -0
  124. package/dist-lib/ts-lapack/src/BLAS/daxpy.d.ts +1 -0
  125. package/dist-lib/ts-lapack/src/BLAS/dcopy.d.ts +1 -0
  126. package/dist-lib/ts-lapack/src/BLAS/ddot.d.ts +1 -0
  127. package/dist-lib/ts-lapack/src/BLAS/dgemm.d.ts +1 -0
  128. package/dist-lib/ts-lapack/src/BLAS/dgemm_optimized.d.ts +1 -0
  129. package/dist-lib/ts-lapack/src/BLAS/dgemv.d.ts +1 -0
  130. package/dist-lib/ts-lapack/src/BLAS/dger.d.ts +1 -0
  131. package/dist-lib/ts-lapack/src/BLAS/dnrm2.d.ts +1 -0
  132. package/dist-lib/ts-lapack/src/BLAS/drot.d.ts +1 -0
  133. package/dist-lib/ts-lapack/src/BLAS/dscal.d.ts +1 -0
  134. package/dist-lib/ts-lapack/src/BLAS/dswap.d.ts +1 -0
  135. package/dist-lib/ts-lapack/src/BLAS/dtrmm.d.ts +1 -0
  136. package/dist-lib/ts-lapack/src/BLAS/dtrmv.d.ts +1 -0
  137. package/dist-lib/ts-lapack/src/BLAS/dtrsm.d.ts +1 -0
  138. package/dist-lib/ts-lapack/src/BLAS/idamax.d.ts +1 -0
  139. package/dist-lib/ts-lapack/src/SRC/dbdsqr.d.ts +10 -0
  140. package/dist-lib/ts-lapack/src/SRC/dgebak.d.ts +1 -0
  141. package/dist-lib/ts-lapack/src/SRC/dgebal.d.ts +5 -0
  142. package/dist-lib/ts-lapack/src/SRC/dgebd2.d.ts +1 -0
  143. package/dist-lib/ts-lapack/src/SRC/dgebrd.d.ts +1 -0
  144. package/dist-lib/ts-lapack/src/SRC/dgeev.d.ts +3 -0
  145. package/dist-lib/ts-lapack/src/SRC/dgehd2.d.ts +1 -0
  146. package/dist-lib/ts-lapack/src/SRC/dgehrd.d.ts +1 -0
  147. package/dist-lib/ts-lapack/src/SRC/dgelq2.d.ts +1 -0
  148. package/dist-lib/ts-lapack/src/SRC/dgelqf.d.ts +1 -0
  149. package/dist-lib/ts-lapack/src/SRC/dgeqr2.d.ts +1 -0
  150. package/dist-lib/ts-lapack/src/SRC/dgeqrf.d.ts +1 -0
  151. package/dist-lib/ts-lapack/src/SRC/dgeqrf_optimized.d.ts +1 -0
  152. package/dist-lib/ts-lapack/src/SRC/dgesvd.d.ts +28 -0
  153. package/dist-lib/ts-lapack/src/SRC/dgetrf.d.ts +1 -0
  154. package/dist-lib/ts-lapack/src/SRC/dgetrf2.d.ts +1 -0
  155. package/dist-lib/ts-lapack/src/SRC/dgetri.d.ts +1 -0
  156. package/dist-lib/ts-lapack/src/SRC/dhseqr.d.ts +32 -0
  157. package/dist-lib/ts-lapack/src/SRC/dlabrd.d.ts +1 -0
  158. package/dist-lib/ts-lapack/src/SRC/dlacpy.d.ts +18 -0
  159. package/dist-lib/ts-lapack/src/SRC/dladiv.d.ts +9 -0
  160. package/dist-lib/ts-lapack/src/SRC/dlaexc.d.ts +21 -0
  161. package/dist-lib/ts-lapack/src/SRC/dlahqr.d.ts +24 -0
  162. package/dist-lib/ts-lapack/src/SRC/dlahr2.d.ts +1 -0
  163. package/dist-lib/ts-lapack/src/SRC/dlaln2.d.ts +5 -0
  164. package/dist-lib/ts-lapack/src/SRC/dlamch.d.ts +1 -0
  165. package/dist-lib/ts-lapack/src/SRC/dlange.d.ts +1 -0
  166. package/dist-lib/ts-lapack/src/SRC/dlanv2.d.ts +12 -0
  167. package/dist-lib/ts-lapack/src/SRC/dlapy2.d.ts +1 -0
  168. package/dist-lib/ts-lapack/src/SRC/dlaqr1.d.ts +1 -0
  169. package/dist-lib/ts-lapack/src/SRC/dlaqr30.d.ts +81 -0
  170. package/dist-lib/ts-lapack/src/SRC/dlaqr5.d.ts +38 -0
  171. package/dist-lib/ts-lapack/src/SRC/dlarf.d.ts +18 -0
  172. package/dist-lib/ts-lapack/src/SRC/dlarf1f.d.ts +1 -0
  173. package/dist-lib/ts-lapack/src/SRC/dlarfb.d.ts +25 -0
  174. package/dist-lib/ts-lapack/src/SRC/dlarfg.d.ts +4 -0
  175. package/dist-lib/ts-lapack/src/SRC/dlarft.d.ts +20 -0
  176. package/dist-lib/ts-lapack/src/SRC/dlarfx.d.ts +17 -0
  177. package/dist-lib/ts-lapack/src/SRC/dlartg.d.ts +5 -0
  178. package/dist-lib/ts-lapack/src/SRC/dlas2.d.ts +4 -0
  179. package/dist-lib/ts-lapack/src/SRC/dlascl.d.ts +1 -0
  180. package/dist-lib/ts-lapack/src/SRC/dlaset.d.ts +19 -0
  181. package/dist-lib/ts-lapack/src/SRC/dlasr.d.ts +1 -0
  182. package/dist-lib/ts-lapack/src/SRC/dlassq.d.ts +18 -0
  183. package/dist-lib/ts-lapack/src/SRC/dlasv2.d.ts +8 -0
  184. package/dist-lib/ts-lapack/src/SRC/dlaswp.d.ts +1 -0
  185. package/dist-lib/ts-lapack/src/SRC/dlasy2.d.ts +5 -0
  186. package/dist-lib/ts-lapack/src/SRC/dorg2r.d.ts +1 -0
  187. package/dist-lib/ts-lapack/src/SRC/dorgbr.d.ts +1 -0
  188. package/dist-lib/ts-lapack/src/SRC/dorghr.d.ts +1 -0
  189. package/dist-lib/ts-lapack/src/SRC/dorgl2.d.ts +1 -0
  190. package/dist-lib/ts-lapack/src/SRC/dorglq.d.ts +1 -0
  191. package/dist-lib/ts-lapack/src/SRC/dorgqr.d.ts +1 -0
  192. package/dist-lib/ts-lapack/src/SRC/dorgqr_optimized.d.ts +1 -0
  193. package/dist-lib/ts-lapack/src/SRC/dorm2r.d.ts +1 -0
  194. package/dist-lib/ts-lapack/src/SRC/dormhr.d.ts +1 -0
  195. package/dist-lib/ts-lapack/src/SRC/dormqr.d.ts +1 -0
  196. package/dist-lib/ts-lapack/src/SRC/dpotf2.d.ts +1 -0
  197. package/dist-lib/ts-lapack/src/SRC/dtrevc3.d.ts +27 -0
  198. package/dist-lib/ts-lapack/src/SRC/dtrexc.d.ts +24 -0
  199. package/dist-lib/ts-lapack/src/SRC/dtrti2.d.ts +1 -0
  200. package/dist-lib/ts-lapack/src/SRC/dtrtri.d.ts +1 -0
  201. package/dist-lib/ts-lapack/src/utils/constants.d.ts +28 -0
  202. package/dist-lib/ts-lapack/src/utils/iladlc.d.ts +1 -0
  203. package/dist-lib/ts-lapack/src/utils/iladlr.d.ts +1 -0
  204. package/dist-lib/ts-lapack/src/utils/ilaenv.d.ts +1 -0
  205. package/dist-lib/ts-lapack/src/utils/xerbla.d.ts +1 -0
  206. package/dist-plot-viewer/assets/index-BjKyNJgj.js +4426 -0
  207. package/dist-plot-viewer/index.html +1 -1
  208. package/package.json +12 -2
  209. package/dist-plot-viewer/assets/index-BMYdzDaW.js +0 -4426
@@ -0,0 +1,262 @@
1
+ /**
2
+ * Shared graphics types used by both numbl-core and the rendering layer.
3
+ *
4
+ * This file is the single source of truth for plot trace interfaces and
5
+ * PlotInstruction. numbl-core re-exports these types so that internal
6
+ * runtime code can import them without reaching into src/graphics/.
7
+ *
8
+ * The numbl-vscode extension syncs this file (and the rest of src/graphics/)
9
+ * via devel/sync-graphics.sh.
10
+ */
11
+ export interface PlotTrace {
12
+ x: number[];
13
+ y: number[];
14
+ lineStyle?: string;
15
+ marker?: string;
16
+ color?: [number, number, number];
17
+ lineWidth?: number;
18
+ markerSize?: number;
19
+ markerEdgeColor?: [number, number, number];
20
+ markerFaceColor?: [number, number, number];
21
+ markerIndices?: number[];
22
+ }
23
+ export interface Plot3Trace {
24
+ x: number[];
25
+ y: number[];
26
+ z: number[];
27
+ lineStyle?: string;
28
+ marker?: string;
29
+ color?: [number, number, number];
30
+ lineWidth?: number;
31
+ markerSize?: number;
32
+ markerEdgeColor?: [number, number, number];
33
+ markerFaceColor?: [number, number, number];
34
+ markerIndices?: number[];
35
+ }
36
+ export interface SurfTrace {
37
+ /** X coordinates: flat array of length rows*cols (column-major) */
38
+ x: number[];
39
+ /** Y coordinates: flat array of length rows*cols (column-major) */
40
+ y: number[];
41
+ /** Z values: flat array of length rows*cols (column-major) */
42
+ z: number[];
43
+ /** Number of rows in the grid */
44
+ rows: number;
45
+ /** Number of columns in the grid */
46
+ cols: number;
47
+ /** Optional color data (same shape as Z) */
48
+ c?: number[];
49
+ edgeColor?: [number, number, number] | "none" | "flat" | "interp";
50
+ faceColor?: [number, number, number] | "flat" | "interp" | "none" | "texturemap";
51
+ faceAlpha?: number;
52
+ }
53
+ export interface ImagescTrace {
54
+ /** X limits [xmin, xmax] */
55
+ x: [number, number];
56
+ /** Y limits [ymin, ymax] */
57
+ y: [number, number];
58
+ /** Z data: flat array (column-major), rows × cols */
59
+ z: number[];
60
+ rows: number;
61
+ cols: number;
62
+ }
63
+ export interface ContourTrace {
64
+ /** X coordinates: flat array (column-major) */
65
+ x: number[];
66
+ /** Y coordinates: flat array (column-major) */
67
+ y: number[];
68
+ /** Z values: flat array (column-major) */
69
+ z: number[];
70
+ rows: number;
71
+ cols: number;
72
+ /** Number of contour levels */
73
+ nLevels: number;
74
+ /** Whether this is a filled contour (contourf) */
75
+ filled: boolean;
76
+ }
77
+ export interface BarTrace {
78
+ /** X positions for each bar */
79
+ x: number[];
80
+ /** Y values (bar heights) for each bar */
81
+ y: number[];
82
+ /** Relative bar width (0–1, default 0.8) */
83
+ width: number;
84
+ /** Bar color as RGB triple [0–1] */
85
+ color?: [number, number, number];
86
+ }
87
+ export interface Bar3Trace {
88
+ /** X positions for each bar (column index) */
89
+ x: number[];
90
+ /** Y positions for each bar (row index) */
91
+ y: number[];
92
+ /** Z values (bar heights) for each bar */
93
+ z: number[];
94
+ /** Number of rows in the grid */
95
+ rows: number;
96
+ /** Number of columns in the grid */
97
+ cols: number;
98
+ /** Relative bar width (0–1, default 0.8) */
99
+ width: number;
100
+ /** Bar color as RGB triple [0–1] */
101
+ color?: [number, number, number];
102
+ }
103
+ export interface ErrorBarTrace {
104
+ x: number[];
105
+ y: number[];
106
+ /** Error below each data point */
107
+ yNeg: number[];
108
+ /** Error above each data point */
109
+ yPos: number[];
110
+ /** Error left of each data point (horizontal error bars) */
111
+ xNeg?: number[];
112
+ /** Error right of each data point (horizontal error bars) */
113
+ xPos?: number[];
114
+ color?: [number, number, number];
115
+ lineStyle?: string;
116
+ marker?: string;
117
+ lineWidth?: number;
118
+ }
119
+ export interface BoxTrace {
120
+ /** X position for this box */
121
+ x: number;
122
+ /** Median value */
123
+ median: number;
124
+ /** Lower quartile (Q1, 25th percentile) */
125
+ q1: number;
126
+ /** Upper quartile (Q3, 75th percentile) */
127
+ q3: number;
128
+ /** Lower whisker end (min non-outlier) */
129
+ whiskerLow: number;
130
+ /** Upper whisker end (max non-outlier) */
131
+ whiskerHigh: number;
132
+ /** Outlier values */
133
+ outliers: number[];
134
+ /** Relative box width */
135
+ width: number;
136
+ /** Box color as RGB triple [0–1] */
137
+ color?: [number, number, number];
138
+ }
139
+ export interface PieTrace {
140
+ /** Slice values (absolute, not percentages) */
141
+ values: number[];
142
+ /** Optional slice names */
143
+ names?: string[];
144
+ /** Inner radius as fraction of outer radius (0 = pie, >0 = donut) */
145
+ innerRadius: number;
146
+ /** Per-slice colors as RGB triples [0–1] */
147
+ colors?: [number, number, number][];
148
+ }
149
+ export interface HeatmapTrace {
150
+ /** Cell values: flat array (column-major), rows × cols */
151
+ data: number[];
152
+ rows: number;
153
+ cols: number;
154
+ /** X-axis labels (one per column) */
155
+ xLabels?: string[];
156
+ /** Y-axis labels (one per row) */
157
+ yLabels?: string[];
158
+ }
159
+ export type PlotInstruction = {
160
+ type: "set_figure_handle";
161
+ handle: number;
162
+ } | {
163
+ type: "plot";
164
+ traces: PlotTrace[];
165
+ } | {
166
+ type: "plot3";
167
+ traces: Plot3Trace[];
168
+ } | {
169
+ type: "surf";
170
+ trace: SurfTrace;
171
+ } | {
172
+ type: "imagesc";
173
+ trace: ImagescTrace;
174
+ } | {
175
+ type: "contour";
176
+ trace: ContourTrace;
177
+ } | {
178
+ type: "mesh";
179
+ trace: SurfTrace;
180
+ } | {
181
+ type: "bar";
182
+ traces: BarTrace[];
183
+ } | {
184
+ type: "barh";
185
+ traces: BarTrace[];
186
+ } | {
187
+ type: "bar3";
188
+ trace: Bar3Trace;
189
+ } | {
190
+ type: "bar3h";
191
+ trace: Bar3Trace;
192
+ } | {
193
+ type: "errorbar";
194
+ traces: ErrorBarTrace[];
195
+ } | {
196
+ type: "area";
197
+ traces: PlotTrace[];
198
+ baseValue: number;
199
+ } | {
200
+ type: "boxchart";
201
+ traces: BoxTrace[];
202
+ } | {
203
+ type: "piechart";
204
+ trace: PieTrace;
205
+ } | {
206
+ type: "heatmap";
207
+ trace: HeatmapTrace;
208
+ } | {
209
+ type: "set_hold";
210
+ value: boolean;
211
+ } | {
212
+ type: "set_title";
213
+ text: string;
214
+ } | {
215
+ type: "set_xlabel";
216
+ text: string;
217
+ } | {
218
+ type: "set_ylabel";
219
+ text: string;
220
+ } | {
221
+ type: "set_zlabel";
222
+ text: string;
223
+ } | {
224
+ type: "set_shading";
225
+ shading: "faceted" | "flat" | "interp";
226
+ } | {
227
+ type: "close";
228
+ } | {
229
+ type: "close_all";
230
+ } | {
231
+ type: "clf";
232
+ } | {
233
+ type: "set_subplot";
234
+ rows: number;
235
+ cols: number;
236
+ index: number;
237
+ } | {
238
+ type: "set_legend";
239
+ labels: string[];
240
+ } | {
241
+ type: "set_sgtitle";
242
+ text: string;
243
+ } | {
244
+ type: "set_grid";
245
+ value: boolean;
246
+ } | {
247
+ type: "set_colorbar";
248
+ value: string;
249
+ } | {
250
+ type: "set_colormap";
251
+ name: string;
252
+ } | {
253
+ type: "set_axis";
254
+ value: string;
255
+ } | {
256
+ type: "set_axis_scale";
257
+ value: "linear" | "semilogx" | "semilogy" | "loglog";
258
+ } | {
259
+ type: "set_view";
260
+ az: number;
261
+ el: number;
262
+ };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * numbl library entry point.
3
+ *
4
+ * Usage:
5
+ * import { executeCode } from "numbl";
6
+ * const result = executeCode('disp("hello")');
7
+ * console.log(result.output); // ["hello"]
8
+ */
9
+ export { executeCode } from "./numbl-core/executeCode.js";
10
+ export type { ExecOptions, ExecResult, ProfileData, BuiltinProfileEntry, BuiltinProfileBreakdown, } from "./numbl-core/executeCode.js";
11
+ export type { FileIOAdapter } from "./numbl-core/fileIOAdapter.js";
12
+ export type { SystemAdapter } from "./numbl-core/systemAdapter.js";
13
+ export type { WorkspaceFile, NativeBridge, } from "./numbl-core/workspace/index.js";
14
+ export type { PlotInstruction } from "./graphics/types.js";
15
+ export type { RuntimeValue, RuntimeTensor, RuntimeString, RuntimeLogical, RuntimeCell, RuntimeStruct, RuntimeFunction, RuntimeDictionary, } from "./numbl-core/runtime/index.js";
16
+ export { RuntimeError } from "./numbl-core/runtime/index.js";
17
+ export { RTV } from "./numbl-core/runtime/constructors.js";
18
+ export { displayValue } from "./numbl-core/runtime/display.js";
19
+ export { toNumber, toBool, toString } from "./numbl-core/runtime/convert.js";