| 123456789101112131415161718192021222324252627282930313233343536373839 |
- const {
- formatTime
- } = require('./ble-utils.js')
- const DEFAULT_MAX_LOG_COUNT = 100
- function createLogItem(direction, payload, note = '', extras = {}, sequence = 0, timestamp = Date.now()) {
- return {
- id: `log-${timestamp}-${sequence}`,
- direction,
- note,
- payloadBytes: Array.isArray(extras.payloadBytes) ? extras.payloadBytes.slice() : null,
- payloadText: typeof extras.payloadText === 'string' ? extras.payloadText : '',
- payload,
- time: formatTime(timestamp)
- }
- }
- function appendLog(logs = [], logItem, maxLogCount = DEFAULT_MAX_LOG_COUNT) {
- const limit = Math.max(1, Number(maxLogCount) || DEFAULT_MAX_LOG_COUNT)
- return logs.concat(logItem).slice(-limit)
- }
- function createClearLogsState() {
- return {
- logScrollTarget: '',
- logs: [],
- rxCount: 0,
- txCount: 0
- }
- }
- module.exports = {
- DEFAULT_MAX_LOG_COUNT,
- appendLog,
- createClearLogsState,
- createLogItem
- }
|