10 lines
987 B
Markdown
10 lines
987 B
Markdown
# State
|
|
- Core engine: `src/rpn-calculator.js`
|
|
- Reference demo: `samples/calc-02/` (portrait-first HP48GX layout; calc-02 keyboard shortcuts are the reference; compact mode/constants popups; Const button comes before Mode in the display row)
|
|
- Important UI behavior: mode button shows the current angle mode; keyboard focus stays on the hidden input on desktop; clipboard paste is supported
|
|
- Note: keep scrolling behavior in mind for the calc-02 demo when changing the stack/UI layout
|
|
- Public API: `push`, `pop`, `clear`, `swap`, `remove`, `edit`, `isValidIndex`, `input`, `command`, `getOperationsByCategory`, `getConstants`, `listConstants`, `setConstant`, `removeConstant`, `hasConstant`
|
|
- Config: `maxSize`, `base`, `angleMode`, `enabledCommands`
|
|
- Commands: arithmetic, stack, trigonometry, constants `pi` and `e`; arithmetic includes `root`; constants can be added or removed dynamically through the core API
|
|
- Exports: browser `window.RpnCalculator`, CommonJS `module.exports`
|