@christianriedl/utils 1.0.86 → 1.0.88

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.
@@ -9,6 +9,7 @@ export interface IStatisticsValue {
9
9
  currentValue: number;
10
10
  maximumValue: number;
11
11
  sumValue: number;
12
+ log: boolean;
12
13
  incremented?: boolean;
13
14
  }
14
15
  export interface IStatistics {
@@ -18,4 +19,5 @@ export interface IStatistics {
18
19
  increment(value: IStatisticsValue, count?: number): void;
19
20
  set(value: IStatisticsValue, num: number): void;
20
21
  log(logger: ILogger, level: LogLevel, category?: string): void;
22
+ enableLog(key: string, onoff: boolean): void;
21
23
  }
@@ -30,6 +30,8 @@ export declare class MarshalBE implements IMarshal {
30
30
  readFloat(): number;
31
31
  readDouble(): number;
32
32
  readString(): string;
33
+ writeLength(val: number): void;
34
+ readLength(): number;
33
35
  reset(): void;
34
36
  get readOffset(): number;
35
37
  get writeOffset(): number;
package/dist/marshalBE.js CHANGED
@@ -55,7 +55,7 @@ export class MarshalBE {
55
55
  writeString(val) {
56
56
  if (val) {
57
57
  const byteLength = Buffer.byteLength(val, this._encoding);
58
- this.writeInt32(byteLength);
58
+ this.writeLength(byteLength);
59
59
  this._buffer.write(val, this._writeOffset, byteLength, this._encoding);
60
60
  this._writeOffset += byteLength;
61
61
  }
@@ -118,7 +118,7 @@ export class MarshalBE {
118
118
  return val;
119
119
  }
120
120
  readString() {
121
- const len = this.readInt32();
121
+ const len = this.readLength();
122
122
  if (len) {
123
123
  const val = this._buffer.slice(this._readOffset, this._readOffset + len).toString(this._encoding);
124
124
  this._readOffset += len;
@@ -126,6 +126,30 @@ export class MarshalBE {
126
126
  }
127
127
  return '';
128
128
  }
129
+ writeLength(val) {
130
+ if (val <= 0x7f)
131
+ this.writeUInt8(val);
132
+ else if (val <= 0x3fff) {
133
+ this.writeUInt8((val >> 8) | 0x80);
134
+ this.writeUInt8(val & 0xff);
135
+ }
136
+ else if (val <= 0x3fffffff) {
137
+ this.writeUInt8((val >> 16) | 0xC0);
138
+ this.writeUInt8(val >> 8);
139
+ this.writeUInt8(val & 0xff);
140
+ }
141
+ else {
142
+ throw `${val} too big for WriteLength`;
143
+ }
144
+ }
145
+ readLength() {
146
+ let value = this.readUInt8();
147
+ if (value <= 0x7f)
148
+ return value;
149
+ if ((value & 0xc0) == 0x80)
150
+ return ((value & 0x3f) << 8) + this.readUInt8();
151
+ return value = (((value & 0x3f) << 8) + this.readUInt8() << 8) + this.readUInt8();
152
+ }
129
153
  reset() {
130
154
  this._readOffset = this._writeOffset = 0;
131
155
  }
@@ -1 +1 @@
1
- {"version":3,"file":"marshalBE.js","sourceRoot":"","sources":["../src/marshalBE.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"marshalBE.js","sourceRoot":"","sources":["../src/marshalBE.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,8 @@ export declare class MarshalLE implements IMarshal {
30
30
  readFloat(): number;
31
31
  readDouble(): number;
32
32
  readString(): string;
33
+ writeLength(val: number): void;
34
+ readLength(): number;
33
35
  reset(): void;
34
36
  get readOffset(): number;
35
37
  get writeOffset(): number;
package/dist/marshalLE.js CHANGED
@@ -54,7 +54,7 @@ export class MarshalLE {
54
54
  }
55
55
  writeString(val) {
56
56
  const byteLength = Buffer.byteLength(val, this._encoding);
57
- this.writeInt32(byteLength);
57
+ this.writeLength(byteLength);
58
58
  this._buffer.write(val, this._writeOffset, byteLength, this._encoding);
59
59
  this._writeOffset += byteLength;
60
60
  }
@@ -114,11 +114,35 @@ export class MarshalLE {
114
114
  return val;
115
115
  }
116
116
  readString() {
117
- const len = this.readInt32();
117
+ const len = this.readLength();
118
118
  const val = this._buffer.slice(this._readOffset, this._readOffset + len).toString(this._encoding);
119
119
  this._readOffset += len;
120
120
  return val;
121
121
  }
122
+ writeLength(val) {
123
+ if (val <= 0x7f)
124
+ this.writeUInt8(val);
125
+ else if (val <= 0x3fff) {
126
+ this.writeUInt8((val >> 8) | 0x80);
127
+ this.writeUInt8(val & 0xff);
128
+ }
129
+ else if (val <= 0x3fffffff) {
130
+ this.writeUInt8((val >> 16) | 0xC0);
131
+ this.writeUInt8(val >> 8);
132
+ this.writeUInt8(val & 0xff);
133
+ }
134
+ else {
135
+ throw `${val} too big for WriteLength`;
136
+ }
137
+ }
138
+ readLength() {
139
+ let value = this.readUInt8();
140
+ if (value <= 0x7f)
141
+ return value;
142
+ if ((value & 0xc0) == 0x80)
143
+ return ((value & 0x3f) << 8) + this.readUInt8();
144
+ return value = (((value & 0x3f) << 8) + this.readUInt8() << 8) + this.readUInt8();
145
+ }
122
146
  reset() {
123
147
  this._readOffset = this._writeOffset = 0;
124
148
  }
@@ -1 +1 @@
1
- {"version":3,"file":"marshalLE.js","sourceRoot":"","sources":["../src/marshalLE.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"marshalLE.js","sourceRoot":"","sources":["../src/marshalLE.ts"],"names":[],"mappings":"AAEA,wBAAwB;AACxB,MAAM,OAAO,SAAS;IAClB,OAAO,CAAS;IAChB,SAAS,CAAiB;IAC1B,YAAY,CAAS;IACrB,WAAW,CAAS;IACpB,YAAY,MAAc,EAAE,WAA2B,MAAM;QACzD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;IAC7C,CAAC;IACD,YAAY,CAAC,GAAY;QACrB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IACD,SAAS,CAAC,GAAW;QACjB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IACD,UAAU,CAAC,GAAW;QAClB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IACD,UAAU,CAAC,GAAW;QAClB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,WAAW,CAAC,GAAW;QACnB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,UAAU,CAAC,GAAW;QAClB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,WAAW,CAAC,GAAW;QACnB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,UAAU,CAAC,GAAW;QAClB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACrD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,WAAW,CAAC,GAAW;QACnB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,UAAU,CAAC,GAAW;QAClB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,WAAW,CAAC,GAAW;QACnB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,WAAW,CAAC,GAAW;QACnB,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACvE,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC;IACpC,CAAC;IACD,WAAW;QACP,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC9B,CAAC;IACD,QAAQ;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,SAAS;QACL,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,SAAS;QACL,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,UAAU;QACN,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,SAAS;QACL,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,UAAU;QACN,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,SAAS;QACL,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,UAAU;QACN,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,SAAS;QACL,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,UAAU;QACN,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,UAAU;QACN,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClG,IAAI,CAAC,WAAW,IAAI,GAAG,CAAC;QACxB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,WAAW,CAAC,GAAW;QACnB,IAAI,GAAG,IAAI,IAAI;YACX,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACpB,IAAI,GAAG,IAAI,MAAM,EAAE;YACpB,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;SAC/B;aACI,IAAI,GAAG,IAAI,UAAU,EAAE;YACxB,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YACpC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;SAC/B;aACI;YACD,MAAM,GAAG,GAAG,0BAA0B,CAAC;SAC1C;IACL,CAAC;IACD,UAAU;QACN,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC7B,IAAI,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,IAAI;YACtB,OAAO,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACpD,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IACtF,CAAC;IACD,KAAK;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IACD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IACD,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;IACtD,CAAC;IACD,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC;IACvD,CAAC;CACJ"}
@@ -10,4 +10,5 @@ export declare class Statistics implements IStatistics {
10
10
  increment(value: IStatisticsValue, count?: number): void;
11
11
  set(value: IStatisticsValue, num: number): void;
12
12
  log(logger: ILogger, level: LogLevel, category?: string): void;
13
+ enableLog(key: string, onoff: boolean): void;
13
14
  }
@@ -16,7 +16,7 @@ export class Statistics {
16
16
  const key = category + ';' + name;
17
17
  let value = this.values[key];
18
18
  if (!value) {
19
- value = { key: key, category: category, name: name, id: this.valueCount++, currentValue: 0, maximumValue: 0, sumValue: 0 };
19
+ value = { key: key, category: category, name: name, id: this.valueCount++, currentValue: 0, maximumValue: 0, sumValue: 0, log: false };
20
20
  this.values[key] = value;
21
21
  }
22
22
  return value;
@@ -50,5 +50,10 @@ export class Statistics {
50
50
  logger.log(level, `${value.category}.${value.name} : C:${value.currentValue} M:${value.maximumValue} S:${value.sumValue}`);
51
51
  }
52
52
  }
53
+ enableLog(key, onoff) {
54
+ const value = this.values[key];
55
+ if (value)
56
+ value.log = onoff;
57
+ }
53
58
  }
54
59
  //# sourceMappingURL=statistics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"statistics.js","sourceRoot":"","sources":["../src/statistics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"statistics.js","sourceRoot":"","sources":["../src/statistics.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@christianriedl/utils",
3
- "version": "1.0.86",
3
+ "version": "1.0.88",
4
4
  "description": "Interfaces, local storage, service worker, configuration, application state",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,6 +1,6 @@
1
1
  <script setup lang="ts">
2
2
  import { reactive } from 'vue';
3
- import { IConfigItem, EScope } from '@christianriedl/utils';
3
+ import { IConfigItem, ItemType, EScope } from '@christianriedl/utils';
4
4
 
5
5
  const props = defineProps<{item: IConfigItem; scopes: EScope }>();
6
6
  const emits = defineEmits<{ (e: 'change', value: any): void }>();
@@ -12,8 +12,9 @@
12
12
  const isBoolean = typeof item.default === 'boolean';
13
13
  const isDisabled = item.doNotChange;
14
14
  const isVisible = (item.scopes & props.scopes) != 0;
15
+ const enumValues: ItemType[] = item.values!;
15
16
 
16
- function onChange(ev: Event) {
17
+ function onChange() {
17
18
  emits('change', true);
18
19
  }
19
20
  </script>
@@ -26,7 +27,7 @@
26
27
  <v-text-field v-if="isString" v-model="item.value" :disabled="isDisabled" density="compact" hide-details type="string" @change="onChange"></v-text-field>
27
28
  <v-text-field v-if="isNumber" v-model="item.value" :disabled="isDisabled" density="compact" hide-details type="number" @change="onChange"></v-text-field>
28
29
  <v-select v-if="isEnum" name="enum" density="compact" v-model="item.value" :disabled="isDisabled"
29
- :items="item.values"
30
+ :items="enumValues"
30
31
  persistent-hint
31
32
  @update:modelValue="onChange"
32
33
  dense solo hide-details single-line>