@nxgt/material 3.75.0 → 3.76.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 (239) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +37 -1
  3. package/dist/{alert-dialog-BfO_ri-N.js → alert-dialog-653apk3f.js} +8 -7
  4. package/dist/{async-slice-roMAJVzG.js → async-slice-CXLbQuOc.js} +1 -1
  5. package/dist/{bubble-input-B7BVd9fX.js → bubble-input-CQwVSoU3.js} +30 -29
  6. package/dist/{button-DgenqmpS.js → button-3op3rtZh.js} +5 -4
  7. package/dist/calculator-BaSMe0SK.js +1189 -0
  8. package/dist/calculator-announce-DRd2c6Dq.js +89 -0
  9. package/dist/calculator-context-BugcKuVG.js +10 -0
  10. package/dist/calculator-field.js +172 -0
  11. package/dist/calculator-panel-announce-AZSnZUSr.js +29 -0
  12. package/dist/calculator-segment-BlJE1LaS.js +22 -0
  13. package/dist/calculator.js +2 -0
  14. package/dist/charts.js +3 -3
  15. package/dist/{chip-CiDczNxO.js → chip-MuKDwtkG.js} +2 -2
  16. package/dist/{code-editor-CohlhFsA.js → code-editor-Bp2RrdNx.js} +13 -13
  17. package/dist/code-editor.js +37 -37
  18. package/dist/{code-language-items-Cs8GLYDp.js → code-language-items-B7WR5ua_.js} +19 -24
  19. package/dist/components/base-content.css +9 -4
  20. package/dist/components/ui/collections/server-table/server-table-phone-row.css +10 -3
  21. package/dist/{components-zJdfH4im.js → components-Ci3Zo8kC.js} +15837 -17245
  22. package/dist/components.js +37 -28
  23. package/dist/conversion-variant-BDFAxqe9.js +529 -0
  24. package/dist/copy-to-clipboard-Be5Ffvs_.js +7 -0
  25. package/dist/currency-B-r3ig11.js +16 -0
  26. package/dist/currency-field-BJ9rSrif.js +285 -0
  27. package/dist/{number.utils-BG_eEt5g.js → date.utils-DUvqcjan.js} +1 -7
  28. package/dist/dialog-Bm5LvVlB.js +166 -0
  29. package/dist/dist-BZe2evxL.js +139 -0
  30. package/dist/dist-CxhKjOYm.js +28 -0
  31. package/dist/dist-DHdUUM1w.js +241 -0
  32. package/dist/{dist-C4wtXCjf.js → dist-DOK3zo5C.js} +33 -32
  33. package/dist/dist-DWZXlCZR.js +182 -0
  34. package/dist/dist-DkQbkF9T.js +33 -0
  35. package/dist/dnd.js +1 -1
  36. package/dist/{dropdown-menu-CzR6JP31.js → dropdown-menu-xlZ6NYUA.js} +160 -159
  37. package/dist/editor.js +299 -298
  38. package/dist/{empty-state-DjHGMp5F.js → empty-state-C0kviQdW.js} +2 -2
  39. package/dist/{field-blur-CdASxjL7.js → field-blur-DkiZOVNV.js} +178 -180
  40. package/dist/{field-blur-context-kZ4SD7xu.js → field-blur-context-BLGgf_3z.js} +2 -2
  41. package/dist/financial-variant-BsZEa5sF.js +459 -0
  42. package/dist/{hooks-Dqq8O3Az.js → hooks-Dg94jPRq.js} +12 -12
  43. package/dist/hooks.js +2 -2
  44. package/dist/{hover-card-BPKqte4a.js → hover-card-B1g55Hi6.js} +44 -43
  45. package/dist/i18n.js +3 -3
  46. package/dist/icon-badge-BcW66bRk.js +17 -0
  47. package/dist/{icon-button-Cr-DyDGg.js → icon-button-Cogxy1cy.js} +5 -4
  48. package/dist/{in-dialog-Vwkyp-M5.js → in-dialog-D61Yeaol.js} +2 -1
  49. package/dist/input-CC2joTjB.js +56 -0
  50. package/dist/key-layout-cR79xfGE.js +38 -0
  51. package/dist/lib/calculator/index.d.ts +16 -0
  52. package/dist/lib/calculator-field/index.d.ts +12 -0
  53. package/dist/lib/components/ui/collections/filter/use-filter-field-config.d.ts +2 -2
  54. package/dist/lib/components/ui/feedback/moment/moment-body.d.ts +17 -2
  55. package/dist/lib/components/ui/feedback/moment/moment-passive.d.ts +13 -0
  56. package/dist/lib/components/ui/feedback/moment/moment.d.ts +16 -2
  57. package/dist/lib/components/ui/fields/calculator-field/apply-calculated.d.ts +17 -0
  58. package/dist/lib/components/ui/fields/calculator-field/calculator-field-content.d.ts +16 -0
  59. package/dist/lib/components/ui/fields/calculator-field/calculator-field-trigger.d.ts +4 -0
  60. package/dist/lib/components/ui/fields/calculator-field/calculator-field.d.ts +12 -0
  61. package/dist/lib/components/ui/fields/calculator-field/calculator-field.types.d.ts +31 -0
  62. package/dist/lib/components/ui/fields/calculator-field/calculator-form-field.d.ts +4 -0
  63. package/dist/lib/components/ui/fields/calculator-field/index.d.ts +3 -0
  64. package/dist/lib/components/ui/fields/calculator-field/use-calculator-field.d.ts +15 -0
  65. package/dist/lib/components/ui/fields/contacts/placeholders.d.ts +1 -1
  66. package/dist/lib/components/ui/fields/currency-field/currency-field.d.ts +7 -1
  67. package/dist/lib/components/ui/layout/app-shell/app-sidebar-context.d.ts +4 -0
  68. package/dist/lib/components/ui/widgets/calculator/calculator-announce.d.ts +27 -0
  69. package/dist/lib/components/ui/widgets/calculator/calculator-clipboard.d.ts +19 -0
  70. package/dist/lib/components/ui/widgets/calculator/calculator-context.d.ts +49 -0
  71. package/dist/lib/components/ui/widgets/calculator/calculator-feedback.d.ts +18 -0
  72. package/dist/lib/components/ui/widgets/calculator/calculator-keyboard.d.ts +30 -0
  73. package/dist/lib/components/ui/widgets/calculator/calculator-storage.d.ts +17 -0
  74. package/dist/lib/components/ui/widgets/calculator/calculator-variant-steps.d.ts +16 -0
  75. package/dist/lib/components/ui/widgets/calculator/calculator.d.ts +11 -0
  76. package/dist/lib/components/ui/widgets/calculator/calculator.selectors.d.ts +23 -0
  77. package/dist/lib/components/ui/widgets/calculator/calculator.slice.d.ts +1881 -0
  78. package/dist/lib/components/ui/widgets/calculator/currency.d.ts +9 -0
  79. package/dist/lib/components/ui/widgets/calculator/engine.d.ts +22 -0
  80. package/dist/lib/components/ui/widgets/calculator/index.d.ts +3 -0
  81. package/dist/lib/components/ui/widgets/calculator/partials/calculator-announcer.d.ts +2 -0
  82. package/dist/lib/components/ui/widgets/calculator/partials/calculator-display.d.ts +3 -0
  83. package/dist/lib/components/ui/widgets/calculator/partials/calculator-key.d.ts +17 -0
  84. package/dist/lib/components/ui/widgets/calculator/partials/calculator-keypad.d.ts +8 -0
  85. package/dist/lib/components/ui/widgets/calculator/partials/calculator-loading.d.ts +6 -0
  86. package/dist/lib/components/ui/widgets/calculator/partials/calculator-memory.d.ts +2 -0
  87. package/dist/lib/components/ui/widgets/calculator/partials/calculator-panel-announce.d.ts +10 -0
  88. package/dist/lib/components/ui/widgets/calculator/partials/calculator-panel-body.d.ts +9 -0
  89. package/dist/lib/components/ui/widgets/calculator/partials/calculator-screen.d.ts +4 -0
  90. package/dist/lib/components/ui/widgets/calculator/partials/calculator-segment.d.ts +21 -0
  91. package/dist/lib/components/ui/widgets/calculator/partials/calculator-shell.d.ts +9 -0
  92. package/dist/lib/components/ui/widgets/calculator/partials/calculator-switcher.d.ts +5 -0
  93. package/dist/lib/components/ui/widgets/calculator/partials/calculator-tape.d.ts +4 -0
  94. package/dist/lib/components/ui/widgets/calculator/partials/calculator-tools.d.ts +4 -0
  95. package/dist/lib/components/ui/widgets/calculator/partials/keypad-navigation.d.ts +24 -0
  96. package/dist/lib/components/ui/widgets/calculator/types.d.ts +102 -0
  97. package/dist/lib/components/ui/widgets/calculator/use-calculator-clipboard.d.ts +19 -0
  98. package/dist/lib/components/ui/widgets/calculator/use-calculator-conversion.d.ts +4 -0
  99. package/dist/lib/components/ui/widgets/calculator/use-calculator-feedback.d.ts +3 -0
  100. package/dist/lib/components/ui/widgets/calculator/use-calculator-keyboard.d.ts +22 -0
  101. package/dist/lib/components/ui/widgets/calculator/use-calculator-persistence.d.ts +14 -0
  102. package/dist/lib/components/ui/widgets/calculator/use-calculator-pos.d.ts +25 -0
  103. package/dist/lib/components/ui/widgets/calculator/use-calculator-press.d.ts +26 -0
  104. package/dist/lib/components/ui/widgets/calculator/use-calculator-tape.d.ts +29 -0
  105. package/dist/lib/components/ui/widgets/calculator/use-calculator-value.d.ts +9 -0
  106. package/dist/lib/components/ui/widgets/calculator/use-calculator-variant.d.ts +23 -0
  107. package/dist/lib/components/ui/widgets/calculator/use-calculator.d.ts +10 -0
  108. package/dist/lib/components/ui/widgets/calculator/use-engine-settings.d.ts +10 -0
  109. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-fields.d.ts +19 -0
  110. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-labels.d.ts +17 -0
  111. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-math.d.ts +31 -0
  112. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-names.d.ts +4 -0
  113. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-panel.d.ts +7 -0
  114. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-rates.d.ts +29 -0
  115. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-result.d.ts +15 -0
  116. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-state.d.ts +36 -0
  117. package/dist/lib/components/ui/widgets/calculator/variants/conversion/conversion-variant.d.ts +3 -0
  118. package/dist/lib/components/ui/widgets/calculator/variants/conversion/use-conversion.d.ts +24 -0
  119. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-change.d.ts +4 -0
  120. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-figures.d.ts +43 -0
  121. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-format.d.ts +12 -0
  122. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-loan-math.d.ts +14 -0
  123. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-loan.d.ts +4 -0
  124. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-margin.d.ts +4 -0
  125. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-math.d.ts +10 -0
  126. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-panel.d.ts +7 -0
  127. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-parts.d.ts +35 -0
  128. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-table.d.ts +7 -0
  129. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-variant.d.ts +3 -0
  130. package/dist/lib/components/ui/widgets/calculator/variants/financial/financial-vat.d.ts +4 -0
  131. package/dist/lib/components/ui/widgets/calculator/variants/key-layout.d.ts +51 -0
  132. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-announce.d.ts +16 -0
  133. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-aside.d.ts +2 -0
  134. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-display.d.ts +2 -0
  135. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-fields.d.ts +2 -0
  136. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-layout.d.ts +9 -0
  137. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-line.d.ts +6 -0
  138. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-names.d.ts +2 -0
  139. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-state.d.ts +3 -0
  140. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-tender.d.ts +2 -0
  141. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-ticket-data.d.ts +41 -0
  142. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-ticket.d.ts +5 -0
  143. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-totals.d.ts +2 -0
  144. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-types.d.ts +76 -0
  145. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-variant.d.ts +3 -0
  146. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-vat.d.ts +2 -0
  147. package/dist/lib/components/ui/widgets/calculator/variants/pos/pos-view.d.ts +28 -0
  148. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-announce.d.ts +19 -0
  149. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-base.d.ts +11 -0
  150. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-bitpad.d.ts +14 -0
  151. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-display.d.ts +9 -0
  152. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-layout.d.ts +6 -0
  153. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-names.d.ts +2 -0
  154. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-readouts.d.ts +14 -0
  155. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-reduce.d.ts +29 -0
  156. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-state.d.ts +22 -0
  157. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-toolbar.d.ts +5 -0
  158. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-variant.d.ts +3 -0
  159. package/dist/lib/components/ui/widgets/calculator/variants/programmer/programmer-word.d.ts +15 -0
  160. package/dist/lib/components/ui/widgets/calculator/variants/registry.d.ts +21 -0
  161. package/dist/lib/components/ui/widgets/calculator/variants/scientific/scientific-layout.d.ts +3 -0
  162. package/dist/lib/components/ui/widgets/calculator/variants/scientific/scientific-names.d.ts +2 -0
  163. package/dist/lib/components/ui/widgets/calculator/variants/scientific/scientific-toolbar.d.ts +2 -0
  164. package/dist/lib/components/ui/widgets/calculator/variants/scientific/scientific-variant.d.ts +3 -0
  165. package/dist/lib/components/ui/widgets/calculator/variants/standard/standard-layout.d.ts +3 -0
  166. package/dist/lib/components/ui/widgets/calculator/variants/variant-loader.d.ts +34 -0
  167. package/dist/lib/components/ui/widgets/calculator/variants/variant-logic.d.ts +40 -0
  168. package/dist/lib/components/ui/widgets/calculator/variants/variant-types.d.ts +62 -0
  169. package/dist/lib/i18n/resources/en/en.d.ts +412 -0
  170. package/dist/lib/i18n/resources/en/material.json.d.ts +412 -0
  171. package/dist/lib/i18n/resources/fr/fr.d.ts +412 -0
  172. package/dist/lib/i18n/resources/fr/material.json.d.ts +412 -0
  173. package/dist/lib/i18n/resources/resources.d.ts +824 -0
  174. package/dist/lib/i18n/translator.d.ts +1 -1
  175. package/dist/lib.js +4 -3
  176. package/dist/main.js +50 -40
  177. package/dist/map.js +66 -65
  178. package/dist/material.css +1 -1
  179. package/dist/native-select-w_FlBLHV.js +40 -0
  180. package/dist/number.utils-CSueQZcv.js +7 -0
  181. package/dist/pdf-reader.js +1 -1
  182. package/dist/percent-field-lahyDJDG.js +14 -0
  183. package/dist/picker-surface-CV09H7Nb.js +1220 -0
  184. package/dist/popover-Cd7DkND4.js +233 -0
  185. package/dist/pos-types-DKCkOTYy.js +49 -0
  186. package/dist/pos-variant-GrUfbTTP.js +603 -0
  187. package/dist/print.js +1 -1
  188. package/dist/programmer-variant-eKJNKENL.js +501 -0
  189. package/dist/programmer-word-CNCF7DJF.js +15 -0
  190. package/dist/{public-DC9VQw4Z.js → public-y6g4ddxd.js} +895 -892
  191. package/dist/{rich-code-block-DBSL9zEN.js → rich-code-block-CRQ0iyLb.js} +5 -5
  192. package/dist/scientific-variant-2y3UxAAU.js +149 -0
  193. package/dist/{sortable-provider-C4tk5esY.js → sortable-provider-DdiI3Fwk.js} +2 -2
  194. package/dist/{spinner-B2MubVWb.js → spinner-C1QIewWv.js} +133 -159
  195. package/dist/standard-layout-BuSRr3TY.js +40 -0
  196. package/dist/tabs-DzEqMb1W.js +383 -0
  197. package/dist/{icon-badge-B9uvDoyY.js → text-field-BAdY-kpO.js} +20 -34
  198. package/dist/theme-picker.js +3 -3
  199. package/dist/{theme-toggle-BInlu21G.js → theme-toggle-C_VeiiCm.js} +2 -2
  200. package/dist/toggle-FeCCJqbg.js +40 -0
  201. package/dist/{toggle-group-DXXlqid2.js → toggle-group-CVMxEpWi.js} +1 -1
  202. package/dist/{toolbar-items-CRJSx1MU.js → toolbar-items-D310xDuM.js} +333 -554
  203. package/dist/{translate-material-pVlPJ1v4.js → translate-material-BypJJ1l5.js} +1 -1
  204. package/dist/{translator-BoYCward.js → translator-DJkf4J7t.js} +824 -0
  205. package/dist/{typography-B6YMbCge.js → typography-CYEquVeb.js} +1 -1
  206. package/dist/{use-chat-composer-BvWQogJe.js → use-chat-composer-DMXu9E1O.js} +4198 -4600
  207. package/dist/{use-heading-spy-B_Z4ArDh.js → use-heading-spy-DJR8YYm6.js} +19 -19
  208. package/dist/{use-material-translation-CIS2n3RB.js → use-material-translation-CD6QoVal.js} +1 -1
  209. package/dist/{use-return-focus-DNQtADAR.js → use-return-focus-Cevw_6yq.js} +106 -105
  210. package/dist/useLatest-C2PnQEeD.js +8 -0
  211. package/docs/README.md +1 -0
  212. package/docs/components/feedback-and-status.md +10 -1
  213. package/docs/components/form-fields.md +1 -0
  214. package/docs/components/rich-widgets.md +108 -0
  215. package/docs/getting-started.md +1 -0
  216. package/docs/guides/calculator.md +468 -0
  217. package/docs/guides/forms.md +4 -2
  218. package/docs/guides/i18n.md +5 -0
  219. package/docs/previews/rich-widgets-calculator-conversion.webp +0 -0
  220. package/docs/previews/rich-widgets-calculator-point-of-sale.webp +0 -0
  221. package/docs/previews/rich-widgets-calculator.webp +0 -0
  222. package/docs/roadmap.md +9 -3
  223. package/docs/troubleshooting.md +134 -0
  224. package/lib/components/base-content.css +9 -4
  225. package/lib/components/ui/collections/server-table/server-table-phone-row.css +10 -3
  226. package/lib/components/ui/widgets/calculator/calculator-bands.css +146 -0
  227. package/lib/components/ui/widgets/calculator/calculator-display.css +83 -0
  228. package/lib/components/ui/widgets/calculator/calculator-keys.css +118 -0
  229. package/lib/components/ui/widgets/calculator/calculator-pos-ticket.css +185 -0
  230. package/lib/components/ui/widgets/calculator/calculator-pos.css +38 -0
  231. package/lib/components/ui/widgets/calculator/calculator-tape.css +71 -0
  232. package/lib/components/ui/widgets/calculator/calculator.css +97 -0
  233. package/lib/components/ui/widgets/calculator/variants/conversion/conversion.css +98 -0
  234. package/lib/components/ui/widgets/calculator/variants/financial/financial.css +162 -0
  235. package/lib/components/ui/widgets/calculator/variants/programmer/programmer.css +162 -0
  236. package/package.json +17 -3
  237. package/dist/dialog-AGsB3bv4.js +0 -219
  238. package/dist/dist-B7RjY7SL.js +0 -158
  239. package/dist/dist-lmHmz_bu.js +0 -419
@@ -0,0 +1,1881 @@
1
+ import { AngleMode, CalcKey, CalcSession, HistoryEntry } from '@nxgt/material-core/calculator';
2
+ import { PayloadAction } from '@reduxjs/toolkit';
3
+ import { Announcement } from './calculator-announce.js';
4
+ import { EngineSettings, ResultNotation } from './engine.js';
5
+ import { CalculatorVariant } from './types.js';
6
+ import { PosFormat } from './variants/pos/pos-announce.js';
7
+ import { PosAction, PosEnv, PosState } from './variants/pos/pos-types.js';
8
+ import { ProgrammerAction } from './variants/programmer/programmer-reduce.js';
9
+ import { ProgrammerState } from './variants/programmer/programmer-word.js';
10
+ export type CalculatorState = {
11
+ variant: CalculatorVariant;
12
+ /** The engine's session: strings only, so it serialises as is. */
13
+ session: CalcSession;
14
+ /** The tape, newest first. */
15
+ history: HistoryEntry[];
16
+ tapeOpen: boolean;
17
+ /** Scientific chrome: the angle unit, how results are written, the 2nd page of keys. */
18
+ angle: AngleMode;
19
+ notation: ResultNotation;
20
+ second: boolean;
21
+ /** The point-of-sale panel: its ticket and the amount being typed. Never stored. */
22
+ pos: PosState;
23
+ /** The Programmer chrome: the base the keys type in, the word. */
24
+ programmer: ProgrammerState;
25
+ /** What the live region says now; `null` between two announcements. */
26
+ announcement: Announcement | null;
27
+ /** True once storage was read (or does not apply); writes wait for it. */
28
+ restored: boolean;
29
+ };
30
+ export declare const calculatorSlice: import('@reduxjs/toolkit').Slice<CalculatorState, {
31
+ /** One key: the engine moves the session, `=` also writes the tape. */
32
+ press: (state: {
33
+ variant: CalculatorVariant;
34
+ session: {
35
+ expression: string;
36
+ result: string;
37
+ ans: string;
38
+ memory: string;
39
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
40
+ justEvaluated: boolean;
41
+ };
42
+ history: {
43
+ id: string;
44
+ expression: string;
45
+ result: string;
46
+ variant: string;
47
+ }[];
48
+ tapeOpen: boolean;
49
+ angle: AngleMode;
50
+ notation: ResultNotation;
51
+ second: boolean;
52
+ pos: {
53
+ lines: {
54
+ id: string;
55
+ price: string;
56
+ quantity: string;
57
+ rate: string;
58
+ discount?: {
59
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
60
+ value: string;
61
+ } | undefined;
62
+ }[];
63
+ discount?: {
64
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
65
+ value: string;
66
+ } | undefined;
67
+ field: import('./variants/pos/pos-types.js').PosField;
68
+ price: string;
69
+ quantity: string;
70
+ fresh: boolean;
71
+ entry: string;
72
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
73
+ tendered: string;
74
+ rate: string;
75
+ inclusive: boolean | null;
76
+ next: number;
77
+ };
78
+ programmer: {
79
+ base: import('@nxgt/material-core/calculator/programmer').Base;
80
+ size: import('@nxgt/material-core/calculator').WordSize;
81
+ signed: boolean;
82
+ };
83
+ announcement: {
84
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
85
+ fallback: string;
86
+ values?: {
87
+ [x: string]: string | number;
88
+ } | undefined;
89
+ } | null;
90
+ restored: boolean;
91
+ }, a: PayloadAction<{
92
+ key: CalcKey;
93
+ settings: EngineSettings;
94
+ id: string;
95
+ }>) => void;
96
+ setVariant: (state: {
97
+ variant: CalculatorVariant;
98
+ session: {
99
+ expression: string;
100
+ result: string;
101
+ ans: string;
102
+ memory: string;
103
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
104
+ justEvaluated: boolean;
105
+ };
106
+ history: {
107
+ id: string;
108
+ expression: string;
109
+ result: string;
110
+ variant: string;
111
+ }[];
112
+ tapeOpen: boolean;
113
+ angle: AngleMode;
114
+ notation: ResultNotation;
115
+ second: boolean;
116
+ pos: {
117
+ lines: {
118
+ id: string;
119
+ price: string;
120
+ quantity: string;
121
+ rate: string;
122
+ discount?: {
123
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
124
+ value: string;
125
+ } | undefined;
126
+ }[];
127
+ discount?: {
128
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
129
+ value: string;
130
+ } | undefined;
131
+ field: import('./variants/pos/pos-types.js').PosField;
132
+ price: string;
133
+ quantity: string;
134
+ fresh: boolean;
135
+ entry: string;
136
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
137
+ tendered: string;
138
+ rate: string;
139
+ inclusive: boolean | null;
140
+ next: number;
141
+ };
142
+ programmer: {
143
+ base: import('@nxgt/material-core/calculator/programmer').Base;
144
+ size: import('@nxgt/material-core/calculator').WordSize;
145
+ signed: boolean;
146
+ };
147
+ announcement: {
148
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
149
+ fallback: string;
150
+ values?: {
151
+ [x: string]: string | number;
152
+ } | undefined;
153
+ } | null;
154
+ restored: boolean;
155
+ }, a: PayloadAction<CalculatorVariant>) => void;
156
+ /** Puts an old expression back in the display, ready to edit. */
157
+ replay: (state: {
158
+ variant: CalculatorVariant;
159
+ session: {
160
+ expression: string;
161
+ result: string;
162
+ ans: string;
163
+ memory: string;
164
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
165
+ justEvaluated: boolean;
166
+ };
167
+ history: {
168
+ id: string;
169
+ expression: string;
170
+ result: string;
171
+ variant: string;
172
+ }[];
173
+ tapeOpen: boolean;
174
+ angle: AngleMode;
175
+ notation: ResultNotation;
176
+ second: boolean;
177
+ pos: {
178
+ lines: {
179
+ id: string;
180
+ price: string;
181
+ quantity: string;
182
+ rate: string;
183
+ discount?: {
184
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
185
+ value: string;
186
+ } | undefined;
187
+ }[];
188
+ discount?: {
189
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
190
+ value: string;
191
+ } | undefined;
192
+ field: import('./variants/pos/pos-types.js').PosField;
193
+ price: string;
194
+ quantity: string;
195
+ fresh: boolean;
196
+ entry: string;
197
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
198
+ tendered: string;
199
+ rate: string;
200
+ inclusive: boolean | null;
201
+ next: number;
202
+ };
203
+ programmer: {
204
+ base: import('@nxgt/material-core/calculator/programmer').Base;
205
+ size: import('@nxgt/material-core/calculator').WordSize;
206
+ signed: boolean;
207
+ };
208
+ announcement: {
209
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
210
+ fallback: string;
211
+ values?: {
212
+ [x: string]: string | number;
213
+ } | undefined;
214
+ } | null;
215
+ restored: boolean;
216
+ }, a: PayloadAction<HistoryEntry>) => void;
217
+ /** Types an old result as `ans` into the current expression. */
218
+ reuse: (state: {
219
+ variant: CalculatorVariant;
220
+ session: {
221
+ expression: string;
222
+ result: string;
223
+ ans: string;
224
+ memory: string;
225
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
226
+ justEvaluated: boolean;
227
+ };
228
+ history: {
229
+ id: string;
230
+ expression: string;
231
+ result: string;
232
+ variant: string;
233
+ }[];
234
+ tapeOpen: boolean;
235
+ angle: AngleMode;
236
+ notation: ResultNotation;
237
+ second: boolean;
238
+ pos: {
239
+ lines: {
240
+ id: string;
241
+ price: string;
242
+ quantity: string;
243
+ rate: string;
244
+ discount?: {
245
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
246
+ value: string;
247
+ } | undefined;
248
+ }[];
249
+ discount?: {
250
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
251
+ value: string;
252
+ } | undefined;
253
+ field: import('./variants/pos/pos-types.js').PosField;
254
+ price: string;
255
+ quantity: string;
256
+ fresh: boolean;
257
+ entry: string;
258
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
259
+ tendered: string;
260
+ rate: string;
261
+ inclusive: boolean | null;
262
+ next: number;
263
+ };
264
+ programmer: {
265
+ base: import('@nxgt/material-core/calculator/programmer').Base;
266
+ size: import('@nxgt/material-core/calculator').WordSize;
267
+ signed: boolean;
268
+ };
269
+ announcement: {
270
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
271
+ fallback: string;
272
+ values?: {
273
+ [x: string]: string | number;
274
+ } | undefined;
275
+ } | null;
276
+ restored: boolean;
277
+ }, a: PayloadAction<{
278
+ entry: HistoryEntry;
279
+ settings: EngineSettings;
280
+ }>) => void;
281
+ /** A pasted expression replaces the current one; `=` calculates it. */
282
+ paste: (state: {
283
+ variant: CalculatorVariant;
284
+ session: {
285
+ expression: string;
286
+ result: string;
287
+ ans: string;
288
+ memory: string;
289
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
290
+ justEvaluated: boolean;
291
+ };
292
+ history: {
293
+ id: string;
294
+ expression: string;
295
+ result: string;
296
+ variant: string;
297
+ }[];
298
+ tapeOpen: boolean;
299
+ angle: AngleMode;
300
+ notation: ResultNotation;
301
+ second: boolean;
302
+ pos: {
303
+ lines: {
304
+ id: string;
305
+ price: string;
306
+ quantity: string;
307
+ rate: string;
308
+ discount?: {
309
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
310
+ value: string;
311
+ } | undefined;
312
+ }[];
313
+ discount?: {
314
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
315
+ value: string;
316
+ } | undefined;
317
+ field: import('./variants/pos/pos-types.js').PosField;
318
+ price: string;
319
+ quantity: string;
320
+ fresh: boolean;
321
+ entry: string;
322
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
323
+ tendered: string;
324
+ rate: string;
325
+ inclusive: boolean | null;
326
+ next: number;
327
+ };
328
+ programmer: {
329
+ base: import('@nxgt/material-core/calculator/programmer').Base;
330
+ size: import('@nxgt/material-core/calculator').WordSize;
331
+ signed: boolean;
332
+ };
333
+ announcement: {
334
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
335
+ fallback: string;
336
+ values?: {
337
+ [x: string]: string | number;
338
+ } | undefined;
339
+ } | null;
340
+ restored: boolean;
341
+ }, a: PayloadAction<{
342
+ text: string;
343
+ locale?: string;
344
+ }>) => void;
345
+ setAngle: (state: {
346
+ variant: CalculatorVariant;
347
+ session: {
348
+ expression: string;
349
+ result: string;
350
+ ans: string;
351
+ memory: string;
352
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
353
+ justEvaluated: boolean;
354
+ };
355
+ history: {
356
+ id: string;
357
+ expression: string;
358
+ result: string;
359
+ variant: string;
360
+ }[];
361
+ tapeOpen: boolean;
362
+ angle: AngleMode;
363
+ notation: ResultNotation;
364
+ second: boolean;
365
+ pos: {
366
+ lines: {
367
+ id: string;
368
+ price: string;
369
+ quantity: string;
370
+ rate: string;
371
+ discount?: {
372
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
373
+ value: string;
374
+ } | undefined;
375
+ }[];
376
+ discount?: {
377
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
378
+ value: string;
379
+ } | undefined;
380
+ field: import('./variants/pos/pos-types.js').PosField;
381
+ price: string;
382
+ quantity: string;
383
+ fresh: boolean;
384
+ entry: string;
385
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
386
+ tendered: string;
387
+ rate: string;
388
+ inclusive: boolean | null;
389
+ next: number;
390
+ };
391
+ programmer: {
392
+ base: import('@nxgt/material-core/calculator/programmer').Base;
393
+ size: import('@nxgt/material-core/calculator').WordSize;
394
+ signed: boolean;
395
+ };
396
+ announcement: {
397
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
398
+ fallback: string;
399
+ values?: {
400
+ [x: string]: string | number;
401
+ } | undefined;
402
+ } | null;
403
+ restored: boolean;
404
+ }, a: PayloadAction<AngleMode>) => void;
405
+ setNotation: (state: {
406
+ variant: CalculatorVariant;
407
+ session: {
408
+ expression: string;
409
+ result: string;
410
+ ans: string;
411
+ memory: string;
412
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
413
+ justEvaluated: boolean;
414
+ };
415
+ history: {
416
+ id: string;
417
+ expression: string;
418
+ result: string;
419
+ variant: string;
420
+ }[];
421
+ tapeOpen: boolean;
422
+ angle: AngleMode;
423
+ notation: ResultNotation;
424
+ second: boolean;
425
+ pos: {
426
+ lines: {
427
+ id: string;
428
+ price: string;
429
+ quantity: string;
430
+ rate: string;
431
+ discount?: {
432
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
433
+ value: string;
434
+ } | undefined;
435
+ }[];
436
+ discount?: {
437
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
438
+ value: string;
439
+ } | undefined;
440
+ field: import('./variants/pos/pos-types.js').PosField;
441
+ price: string;
442
+ quantity: string;
443
+ fresh: boolean;
444
+ entry: string;
445
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
446
+ tendered: string;
447
+ rate: string;
448
+ inclusive: boolean | null;
449
+ next: number;
450
+ };
451
+ programmer: {
452
+ base: import('@nxgt/material-core/calculator/programmer').Base;
453
+ size: import('@nxgt/material-core/calculator').WordSize;
454
+ signed: boolean;
455
+ };
456
+ announcement: {
457
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
458
+ fallback: string;
459
+ values?: {
460
+ [x: string]: string | number;
461
+ } | undefined;
462
+ } | null;
463
+ restored: boolean;
464
+ }, a: PayloadAction<ResultNotation>) => void;
465
+ toggleSecond: (state: {
466
+ variant: CalculatorVariant;
467
+ session: {
468
+ expression: string;
469
+ result: string;
470
+ ans: string;
471
+ memory: string;
472
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
473
+ justEvaluated: boolean;
474
+ };
475
+ history: {
476
+ id: string;
477
+ expression: string;
478
+ result: string;
479
+ variant: string;
480
+ }[];
481
+ tapeOpen: boolean;
482
+ angle: AngleMode;
483
+ notation: ResultNotation;
484
+ second: boolean;
485
+ pos: {
486
+ lines: {
487
+ id: string;
488
+ price: string;
489
+ quantity: string;
490
+ rate: string;
491
+ discount?: {
492
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
493
+ value: string;
494
+ } | undefined;
495
+ }[];
496
+ discount?: {
497
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
498
+ value: string;
499
+ } | undefined;
500
+ field: import('./variants/pos/pos-types.js').PosField;
501
+ price: string;
502
+ quantity: string;
503
+ fresh: boolean;
504
+ entry: string;
505
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
506
+ tendered: string;
507
+ rate: string;
508
+ inclusive: boolean | null;
509
+ next: number;
510
+ };
511
+ programmer: {
512
+ base: import('@nxgt/material-core/calculator/programmer').Base;
513
+ size: import('@nxgt/material-core/calculator').WordSize;
514
+ signed: boolean;
515
+ };
516
+ announcement: {
517
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
518
+ fallback: string;
519
+ values?: {
520
+ [x: string]: string | number;
521
+ } | undefined;
522
+ } | null;
523
+ restored: boolean;
524
+ }, a: PayloadAction<boolean | undefined>) => void;
525
+ /** One point-of-sale action: it moves the ticket and may announce the total. */
526
+ pos: (state: {
527
+ variant: CalculatorVariant;
528
+ session: {
529
+ expression: string;
530
+ result: string;
531
+ ans: string;
532
+ memory: string;
533
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
534
+ justEvaluated: boolean;
535
+ };
536
+ history: {
537
+ id: string;
538
+ expression: string;
539
+ result: string;
540
+ variant: string;
541
+ }[];
542
+ tapeOpen: boolean;
543
+ angle: AngleMode;
544
+ notation: ResultNotation;
545
+ second: boolean;
546
+ pos: {
547
+ lines: {
548
+ id: string;
549
+ price: string;
550
+ quantity: string;
551
+ rate: string;
552
+ discount?: {
553
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
554
+ value: string;
555
+ } | undefined;
556
+ }[];
557
+ discount?: {
558
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
559
+ value: string;
560
+ } | undefined;
561
+ field: import('./variants/pos/pos-types.js').PosField;
562
+ price: string;
563
+ quantity: string;
564
+ fresh: boolean;
565
+ entry: string;
566
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
567
+ tendered: string;
568
+ rate: string;
569
+ inclusive: boolean | null;
570
+ next: number;
571
+ };
572
+ programmer: {
573
+ base: import('@nxgt/material-core/calculator/programmer').Base;
574
+ size: import('@nxgt/material-core/calculator').WordSize;
575
+ signed: boolean;
576
+ };
577
+ announcement: {
578
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
579
+ fallback: string;
580
+ values?: {
581
+ [x: string]: string | number;
582
+ } | undefined;
583
+ } | null;
584
+ restored: boolean;
585
+ }, a: PayloadAction<{
586
+ action: PosAction;
587
+ env: PosEnv;
588
+ format: PosFormat;
589
+ }>) => void;
590
+ /** One Programmer action (base, word, sign, bit); its step has the state's keys. */
591
+ programmer: (state: {
592
+ variant: CalculatorVariant;
593
+ session: {
594
+ expression: string;
595
+ result: string;
596
+ ans: string;
597
+ memory: string;
598
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
599
+ justEvaluated: boolean;
600
+ };
601
+ history: {
602
+ id: string;
603
+ expression: string;
604
+ result: string;
605
+ variant: string;
606
+ }[];
607
+ tapeOpen: boolean;
608
+ angle: AngleMode;
609
+ notation: ResultNotation;
610
+ second: boolean;
611
+ pos: {
612
+ lines: {
613
+ id: string;
614
+ price: string;
615
+ quantity: string;
616
+ rate: string;
617
+ discount?: {
618
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
619
+ value: string;
620
+ } | undefined;
621
+ }[];
622
+ discount?: {
623
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
624
+ value: string;
625
+ } | undefined;
626
+ field: import('./variants/pos/pos-types.js').PosField;
627
+ price: string;
628
+ quantity: string;
629
+ fresh: boolean;
630
+ entry: string;
631
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
632
+ tendered: string;
633
+ rate: string;
634
+ inclusive: boolean | null;
635
+ next: number;
636
+ };
637
+ programmer: {
638
+ base: import('@nxgt/material-core/calculator/programmer').Base;
639
+ size: import('@nxgt/material-core/calculator').WordSize;
640
+ signed: boolean;
641
+ };
642
+ announcement: {
643
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
644
+ fallback: string;
645
+ values?: {
646
+ [x: string]: string | number;
647
+ } | undefined;
648
+ } | null;
649
+ restored: boolean;
650
+ }, a: PayloadAction<ProgrammerAction>) => void;
651
+ announce: (state: {
652
+ variant: CalculatorVariant;
653
+ session: {
654
+ expression: string;
655
+ result: string;
656
+ ans: string;
657
+ memory: string;
658
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
659
+ justEvaluated: boolean;
660
+ };
661
+ history: {
662
+ id: string;
663
+ expression: string;
664
+ result: string;
665
+ variant: string;
666
+ }[];
667
+ tapeOpen: boolean;
668
+ angle: AngleMode;
669
+ notation: ResultNotation;
670
+ second: boolean;
671
+ pos: {
672
+ lines: {
673
+ id: string;
674
+ price: string;
675
+ quantity: string;
676
+ rate: string;
677
+ discount?: {
678
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
679
+ value: string;
680
+ } | undefined;
681
+ }[];
682
+ discount?: {
683
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
684
+ value: string;
685
+ } | undefined;
686
+ field: import('./variants/pos/pos-types.js').PosField;
687
+ price: string;
688
+ quantity: string;
689
+ fresh: boolean;
690
+ entry: string;
691
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
692
+ tendered: string;
693
+ rate: string;
694
+ inclusive: boolean | null;
695
+ next: number;
696
+ };
697
+ programmer: {
698
+ base: import('@nxgt/material-core/calculator/programmer').Base;
699
+ size: import('@nxgt/material-core/calculator').WordSize;
700
+ signed: boolean;
701
+ };
702
+ announcement: {
703
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
704
+ fallback: string;
705
+ values?: {
706
+ [x: string]: string | number;
707
+ } | undefined;
708
+ } | null;
709
+ restored: boolean;
710
+ }, a: PayloadAction<Announcement | null>) => void;
711
+ toggleTape: (state: {
712
+ variant: CalculatorVariant;
713
+ session: {
714
+ expression: string;
715
+ result: string;
716
+ ans: string;
717
+ memory: string;
718
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
719
+ justEvaluated: boolean;
720
+ };
721
+ history: {
722
+ id: string;
723
+ expression: string;
724
+ result: string;
725
+ variant: string;
726
+ }[];
727
+ tapeOpen: boolean;
728
+ angle: AngleMode;
729
+ notation: ResultNotation;
730
+ second: boolean;
731
+ pos: {
732
+ lines: {
733
+ id: string;
734
+ price: string;
735
+ quantity: string;
736
+ rate: string;
737
+ discount?: {
738
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
739
+ value: string;
740
+ } | undefined;
741
+ }[];
742
+ discount?: {
743
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
744
+ value: string;
745
+ } | undefined;
746
+ field: import('./variants/pos/pos-types.js').PosField;
747
+ price: string;
748
+ quantity: string;
749
+ fresh: boolean;
750
+ entry: string;
751
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
752
+ tendered: string;
753
+ rate: string;
754
+ inclusive: boolean | null;
755
+ next: number;
756
+ };
757
+ programmer: {
758
+ base: import('@nxgt/material-core/calculator/programmer').Base;
759
+ size: import('@nxgt/material-core/calculator').WordSize;
760
+ signed: boolean;
761
+ };
762
+ announcement: {
763
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
764
+ fallback: string;
765
+ values?: {
766
+ [x: string]: string | number;
767
+ } | undefined;
768
+ } | null;
769
+ restored: boolean;
770
+ }, a: PayloadAction<boolean | undefined>) => void;
771
+ clearTape: (state: {
772
+ variant: CalculatorVariant;
773
+ session: {
774
+ expression: string;
775
+ result: string;
776
+ ans: string;
777
+ memory: string;
778
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
779
+ justEvaluated: boolean;
780
+ };
781
+ history: {
782
+ id: string;
783
+ expression: string;
784
+ result: string;
785
+ variant: string;
786
+ }[];
787
+ tapeOpen: boolean;
788
+ angle: AngleMode;
789
+ notation: ResultNotation;
790
+ second: boolean;
791
+ pos: {
792
+ lines: {
793
+ id: string;
794
+ price: string;
795
+ quantity: string;
796
+ rate: string;
797
+ discount?: {
798
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
799
+ value: string;
800
+ } | undefined;
801
+ }[];
802
+ discount?: {
803
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
804
+ value: string;
805
+ } | undefined;
806
+ field: import('./variants/pos/pos-types.js').PosField;
807
+ price: string;
808
+ quantity: string;
809
+ fresh: boolean;
810
+ entry: string;
811
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
812
+ tendered: string;
813
+ rate: string;
814
+ inclusive: boolean | null;
815
+ next: number;
816
+ };
817
+ programmer: {
818
+ base: import('@nxgt/material-core/calculator/programmer').Base;
819
+ size: import('@nxgt/material-core/calculator').WordSize;
820
+ signed: boolean;
821
+ };
822
+ announcement: {
823
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
824
+ fallback: string;
825
+ values?: {
826
+ [x: string]: string | number;
827
+ } | undefined;
828
+ } | null;
829
+ restored: boolean;
830
+ }) => void;
831
+ /** What storage held, read after mount; entries made meanwhile stay. */
832
+ restore: (state: {
833
+ variant: CalculatorVariant;
834
+ session: {
835
+ expression: string;
836
+ result: string;
837
+ ans: string;
838
+ memory: string;
839
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
840
+ justEvaluated: boolean;
841
+ };
842
+ history: {
843
+ id: string;
844
+ expression: string;
845
+ result: string;
846
+ variant: string;
847
+ }[];
848
+ tapeOpen: boolean;
849
+ angle: AngleMode;
850
+ notation: ResultNotation;
851
+ second: boolean;
852
+ pos: {
853
+ lines: {
854
+ id: string;
855
+ price: string;
856
+ quantity: string;
857
+ rate: string;
858
+ discount?: {
859
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
860
+ value: string;
861
+ } | undefined;
862
+ }[];
863
+ discount?: {
864
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
865
+ value: string;
866
+ } | undefined;
867
+ field: import('./variants/pos/pos-types.js').PosField;
868
+ price: string;
869
+ quantity: string;
870
+ fresh: boolean;
871
+ entry: string;
872
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
873
+ tendered: string;
874
+ rate: string;
875
+ inclusive: boolean | null;
876
+ next: number;
877
+ };
878
+ programmer: {
879
+ base: import('@nxgt/material-core/calculator/programmer').Base;
880
+ size: import('@nxgt/material-core/calculator').WordSize;
881
+ signed: boolean;
882
+ };
883
+ announcement: {
884
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
885
+ fallback: string;
886
+ values?: {
887
+ [x: string]: string | number;
888
+ } | undefined;
889
+ } | null;
890
+ restored: boolean;
891
+ }, a: PayloadAction<{
892
+ history: HistoryEntry[];
893
+ memory: string;
894
+ }>) => void;
895
+ markRestored: (state: {
896
+ variant: CalculatorVariant;
897
+ session: {
898
+ expression: string;
899
+ result: string;
900
+ ans: string;
901
+ memory: string;
902
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
903
+ justEvaluated: boolean;
904
+ };
905
+ history: {
906
+ id: string;
907
+ expression: string;
908
+ result: string;
909
+ variant: string;
910
+ }[];
911
+ tapeOpen: boolean;
912
+ angle: AngleMode;
913
+ notation: ResultNotation;
914
+ second: boolean;
915
+ pos: {
916
+ lines: {
917
+ id: string;
918
+ price: string;
919
+ quantity: string;
920
+ rate: string;
921
+ discount?: {
922
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
923
+ value: string;
924
+ } | undefined;
925
+ }[];
926
+ discount?: {
927
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
928
+ value: string;
929
+ } | undefined;
930
+ field: import('./variants/pos/pos-types.js').PosField;
931
+ price: string;
932
+ quantity: string;
933
+ fresh: boolean;
934
+ entry: string;
935
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
936
+ tendered: string;
937
+ rate: string;
938
+ inclusive: boolean | null;
939
+ next: number;
940
+ };
941
+ programmer: {
942
+ base: import('@nxgt/material-core/calculator/programmer').Base;
943
+ size: import('@nxgt/material-core/calculator').WordSize;
944
+ signed: boolean;
945
+ };
946
+ announcement: {
947
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
948
+ fallback: string;
949
+ values?: {
950
+ [x: string]: string | number;
951
+ } | undefined;
952
+ } | null;
953
+ restored: boolean;
954
+ }) => void;
955
+ }, "calculator", "calculator", import('@reduxjs/toolkit').SliceSelectors<CalculatorState>>;
956
+ export declare const calculatorActions: import('@reduxjs/toolkit').CaseReducerActions<{
957
+ /** One key: the engine moves the session, `=` also writes the tape. */
958
+ press: (state: {
959
+ variant: CalculatorVariant;
960
+ session: {
961
+ expression: string;
962
+ result: string;
963
+ ans: string;
964
+ memory: string;
965
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
966
+ justEvaluated: boolean;
967
+ };
968
+ history: {
969
+ id: string;
970
+ expression: string;
971
+ result: string;
972
+ variant: string;
973
+ }[];
974
+ tapeOpen: boolean;
975
+ angle: AngleMode;
976
+ notation: ResultNotation;
977
+ second: boolean;
978
+ pos: {
979
+ lines: {
980
+ id: string;
981
+ price: string;
982
+ quantity: string;
983
+ rate: string;
984
+ discount?: {
985
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
986
+ value: string;
987
+ } | undefined;
988
+ }[];
989
+ discount?: {
990
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
991
+ value: string;
992
+ } | undefined;
993
+ field: import('./variants/pos/pos-types.js').PosField;
994
+ price: string;
995
+ quantity: string;
996
+ fresh: boolean;
997
+ entry: string;
998
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
999
+ tendered: string;
1000
+ rate: string;
1001
+ inclusive: boolean | null;
1002
+ next: number;
1003
+ };
1004
+ programmer: {
1005
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1006
+ size: import('@nxgt/material-core/calculator').WordSize;
1007
+ signed: boolean;
1008
+ };
1009
+ announcement: {
1010
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1011
+ fallback: string;
1012
+ values?: {
1013
+ [x: string]: string | number;
1014
+ } | undefined;
1015
+ } | null;
1016
+ restored: boolean;
1017
+ }, a: PayloadAction<{
1018
+ key: CalcKey;
1019
+ settings: EngineSettings;
1020
+ id: string;
1021
+ }>) => void;
1022
+ setVariant: (state: {
1023
+ variant: CalculatorVariant;
1024
+ session: {
1025
+ expression: string;
1026
+ result: string;
1027
+ ans: string;
1028
+ memory: string;
1029
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1030
+ justEvaluated: boolean;
1031
+ };
1032
+ history: {
1033
+ id: string;
1034
+ expression: string;
1035
+ result: string;
1036
+ variant: string;
1037
+ }[];
1038
+ tapeOpen: boolean;
1039
+ angle: AngleMode;
1040
+ notation: ResultNotation;
1041
+ second: boolean;
1042
+ pos: {
1043
+ lines: {
1044
+ id: string;
1045
+ price: string;
1046
+ quantity: string;
1047
+ rate: string;
1048
+ discount?: {
1049
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1050
+ value: string;
1051
+ } | undefined;
1052
+ }[];
1053
+ discount?: {
1054
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1055
+ value: string;
1056
+ } | undefined;
1057
+ field: import('./variants/pos/pos-types.js').PosField;
1058
+ price: string;
1059
+ quantity: string;
1060
+ fresh: boolean;
1061
+ entry: string;
1062
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1063
+ tendered: string;
1064
+ rate: string;
1065
+ inclusive: boolean | null;
1066
+ next: number;
1067
+ };
1068
+ programmer: {
1069
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1070
+ size: import('@nxgt/material-core/calculator').WordSize;
1071
+ signed: boolean;
1072
+ };
1073
+ announcement: {
1074
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1075
+ fallback: string;
1076
+ values?: {
1077
+ [x: string]: string | number;
1078
+ } | undefined;
1079
+ } | null;
1080
+ restored: boolean;
1081
+ }, a: PayloadAction<CalculatorVariant>) => void;
1082
+ /** Puts an old expression back in the display, ready to edit. */
1083
+ replay: (state: {
1084
+ variant: CalculatorVariant;
1085
+ session: {
1086
+ expression: string;
1087
+ result: string;
1088
+ ans: string;
1089
+ memory: string;
1090
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1091
+ justEvaluated: boolean;
1092
+ };
1093
+ history: {
1094
+ id: string;
1095
+ expression: string;
1096
+ result: string;
1097
+ variant: string;
1098
+ }[];
1099
+ tapeOpen: boolean;
1100
+ angle: AngleMode;
1101
+ notation: ResultNotation;
1102
+ second: boolean;
1103
+ pos: {
1104
+ lines: {
1105
+ id: string;
1106
+ price: string;
1107
+ quantity: string;
1108
+ rate: string;
1109
+ discount?: {
1110
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1111
+ value: string;
1112
+ } | undefined;
1113
+ }[];
1114
+ discount?: {
1115
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1116
+ value: string;
1117
+ } | undefined;
1118
+ field: import('./variants/pos/pos-types.js').PosField;
1119
+ price: string;
1120
+ quantity: string;
1121
+ fresh: boolean;
1122
+ entry: string;
1123
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1124
+ tendered: string;
1125
+ rate: string;
1126
+ inclusive: boolean | null;
1127
+ next: number;
1128
+ };
1129
+ programmer: {
1130
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1131
+ size: import('@nxgt/material-core/calculator').WordSize;
1132
+ signed: boolean;
1133
+ };
1134
+ announcement: {
1135
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1136
+ fallback: string;
1137
+ values?: {
1138
+ [x: string]: string | number;
1139
+ } | undefined;
1140
+ } | null;
1141
+ restored: boolean;
1142
+ }, a: PayloadAction<HistoryEntry>) => void;
1143
+ /** Types an old result as `ans` into the current expression. */
1144
+ reuse: (state: {
1145
+ variant: CalculatorVariant;
1146
+ session: {
1147
+ expression: string;
1148
+ result: string;
1149
+ ans: string;
1150
+ memory: string;
1151
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1152
+ justEvaluated: boolean;
1153
+ };
1154
+ history: {
1155
+ id: string;
1156
+ expression: string;
1157
+ result: string;
1158
+ variant: string;
1159
+ }[];
1160
+ tapeOpen: boolean;
1161
+ angle: AngleMode;
1162
+ notation: ResultNotation;
1163
+ second: boolean;
1164
+ pos: {
1165
+ lines: {
1166
+ id: string;
1167
+ price: string;
1168
+ quantity: string;
1169
+ rate: string;
1170
+ discount?: {
1171
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1172
+ value: string;
1173
+ } | undefined;
1174
+ }[];
1175
+ discount?: {
1176
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1177
+ value: string;
1178
+ } | undefined;
1179
+ field: import('./variants/pos/pos-types.js').PosField;
1180
+ price: string;
1181
+ quantity: string;
1182
+ fresh: boolean;
1183
+ entry: string;
1184
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1185
+ tendered: string;
1186
+ rate: string;
1187
+ inclusive: boolean | null;
1188
+ next: number;
1189
+ };
1190
+ programmer: {
1191
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1192
+ size: import('@nxgt/material-core/calculator').WordSize;
1193
+ signed: boolean;
1194
+ };
1195
+ announcement: {
1196
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1197
+ fallback: string;
1198
+ values?: {
1199
+ [x: string]: string | number;
1200
+ } | undefined;
1201
+ } | null;
1202
+ restored: boolean;
1203
+ }, a: PayloadAction<{
1204
+ entry: HistoryEntry;
1205
+ settings: EngineSettings;
1206
+ }>) => void;
1207
+ /** A pasted expression replaces the current one; `=` calculates it. */
1208
+ paste: (state: {
1209
+ variant: CalculatorVariant;
1210
+ session: {
1211
+ expression: string;
1212
+ result: string;
1213
+ ans: string;
1214
+ memory: string;
1215
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1216
+ justEvaluated: boolean;
1217
+ };
1218
+ history: {
1219
+ id: string;
1220
+ expression: string;
1221
+ result: string;
1222
+ variant: string;
1223
+ }[];
1224
+ tapeOpen: boolean;
1225
+ angle: AngleMode;
1226
+ notation: ResultNotation;
1227
+ second: boolean;
1228
+ pos: {
1229
+ lines: {
1230
+ id: string;
1231
+ price: string;
1232
+ quantity: string;
1233
+ rate: string;
1234
+ discount?: {
1235
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1236
+ value: string;
1237
+ } | undefined;
1238
+ }[];
1239
+ discount?: {
1240
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1241
+ value: string;
1242
+ } | undefined;
1243
+ field: import('./variants/pos/pos-types.js').PosField;
1244
+ price: string;
1245
+ quantity: string;
1246
+ fresh: boolean;
1247
+ entry: string;
1248
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1249
+ tendered: string;
1250
+ rate: string;
1251
+ inclusive: boolean | null;
1252
+ next: number;
1253
+ };
1254
+ programmer: {
1255
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1256
+ size: import('@nxgt/material-core/calculator').WordSize;
1257
+ signed: boolean;
1258
+ };
1259
+ announcement: {
1260
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1261
+ fallback: string;
1262
+ values?: {
1263
+ [x: string]: string | number;
1264
+ } | undefined;
1265
+ } | null;
1266
+ restored: boolean;
1267
+ }, a: PayloadAction<{
1268
+ text: string;
1269
+ locale?: string;
1270
+ }>) => void;
1271
+ setAngle: (state: {
1272
+ variant: CalculatorVariant;
1273
+ session: {
1274
+ expression: string;
1275
+ result: string;
1276
+ ans: string;
1277
+ memory: string;
1278
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1279
+ justEvaluated: boolean;
1280
+ };
1281
+ history: {
1282
+ id: string;
1283
+ expression: string;
1284
+ result: string;
1285
+ variant: string;
1286
+ }[];
1287
+ tapeOpen: boolean;
1288
+ angle: AngleMode;
1289
+ notation: ResultNotation;
1290
+ second: boolean;
1291
+ pos: {
1292
+ lines: {
1293
+ id: string;
1294
+ price: string;
1295
+ quantity: string;
1296
+ rate: string;
1297
+ discount?: {
1298
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1299
+ value: string;
1300
+ } | undefined;
1301
+ }[];
1302
+ discount?: {
1303
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1304
+ value: string;
1305
+ } | undefined;
1306
+ field: import('./variants/pos/pos-types.js').PosField;
1307
+ price: string;
1308
+ quantity: string;
1309
+ fresh: boolean;
1310
+ entry: string;
1311
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1312
+ tendered: string;
1313
+ rate: string;
1314
+ inclusive: boolean | null;
1315
+ next: number;
1316
+ };
1317
+ programmer: {
1318
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1319
+ size: import('@nxgt/material-core/calculator').WordSize;
1320
+ signed: boolean;
1321
+ };
1322
+ announcement: {
1323
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1324
+ fallback: string;
1325
+ values?: {
1326
+ [x: string]: string | number;
1327
+ } | undefined;
1328
+ } | null;
1329
+ restored: boolean;
1330
+ }, a: PayloadAction<AngleMode>) => void;
1331
+ setNotation: (state: {
1332
+ variant: CalculatorVariant;
1333
+ session: {
1334
+ expression: string;
1335
+ result: string;
1336
+ ans: string;
1337
+ memory: string;
1338
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1339
+ justEvaluated: boolean;
1340
+ };
1341
+ history: {
1342
+ id: string;
1343
+ expression: string;
1344
+ result: string;
1345
+ variant: string;
1346
+ }[];
1347
+ tapeOpen: boolean;
1348
+ angle: AngleMode;
1349
+ notation: ResultNotation;
1350
+ second: boolean;
1351
+ pos: {
1352
+ lines: {
1353
+ id: string;
1354
+ price: string;
1355
+ quantity: string;
1356
+ rate: string;
1357
+ discount?: {
1358
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1359
+ value: string;
1360
+ } | undefined;
1361
+ }[];
1362
+ discount?: {
1363
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1364
+ value: string;
1365
+ } | undefined;
1366
+ field: import('./variants/pos/pos-types.js').PosField;
1367
+ price: string;
1368
+ quantity: string;
1369
+ fresh: boolean;
1370
+ entry: string;
1371
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1372
+ tendered: string;
1373
+ rate: string;
1374
+ inclusive: boolean | null;
1375
+ next: number;
1376
+ };
1377
+ programmer: {
1378
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1379
+ size: import('@nxgt/material-core/calculator').WordSize;
1380
+ signed: boolean;
1381
+ };
1382
+ announcement: {
1383
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1384
+ fallback: string;
1385
+ values?: {
1386
+ [x: string]: string | number;
1387
+ } | undefined;
1388
+ } | null;
1389
+ restored: boolean;
1390
+ }, a: PayloadAction<ResultNotation>) => void;
1391
+ toggleSecond: (state: {
1392
+ variant: CalculatorVariant;
1393
+ session: {
1394
+ expression: string;
1395
+ result: string;
1396
+ ans: string;
1397
+ memory: string;
1398
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1399
+ justEvaluated: boolean;
1400
+ };
1401
+ history: {
1402
+ id: string;
1403
+ expression: string;
1404
+ result: string;
1405
+ variant: string;
1406
+ }[];
1407
+ tapeOpen: boolean;
1408
+ angle: AngleMode;
1409
+ notation: ResultNotation;
1410
+ second: boolean;
1411
+ pos: {
1412
+ lines: {
1413
+ id: string;
1414
+ price: string;
1415
+ quantity: string;
1416
+ rate: string;
1417
+ discount?: {
1418
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1419
+ value: string;
1420
+ } | undefined;
1421
+ }[];
1422
+ discount?: {
1423
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1424
+ value: string;
1425
+ } | undefined;
1426
+ field: import('./variants/pos/pos-types.js').PosField;
1427
+ price: string;
1428
+ quantity: string;
1429
+ fresh: boolean;
1430
+ entry: string;
1431
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1432
+ tendered: string;
1433
+ rate: string;
1434
+ inclusive: boolean | null;
1435
+ next: number;
1436
+ };
1437
+ programmer: {
1438
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1439
+ size: import('@nxgt/material-core/calculator').WordSize;
1440
+ signed: boolean;
1441
+ };
1442
+ announcement: {
1443
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1444
+ fallback: string;
1445
+ values?: {
1446
+ [x: string]: string | number;
1447
+ } | undefined;
1448
+ } | null;
1449
+ restored: boolean;
1450
+ }, a: PayloadAction<boolean | undefined>) => void;
1451
+ /** One point-of-sale action: it moves the ticket and may announce the total. */
1452
+ pos: (state: {
1453
+ variant: CalculatorVariant;
1454
+ session: {
1455
+ expression: string;
1456
+ result: string;
1457
+ ans: string;
1458
+ memory: string;
1459
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1460
+ justEvaluated: boolean;
1461
+ };
1462
+ history: {
1463
+ id: string;
1464
+ expression: string;
1465
+ result: string;
1466
+ variant: string;
1467
+ }[];
1468
+ tapeOpen: boolean;
1469
+ angle: AngleMode;
1470
+ notation: ResultNotation;
1471
+ second: boolean;
1472
+ pos: {
1473
+ lines: {
1474
+ id: string;
1475
+ price: string;
1476
+ quantity: string;
1477
+ rate: string;
1478
+ discount?: {
1479
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1480
+ value: string;
1481
+ } | undefined;
1482
+ }[];
1483
+ discount?: {
1484
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1485
+ value: string;
1486
+ } | undefined;
1487
+ field: import('./variants/pos/pos-types.js').PosField;
1488
+ price: string;
1489
+ quantity: string;
1490
+ fresh: boolean;
1491
+ entry: string;
1492
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1493
+ tendered: string;
1494
+ rate: string;
1495
+ inclusive: boolean | null;
1496
+ next: number;
1497
+ };
1498
+ programmer: {
1499
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1500
+ size: import('@nxgt/material-core/calculator').WordSize;
1501
+ signed: boolean;
1502
+ };
1503
+ announcement: {
1504
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1505
+ fallback: string;
1506
+ values?: {
1507
+ [x: string]: string | number;
1508
+ } | undefined;
1509
+ } | null;
1510
+ restored: boolean;
1511
+ }, a: PayloadAction<{
1512
+ action: PosAction;
1513
+ env: PosEnv;
1514
+ format: PosFormat;
1515
+ }>) => void;
1516
+ /** One Programmer action (base, word, sign, bit); its step has the state's keys. */
1517
+ programmer: (state: {
1518
+ variant: CalculatorVariant;
1519
+ session: {
1520
+ expression: string;
1521
+ result: string;
1522
+ ans: string;
1523
+ memory: string;
1524
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1525
+ justEvaluated: boolean;
1526
+ };
1527
+ history: {
1528
+ id: string;
1529
+ expression: string;
1530
+ result: string;
1531
+ variant: string;
1532
+ }[];
1533
+ tapeOpen: boolean;
1534
+ angle: AngleMode;
1535
+ notation: ResultNotation;
1536
+ second: boolean;
1537
+ pos: {
1538
+ lines: {
1539
+ id: string;
1540
+ price: string;
1541
+ quantity: string;
1542
+ rate: string;
1543
+ discount?: {
1544
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1545
+ value: string;
1546
+ } | undefined;
1547
+ }[];
1548
+ discount?: {
1549
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1550
+ value: string;
1551
+ } | undefined;
1552
+ field: import('./variants/pos/pos-types.js').PosField;
1553
+ price: string;
1554
+ quantity: string;
1555
+ fresh: boolean;
1556
+ entry: string;
1557
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1558
+ tendered: string;
1559
+ rate: string;
1560
+ inclusive: boolean | null;
1561
+ next: number;
1562
+ };
1563
+ programmer: {
1564
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1565
+ size: import('@nxgt/material-core/calculator').WordSize;
1566
+ signed: boolean;
1567
+ };
1568
+ announcement: {
1569
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1570
+ fallback: string;
1571
+ values?: {
1572
+ [x: string]: string | number;
1573
+ } | undefined;
1574
+ } | null;
1575
+ restored: boolean;
1576
+ }, a: PayloadAction<ProgrammerAction>) => void;
1577
+ announce: (state: {
1578
+ variant: CalculatorVariant;
1579
+ session: {
1580
+ expression: string;
1581
+ result: string;
1582
+ ans: string;
1583
+ memory: string;
1584
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1585
+ justEvaluated: boolean;
1586
+ };
1587
+ history: {
1588
+ id: string;
1589
+ expression: string;
1590
+ result: string;
1591
+ variant: string;
1592
+ }[];
1593
+ tapeOpen: boolean;
1594
+ angle: AngleMode;
1595
+ notation: ResultNotation;
1596
+ second: boolean;
1597
+ pos: {
1598
+ lines: {
1599
+ id: string;
1600
+ price: string;
1601
+ quantity: string;
1602
+ rate: string;
1603
+ discount?: {
1604
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1605
+ value: string;
1606
+ } | undefined;
1607
+ }[];
1608
+ discount?: {
1609
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1610
+ value: string;
1611
+ } | undefined;
1612
+ field: import('./variants/pos/pos-types.js').PosField;
1613
+ price: string;
1614
+ quantity: string;
1615
+ fresh: boolean;
1616
+ entry: string;
1617
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1618
+ tendered: string;
1619
+ rate: string;
1620
+ inclusive: boolean | null;
1621
+ next: number;
1622
+ };
1623
+ programmer: {
1624
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1625
+ size: import('@nxgt/material-core/calculator').WordSize;
1626
+ signed: boolean;
1627
+ };
1628
+ announcement: {
1629
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1630
+ fallback: string;
1631
+ values?: {
1632
+ [x: string]: string | number;
1633
+ } | undefined;
1634
+ } | null;
1635
+ restored: boolean;
1636
+ }, a: PayloadAction<Announcement | null>) => void;
1637
+ toggleTape: (state: {
1638
+ variant: CalculatorVariant;
1639
+ session: {
1640
+ expression: string;
1641
+ result: string;
1642
+ ans: string;
1643
+ memory: string;
1644
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1645
+ justEvaluated: boolean;
1646
+ };
1647
+ history: {
1648
+ id: string;
1649
+ expression: string;
1650
+ result: string;
1651
+ variant: string;
1652
+ }[];
1653
+ tapeOpen: boolean;
1654
+ angle: AngleMode;
1655
+ notation: ResultNotation;
1656
+ second: boolean;
1657
+ pos: {
1658
+ lines: {
1659
+ id: string;
1660
+ price: string;
1661
+ quantity: string;
1662
+ rate: string;
1663
+ discount?: {
1664
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1665
+ value: string;
1666
+ } | undefined;
1667
+ }[];
1668
+ discount?: {
1669
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1670
+ value: string;
1671
+ } | undefined;
1672
+ field: import('./variants/pos/pos-types.js').PosField;
1673
+ price: string;
1674
+ quantity: string;
1675
+ fresh: boolean;
1676
+ entry: string;
1677
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1678
+ tendered: string;
1679
+ rate: string;
1680
+ inclusive: boolean | null;
1681
+ next: number;
1682
+ };
1683
+ programmer: {
1684
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1685
+ size: import('@nxgt/material-core/calculator').WordSize;
1686
+ signed: boolean;
1687
+ };
1688
+ announcement: {
1689
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1690
+ fallback: string;
1691
+ values?: {
1692
+ [x: string]: string | number;
1693
+ } | undefined;
1694
+ } | null;
1695
+ restored: boolean;
1696
+ }, a: PayloadAction<boolean | undefined>) => void;
1697
+ clearTape: (state: {
1698
+ variant: CalculatorVariant;
1699
+ session: {
1700
+ expression: string;
1701
+ result: string;
1702
+ ans: string;
1703
+ memory: string;
1704
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1705
+ justEvaluated: boolean;
1706
+ };
1707
+ history: {
1708
+ id: string;
1709
+ expression: string;
1710
+ result: string;
1711
+ variant: string;
1712
+ }[];
1713
+ tapeOpen: boolean;
1714
+ angle: AngleMode;
1715
+ notation: ResultNotation;
1716
+ second: boolean;
1717
+ pos: {
1718
+ lines: {
1719
+ id: string;
1720
+ price: string;
1721
+ quantity: string;
1722
+ rate: string;
1723
+ discount?: {
1724
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1725
+ value: string;
1726
+ } | undefined;
1727
+ }[];
1728
+ discount?: {
1729
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1730
+ value: string;
1731
+ } | undefined;
1732
+ field: import('./variants/pos/pos-types.js').PosField;
1733
+ price: string;
1734
+ quantity: string;
1735
+ fresh: boolean;
1736
+ entry: string;
1737
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1738
+ tendered: string;
1739
+ rate: string;
1740
+ inclusive: boolean | null;
1741
+ next: number;
1742
+ };
1743
+ programmer: {
1744
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1745
+ size: import('@nxgt/material-core/calculator').WordSize;
1746
+ signed: boolean;
1747
+ };
1748
+ announcement: {
1749
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1750
+ fallback: string;
1751
+ values?: {
1752
+ [x: string]: string | number;
1753
+ } | undefined;
1754
+ } | null;
1755
+ restored: boolean;
1756
+ }) => void;
1757
+ /** What storage held, read after mount; entries made meanwhile stay. */
1758
+ restore: (state: {
1759
+ variant: CalculatorVariant;
1760
+ session: {
1761
+ expression: string;
1762
+ result: string;
1763
+ ans: string;
1764
+ memory: string;
1765
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1766
+ justEvaluated: boolean;
1767
+ };
1768
+ history: {
1769
+ id: string;
1770
+ expression: string;
1771
+ result: string;
1772
+ variant: string;
1773
+ }[];
1774
+ tapeOpen: boolean;
1775
+ angle: AngleMode;
1776
+ notation: ResultNotation;
1777
+ second: boolean;
1778
+ pos: {
1779
+ lines: {
1780
+ id: string;
1781
+ price: string;
1782
+ quantity: string;
1783
+ rate: string;
1784
+ discount?: {
1785
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1786
+ value: string;
1787
+ } | undefined;
1788
+ }[];
1789
+ discount?: {
1790
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1791
+ value: string;
1792
+ } | undefined;
1793
+ field: import('./variants/pos/pos-types.js').PosField;
1794
+ price: string;
1795
+ quantity: string;
1796
+ fresh: boolean;
1797
+ entry: string;
1798
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1799
+ tendered: string;
1800
+ rate: string;
1801
+ inclusive: boolean | null;
1802
+ next: number;
1803
+ };
1804
+ programmer: {
1805
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1806
+ size: import('@nxgt/material-core/calculator').WordSize;
1807
+ signed: boolean;
1808
+ };
1809
+ announcement: {
1810
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1811
+ fallback: string;
1812
+ values?: {
1813
+ [x: string]: string | number;
1814
+ } | undefined;
1815
+ } | null;
1816
+ restored: boolean;
1817
+ }, a: PayloadAction<{
1818
+ history: HistoryEntry[];
1819
+ memory: string;
1820
+ }>) => void;
1821
+ markRestored: (state: {
1822
+ variant: CalculatorVariant;
1823
+ session: {
1824
+ expression: string;
1825
+ result: string;
1826
+ ans: string;
1827
+ memory: string;
1828
+ error: import('@nxgt/material-core/calculator').CalcErrorCode | "";
1829
+ justEvaluated: boolean;
1830
+ };
1831
+ history: {
1832
+ id: string;
1833
+ expression: string;
1834
+ result: string;
1835
+ variant: string;
1836
+ }[];
1837
+ tapeOpen: boolean;
1838
+ angle: AngleMode;
1839
+ notation: ResultNotation;
1840
+ second: boolean;
1841
+ pos: {
1842
+ lines: {
1843
+ id: string;
1844
+ price: string;
1845
+ quantity: string;
1846
+ rate: string;
1847
+ discount?: {
1848
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1849
+ value: string;
1850
+ } | undefined;
1851
+ }[];
1852
+ discount?: {
1853
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1854
+ value: string;
1855
+ } | undefined;
1856
+ field: import('./variants/pos/pos-types.js').PosField;
1857
+ price: string;
1858
+ quantity: string;
1859
+ fresh: boolean;
1860
+ entry: string;
1861
+ kind: import('./variants/pos/pos-types.js').DiscountKind;
1862
+ tendered: string;
1863
+ rate: string;
1864
+ inclusive: boolean | null;
1865
+ next: number;
1866
+ };
1867
+ programmer: {
1868
+ base: import('@nxgt/material-core/calculator/programmer').Base;
1869
+ size: import('@nxgt/material-core/calculator').WordSize;
1870
+ signed: boolean;
1871
+ };
1872
+ announcement: {
1873
+ key: import('../../../../i18n/index.js').MaterialLocaleKey;
1874
+ fallback: string;
1875
+ values?: {
1876
+ [x: string]: string | number;
1877
+ } | undefined;
1878
+ } | null;
1879
+ restored: boolean;
1880
+ }) => void;
1881
+ }, "calculator">;