jspurefix 5.10.2 → 5.10.4
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.
- package/dist/buffer/encode-proxy.js.map +1 -1
- package/dist/buffer/fixml/fixml-encoder.js.map +1 -1
- package/dist/buffer/msg-view.js.map +1 -1
- package/dist/config/winston-logger.js.map +1 -1
- package/dist/dictionary/compiler/standard-snippet.js +2 -2
- package/dist/dictionary/compiler/standard-snippet.js.map +1 -1
- package/dist/dictionary/parser/fixml/components-parser.js.map +1 -1
- package/dist/dictionary/parser/fixml/fields-parser.js.map +1 -1
- package/dist/dictionary/parser/fixml/include-graph.js.map +1 -1
- package/dist/jsfix-bench.js.map +1 -1
- package/dist/jsfix-cmd.js +2 -2
- package/dist/jsfix-cmd.js.map +1 -1
- package/dist/runtime/session-container.js +11 -8
- package/dist/runtime/session-container.js.map +1 -1
- package/dist/sample/http/oms/app.js.map +1 -1
- package/dist/sample/http/oms/oms-factory.js.map +1 -1
- package/dist/sample/tcp/qf-md/app.js.map +1 -1
- package/dist/sample/tcp/skeleton/app.js.map +1 -1
- package/dist/sample/tcp/trade-capture/app-launcher.js.map +1 -1
- package/dist/store/fix-msg-memory-store.js.map +1 -1
- package/dist/transport/duplex/http-duplex.d.ts +1 -1
- package/dist/transport/duplex/http-duplex.js +2 -5
- package/dist/transport/duplex/http-duplex.js.map +1 -1
- package/dist/transport/fixml/fixml-session-msg-factory.js.map +1 -1
- package/dist/transport/session/clone-session-description.js.map +1 -1
- package/dist/transport/tcp/tls-options-factory.js.map +1 -1
- package/jsfix.test_client.txt +62 -62
- package/jsfix.test_server.txt +72 -72
- package/package.json +5 -5
- package/src/buffer/encode-proxy.ts +1 -1
- package/src/buffer/fixml/fixml-encoder.ts +1 -1
- package/src/buffer/msg-view.ts +1 -1
- package/src/config/winston-logger.ts +1 -1
- package/src/dictionary/compiler/standard-snippet.ts +2 -2
- package/src/dictionary/parser/fixml/components-parser.ts +2 -2
- package/src/dictionary/parser/fixml/fields-parser.ts +1 -1
- package/src/dictionary/parser/fixml/include-graph.ts +1 -1
- package/src/jsfix-bench.ts +1 -1
- package/src/jsfix-cmd.ts +2 -2
- package/src/runtime/session-container.ts +12 -4
- package/src/sample/http/oms/app.ts +1 -1
- package/src/sample/http/oms/oms-factory.ts +4 -4
- package/src/sample/tcp/qf-md/app.ts +1 -1
- package/src/sample/tcp/skeleton/app.ts +1 -1
- package/src/sample/tcp/trade-capture/app-launcher.ts +1 -1
- package/src/store/fix-msg-memory-store.ts +1 -1
- package/src/transport/duplex/http-duplex.ts +4 -2
- package/src/transport/fixml/fixml-session-msg-factory.ts +5 -5
- package/src/transport/session/clone-session-description.ts +1 -1
- package/src/transport/tcp/tls-options-factory.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fix-msg-memory-store.js","sourceRoot":"","sources":["../../src/store/fix-msg-memory-store.ts"],"names":[],"mappings":"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","sourcesContent":["import { IFixMsgStore } from './fix-msg-store'\nimport { IJsFixConfig, IJsFixLogger } from '../config'\nimport { IFixMsgStoreRecord } from './fix-msg-store-record'\nimport { MsgType } from '../types'\nimport { IFixMsgStoreState } from './fix-msg-store-state'\n\nexport class FixMsgMemoryStore implements IFixMsgStore {\n protected readonly logger: IJsFixLogger\n public heartbeat: boolean = true\n private sortedBySeqNum: IFixMsgStoreRecord[] = []\n private readonly excluded: Map<string, boolean> = new Map<string, boolean>()\n public length: number = 0\n private readonly sessionMessages: string[] = [\n MsgType.Logon,\n MsgType.Logout,\n MsgType.ResendRequest,\n MsgType.Heartbeat,\n MsgType.TestRequest,\n MsgType.SequenceReset\n ]\n\n public constructor (public readonly id: string, public readonly config: IJsFixConfig) {\n this.logger = config.logFactory.logger(`${this.id}:FixMsgMemoryStore`)\n this.setExcMsgType([])\n }\n\n public static search (ar: IFixMsgStoreRecord[], target: number, isDate?: boolean): number {\n let m: number = 0\n let n: number = ar.length - 1\n while (m <= n) {\n const k: number = (n + m) >> 1\n const check: number = isDate ? ar[k].timestamp.getDate() : ar[k].seqNum\n const cmp: number = target - check\n if (cmp > 0) {\n m = k + 1\n } else if (cmp < 0) {\n n = k - 1\n } else {\n return k\n }\n }\n return -m - 1\n }\n\n public async getMsgType (msgType: string): Promise<IFixMsgStoreRecord[]> {\n return await new Promise((resolve, reject: any) => {\n const data = this.sortedBySeqNum\n if (data === null) reject(new Error('no store'))\n const required = data.filter(x => x.msgType === msgType)\n resolve(required)\n })\n }\n\n private getIndex (seq: number): number {\n const arr = this.sortedBySeqNum\n let index = FixMsgMemoryStore.search(arr, seq)\n if (index < 0) {\n index = -(index + 1)\n }\n return index\n }\n\n private bounded (fromIdx: number, toIdx: number): boolean {\n const arr = this.sortedBySeqNum\n return fromIdx >= 0 && fromIdx <= arr.length && toIdx >= fromIdx && toIdx <= arr.length\n }\n\n public async get (from: number): Promise<IFixMsgStoreRecord> {\n return await new Promise((resolve, reject) => {\n this.getSeqNumRange(from, from).then(res => {\n if (res.length > 0) {\n const record = res[0].clone()\n resolve(record)\n } else {\n reject(new Error(`${from} not in store`))\n }\n }).catch(e => {\n reject(e)\n })\n })\n }\n\n public async getSeqNumRange (from: number, to?: number): Promise<IFixMsgStoreRecord[]> {\n return await new Promise((resolve, reject) => {\n to = to ?? 0\n const arr = this.sortedBySeqNum\n if (from < 0) reject(new Error(`illegal from ${from}`))\n if (to < 0) reject(new Error(`illegal to ${to}`))\n const fromIdx = this.getIndex(from)\n const toEnd = to === 0 || isNaN(to)\n const toIdx = toEnd ? arr.length - 1 : this.getIndex(to)\n if (this.bounded(fromIdx, toIdx)) {\n resolve(arr.slice(fromIdx, toIdx + 1))\n } else {\n reject(new Error(`incorrect bounds from=${from}, fromIdx=${fromIdx}, to=${to}, toIdx=${toIdx}, length=${arr.length}`))\n }\n })\n }\n\n private buildState (): IFixMsgStoreState {\n const arr = this.sortedBySeqNum\n return {\n firstSeq: arr.length > 0 ? arr[0].seqNum : 0,\n lastSeq: arr.length > 0 ? arr[arr.length - 1].seqNum : 0,\n id: this.id,\n length: arr.length\n } as IFixMsgStoreState\n }\n\n public async getState (): Promise<IFixMsgStoreState> {\n return await new Promise((resolve, reject) => {\n try {\n resolve(this.buildState())\n } catch (e) {\n reject(e)\n }\n })\n }\n\n public async clear (): Promise<IFixMsgStoreState> {\n this.sortedBySeqNum = []\n return await new Promise((resolve, reject) => {\n try {\n resolve(this.buildState())\n } catch (e) {\n reject(e)\n }\n })\n }\n\n public async put (record: IFixMsgStoreRecord): Promise<IFixMsgStoreState> {\n return await new Promise((resolve, reject) => {\n if (this.excluded.has(record.msgType)) {\n resolve(this.buildState())\n } else {\n const arr = this.sortedBySeqNum\n const idx = FixMsgMemoryStore.search(arr, record.seqNum)\n if (idx >= 0) { // seen this before\n reject(new Error(`this seqNum ${record.seqNum} already in store`))\n }\n arr.splice(-idx, 0, record)\n this.length = arr.length\n resolve(this.buildState())\n }\n })\n }\n\n public setExcMsgType (exclude: string[]): void {\n this.excluded.clear()\n this.excludeRange(this.sessionMessages)\n this.excludeRange(exclude)\n }\n\n private excludeRange (exclude: string[]): void {\n exclude.forEach(s => {\n this.excluded.set(s, true)\n })\n }\n\n async exists (seqNum: number): Promise<boolean> {\n return await new Promise((resolve, reject) => {\n try {\n const arr = this.sortedBySeqNum\n const index = FixMsgMemoryStore.search(arr, seqNum)\n resolve(index >= 0)\n } catch (e) {\n reject(e)\n }\n })\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"fix-msg-memory-store.js","sourceRoot":"","sources":["../../src/store/fix-msg-memory-store.ts"],"names":[],"mappings":"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","sourcesContent":["import { IFixMsgStore } from './fix-msg-store'\nimport { IJsFixConfig, IJsFixLogger } from '../config'\nimport { IFixMsgStoreRecord } from './fix-msg-store-record'\nimport { MsgType } from '../types'\nimport { IFixMsgStoreState } from './fix-msg-store-state'\n\nexport class FixMsgMemoryStore implements IFixMsgStore {\n protected readonly logger: IJsFixLogger\n public heartbeat: boolean = true\n private sortedBySeqNum: IFixMsgStoreRecord[] = []\n private readonly excluded: Map<string, boolean> = new Map<string, boolean>()\n public length: number = 0\n private readonly sessionMessages: string[] = [\n MsgType.Logon,\n MsgType.Logout,\n MsgType.ResendRequest,\n MsgType.Heartbeat,\n MsgType.TestRequest,\n MsgType.SequenceReset\n ]\n\n public constructor (public readonly id: string, public readonly config: IJsFixConfig) {\n this.logger = config.logFactory.logger(`${this.id}:FixMsgMemoryStore`)\n this.setExcMsgType([])\n }\n\n public static search (ar: IFixMsgStoreRecord[], target: number, isDate?: boolean): number {\n let m: number = 0\n let n: number = ar.length - 1\n while (m <= n) {\n const k: number = (n + m) >> 1\n const check: number = isDate ? ar[k].timestamp.getDate() : ar[k].seqNum\n const cmp: number = target - check\n if (cmp > 0) {\n m = k + 1\n } else if (cmp < 0) {\n n = k - 1\n } else {\n return k\n }\n }\n return -m - 1\n }\n\n public async getMsgType (msgType: string): Promise<IFixMsgStoreRecord[]> {\n return await new Promise((resolve, reject: any) => {\n const data = this.sortedBySeqNum\n if (data === null) reject(new Error('no store'))\n const required = data.filter(x => x.msgType === msgType)\n resolve(required)\n })\n }\n\n private getIndex (seq: number): number {\n const arr = this.sortedBySeqNum\n let index = FixMsgMemoryStore.search(arr, seq)\n if (index < 0) {\n index = -(index + 1)\n }\n return index\n }\n\n private bounded (fromIdx: number, toIdx: number): boolean {\n const arr = this.sortedBySeqNum\n return fromIdx >= 0 && fromIdx <= arr.length && toIdx >= fromIdx && toIdx <= arr.length\n }\n\n public async get (from: number): Promise<IFixMsgStoreRecord> {\n return await new Promise((resolve, reject) => {\n this.getSeqNumRange(from, from).then(res => {\n if (res.length > 0) {\n const record = res[0].clone()\n resolve(record)\n } else {\n reject(new Error(`${from} not in store`))\n }\n }).catch(e => {\n reject(e)\n })\n })\n }\n\n public async getSeqNumRange (from: number, to?: number): Promise<IFixMsgStoreRecord[]> {\n return await new Promise((resolve, reject) => {\n to = to ?? 0\n const arr = this.sortedBySeqNum\n if (from < 0) reject(new Error(`illegal from ${from}`))\n if (to < 0) reject(new Error(`illegal to ${to}`))\n const fromIdx = this.getIndex(from)\n const toEnd = to === 0 || isNaN(to)\n const toIdx = toEnd ? arr.length - 1 : this.getIndex(to)\n if (this.bounded(fromIdx, toIdx)) {\n resolve(arr.slice(fromIdx, toIdx + 1))\n } else {\n reject(new Error(`incorrect bounds from=${from}, fromIdx=${fromIdx}, to=${to}, toIdx=${toIdx}, length=${arr.length}`))\n }\n })\n }\n\n private buildState (): IFixMsgStoreState {\n const arr = this.sortedBySeqNum\n return {\n firstSeq: arr.length > 0 ? arr[0].seqNum : 0,\n lastSeq: arr.length > 0 ? arr[arr.length - 1].seqNum : 0,\n id: this.id,\n length: arr.length\n }\n }\n\n public async getState (): Promise<IFixMsgStoreState> {\n return await new Promise((resolve, reject) => {\n try {\n resolve(this.buildState())\n } catch (e) {\n reject(e)\n }\n })\n }\n\n public async clear (): Promise<IFixMsgStoreState> {\n this.sortedBySeqNum = []\n return await new Promise((resolve, reject) => {\n try {\n resolve(this.buildState())\n } catch (e) {\n reject(e)\n }\n })\n }\n\n public async put (record: IFixMsgStoreRecord): Promise<IFixMsgStoreState> {\n return await new Promise((resolve, reject) => {\n if (this.excluded.has(record.msgType)) {\n resolve(this.buildState())\n } else {\n const arr = this.sortedBySeqNum\n const idx = FixMsgMemoryStore.search(arr, record.seqNum)\n if (idx >= 0) { // seen this before\n reject(new Error(`this seqNum ${record.seqNum} already in store`))\n }\n arr.splice(-idx, 0, record)\n this.length = arr.length\n resolve(this.buildState())\n }\n })\n }\n\n public setExcMsgType (exclude: string[]): void {\n this.excluded.clear()\n this.excludeRange(this.sessionMessages)\n this.excludeRange(exclude)\n }\n\n private excludeRange (exclude: string[]): void {\n exclude.forEach(s => {\n this.excluded.set(s, true)\n })\n }\n\n async exists (seqNum: number): Promise<boolean> {\n return await new Promise((resolve, reject) => {\n try {\n const arr = this.sortedBySeqNum\n const index = FixMsgMemoryStore.search(arr, seqNum)\n resolve(index >= 0)\n } catch (e) {\n reject(e)\n }\n })\n }\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FixDuplex } from './fix-duplex';
|
|
2
|
-
import { IHttpAdapter } from '../http/http-adapter';
|
|
2
|
+
import type { IHttpAdapter } from '../http/http-adapter';
|
|
3
3
|
export declare class HttpDuplex extends FixDuplex {
|
|
4
4
|
readonly adapter: IHttpAdapter;
|
|
5
5
|
constructor(adapter: IHttpAdapter);
|
|
@@ -8,13 +8,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
12
|
exports.HttpDuplex = void 0;
|
|
16
13
|
const fix_duplex_1 = require("./fix-duplex");
|
|
17
|
-
const axios_1 = __importDefault(require("axios"));
|
|
18
14
|
class HttpDuplex extends fix_duplex_1.FixDuplex {
|
|
19
15
|
constructor(adapter) {
|
|
20
16
|
super();
|
|
@@ -39,7 +35,8 @@ class HttpDuplex extends fix_duplex_1.FixDuplex {
|
|
|
39
35
|
const adapter = this.adapter;
|
|
40
36
|
const options = adapter.getOptions(data);
|
|
41
37
|
if (options) {
|
|
42
|
-
|
|
38
|
+
const axios = require('axios').default;
|
|
39
|
+
axios(options).then((message) => {
|
|
43
40
|
const body = adapter.endMessage(message);
|
|
44
41
|
forward.push(body);
|
|
45
42
|
done();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-duplex.js","sourceRoot":"","sources":["../../../src/transport/duplex/http-duplex.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"http-duplex.js","sourceRoot":"","sources":["../../../src/transport/duplex/http-duplex.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAwC;AAIxC,MAAa,UAAW,SAAQ,sBAAS;IACvC,YAAoC,OAAqB;QACvD,KAAK,EAAE,CAAA;QAD2B,YAAO,GAAP,OAAO,CAAc;QAEvD,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,YAAY,EAAE,CAAA;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;IACrC,CAAC;IAEO,MAAM,CAAC,YAAY;QACzB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAA;QAC3C,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,GAAG,EAAE;YAEX,CAAC;SACF,CAAA;QACD,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC7B,CAAC;IAEO,YAAY;QAClB,MAAM,OAAO,GAAa,IAAI,CAAC,QAAQ,CAAA;QACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAA;QAC3C,MAAM,MAAM,GAAG;YACb,KAAK,EAAE,CAAO,IAAY,EAAE,CAAM,EAAE,IAAc,EAAE,EAAE;gBACpD,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;oBAC5B,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;oBACxC,IAAI,OAAO,EAAE,CAAC;wBAGZ,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAA;wBACtC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAY,EAAE,EAAE;4BACnC,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;4BACxC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;4BAClB,IAAI,EAAE,CAAA;wBACR,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;4BACtB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;wBAC7B,CAAC,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,IAAI,CAAC,CAAC,CAAC,CAAA;gBACT,CAAC;YACH,CAAC,CAAA;SACF,CAAA;QACD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QACrC,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEM,GAAG;QACR,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;CACF;AAjDD,gCAiDC","sourcesContent":["import { FixDuplex } from './fix-duplex'\nimport { Readable, Writable } from 'stream'\nimport type { IHttpAdapter } from '../http/http-adapter'\n\nexport class HttpDuplex extends FixDuplex {\n public constructor (public readonly adapter: IHttpAdapter) {\n super()\n this.readable = HttpDuplex.makeReadable()\n this.writable = this.makeWritable()\n }\n\n private static makeReadable (): Readable {\n const Readable = require('stream').Readable\n const reader = {\n read: () => {\n // nothing\n }\n }\n return new Readable(reader)\n }\n\n private makeWritable (): Writable {\n const forward: Readable = this.readable\n const Writable = require('stream').Writable\n const writer = {\n write: async (data: Buffer, _: any, done: Function) => {\n try {\n const adapter = this.adapter\n const options = adapter.getOptions(data)\n if (options) {\n // resolved here rather than at module scope - this file is on the barrel\n // export, and an ascii application should not load axios to reach it\n const axios = require('axios').default\n axios(options).then((message: any) => {\n const body = adapter.endMessage(message)\n forward.push(body)\n done()\n }).catch((err: Error) => {\n receiver.emit('error', err)\n })\n }\n } catch (e) {\n done(e)\n }\n }\n }\n const receiver = new Writable(writer)\n return receiver\n }\n\n public end (): void {\n this.readable.push(null)\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixml-session-msg-factory.js","sourceRoot":"","sources":["../../../src/transport/fixml/fixml-session-msg-factory.ts"],"names":[],"mappings":";;;AAEA,uCAAqC;AACrC,4EAAoF;AAEpF,uDAM+B;AAE/B,MAAa,sBAAuB,SAAQ,0CAAkB;IAC5D,YAAsB,WAAgC,EAAE,UAAgC,IAAI;QAC1F,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QADP,gBAAW,GAAX,WAAW,CAAqB;IAEtD,CAAC;IAEM,KAAK,CAAE,gBAAwB,EAAE,EAAE,aAAsB,KAAK;QACnE,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;IACnD,CAAC;IAEM,MAAM,CAAE,OAAe,EAAE,IAAY;QAC1C,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,KAAK,SAAS,CAAC,CAAA;IACzD,CAAC;IAEM,MAAM,CAAE,OAAe,EAAE,SAAiB,CAAC,EAAE,OAAa,IAAI,IAAI,EAAE,EAAE,YAAuC;QAClH,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;QACpC,MAAM,CAAC,GAAoB;YACzB,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,WAAW,EAAE,WAAW,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"fixml-session-msg-factory.js","sourceRoot":"","sources":["../../../src/transport/fixml/fixml-session-msg-factory.ts"],"names":[],"mappings":";;;AAEA,uCAAqC;AACrC,4EAAoF;AAEpF,uDAM+B;AAE/B,MAAa,sBAAuB,SAAQ,0CAAkB;IAC5D,YAAsB,WAAgC,EAAE,UAAgC,IAAI;QAC1F,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QADP,gBAAW,GAAX,WAAW,CAAqB;IAEtD,CAAC;IAEM,KAAK,CAAE,gBAAwB,EAAE,EAAE,aAAsB,KAAK;QACnE,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;IACnD,CAAC;IAEM,MAAM,CAAE,OAAe,EAAE,IAAY;QAC1C,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,KAAK,SAAS,CAAC,CAAA;IACzD,CAAC;IAEM,MAAM,CAAE,OAAe,EAAE,SAAiB,CAAC,EAAE,OAAa,IAAI,IAAI,EAAE,EAAE,YAAuC;QAClH,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;QACpC,MAAM,CAAC,GAAoB;YACzB,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,WAAW,EAAE,WAAW,CAAC,WAAW;SACrC,CAAA;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IACzC,CAAC;IAEO,UAAU,CAAE,aAAqB,EAAE,UAAmB;QAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;QACpC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,CAAC,mBACL,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAC9B,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,4BAAe,CAAC,SAAS,IAEvC,WAAW,CAAC,KAAK,CACrB,CAAA;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAO,CAAC,KAAK,CAAC,CAAA;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAkB;gBACvB,QAAQ,EAAE,WAAW,CAAC,QAAQ;gBAC9B,aAAa,EAAE,aAAa;gBAC5B,UAAU,EAAE,uBAAU,CAAC,QAAQ;aAChC,CAAA;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAO,CAAC,KAAK,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAEO,WAAW,CAAE,aAAqB,EAAE,UAAmB;QAC7D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,CAAC,GAAiB;gBACtB,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ;gBACnC,aAAa,EAAE,aAAa;gBAC5B,eAAe,EAAE,4BAAe,CAAC,UAAU;aAC5C,CAAA;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAO,CAAC,MAAM,CAAC,CAAA;QACvC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAkB;gBACvB,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ;gBACnC,aAAa,EAAE,aAAa;gBAC5B,UAAU,EAAE,uBAAU,CAAC,WAAW;aACnC,CAAA;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAO,CAAC,MAAM,CAAC,CAAA;QACvC,CAAC;IACH,CAAC;CACF;AA/DD,wDA+DC","sourcesContent":["import { ISessionDescription } from '../session/session-description'\nimport { ILooseObject } from '../../collections/collection'\nimport { MsgType } from '../../types'\nimport { ASessionMsgFactory, ObjectMutator } from '../session/a-session-msg-factory'\n\nimport {\n IStandardHeader,\n IUserRequest,\n IUserResponse,\n UserRequestType,\n UserStatus\n} from '../../types/FIXML50SP2'\n\nexport class FixmlSessionMsgFactory extends ASessionMsgFactory {\n constructor (readonly description: ISessionDescription, mutator: ObjectMutator | null = null) {\n super(description, mutator)\n }\n\n public logon (userRequestId: string = '', isResponse: boolean = false): ILooseObject {\n return this.fixmlLogon(userRequestId, isResponse)\n }\n\n public logout (msgType: string, text: string): ILooseObject {\n return this.fixmlLogout(msgType, msgType !== 'UserReq')\n }\n\n public header (msgType: string, seqNum: number = 0, time: Date = new Date(), overrideData?: Partial<IStandardHeader>): ILooseObject {\n const description = this.description\n const o: IStandardHeader = {\n SenderCompID: description.SenderCompId,\n TargetCompID: description.TargetCompID,\n SenderSubID: description.SenderSubID,\n TargetSubID: description.TargetSubID\n }\n return this.mutate(o, 'StandardHeader')\n }\n\n private fixmlLogon (userRequestId: string, isResponse: boolean): ILooseObject {\n const description = this.description\n if (!isResponse) {\n const o: IUserRequest = {\n Username: description.Username,\n Password: description.Password,\n UserRequestID: userRequestId,\n UserRequestType: UserRequestType.LogOnUser,\n // same escape hatch as the ascii factory - see ISessionDescription.Logon\n ...description.Logon\n }\n return this.mutate(o, MsgType.Logon)\n } else {\n const o: IUserResponse = {\n Username: description.Username,\n UserRequestID: userRequestId,\n UserStatus: UserStatus.LoggedIn\n }\n return this.mutate(o, MsgType.Logon)\n }\n }\n\n private fixmlLogout (userRequestId: string, isResponse: boolean): ILooseObject {\n if (!isResponse) {\n const o: IUserRequest = {\n Username: this.description.Username,\n UserRequestID: userRequestId,\n UserRequestType: UserRequestType.LogOffUser\n }\n return this.mutate(o, MsgType.Logout)\n } else {\n const o: IUserResponse = {\n Username: this.description.Username,\n UserRequestID: userRequestId,\n UserStatus: UserStatus.NotLoggedIn\n }\n return this.mutate(o, MsgType.Logout)\n }\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clone-session-description.js","sourceRoot":"","sources":["../../../src/transport/session/clone-session-description.ts"],"names":[],"mappings":";;AAyBA,0DAOC;AAMD,8BAEC;AAfD,SAAgB,uBAAuB,CACrC,WAAgC,EAChC,SAA0C;IAC1C,uCACK,WAAW,GACX,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE,CAAC,EACrB;AACH,CAAC;AAMD,SAAgB,SAAS,CAAE,WAAgC;IACzD,OAAO,
|
|
1
|
+
{"version":3,"file":"clone-session-description.js","sourceRoot":"","sources":["../../../src/transport/session/clone-session-description.ts"],"names":[],"mappings":";;AAyBA,0DAOC;AAMD,8BAEC;AAfD,SAAgB,uBAAuB,CACrC,WAAgC,EAChC,SAA0C;IAC1C,uCACK,WAAW,GACX,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE,CAAC,EACrB;AACH,CAAC;AAMD,SAAgB,SAAS,CAAE,WAAgC;IACzD,OAAO,WAAW,CAAA;AACpB,CAAC","sourcesContent":["import { IDynamicSessionParams, ISessionDescription } from './session-description'\n\n/**\n * A session description with the readonly modifiers stripped. The description is\n * immutable by design - it is loaded once from JSON and shared by everything in the\n * session - but an acceptor running in wildcard mode has to write the peer's\n * SenderCompID into its own copy once the Logon arrives. Cast through this type so\n * the (deliberately rare) mutation is explicit at every call site.\n */\nexport type MutableSessionDescription = {\n -readonly [K in keyof ISessionDescription]: ISessionDescription[K]\n}\n\n/**\n * Shallow clone a session description, optionally overriding identity fields.\n *\n * Each connection accepted by a FIX acceptor needs its own description: the\n * SessionId (and therefore the message store), the outbound header comp ids and the\n * session registry key are all derived from it. Sharing one description across\n * concurrent sessions makes every client collide on the same store.\n *\n * `application` and `store` are shared by reference - they are read only\n * configuration (host, port, dictionary, store directory) common to every session\n * on the listener.\n */\nexport function cloneSessionDescription (\n description: ISessionDescription,\n overrides?: Partial<IDynamicSessionParams>): ISessionDescription {\n return {\n ...description,\n ...(overrides ?? {})\n }\n}\n\n/**\n * Make a description writable. Use only where the FIX protocol itself forces a\n * late binding - i.e. wildcard TargetCompID resolved from the peer's Logon.\n */\nexport function asMutable (description: ISessionDescription): MutableSessionDescription {\n return description\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tls-options-factory.js","sourceRoot":"","sources":["../../../src/transport/tcp/tls-options-factory.ts"],"names":[],"mappings":";;;AAGA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAC5B,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAExB,MAAa,iBAAiB;IAQ5B,MAAM,CAAC,SAAS,CAAE,KAAU;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;YACnC,IAAI,OAAO,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAA;YACnC,IAAI,OAAO,KAAK,OAAO;gBAAE,OAAO,KAAK,CAAA;QACvC,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,CAAC,IAAI,CAAE,QAAgB;QAC3B,MAAM,IAAI,GAAW,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;QACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;QAC1C,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,EAC7B;YACE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG;SAC5B,CAAC,CAAA;IACN,CAAC;IAED,MAAM,CAAC,aAAa,CAAE,GAAgB;QACpC,IAAI,UAAU,GAAsB,IAAI,CAAA;QACxC,IAAI,GAAG,EAAE,CAAC;YACR,UAAU,GAAG;gBACX,WAAW,EAAE,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;gBACzD,kBAAkB,EAAE,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"tls-options-factory.js","sourceRoot":"","sources":["../../../src/transport/tcp/tls-options-factory.ts"],"names":[],"mappings":"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","sourcesContent":["import { ConnectionOptions, TlsOptions } from 'tls'\nimport { ITlsOptions } from './tls-options'\nimport { ITcpTransportDescription } from './tcp-transport-description'\nconst path = require('path')\nconst fs = require('fs')\n\nexport class TlsOptionsFactory {\n /*\n session descriptions are routinely hand written json, where a boolean flag is easily\n quoted by mistake i.e. \"rejectUnauthorized\": \"false\". node treats that string as truthy\n and so does exactly the opposite of what was intended, silently. accept the two string\n spellings rather than inverting the caller's meaning - anything else is left alone so it\n shows up as an obviously wrong value rather than being guessed at.\n */\n static asBoolean (value: any): any {\n if (typeof value === 'string') {\n const lowered = value.toLowerCase()\n if (lowered === 'true') return true\n if (lowered === 'false') return false\n }\n return value\n }\n\n static read (filePath: string): string {\n const root: string = path.join(__dirname, '../../../')\n const fullPath = path.join(root, filePath)\n return fs.readFileSync(fullPath,\n {\n encoding: 'utf8', flag: 'r'\n })\n }\n\n static getTlsOptions (tls: ITlsOptions): TlsOptions | null {\n let tlsOptions: TlsOptions | null = null\n if (tls) {\n tlsOptions = {\n requestCert: TlsOptionsFactory.asBoolean(tls.requestCert),\n rejectUnauthorized: TlsOptionsFactory.asBoolean(tls.rejectUnauthorized)\n }\n\n if (tls.key) {\n tlsOptions.key = TlsOptionsFactory.read(tls.key)\n tlsOptions.cert = tls?.cert ? TlsOptionsFactory.read(tls?.cert) : undefined\n }\n\n if (tls.ca && tls.ca.length > 0) {\n tlsOptions.ca = tls.ca.map(i => TlsOptionsFactory.read(i))\n }\n\n if (tls.nodeTlsServerOptions) {\n tlsOptions = {\n ...tlsOptions,\n ...tls.nodeTlsServerOptions\n }\n }\n }\n return tlsOptions\n }\n\n static getTlsConnectionOptions (tcp: ITcpTransportDescription): ConnectionOptions | null {\n let connectionOptions: ConnectionOptions | null = null\n const tls = tcp.tls\n if (tls) {\n connectionOptions = {\n port: tcp.port,\n host: tcp.host\n }\n if (tls.key) {\n connectionOptions.key = TlsOptionsFactory.read(tcp.tls?.key ?? '')\n connectionOptions.cert = tcp.tls?.cert ? TlsOptionsFactory.read(tcp?.tls?.cert) : undefined\n }\n if (tcp.tls.ca && tcp.tls.ca.length > 0) {\n connectionOptions.ca = tcp.tls.ca.map(i => TlsOptionsFactory.read(i))\n }\n if (tcp.tls.timeout) {\n connectionOptions.timeout = tcp.tls.timeout\n }\n if (tcp.tls.sessionTimeout) {\n connectionOptions.sessionTimeout = tcp.tls.sessionTimeout\n }\n // https://github.com/TimelordUK/jspurefix/issues/151 - ITlsOptions declares these and\n // getTlsOptions honours them on the server path, so map them here too rather than making\n // nodeTlsConnectionOptions the only spelling that works for an initiator. Applied before\n // the spread below so an explicit nodeTlsConnectionOptions value still wins.\n if (tls.requestCert !== undefined) {\n connectionOptions.requestCert = TlsOptionsFactory.asBoolean(tls.requestCert)\n }\n if (tls.rejectUnauthorized !== undefined) {\n connectionOptions.rejectUnauthorized = TlsOptionsFactory.asBoolean(tls.rejectUnauthorized)\n }\n if (tls.nodeTlsConnectionOptions) {\n connectionOptions = {\n ...connectionOptions,\n ...tls.nodeTlsConnectionOptions\n }\n if (connectionOptions.rejectUnauthorized !== undefined) {\n connectionOptions.rejectUnauthorized = TlsOptionsFactory.asBoolean(connectionOptions.rejectUnauthorized)\n }\n if (connectionOptions.requestCert !== undefined) {\n connectionOptions.requestCert = TlsOptionsFactory.asBoolean(connectionOptions.requestCert)\n }\n }\n }\n return connectionOptions\n }\n}\n"]}
|
package/jsfix.test_client.txt
CHANGED
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
2
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
3
|
-
8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
4
|
-
8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=
|
|
5
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
6
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
7
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
8
|
-
8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
9
|
-
8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=
|
|
10
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
11
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
12
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
13
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
14
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
15
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
16
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
17
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
18
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
19
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
20
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
21
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
22
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
23
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=0|57=fix|52=
|
|
24
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
25
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=5|57=fix|52=
|
|
26
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
27
|
-
8=FIX.4.4|9=0000110|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
28
|
-
8=FIX.4.4|9=0000125|35=3|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
29
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
30
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
31
|
-
8=FIX.4.4|9=0000111|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
32
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
33
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
34
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
35
|
-
8=FIX.4.4|9=0000146|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
36
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
37
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
38
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
39
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
40
|
-
8=FIX.4.4|9=0000145|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
41
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
42
|
-
8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
43
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
44
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
45
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
46
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
47
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
48
|
-
8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
49
|
-
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
50
|
-
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
51
|
-
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=4|57=fix|52=
|
|
52
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=5|57=fix|52=
|
|
53
|
-
8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
54
|
-
8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
55
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
56
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
57
|
-
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
58
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=4|57=fix|52=
|
|
59
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
60
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
61
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
62
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
1
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:05.466|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=098|
|
|
2
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:05.472|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=143|
|
|
3
|
+
8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:05.474|7=1|16=1|10=232|
|
|
4
|
+
8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260810-18:11:05.479|122=20260810-18:11:05.478|123=Y|36=2|10=104|
|
|
5
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:07.478|58=5|10=214|
|
|
6
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:10.361|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=088|
|
|
7
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:10.363|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=138|
|
|
8
|
+
8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:10.363|7=1|16=0|10=224|
|
|
9
|
+
8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260810-18:11:10.366|122=20260810-18:11:10.366|123=Y|36=2|10=087|
|
|
10
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:12.366|58=5|10=206|
|
|
11
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:14.866|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=102|
|
|
12
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:14.868|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=152|
|
|
13
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:14.868|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=105|
|
|
14
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:15.418|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=096|
|
|
15
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:15.420|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=137|
|
|
16
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:16.422|58=5|10=203|
|
|
17
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:11:16.870|58=5|10=211|
|
|
18
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:19.104|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=092|
|
|
19
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:19.105|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=141|
|
|
20
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:20.108|58=5|10=199|
|
|
21
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:22.872|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=098|
|
|
22
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:22.874|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=148|
|
|
23
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=0|57=fix|52=20260810-18:11:23.876|58=5|10=212|
|
|
24
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:26.372|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=097|
|
|
25
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=5|57=fix|52=20260810-18:11:26.374|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=151|
|
|
26
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:27.376|58=5|10=213|
|
|
27
|
+
8=FIX.4.4|9=0000110|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:29.861|98=0|141=Y|553=js-client|554=pwd-client|10=171|
|
|
28
|
+
8=FIX.4.4|9=0000125|35=3|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:29.863|45=1|372=A|373=1|58=msgType A missing required tag 108|10=006|
|
|
29
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:34.477|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=102|
|
|
30
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:34.478|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=151|
|
|
31
|
+
8=FIX.4.4|9=0000111|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:34.480|45=2|372=ZZ|373=11|58=msgType ZZ unknown|10=145|
|
|
32
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:11:36.480|58=5|10=210|
|
|
33
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:39.252|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=098|
|
|
34
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:39.253|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=147|
|
|
35
|
+
8=FIX.4.4|9=0000146|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:39.255|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 143|10=071|
|
|
36
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:11:41.255|58=5|10=206|
|
|
37
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:43.253|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=094|
|
|
38
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:47.748|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=107|
|
|
39
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:47.750|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=148|
|
|
40
|
+
8=FIX.4.4|9=0000145|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:47.751|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 59|10=028|
|
|
41
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:11:49.751|58=5|10=215|
|
|
42
|
+
8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:52.225|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=043|
|
|
43
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:52.226|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=142|
|
|
44
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:54.231|112=Mon, 10 Aug 2026 18:11:54 GMT|10=127|
|
|
45
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:11:56.233|112=Mon, 10 Aug 2026 18:11:56 GMT|10=134|
|
|
46
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:58.227|58=5|10=212|
|
|
47
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:12:00.702|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=087|
|
|
48
|
+
8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:12:00.703|98=0|108=2|141=Y|553=js-server|554=pwd-server|10=086|
|
|
49
|
+
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:12:02.709|112=Mon, 10 Aug 2026 18:12:02 GMT|10=125|
|
|
50
|
+
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:12:04.714|112=Mon, 10 Aug 2026 18:12:04 GMT|10=126|
|
|
51
|
+
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=4|57=fix|52=20260810-18:12:06.719|112=Mon, 10 Aug 2026 18:12:06 GMT|10=136|
|
|
52
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=5|57=fix|52=20260810-18:12:08.706|58=5|10=213|
|
|
53
|
+
8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:12:11.190|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=040|
|
|
54
|
+
8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:12:11.191|98=0|108=5|141=Y|553=js-server|554=pwd-server|10=092|
|
|
55
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:12:13.197|112=Mon, 10 Aug 2026 18:12:13 GMT|10=130|
|
|
56
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:12:15.199|112=Mon, 10 Aug 2026 18:12:15 GMT|10=137|
|
|
57
|
+
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:12:16.204|112=Mon, 10 Aug 2026 18:12:16 GMT|10=125|
|
|
58
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=4|57=fix|52=20260810-18:12:17.203|112=Mon, 10 Aug 2026 18:12:17 GMT|10=128|
|
|
59
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:12:19.194|58=5|10=214|
|
|
60
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:14:28.889|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=115|
|
|
61
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:14:28.899|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=164|
|
|
62
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:14:29.904|58=5|10=215|
|
package/jsfix.test_server.txt
CHANGED
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
2
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
3
|
-
8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
4
|
-
8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=
|
|
5
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
6
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
7
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
8
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
9
|
-
8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
10
|
-
8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=
|
|
11
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
12
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
13
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
14
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
15
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
16
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
17
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
18
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
19
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
20
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
21
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
22
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
23
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
24
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
25
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
26
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=0|57=fix|52=
|
|
27
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
28
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=5|57=fix|52=
|
|
29
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
30
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
31
|
-
8=FIX.4.4|9=0000110|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
32
|
-
8=FIX.4.4|9=0000125|35=3|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
33
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
34
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
1
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:05.466|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=098|
|
|
2
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:05.472|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=143|
|
|
3
|
+
8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:05.474|7=1|16=1|10=232|
|
|
4
|
+
8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260810-18:11:05.479|122=20260810-18:11:05.478|123=Y|36=2|10=104|
|
|
5
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:11:07.476|58=5|10=213|
|
|
6
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:07.478|58=5|10=214|
|
|
7
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:10.361|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=088|
|
|
8
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:10.363|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=138|
|
|
9
|
+
8=FIX.4.4|9=0000079|35=2|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:10.363|7=1|16=0|10=224|
|
|
10
|
+
8=FIX.4.4|9=0000112|35=4|49=accept-comp|56=init-comp|34=1|57=fix|43=Y|52=20260810-18:11:10.366|122=20260810-18:11:10.366|123=Y|36=2|10=087|
|
|
11
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:11:12.365|58=5|10=206|
|
|
12
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:12.366|58=5|10=206|
|
|
13
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:14.866|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=102|
|
|
14
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:14.868|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=152|
|
|
15
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:14.868|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=105|
|
|
16
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:15.418|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=096|
|
|
17
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:15.420|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=137|
|
|
18
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:16.421|58=5|10=202|
|
|
19
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:16.422|58=5|10=203|
|
|
20
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:19.104|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=092|
|
|
21
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:19.105|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=141|
|
|
22
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:20.107|58=5|10=198|
|
|
23
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:20.108|58=5|10=199|
|
|
24
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:22.872|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=098|
|
|
25
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:22.874|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=148|
|
|
26
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=0|57=fix|52=20260810-18:11:23.876|58=5|10=212|
|
|
27
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:26.372|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=097|
|
|
28
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=5|57=fix|52=20260810-18:11:26.374|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=151|
|
|
29
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:27.375|58=5|10=212|
|
|
30
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:27.376|58=5|10=213|
|
|
31
|
+
8=FIX.4.4|9=0000110|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:29.861|98=0|141=Y|553=js-client|554=pwd-client|10=171|
|
|
32
|
+
8=FIX.4.4|9=0000125|35=3|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:29.863|45=1|372=A|373=1|58=msgType A missing required tag 108|10=006|
|
|
33
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:34.477|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=102|
|
|
34
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:34.478|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=151|
|
|
35
35
|
8=FIX4.4|9=0000136|35=ZZ|49=init-comp|56=accept-comp|34=2|57=fix|52=20180902-12:25:28.980|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=177|
|
|
36
|
-
8=FIX.4.4|9=0000111|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
37
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
38
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
39
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
40
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
36
|
+
8=FIX.4.4|9=0000111|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:34.480|45=2|372=ZZ|373=11|58=msgType ZZ unknown|10=145|
|
|
37
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:11:36.479|58=5|10=218|
|
|
38
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:11:36.480|58=5|10=210|
|
|
39
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:39.252|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=098|
|
|
40
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:39.253|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=147|
|
|
41
41
|
8=FIX4.4|9=0000123|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20180902-12:25:59.161|999=Sun, 02 Sep 2018 12:25:59 GMT|10=95|
|
|
42
|
-
8=FIX.4.4|9=0000146|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
43
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
44
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
45
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
46
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
42
|
+
8=FIX.4.4|9=0000146|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:39.255|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 143|10=071|
|
|
43
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:11:41.254|58=5|10=205|
|
|
44
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:11:41.255|58=5|10=206|
|
|
45
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:47.748|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=107|
|
|
46
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:47.750|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=148|
|
|
47
47
|
8=FIX4.4|9=0000123|35=0|49=init-not!|56=accept-comp|34=2|57=fix|52=20180902-12:25:59.161|112=Sun, 02 Sep 2018 12:25:59 GMT|10=95|
|
|
48
|
-
8=FIX.4.4|9=0000145|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
49
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
50
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
51
|
-
8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
52
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
53
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
54
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
55
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=4|57=fix|52=
|
|
56
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
57
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
58
|
-
8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
59
|
-
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
60
|
-
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
61
|
-
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=4|57=fix|52=
|
|
62
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
63
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=5|57=fix|52=
|
|
64
|
-
8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
65
|
-
8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
66
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
67
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=
|
|
68
|
-
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
69
|
-
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=4|57=fix|52=
|
|
70
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=5|57=fix|52=
|
|
71
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=
|
|
72
|
-
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=
|
|
73
|
-
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=
|
|
74
|
-
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=
|
|
75
|
-
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=
|
|
48
|
+
8=FIX.4.4|9=0000145|35=3|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:47.751|45=2|372=0|373=5|58=msgType 0 checksum failed. received = 95 computed = 59|10=028|
|
|
49
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:11:49.750|58=5|10=214|
|
|
50
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:11:49.751|58=5|10=215|
|
|
51
|
+
8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:11:52.225|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=043|
|
|
52
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:11:52.226|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=142|
|
|
53
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:11:54.231|112=Mon, 10 Aug 2026 18:11:54 GMT|10=127|
|
|
54
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:11:56.233|112=Mon, 10 Aug 2026 18:11:56 GMT|10=134|
|
|
55
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=4|57=fix|52=20260810-18:11:58.226|58=5|10=213|
|
|
56
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:11:58.227|58=5|10=212|
|
|
57
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:12:00.702|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=087|
|
|
58
|
+
8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:12:00.703|98=0|108=2|141=Y|553=js-server|554=pwd-server|10=086|
|
|
59
|
+
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:12:02.709|112=Mon, 10 Aug 2026 18:12:02 GMT|10=125|
|
|
60
|
+
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:12:04.714|112=Mon, 10 Aug 2026 18:12:04 GMT|10=126|
|
|
61
|
+
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=4|57=fix|52=20260810-18:12:06.719|112=Mon, 10 Aug 2026 18:12:06 GMT|10=136|
|
|
62
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:12:08.705|58=5|10=209|
|
|
63
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=5|57=fix|52=20260810-18:12:08.706|58=5|10=213|
|
|
64
|
+
8=FIX.4.4|9=0000116|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:12:11.190|98=0|108=2|141=Y|553=js-client|554=pwd-client|10=040|
|
|
65
|
+
8=FIX.4.4|9=0000116|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:12:11.191|98=0|108=5|141=Y|553=js-server|554=pwd-server|10=092|
|
|
66
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:12:13.197|112=Mon, 10 Aug 2026 18:12:13 GMT|10=130|
|
|
67
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=3|57=fix|52=20260810-18:12:15.199|112=Mon, 10 Aug 2026 18:12:15 GMT|10=137|
|
|
68
|
+
8=FIX.4.4|9=0000104|35=0|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:12:16.204|112=Mon, 10 Aug 2026 18:12:16 GMT|10=125|
|
|
69
|
+
8=FIX.4.4|9=0000104|35=0|49=init-comp|56=accept-comp|34=4|57=fix|52=20260810-18:12:17.203|112=Mon, 10 Aug 2026 18:12:17 GMT|10=128|
|
|
70
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=5|57=fix|52=20260810-18:12:19.193|58=5|10=215|
|
|
71
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=3|57=fix|52=20260810-18:12:19.194|58=5|10=214|
|
|
72
|
+
8=FIX.4.4|9=0000117|35=A|49=init-comp|56=accept-comp|34=1|57=fix|52=20260810-18:14:28.889|98=0|108=30|141=Y|553=js-client|554=pwd-client|10=115|
|
|
73
|
+
8=FIX.4.4|9=0000117|35=A|49=accept-comp|56=init-comp|34=1|57=fix|52=20260810-18:14:28.899|98=0|108=30|141=Y|553=js-server|554=pwd-server|10=164|
|
|
74
|
+
8=FIX.4.4|9=0000075|35=5|49=init-comp|56=accept-comp|34=2|57=fix|52=20260810-18:14:29.902|58=5|10=213|
|
|
75
|
+
8=FIX.4.4|9=0000075|35=5|49=accept-comp|56=init-comp|34=2|57=fix|52=20260810-18:14:29.904|58=5|10=215|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jspurefix",
|
|
3
|
-
"version": "5.10.
|
|
3
|
+
"version": "5.10.4",
|
|
4
4
|
"description": "pure node js fix engine",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -27,6 +27,8 @@
|
|
|
27
27
|
"circular": "madge --circular --extensions js dist && madge --circular --extensions ts src",
|
|
28
28
|
"test": "jest --maxWorkers=1 --coverage",
|
|
29
29
|
"build": "tsc",
|
|
30
|
+
"lint": "eslint src",
|
|
31
|
+
"lint:fix": "eslint src --fix",
|
|
30
32
|
"test:debug": "node --inspect-brk node_modules/.bin/jest --runInBand",
|
|
31
33
|
"cmd": "node dist/jsfix-cmd",
|
|
32
34
|
"trim44": "node dist/jsfix-cmd --dict=qf44 --trim --type=\"0,1,2,3,4,5,AE\"",
|
|
@@ -83,7 +85,6 @@
|
|
|
83
85
|
"author": "",
|
|
84
86
|
"license": "MIT",
|
|
85
87
|
"dependencies": {
|
|
86
|
-
"align-text": "^1.0.2",
|
|
87
88
|
"axios": "^1.19.0",
|
|
88
89
|
"express": "^5.2.1",
|
|
89
90
|
"lodash": "^4.18.1",
|
|
@@ -91,7 +92,6 @@
|
|
|
91
92
|
"minimist": "^1.2.8",
|
|
92
93
|
"minimist-options": "^4.1.0",
|
|
93
94
|
"moment": "^2.30.1",
|
|
94
|
-
"node-fs-extra": "^0.8.2",
|
|
95
95
|
"reflect-metadata": "^0.2.2",
|
|
96
96
|
"sax": "^1.6.1",
|
|
97
97
|
"tsyringe": "^4.10.0",
|
|
@@ -108,12 +108,12 @@
|
|
|
108
108
|
"@types/lodash": "^4.17.25",
|
|
109
109
|
"@types/mathjs": "^9.4.2",
|
|
110
110
|
"@types/minimist": "^1.2.5",
|
|
111
|
-
"@types/node": "^
|
|
111
|
+
"@types/node": "^26.1.2",
|
|
112
112
|
"@types/request-promise-native": "^1.0.21",
|
|
113
113
|
"@types/sax": "^1.2.7",
|
|
114
114
|
"@types/winston": "^2.4.4",
|
|
115
115
|
"eslint": "^9.39.5",
|
|
116
|
-
"eslint-config-love": "^
|
|
116
|
+
"eslint-config-love": "^154.1.0",
|
|
117
117
|
"jest": "^30.4.2",
|
|
118
118
|
"madge": "^8.0.0",
|
|
119
119
|
"standard": "^17.1.2",
|
|
@@ -88,7 +88,7 @@ export class EncodeProxy {
|
|
|
88
88
|
if (!accepted) {
|
|
89
89
|
throw new Error(`type ${field.name} is a group and needs array or number, not "${typeof val}"`)
|
|
90
90
|
}
|
|
91
|
-
const gf: ContainedComponentField = field
|
|
91
|
+
const gf: ContainedComponentField = field
|
|
92
92
|
const j: number = val
|
|
93
93
|
const isNumber: boolean = !isNaN(val as number)
|
|
94
94
|
if (isNumber) {
|