@oanda/labs-instruments-table-widget 1.0.44 → 1.0.45

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 (52) hide show
  1. package/CHANGELOG.md +184 -0
  2. package/dist/main/InstrumentsTableWidget/InstrumentsTableWidget.js +4 -3
  3. package/dist/main/InstrumentsTableWidget/InstrumentsTableWidget.js.map +1 -1
  4. package/dist/main/InstrumentsTableWidget/Main.js +25 -21
  5. package/dist/main/InstrumentsTableWidget/Main.js.map +1 -1
  6. package/dist/main/InstrumentsTableWidget/config.js +7 -0
  7. package/dist/main/InstrumentsTableWidget/config.js.map +1 -1
  8. package/dist/main/InstrumentsTableWidget/constant.js +2 -1
  9. package/dist/main/InstrumentsTableWidget/constant.js.map +1 -1
  10. package/dist/main/InstrumentsTableWidget/types.js.map +1 -1
  11. package/dist/main/InstrumentsTableWidget/utils.js +21 -15
  12. package/dist/main/InstrumentsTableWidget/utils.js.map +1 -1
  13. package/dist/main/gql/resolveInstrumentsWithFilters.js +1 -1
  14. package/dist/main/gql/resolveInstrumentsWithFilters.js.map +1 -1
  15. package/dist/main/gql/types/gql.js +1 -1
  16. package/dist/main/gql/types/gql.js.map +1 -1
  17. package/dist/main/gql/types/graphql.js +6 -0
  18. package/dist/main/gql/types/graphql.js.map +1 -1
  19. package/dist/module/InstrumentsTableWidget/InstrumentsTableWidget.js +4 -3
  20. package/dist/module/InstrumentsTableWidget/InstrumentsTableWidget.js.map +1 -1
  21. package/dist/module/InstrumentsTableWidget/Main.js +27 -23
  22. package/dist/module/InstrumentsTableWidget/Main.js.map +1 -1
  23. package/dist/module/InstrumentsTableWidget/config.js +7 -0
  24. package/dist/module/InstrumentsTableWidget/config.js.map +1 -1
  25. package/dist/module/InstrumentsTableWidget/constant.js +2 -1
  26. package/dist/module/InstrumentsTableWidget/constant.js.map +1 -1
  27. package/dist/module/InstrumentsTableWidget/types.js.map +1 -1
  28. package/dist/module/InstrumentsTableWidget/utils.js +21 -15
  29. package/dist/module/InstrumentsTableWidget/utils.js.map +1 -1
  30. package/dist/module/gql/resolveInstrumentsWithFilters.js +1 -1
  31. package/dist/module/gql/resolveInstrumentsWithFilters.js.map +1 -1
  32. package/dist/module/gql/types/gql.js +1 -1
  33. package/dist/module/gql/types/gql.js.map +1 -1
  34. package/dist/module/gql/types/graphql.js +6 -0
  35. package/dist/module/gql/types/graphql.js.map +1 -1
  36. package/dist/types/InstrumentsTableWidget/Main.d.ts +2 -2
  37. package/dist/types/InstrumentsTableWidget/constant.d.ts +2 -1
  38. package/dist/types/InstrumentsTableWidget/types.d.ts +1 -0
  39. package/dist/types/InstrumentsTableWidget/utils.d.ts +7 -5
  40. package/dist/types/gql/types/gql.d.ts +2 -2
  41. package/dist/types/gql/types/graphql.d.ts +1 -0
  42. package/package.json +3 -3
  43. package/src/InstrumentsTableWidget/InstrumentsTableWidget.tsx +3 -6
  44. package/src/InstrumentsTableWidget/Main.tsx +33 -10
  45. package/src/InstrumentsTableWidget/config.ts +7 -0
  46. package/src/InstrumentsTableWidget/constant.ts +2 -0
  47. package/src/InstrumentsTableWidget/types.ts +1 -0
  48. package/src/InstrumentsTableWidget/utils.ts +29 -19
  49. package/src/gql/resolveInstrumentsWithFilters.ts +1 -0
  50. package/src/gql/types/gql.ts +3 -3
  51. package/src/gql/types/graphql.ts +5 -0
  52. package/test/utils.test.ts +255 -30
@@ -1,5 +1,5 @@
1
1
  var _templateObject;
2
2
  function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
3
3
  import { gql } from '@apollo/client';
4
- export const resolveInstrumentsWithFilters = gql(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n"])));
4
+ export const resolveInstrumentsWithFilters = gql(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n"])));
5
5
  //# sourceMappingURL=resolveInstrumentsWithFilters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveInstrumentsWithFilters.js","names":["gql","resolveInstrumentsWithFilters","_templateObject","_taggedTemplateLiteral"],"sources":["../../../src/gql/resolveInstrumentsWithFilters.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nexport const resolveInstrumentsWithFilters = gql`\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n`;\n"],"mappings":";;AAAA,SAASA,GAAG,QAAQ,gBAAgB;AAEpC,OAAO,MAAMC,6BAA6B,GAAGD,GAAG,CAAAE,eAAA,KAAAA,eAAA,GAAAC,sBAAA,wwBA+B/C","ignoreList":[]}
1
+ {"version":3,"file":"resolveInstrumentsWithFilters.js","names":["gql","resolveInstrumentsWithFilters","_templateObject","_taggedTemplateLiteral"],"sources":["../../../src/gql/resolveInstrumentsWithFilters.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nexport const resolveInstrumentsWithFilters = gql`\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n`;\n"],"mappings":";;AAAA,SAASA,GAAG,QAAQ,gBAAgB;AAEpC,OAAO,MAAMC,6BAA6B,GAAGD,GAAG,CAAAE,eAAA,KAAAA,eAAA,GAAAC,sBAAA,4xBAgC/C","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import * as types from './graphql';
2
2
  const documents = {
3
- '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n': types.ResolveInstrumentsWithFiltersDocument
3
+ '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n': types.ResolveInstrumentsWithFiltersDocument
4
4
  };
5
5
  export function graphql(source) {
6
6
  var _source;
@@ -1 +1 @@
1
- {"version":3,"file":"gql.js","names":["types","documents","ResolveInstrumentsWithFiltersDocument","graphql","source","_source"],"sources":["../../../../src/gql/types/gql.ts"],"sourcesContent":["/* eslint-disable */\nimport * as types from './graphql';\nimport { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\n\n/**\n * Map of all GraphQL operations in the project.\n *\n * This map has several performance disadvantages:\n * 1. It is not tree-shakeable, so it will include all operations in the project.\n * 2. It is not minifiable, so the string of a GraphQL query will be multiple times inside the bundle.\n * 3. It does not support dead code elimination, so it will add unused operations.\n *\n * Therefore it is highly recommended to use the babel or swc plugin for production.\n */\nconst documents = {\n '\\n query resolveInstrumentsWithFilters(\\n $division: Division!\\n $assetClass: [AssetClassName]\\n $dataSource: DataSource!\\n $instruments: [String]\\n $searchPattern: String\\n $tradeModes: [TradeMode]\\n $count: Int\\n $offset: Int\\n $withTradingModes: Boolean!\\n ) {\\n resolveInstrumentsWithFilters(\\n division: $division\\n assetClass: $assetClass\\n dataSource: $dataSource\\n instruments: $instruments\\n searchPattern: $searchPattern\\n count: $count\\n offset: $offset\\n tradeModes: $tradeModes\\n ) {\\n instruments {\\n name\\n displayName\\n tradeMode @include(if: $withTradingModes)\\n }\\n totalCount\\n updatedAt @include(if: $withTradingModes)\\n }\\n }\\n':\n types.ResolveInstrumentsWithFiltersDocument,\n};\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n *\n *\n * @example\n * ```ts\n * const query = graphql(`query GetUser($id: ID!) { user(id: $id) { name } }`);\n * ```\n *\n * The query argument is unknown!\n * Please regenerate the types.\n */\nexport function graphql(source: string): unknown;\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(\n source: '\\n query resolveInstrumentsWithFilters(\\n $division: Division!\\n $assetClass: [AssetClassName]\\n $dataSource: DataSource!\\n $instruments: [String]\\n $searchPattern: String\\n $tradeModes: [TradeMode]\\n $count: Int\\n $offset: Int\\n $withTradingModes: Boolean!\\n ) {\\n resolveInstrumentsWithFilters(\\n division: $division\\n assetClass: $assetClass\\n dataSource: $dataSource\\n instruments: $instruments\\n searchPattern: $searchPattern\\n count: $count\\n offset: $offset\\n tradeModes: $tradeModes\\n ) {\\n instruments {\\n name\\n displayName\\n tradeMode @include(if: $withTradingModes)\\n }\\n totalCount\\n updatedAt @include(if: $withTradingModes)\\n }\\n }\\n'\n): (typeof documents)['\\n query resolveInstrumentsWithFilters(\\n $division: Division!\\n $assetClass: [AssetClassName]\\n $dataSource: DataSource!\\n $instruments: [String]\\n $searchPattern: String\\n $tradeModes: [TradeMode]\\n $count: Int\\n $offset: Int\\n $withTradingModes: Boolean!\\n ) {\\n resolveInstrumentsWithFilters(\\n division: $division\\n assetClass: $assetClass\\n dataSource: $dataSource\\n instruments: $instruments\\n searchPattern: $searchPattern\\n count: $count\\n offset: $offset\\n tradeModes: $tradeModes\\n ) {\\n instruments {\\n name\\n displayName\\n tradeMode @include(if: $withTradingModes)\\n }\\n totalCount\\n updatedAt @include(if: $withTradingModes)\\n }\\n }\\n'];\n\nexport function graphql(source: string) {\n return (documents as any)[source] ?? {};\n}\n\nexport type DocumentType<TDocumentNode extends DocumentNode<any, any>> =\n TDocumentNode extends DocumentNode<infer TType, any> ? TType : never;\n"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,WAAW;AAalC,MAAMC,SAAS,GAAG;EAChB,kwBAAkwB,EAChwBD,KAAK,CAACE;AACV,CAAC;AAuBD,OAAO,SAASC,OAAOA,CAACC,MAAc,EAAE;EAAA,IAAAC,OAAA;EACtC,QAAAA,OAAA,GAAQJ,SAAS,CAASG,MAAM,CAAC,cAAAC,OAAA,cAAAA,OAAA,GAAI,CAAC,CAAC;AACzC","ignoreList":[]}
1
+ {"version":3,"file":"gql.js","names":["types","documents","ResolveInstrumentsWithFiltersDocument","graphql","source","_source"],"sources":["../../../../src/gql/types/gql.ts"],"sourcesContent":["/* eslint-disable */\nimport * as types from './graphql';\nimport { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\n\n/**\n * Map of all GraphQL operations in the project.\n *\n * This map has several performance disadvantages:\n * 1. It is not tree-shakeable, so it will include all operations in the project.\n * 2. It is not minifiable, so the string of a GraphQL query will be multiple times inside the bundle.\n * 3. It does not support dead code elimination, so it will add unused operations.\n *\n * Therefore it is highly recommended to use the babel or swc plugin for production.\n */\nconst documents = {\n '\\n query resolveInstrumentsWithFilters(\\n $division: Division!\\n $assetClass: [AssetClassName]\\n $dataSource: DataSource!\\n $instruments: [String]\\n $searchPattern: String\\n $tradeModes: [TradeMode]\\n $count: Int\\n $offset: Int\\n $withTradingModes: Boolean!\\n ) {\\n resolveInstrumentsWithFilters(\\n division: $division\\n assetClass: $assetClass\\n dataSource: $dataSource\\n instruments: $instruments\\n searchPattern: $searchPattern\\n count: $count\\n offset: $offset\\n tradeModes: $tradeModes\\n ) {\\n instruments {\\n name\\n displayName\\n tradeMode @include(if: $withTradingModes)\\n dataSource\\n }\\n totalCount\\n updatedAt @include(if: $withTradingModes)\\n }\\n }\\n':\n types.ResolveInstrumentsWithFiltersDocument,\n};\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n *\n *\n * @example\n * ```ts\n * const query = graphql(`query GetUser($id: ID!) { user(id: $id) { name } }`);\n * ```\n *\n * The query argument is unknown!\n * Please regenerate the types.\n */\nexport function graphql(source: string): unknown;\n\n/**\n * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.\n */\nexport function graphql(\n source: '\\n query resolveInstrumentsWithFilters(\\n $division: Division!\\n $assetClass: [AssetClassName]\\n $dataSource: DataSource!\\n $instruments: [String]\\n $searchPattern: String\\n $tradeModes: [TradeMode]\\n $count: Int\\n $offset: Int\\n $withTradingModes: Boolean!\\n ) {\\n resolveInstrumentsWithFilters(\\n division: $division\\n assetClass: $assetClass\\n dataSource: $dataSource\\n instruments: $instruments\\n searchPattern: $searchPattern\\n count: $count\\n offset: $offset\\n tradeModes: $tradeModes\\n ) {\\n instruments {\\n name\\n displayName\\n tradeMode @include(if: $withTradingModes)\\n dataSource\\n }\\n totalCount\\n updatedAt @include(if: $withTradingModes)\\n }\\n }\\n'\n): (typeof documents)['\\n query resolveInstrumentsWithFilters(\\n $division: Division!\\n $assetClass: [AssetClassName]\\n $dataSource: DataSource!\\n $instruments: [String]\\n $searchPattern: String\\n $tradeModes: [TradeMode]\\n $count: Int\\n $offset: Int\\n $withTradingModes: Boolean!\\n ) {\\n resolveInstrumentsWithFilters(\\n division: $division\\n assetClass: $assetClass\\n dataSource: $dataSource\\n instruments: $instruments\\n searchPattern: $searchPattern\\n count: $count\\n offset: $offset\\n tradeModes: $tradeModes\\n ) {\\n instruments {\\n name\\n displayName\\n tradeMode @include(if: $withTradingModes)\\n dataSource\\n }\\n totalCount\\n updatedAt @include(if: $withTradingModes)\\n }\\n }\\n'];\n\nexport function graphql(source: string) {\n return (documents as any)[source] ?? {};\n}\n\nexport type DocumentType<TDocumentNode extends DocumentNode<any, any>> =\n TDocumentNode extends DocumentNode<infer TType, any> ? TType : never;\n"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,WAAW;AAalC,MAAMC,SAAS,GAAG;EAChB,sxBAAsxB,EACpxBD,KAAK,CAACE;AACV,CAAC;AAuBD,OAAO,SAASC,OAAOA,CAACC,MAAc,EAAE;EAAA,IAAAC,OAAA;EACtC,QAAAA,OAAA,GAAQJ,SAAS,CAASG,MAAM,CAAC,cAAAC,OAAA,cAAAA,OAAA,GAAI,CAAC,CAAC;AACzC","ignoreList":[]}
@@ -485,6 +485,12 @@ export const ResolveInstrumentsWithFiltersDocument = {
485
485
  }
486
486
  }]
487
487
  }]
488
+ }, {
489
+ kind: 'Field',
490
+ name: {
491
+ kind: 'Name',
492
+ value: 'dataSource'
493
+ }
488
494
  }]
489
495
  }
490
496
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"graphql.js","names":["AssetClassName","BookType","CorrelationTimeUnit","CurrencyName","CurrencyPowerBalanceTimeUnit","DataSource","Division","Granularity","OrderBookDataSource","Region","Sort","TimeSpan","TopicalSort","TradeMode","ValueAtRiskBars","ValueAtRiskDuration","VolatilityChartTimeSpan","VolatilityChartTimeUnit","ResolveInstrumentsWithFiltersDocument","kind","definitions","operation","name","value","variableDefinitions","variable","type","selectionSet","selections","arguments","directives"],"sources":["../../../../src/gql/types/graphql.ts"],"sourcesContent":["/* eslint-disable */\nimport { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\nexport type Maybe<T> = T | null;\nexport type InputMaybe<T> = Maybe<T>;\nexport type Exact<T extends { [key: string]: unknown }> = {\n [K in keyof T]: T[K];\n};\nexport type MakeOptional<T, K extends keyof T> = Omit<T, K> & {\n [SubKey in K]?: Maybe<T[SubKey]>;\n};\nexport type MakeMaybe<T, K extends keyof T> = Omit<T, K> & {\n [SubKey in K]: Maybe<T[SubKey]>;\n};\nexport type MakeEmpty<\n T extends { [key: string]: unknown },\n K extends keyof T,\n> = { [_ in K]?: never };\nexport type Incremental<T> =\n | T\n | {\n [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never;\n };\n/** All built-in and custom scalars, mapped to their actual values */\nexport type Scalars = {\n ID: { input: string; output: string };\n String: { input: string; output: string };\n Boolean: { input: boolean; output: boolean };\n Int: { input: number; output: number };\n Float: { input: number; output: number };\n};\n\nexport type AssetClass = {\n __typename?: 'AssetClass';\n instruments: Array<Instrument>;\n name: Scalars['String']['output'];\n};\n\nexport enum AssetClassName {\n Commodities = 'COMMODITIES',\n Cryptocurrency = 'CRYPTOCURRENCY',\n Currency = 'CURRENCY',\n EquityShares = 'EQUITY_SHARES',\n Etfs = 'ETFS',\n Indices = 'INDICES',\n Rates = 'RATES',\n}\n\nexport enum BookType {\n Order = 'ORDER',\n Position = 'POSITION',\n}\n\nexport type Candle = {\n __typename?: 'Candle';\n close: Scalars['Float']['output'];\n high: Scalars['Float']['output'];\n low: Scalars['Float']['output'];\n open: Scalars['Float']['output'];\n /** UTC Timestamp */\n point: Scalars['String']['output'];\n};\n\nexport type CandlesData = {\n __typename?: 'CandlesData';\n candle: Array<Maybe<Candle>>;\n granularity: Granularity;\n instrument: Instrument;\n pipsLocation: Scalars['Int']['output'];\n timeSpan: TimeSpan;\n};\n\nexport type CorrelationHeatmap = {\n __typename?: 'CorrelationHeatmap';\n baseInstrument: Instrument;\n heatmap: Array<Heatmap>;\n};\n\nexport type CorrelationMatrix = {\n __typename?: 'CorrelationMatrix';\n baseTimeUnit: CorrelationTimeUnit;\n matrix: Array<Matrix>;\n};\n\nexport enum CorrelationTimeUnit {\n H1 = 'H1',\n H4 = 'H4',\n H24 = 'H24',\n M1 = 'M1',\n M3 = 'M3',\n M6 = 'M6',\n W1 = 'W1',\n Y1 = 'Y1',\n}\n\nexport enum CurrencyName {\n Aud = 'AUD',\n Cad = 'CAD',\n Chf = 'CHF',\n Eur = 'EUR',\n Gbp = 'GBP',\n Jpy = 'JPY',\n Nzd = 'NZD',\n Usd = 'USD',\n}\n\nexport type CurrencyPower = {\n __typename?: 'CurrencyPower';\n /** UTC Timestamp */\n point: Scalars['String']['output'];\n price: Scalars['Float']['output'];\n};\n\nexport type CurrencyPowerBalance = {\n __typename?: 'CurrencyPowerBalance';\n currency: CurrencyName;\n power: Array<CurrencyPower>;\n updatedAt: Scalars['String']['output'];\n};\n\nexport enum CurrencyPowerBalanceTimeUnit {\n CurrentDay = 'CURRENT_DAY',\n H4 = 'H4',\n H8 = 'H8',\n H24 = 'H24',\n M1 = 'M1',\n M3 = 'M3',\n PreviousDay = 'PREVIOUS_DAY',\n W1 = 'W1',\n}\n\nexport type CurrencyStrength = {\n __typename?: 'CurrencyStrength';\n currency: CurrencyName;\n strengthRelation?: Maybe<Array<StrengthRelation>>;\n updatedAt: Scalars['String']['output'];\n};\n\nexport enum DataSource {\n All = 'ALL',\n Mt5 = 'MT5',\n V20 = 'V20',\n}\n\nexport enum Division {\n Oap = 'OAP',\n Oau = 'OAU',\n Oc = 'OC',\n Ocan = 'OCAN',\n Oel = 'OEL',\n Ogm = 'OGM',\n Oj = 'OJ',\n Opt = 'OPT',\n Otms = 'OTMS',\n}\n\nexport type ExtendedInstrument = {\n __typename?: 'ExtendedInstrument';\n dataSource: DataSource;\n displayName: Scalars['String']['output'];\n name: Scalars['String']['output'];\n tradeMode: TradeMode;\n};\n\nexport enum Granularity {\n D1 = 'D1',\n H1 = 'H1',\n H4 = 'H4',\n M1 = 'M1',\n M15 = 'M15',\n}\n\nexport type Heatmap = {\n __typename?: 'Heatmap';\n instrument: Instrument;\n timeCorrelation: Array<TimeCorrelation>;\n};\n\nexport type Instrument = {\n __typename?: 'Instrument';\n displayName: Scalars['String']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type InstrumentCorrelation = {\n __typename?: 'InstrumentCorrelation';\n instrument: Instrument;\n value?: Maybe<Scalars['Float']['output']>;\n};\n\nexport type InstrumentTableResult = {\n __typename?: 'InstrumentTableResult';\n instruments: Array<ExtendedInstrument>;\n totalCount: Scalars['Int']['output'];\n updatedAt: Scalars['String']['output'];\n};\n\nexport type MarginRate = {\n __typename?: 'MarginRate';\n instrument: Instrument;\n rate: Scalars['Float']['output'];\n};\n\nexport type Matrix = {\n __typename?: 'Matrix';\n instrument: Instrument;\n instrumentCorrelation: Array<InstrumentCorrelation>;\n};\n\nexport enum OrderBookDataSource {\n Ny4 = 'NY4',\n Ny4Mt5 = 'NY4_MT5',\n Ty3 = 'TY3',\n}\n\nexport type OrderPositionBucket = {\n __typename?: 'OrderPositionBucket';\n longCountPercent: Scalars['Float']['output'];\n price: Scalars['Float']['output'];\n shortCountPercent: Scalars['Float']['output'];\n};\n\nexport type OrderPositionData = {\n __typename?: 'OrderPositionData';\n bucketWidth: Scalars['Float']['output'];\n buckets: Array<Maybe<OrderPositionBucket>>;\n dataSource?: Maybe<Scalars['String']['output']>;\n instrument: Scalars['String']['output'];\n price?: Maybe<Scalars['Float']['output']>;\n region?: Maybe<Scalars['String']['output']>;\n time: Scalars['String']['output'];\n unixTime: Scalars['Int']['output'];\n};\n\nexport type Query = {\n __typename?: 'Query';\n assetClasses?: Maybe<Array<Maybe<AssetClass>>>;\n correlationHeatmap: CorrelationHeatmap;\n correlationMatrix: CorrelationMatrix;\n currencyPowerBalance?: Maybe<Array<CurrencyPowerBalance>>;\n currencyStrength?: Maybe<Array<CurrencyStrength>>;\n isAllowedPartner?: Maybe<Scalars['Boolean']['output']>;\n mapInstrumentNames?: Maybe<Array<Maybe<Instrument>>>;\n marginRates?: Maybe<Array<MarginRate>>;\n orderPositionBooks: Array<Maybe<OrderPositionData>>;\n priceCandles: CandlesData;\n resolveInstrumentsByDivision?: Maybe<Array<Instrument>>;\n resolveInstrumentsWithFilters?: Maybe<InstrumentTableResult>;\n sentiment?: Maybe<Array<SentimentInstrument>>;\n sentimentList?: Maybe<Array<SentimentInstrument>>;\n topicalInstruments?: Maybe<Array<TopicalInstrument>>;\n topicalInstrumentsCharts?: Maybe<Array<TopicalInstrumentChart>>;\n topicalInstrumentsTotalCount: Scalars['Int']['output'];\n valueAtRiskAssetClasses?: Maybe<Array<AssetClass>>;\n valueAtRiskChart?: Maybe<ValueAtRiskChart>;\n volatilityChart?: Maybe<Array<Maybe<VolatilityChart>>>;\n volatilityChartAssetClasses?: Maybe<Array<AssetClass>>;\n};\n\nexport type QueryAssetClassesArgs = {\n division: Division;\n};\n\nexport type QueryCorrelationHeatmapArgs = {\n division: Division;\n instruments?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;\n timeSpans?: InputMaybe<Array<InputMaybe<CorrelationTimeUnit>>>;\n};\n\nexport type QueryCorrelationMatrixArgs = {\n division: Division;\n instruments?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;\n};\n\nexport type QueryCurrencyPowerBalanceArgs = {\n timeUnit: CurrencyPowerBalanceTimeUnit;\n};\n\nexport type QueryIsAllowedPartnerArgs = {\n url: Scalars['String']['input'];\n};\n\nexport type QueryMapInstrumentNamesArgs = {\n division?: InputMaybe<Division>;\n instruments: Array<InputMaybe<Scalars['String']['input']>>;\n};\n\nexport type QueryMarginRatesArgs = {\n dataSource: DataSource;\n division: Division;\n instruments?: InputMaybe<Array<Scalars['String']['input']>>;\n tradingGroup: Scalars['Int']['input'];\n};\n\nexport type QueryOrderPositionBooksArgs = {\n bookType: BookType;\n dataSource?: InputMaybe<OrderBookDataSource>;\n instrument: Scalars['String']['input'];\n recentHours?: InputMaybe<Scalars['Int']['input']>;\n region?: InputMaybe<Region>;\n};\n\nexport type QueryPriceCandlesArgs = {\n dataSource: DataSource;\n division: Division;\n granularity: Granularity;\n instrument: Scalars['String']['input'];\n timeSpan: TimeSpan;\n};\n\nexport type QueryResolveInstrumentsByDivisionArgs = {\n division: Division;\n instruments: Array<InputMaybe<Scalars['String']['input']>>;\n};\n\nexport type QueryResolveInstrumentsWithFiltersArgs = {\n assetClass?: InputMaybe<Array<InputMaybe<AssetClassName>>>;\n count?: InputMaybe<Scalars['Int']['input']>;\n dataSource: DataSource;\n division: Division;\n instruments?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;\n offset?: InputMaybe<Scalars['Int']['input']>;\n searchPattern?: InputMaybe<Scalars['String']['input']>;\n tradeModes?: InputMaybe<Array<InputMaybe<TradeMode>>>;\n};\n\nexport type QuerySentimentArgs = {\n division?: InputMaybe<Division>;\n name: Scalars['String']['input'];\n};\n\nexport type QuerySentimentListArgs = {\n division?: InputMaybe<Division>;\n sort?: InputMaybe<Sort>;\n};\n\nexport type QueryTopicalInstrumentsArgs = {\n assetClass?: InputMaybe<AssetClassName>;\n count?: InputMaybe<Scalars['Int']['input']>;\n division?: InputMaybe<Division>;\n offset?: InputMaybe<Scalars['Int']['input']>;\n sort: TopicalSort;\n};\n\nexport type QueryTopicalInstrumentsChartsArgs = {\n division?: InputMaybe<Division>;\n instruments?: InputMaybe<Array<Scalars['String']['input']>>;\n};\n\nexport type QueryTopicalInstrumentsTotalCountArgs = {\n assetClass?: InputMaybe<AssetClassName>;\n division?: InputMaybe<Division>;\n sort: TopicalSort;\n};\n\nexport type QueryValueAtRiskAssetClassesArgs = {\n division?: InputMaybe<Division>;\n};\n\nexport type QueryValueAtRiskChartArgs = {\n bars: ValueAtRiskBars;\n division?: InputMaybe<Division>;\n duration: ValueAtRiskDuration;\n instrument: Scalars['String']['input'];\n};\n\nexport type QueryVolatilityChartArgs = {\n division?: InputMaybe<Division>;\n instrument: Scalars['String']['input'];\n timeSpan: VolatilityChartTimeSpan;\n timeUnit: VolatilityChartTimeUnit;\n};\n\nexport type QueryVolatilityChartAssetClassesArgs = {\n division?: InputMaybe<Division>;\n};\n\nexport enum Region {\n Amer = 'AMER',\n Apac = 'APAC',\n Emea = 'EMEA',\n}\n\nexport type Sentiment = {\n __typename?: 'Sentiment';\n longPercent: Scalars['Float']['output'];\n shortPercent: Scalars['Float']['output'];\n};\n\nexport type SentimentInstrument = {\n __typename?: 'SentimentInstrument';\n displayName: Scalars['String']['output'];\n name: Scalars['String']['output'];\n sentiment: Sentiment;\n updatedAt: Scalars['String']['output'];\n};\n\nexport enum Sort {\n Bearish = 'BEARISH',\n Bullish = 'BULLISH',\n}\n\nexport type StrengthRelation = {\n __typename?: 'StrengthRelation';\n currency: CurrencyName;\n percentage: Scalars['Float']['output'];\n};\n\nexport type TimeCorrelation = {\n __typename?: 'TimeCorrelation';\n timeUnit: CorrelationTimeUnit;\n value?: Maybe<Scalars['Float']['output']>;\n};\n\nexport enum TimeSpan {\n Day_1 = 'DAY_1',\n Day_2 = 'DAY_2',\n Hour_1 = 'HOUR_1',\n Hour_12 = 'HOUR_12',\n Month_1 = 'MONTH_1',\n Month_3 = 'MONTH_3',\n Month_6 = 'MONTH_6',\n Week_1 = 'WEEK_1',\n Week_2 = 'WEEK_2',\n Week_3 = 'WEEK_3',\n Year_1 = 'YEAR_1',\n Year_5 = 'YEAR_5',\n}\n\nexport type TopicalInstrument = {\n __typename?: 'TopicalInstrument';\n assetClass?: Maybe<AssetClassName>;\n displayName: Scalars['String']['output'];\n name: Scalars['String']['output'];\n sentiment: Sentiment;\n updatedAt: Scalars['String']['output'];\n};\n\nexport type TopicalInstrumentChart = {\n __typename?: 'TopicalInstrumentChart';\n chart?: Maybe<Array<Scalars['Float']['output']>>;\n name: Scalars['String']['output'];\n};\n\nexport enum TopicalSort {\n Bearish = 'BEARISH',\n Bullish = 'BULLISH',\n Hot = 'HOT',\n Popular = 'POPULAR',\n Volatile = 'VOLATILE',\n}\n\nexport enum TradeMode {\n TradeCloseonly = 'TRADE_CLOSEONLY',\n TradeDisabled = 'TRADE_DISABLED',\n TradeFull = 'TRADE_FULL',\n TradeLongonly = 'TRADE_LONGONLY',\n TradeShortonly = 'TRADE_SHORTONLY',\n TradeUndefined = 'TRADE_UNDEFINED',\n}\n\nexport enum ValueAtRiskBars {\n C100 = 'C100',\n C200 = 'C200',\n C300 = 'C300',\n}\n\nexport type ValueAtRiskChart = {\n __typename?: 'ValueAtRiskChart';\n down: ValueAtRiskChartData;\n up: ValueAtRiskChartData;\n};\n\nexport type ValueAtRiskChartData = {\n __typename?: 'ValueAtRiskChartData';\n average: Scalars['Float']['output'];\n max: Scalars['Float']['output'];\n median: Scalars['Float']['output'];\n points?: Maybe<Array<ValueAtRiskChartPoint>>;\n threshold: Scalars['Float']['output'];\n};\n\nexport type ValueAtRiskChartPoint = {\n __typename?: 'ValueAtRiskChartPoint';\n percent: Scalars['Float']['output'];\n pips: Scalars['Float']['output'];\n};\n\nexport enum ValueAtRiskDuration {\n C1 = 'C1',\n C2 = 'C2',\n C3 = 'C3',\n C4 = 'C4',\n C5 = 'C5',\n C10 = 'C10',\n}\n\nexport type VolatilityChart = {\n __typename?: 'VolatilityChart';\n pips: Scalars['Float']['output'];\n /** Time point - hour in format hh:mm, Date in UTC, Week in format 'Mo' */\n point: Scalars['String']['output'];\n updatedAt: Scalars['String']['output'];\n};\n\nexport enum VolatilityChartTimeSpan {\n /** Valid for: H */\n D5 = 'D5',\n /** Valid for: H */\n D10 = 'D10',\n /** Valid for: D */\n M1 = 'M1',\n /** Valid for: D */\n M3 = 'M3',\n /** Valid for: W */\n W5 = 'W5',\n /** Valid for: W */\n W10 = 'W10',\n}\n\nexport enum VolatilityChartTimeUnit {\n D = 'D',\n H = 'H',\n W = 'W',\n}\n\nexport type ResolveInstrumentsWithFiltersQueryVariables = Exact<{\n division: Division;\n assetClass?: InputMaybe<\n Array<InputMaybe<AssetClassName>> | InputMaybe<AssetClassName>\n >;\n dataSource: DataSource;\n instruments?: InputMaybe<\n | Array<InputMaybe<Scalars['String']['input']>>\n | InputMaybe<Scalars['String']['input']>\n >;\n searchPattern?: InputMaybe<Scalars['String']['input']>;\n tradeModes?: InputMaybe<Array<InputMaybe<TradeMode>> | InputMaybe<TradeMode>>;\n count?: InputMaybe<Scalars['Int']['input']>;\n offset?: InputMaybe<Scalars['Int']['input']>;\n withTradingModes: Scalars['Boolean']['input'];\n}>;\n\nexport type ResolveInstrumentsWithFiltersQuery = {\n __typename?: 'Query';\n resolveInstrumentsWithFilters?: {\n __typename?: 'InstrumentTableResult';\n totalCount: number;\n updatedAt?: string;\n instruments: Array<{\n __typename?: 'ExtendedInstrument';\n name: string;\n displayName: string;\n tradeMode?: TradeMode;\n }>;\n } | null;\n};\n\nexport const ResolveInstrumentsWithFiltersDocument = {\n kind: 'Document',\n definitions: [\n {\n kind: 'OperationDefinition',\n operation: 'query',\n name: { kind: 'Name', value: 'resolveInstrumentsWithFilters' },\n variableDefinitions: [\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'division' },\n },\n type: {\n kind: 'NonNullType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'Division' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'assetClass' },\n },\n type: {\n kind: 'ListType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'AssetClassName' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'dataSource' },\n },\n type: {\n kind: 'NonNullType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'DataSource' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'instruments' },\n },\n type: {\n kind: 'ListType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'String' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'searchPattern' },\n },\n type: { kind: 'NamedType', name: { kind: 'Name', value: 'String' } },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'tradeModes' },\n },\n type: {\n kind: 'ListType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'TradeMode' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'count' },\n },\n type: { kind: 'NamedType', name: { kind: 'Name', value: 'Int' } },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'offset' },\n },\n type: { kind: 'NamedType', name: { kind: 'Name', value: 'Int' } },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'withTradingModes' },\n },\n type: {\n kind: 'NonNullType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'Boolean' },\n },\n },\n },\n ],\n selectionSet: {\n kind: 'SelectionSet',\n selections: [\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'resolveInstrumentsWithFilters' },\n arguments: [\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'division' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'division' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'assetClass' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'assetClass' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'dataSource' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'dataSource' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'instruments' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'instruments' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'searchPattern' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'searchPattern' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'count' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'count' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'offset' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'offset' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'tradeModes' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'tradeModes' },\n },\n },\n ],\n selectionSet: {\n kind: 'SelectionSet',\n selections: [\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'instruments' },\n selectionSet: {\n kind: 'SelectionSet',\n selections: [\n { kind: 'Field', name: { kind: 'Name', value: 'name' } },\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'displayName' },\n },\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'tradeMode' },\n directives: [\n {\n kind: 'Directive',\n name: { kind: 'Name', value: 'include' },\n arguments: [\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'if' },\n value: {\n kind: 'Variable',\n name: {\n kind: 'Name',\n value: 'withTradingModes',\n },\n },\n },\n ],\n },\n ],\n },\n ],\n },\n },\n { kind: 'Field', name: { kind: 'Name', value: 'totalCount' } },\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'updatedAt' },\n directives: [\n {\n kind: 'Directive',\n name: { kind: 'Name', value: 'include' },\n arguments: [\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'if' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'withTradingModes' },\n },\n },\n ],\n },\n ],\n },\n ],\n },\n },\n ],\n },\n },\n ],\n} as unknown as DocumentNode<\n ResolveInstrumentsWithFiltersQuery,\n ResolveInstrumentsWithFiltersQueryVariables\n>;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"graphql.js","names":["AssetClassName","BookType","CorrelationTimeUnit","CurrencyName","CurrencyPowerBalanceTimeUnit","DataSource","Division","Granularity","OrderBookDataSource","Region","Sort","TimeSpan","TopicalSort","TradeMode","ValueAtRiskBars","ValueAtRiskDuration","VolatilityChartTimeSpan","VolatilityChartTimeUnit","ResolveInstrumentsWithFiltersDocument","kind","definitions","operation","name","value","variableDefinitions","variable","type","selectionSet","selections","arguments","directives"],"sources":["../../../../src/gql/types/graphql.ts"],"sourcesContent":["/* eslint-disable */\nimport { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';\nexport type Maybe<T> = T | null;\nexport type InputMaybe<T> = Maybe<T>;\nexport type Exact<T extends { [key: string]: unknown }> = {\n [K in keyof T]: T[K];\n};\nexport type MakeOptional<T, K extends keyof T> = Omit<T, K> & {\n [SubKey in K]?: Maybe<T[SubKey]>;\n};\nexport type MakeMaybe<T, K extends keyof T> = Omit<T, K> & {\n [SubKey in K]: Maybe<T[SubKey]>;\n};\nexport type MakeEmpty<\n T extends { [key: string]: unknown },\n K extends keyof T,\n> = { [_ in K]?: never };\nexport type Incremental<T> =\n | T\n | {\n [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never;\n };\n/** All built-in and custom scalars, mapped to their actual values */\nexport type Scalars = {\n ID: { input: string; output: string };\n String: { input: string; output: string };\n Boolean: { input: boolean; output: boolean };\n Int: { input: number; output: number };\n Float: { input: number; output: number };\n};\n\nexport type AssetClass = {\n __typename?: 'AssetClass';\n instruments: Array<Instrument>;\n name: Scalars['String']['output'];\n};\n\nexport enum AssetClassName {\n Commodities = 'COMMODITIES',\n Cryptocurrency = 'CRYPTOCURRENCY',\n Currency = 'CURRENCY',\n EquityShares = 'EQUITY_SHARES',\n Etfs = 'ETFS',\n Indices = 'INDICES',\n Rates = 'RATES',\n}\n\nexport enum BookType {\n Order = 'ORDER',\n Position = 'POSITION',\n}\n\nexport type Candle = {\n __typename?: 'Candle';\n close: Scalars['Float']['output'];\n high: Scalars['Float']['output'];\n low: Scalars['Float']['output'];\n open: Scalars['Float']['output'];\n /** UTC Timestamp */\n point: Scalars['String']['output'];\n};\n\nexport type CandlesData = {\n __typename?: 'CandlesData';\n candle: Array<Maybe<Candle>>;\n granularity: Granularity;\n instrument: Instrument;\n pipsLocation: Scalars['Int']['output'];\n timeSpan: TimeSpan;\n};\n\nexport type CorrelationHeatmap = {\n __typename?: 'CorrelationHeatmap';\n baseInstrument: Instrument;\n heatmap: Array<Heatmap>;\n};\n\nexport type CorrelationMatrix = {\n __typename?: 'CorrelationMatrix';\n baseTimeUnit: CorrelationTimeUnit;\n matrix: Array<Matrix>;\n};\n\nexport enum CorrelationTimeUnit {\n H1 = 'H1',\n H4 = 'H4',\n H24 = 'H24',\n M1 = 'M1',\n M3 = 'M3',\n M6 = 'M6',\n W1 = 'W1',\n Y1 = 'Y1',\n}\n\nexport enum CurrencyName {\n Aud = 'AUD',\n Cad = 'CAD',\n Chf = 'CHF',\n Eur = 'EUR',\n Gbp = 'GBP',\n Jpy = 'JPY',\n Nzd = 'NZD',\n Usd = 'USD',\n}\n\nexport type CurrencyPower = {\n __typename?: 'CurrencyPower';\n /** UTC Timestamp */\n point: Scalars['String']['output'];\n price: Scalars['Float']['output'];\n};\n\nexport type CurrencyPowerBalance = {\n __typename?: 'CurrencyPowerBalance';\n currency: CurrencyName;\n power: Array<CurrencyPower>;\n updatedAt: Scalars['String']['output'];\n};\n\nexport enum CurrencyPowerBalanceTimeUnit {\n CurrentDay = 'CURRENT_DAY',\n H4 = 'H4',\n H8 = 'H8',\n H24 = 'H24',\n M1 = 'M1',\n M3 = 'M3',\n PreviousDay = 'PREVIOUS_DAY',\n W1 = 'W1',\n}\n\nexport type CurrencyStrength = {\n __typename?: 'CurrencyStrength';\n currency: CurrencyName;\n strengthRelation?: Maybe<Array<StrengthRelation>>;\n updatedAt: Scalars['String']['output'];\n};\n\nexport enum DataSource {\n All = 'ALL',\n Mt5 = 'MT5',\n V20 = 'V20',\n}\n\nexport enum Division {\n Oap = 'OAP',\n Oau = 'OAU',\n Oc = 'OC',\n Ocan = 'OCAN',\n Oel = 'OEL',\n Ogm = 'OGM',\n Oj = 'OJ',\n Opt = 'OPT',\n Otms = 'OTMS',\n}\n\nexport type ExtendedInstrument = {\n __typename?: 'ExtendedInstrument';\n dataSource: DataSource;\n displayName: Scalars['String']['output'];\n name: Scalars['String']['output'];\n tradeMode: TradeMode;\n};\n\nexport enum Granularity {\n D1 = 'D1',\n H1 = 'H1',\n H4 = 'H4',\n M1 = 'M1',\n M15 = 'M15',\n}\n\nexport type Heatmap = {\n __typename?: 'Heatmap';\n instrument: Instrument;\n timeCorrelation: Array<TimeCorrelation>;\n};\n\nexport type Instrument = {\n __typename?: 'Instrument';\n displayName: Scalars['String']['output'];\n name: Scalars['String']['output'];\n};\n\nexport type InstrumentCorrelation = {\n __typename?: 'InstrumentCorrelation';\n instrument: Instrument;\n value?: Maybe<Scalars['Float']['output']>;\n};\n\nexport type InstrumentTableResult = {\n __typename?: 'InstrumentTableResult';\n instruments: Array<ExtendedInstrument>;\n totalCount: Scalars['Int']['output'];\n updatedAt: Scalars['String']['output'];\n};\n\nexport type MarginRate = {\n __typename?: 'MarginRate';\n instrument: Instrument;\n rate: Scalars['Float']['output'];\n};\n\nexport type Matrix = {\n __typename?: 'Matrix';\n instrument: Instrument;\n instrumentCorrelation: Array<InstrumentCorrelation>;\n};\n\nexport enum OrderBookDataSource {\n Ny4 = 'NY4',\n Ny4Mt5 = 'NY4_MT5',\n Ty3 = 'TY3',\n}\n\nexport type OrderPositionBucket = {\n __typename?: 'OrderPositionBucket';\n longCountPercent: Scalars['Float']['output'];\n price: Scalars['Float']['output'];\n shortCountPercent: Scalars['Float']['output'];\n};\n\nexport type OrderPositionData = {\n __typename?: 'OrderPositionData';\n bucketWidth: Scalars['Float']['output'];\n buckets: Array<Maybe<OrderPositionBucket>>;\n dataSource?: Maybe<Scalars['String']['output']>;\n instrument: Scalars['String']['output'];\n price?: Maybe<Scalars['Float']['output']>;\n region?: Maybe<Scalars['String']['output']>;\n time: Scalars['String']['output'];\n unixTime: Scalars['Int']['output'];\n};\n\nexport type Query = {\n __typename?: 'Query';\n assetClasses?: Maybe<Array<Maybe<AssetClass>>>;\n correlationHeatmap: CorrelationHeatmap;\n correlationMatrix: CorrelationMatrix;\n currencyPowerBalance?: Maybe<Array<CurrencyPowerBalance>>;\n currencyStrength?: Maybe<Array<CurrencyStrength>>;\n isAllowedPartner?: Maybe<Scalars['Boolean']['output']>;\n mapInstrumentNames?: Maybe<Array<Maybe<Instrument>>>;\n marginRates?: Maybe<Array<MarginRate>>;\n orderPositionBooks: Array<Maybe<OrderPositionData>>;\n priceCandles: CandlesData;\n resolveInstrumentsByDivision?: Maybe<Array<Instrument>>;\n resolveInstrumentsWithFilters?: Maybe<InstrumentTableResult>;\n sentiment?: Maybe<Array<SentimentInstrument>>;\n sentimentList?: Maybe<Array<SentimentInstrument>>;\n topicalInstruments?: Maybe<Array<TopicalInstrument>>;\n topicalInstrumentsCharts?: Maybe<Array<TopicalInstrumentChart>>;\n topicalInstrumentsTotalCount: Scalars['Int']['output'];\n valueAtRiskAssetClasses?: Maybe<Array<AssetClass>>;\n valueAtRiskChart?: Maybe<ValueAtRiskChart>;\n volatilityChart?: Maybe<Array<Maybe<VolatilityChart>>>;\n volatilityChartAssetClasses?: Maybe<Array<AssetClass>>;\n};\n\nexport type QueryAssetClassesArgs = {\n division: Division;\n};\n\nexport type QueryCorrelationHeatmapArgs = {\n division: Division;\n instruments?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;\n timeSpans?: InputMaybe<Array<InputMaybe<CorrelationTimeUnit>>>;\n};\n\nexport type QueryCorrelationMatrixArgs = {\n division: Division;\n instruments?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;\n};\n\nexport type QueryCurrencyPowerBalanceArgs = {\n timeUnit: CurrencyPowerBalanceTimeUnit;\n};\n\nexport type QueryIsAllowedPartnerArgs = {\n url: Scalars['String']['input'];\n};\n\nexport type QueryMapInstrumentNamesArgs = {\n division?: InputMaybe<Division>;\n instruments: Array<InputMaybe<Scalars['String']['input']>>;\n};\n\nexport type QueryMarginRatesArgs = {\n dataSource: DataSource;\n division: Division;\n instruments?: InputMaybe<Array<Scalars['String']['input']>>;\n tradingGroup: Scalars['Int']['input'];\n};\n\nexport type QueryOrderPositionBooksArgs = {\n bookType: BookType;\n dataSource?: InputMaybe<OrderBookDataSource>;\n instrument: Scalars['String']['input'];\n recentHours?: InputMaybe<Scalars['Int']['input']>;\n region?: InputMaybe<Region>;\n};\n\nexport type QueryPriceCandlesArgs = {\n dataSource: DataSource;\n division: Division;\n granularity: Granularity;\n instrument: Scalars['String']['input'];\n timeSpan: TimeSpan;\n};\n\nexport type QueryResolveInstrumentsByDivisionArgs = {\n division: Division;\n instruments: Array<InputMaybe<Scalars['String']['input']>>;\n};\n\nexport type QueryResolveInstrumentsWithFiltersArgs = {\n assetClass?: InputMaybe<Array<InputMaybe<AssetClassName>>>;\n count?: InputMaybe<Scalars['Int']['input']>;\n dataSource: DataSource;\n division: Division;\n instruments?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;\n offset?: InputMaybe<Scalars['Int']['input']>;\n searchPattern?: InputMaybe<Scalars['String']['input']>;\n tradeModes?: InputMaybe<Array<InputMaybe<TradeMode>>>;\n};\n\nexport type QuerySentimentArgs = {\n division?: InputMaybe<Division>;\n name: Scalars['String']['input'];\n};\n\nexport type QuerySentimentListArgs = {\n division?: InputMaybe<Division>;\n sort?: InputMaybe<Sort>;\n};\n\nexport type QueryTopicalInstrumentsArgs = {\n assetClass?: InputMaybe<AssetClassName>;\n count?: InputMaybe<Scalars['Int']['input']>;\n division?: InputMaybe<Division>;\n offset?: InputMaybe<Scalars['Int']['input']>;\n sort: TopicalSort;\n};\n\nexport type QueryTopicalInstrumentsChartsArgs = {\n division?: InputMaybe<Division>;\n instruments?: InputMaybe<Array<Scalars['String']['input']>>;\n};\n\nexport type QueryTopicalInstrumentsTotalCountArgs = {\n assetClass?: InputMaybe<AssetClassName>;\n division?: InputMaybe<Division>;\n sort: TopicalSort;\n};\n\nexport type QueryValueAtRiskAssetClassesArgs = {\n division?: InputMaybe<Division>;\n};\n\nexport type QueryValueAtRiskChartArgs = {\n bars: ValueAtRiskBars;\n division?: InputMaybe<Division>;\n duration: ValueAtRiskDuration;\n instrument: Scalars['String']['input'];\n};\n\nexport type QueryVolatilityChartArgs = {\n division?: InputMaybe<Division>;\n instrument: Scalars['String']['input'];\n timeSpan: VolatilityChartTimeSpan;\n timeUnit: VolatilityChartTimeUnit;\n};\n\nexport type QueryVolatilityChartAssetClassesArgs = {\n division?: InputMaybe<Division>;\n};\n\nexport enum Region {\n Amer = 'AMER',\n Apac = 'APAC',\n Emea = 'EMEA',\n}\n\nexport type Sentiment = {\n __typename?: 'Sentiment';\n longPercent: Scalars['Float']['output'];\n shortPercent: Scalars['Float']['output'];\n};\n\nexport type SentimentInstrument = {\n __typename?: 'SentimentInstrument';\n displayName: Scalars['String']['output'];\n name: Scalars['String']['output'];\n sentiment: Sentiment;\n updatedAt: Scalars['String']['output'];\n};\n\nexport enum Sort {\n Bearish = 'BEARISH',\n Bullish = 'BULLISH',\n}\n\nexport type StrengthRelation = {\n __typename?: 'StrengthRelation';\n currency: CurrencyName;\n percentage: Scalars['Float']['output'];\n};\n\nexport type TimeCorrelation = {\n __typename?: 'TimeCorrelation';\n timeUnit: CorrelationTimeUnit;\n value?: Maybe<Scalars['Float']['output']>;\n};\n\nexport enum TimeSpan {\n Day_1 = 'DAY_1',\n Day_2 = 'DAY_2',\n Hour_1 = 'HOUR_1',\n Hour_12 = 'HOUR_12',\n Month_1 = 'MONTH_1',\n Month_3 = 'MONTH_3',\n Month_6 = 'MONTH_6',\n Week_1 = 'WEEK_1',\n Week_2 = 'WEEK_2',\n Week_3 = 'WEEK_3',\n Year_1 = 'YEAR_1',\n Year_5 = 'YEAR_5',\n}\n\nexport type TopicalInstrument = {\n __typename?: 'TopicalInstrument';\n assetClass?: Maybe<AssetClassName>;\n displayName: Scalars['String']['output'];\n name: Scalars['String']['output'];\n sentiment: Sentiment;\n updatedAt: Scalars['String']['output'];\n};\n\nexport type TopicalInstrumentChart = {\n __typename?: 'TopicalInstrumentChart';\n chart?: Maybe<Array<Scalars['Float']['output']>>;\n name: Scalars['String']['output'];\n};\n\nexport enum TopicalSort {\n Bearish = 'BEARISH',\n Bullish = 'BULLISH',\n Hot = 'HOT',\n Popular = 'POPULAR',\n Volatile = 'VOLATILE',\n}\n\nexport enum TradeMode {\n TradeCloseonly = 'TRADE_CLOSEONLY',\n TradeDisabled = 'TRADE_DISABLED',\n TradeFull = 'TRADE_FULL',\n TradeLongonly = 'TRADE_LONGONLY',\n TradeShortonly = 'TRADE_SHORTONLY',\n TradeUndefined = 'TRADE_UNDEFINED',\n}\n\nexport enum ValueAtRiskBars {\n C100 = 'C100',\n C200 = 'C200',\n C300 = 'C300',\n}\n\nexport type ValueAtRiskChart = {\n __typename?: 'ValueAtRiskChart';\n down: ValueAtRiskChartData;\n up: ValueAtRiskChartData;\n};\n\nexport type ValueAtRiskChartData = {\n __typename?: 'ValueAtRiskChartData';\n average: Scalars['Float']['output'];\n max: Scalars['Float']['output'];\n median: Scalars['Float']['output'];\n points?: Maybe<Array<ValueAtRiskChartPoint>>;\n threshold: Scalars['Float']['output'];\n};\n\nexport type ValueAtRiskChartPoint = {\n __typename?: 'ValueAtRiskChartPoint';\n percent: Scalars['Float']['output'];\n pips: Scalars['Float']['output'];\n};\n\nexport enum ValueAtRiskDuration {\n C1 = 'C1',\n C2 = 'C2',\n C3 = 'C3',\n C4 = 'C4',\n C5 = 'C5',\n C10 = 'C10',\n}\n\nexport type VolatilityChart = {\n __typename?: 'VolatilityChart';\n pips: Scalars['Float']['output'];\n /** Time point - hour in format hh:mm, Date in UTC, Week in format 'Mo' */\n point: Scalars['String']['output'];\n updatedAt: Scalars['String']['output'];\n};\n\nexport enum VolatilityChartTimeSpan {\n /** Valid for: H */\n D5 = 'D5',\n /** Valid for: H */\n D10 = 'D10',\n /** Valid for: D */\n M1 = 'M1',\n /** Valid for: D */\n M3 = 'M3',\n /** Valid for: W */\n W5 = 'W5',\n /** Valid for: W */\n W10 = 'W10',\n}\n\nexport enum VolatilityChartTimeUnit {\n D = 'D',\n H = 'H',\n W = 'W',\n}\n\nexport type ResolveInstrumentsWithFiltersQueryVariables = Exact<{\n division: Division;\n assetClass?: InputMaybe<\n Array<InputMaybe<AssetClassName>> | InputMaybe<AssetClassName>\n >;\n dataSource: DataSource;\n instruments?: InputMaybe<\n | Array<InputMaybe<Scalars['String']['input']>>\n | InputMaybe<Scalars['String']['input']>\n >;\n searchPattern?: InputMaybe<Scalars['String']['input']>;\n tradeModes?: InputMaybe<Array<InputMaybe<TradeMode>> | InputMaybe<TradeMode>>;\n count?: InputMaybe<Scalars['Int']['input']>;\n offset?: InputMaybe<Scalars['Int']['input']>;\n withTradingModes: Scalars['Boolean']['input'];\n}>;\n\nexport type ResolveInstrumentsWithFiltersQuery = {\n __typename?: 'Query';\n resolveInstrumentsWithFilters?: {\n __typename?: 'InstrumentTableResult';\n totalCount: number;\n updatedAt?: string;\n instruments: Array<{\n __typename?: 'ExtendedInstrument';\n name: string;\n displayName: string;\n tradeMode?: TradeMode;\n dataSource: DataSource;\n }>;\n } | null;\n};\n\nexport const ResolveInstrumentsWithFiltersDocument = {\n kind: 'Document',\n definitions: [\n {\n kind: 'OperationDefinition',\n operation: 'query',\n name: { kind: 'Name', value: 'resolveInstrumentsWithFilters' },\n variableDefinitions: [\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'division' },\n },\n type: {\n kind: 'NonNullType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'Division' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'assetClass' },\n },\n type: {\n kind: 'ListType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'AssetClassName' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'dataSource' },\n },\n type: {\n kind: 'NonNullType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'DataSource' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'instruments' },\n },\n type: {\n kind: 'ListType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'String' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'searchPattern' },\n },\n type: { kind: 'NamedType', name: { kind: 'Name', value: 'String' } },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'tradeModes' },\n },\n type: {\n kind: 'ListType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'TradeMode' },\n },\n },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'count' },\n },\n type: { kind: 'NamedType', name: { kind: 'Name', value: 'Int' } },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'offset' },\n },\n type: { kind: 'NamedType', name: { kind: 'Name', value: 'Int' } },\n },\n {\n kind: 'VariableDefinition',\n variable: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'withTradingModes' },\n },\n type: {\n kind: 'NonNullType',\n type: {\n kind: 'NamedType',\n name: { kind: 'Name', value: 'Boolean' },\n },\n },\n },\n ],\n selectionSet: {\n kind: 'SelectionSet',\n selections: [\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'resolveInstrumentsWithFilters' },\n arguments: [\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'division' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'division' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'assetClass' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'assetClass' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'dataSource' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'dataSource' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'instruments' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'instruments' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'searchPattern' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'searchPattern' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'count' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'count' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'offset' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'offset' },\n },\n },\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'tradeModes' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'tradeModes' },\n },\n },\n ],\n selectionSet: {\n kind: 'SelectionSet',\n selections: [\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'instruments' },\n selectionSet: {\n kind: 'SelectionSet',\n selections: [\n { kind: 'Field', name: { kind: 'Name', value: 'name' } },\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'displayName' },\n },\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'tradeMode' },\n directives: [\n {\n kind: 'Directive',\n name: { kind: 'Name', value: 'include' },\n arguments: [\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'if' },\n value: {\n kind: 'Variable',\n name: {\n kind: 'Name',\n value: 'withTradingModes',\n },\n },\n },\n ],\n },\n ],\n },\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'dataSource' },\n },\n ],\n },\n },\n { kind: 'Field', name: { kind: 'Name', value: 'totalCount' } },\n {\n kind: 'Field',\n name: { kind: 'Name', value: 'updatedAt' },\n directives: [\n {\n kind: 'Directive',\n name: { kind: 'Name', value: 'include' },\n arguments: [\n {\n kind: 'Argument',\n name: { kind: 'Name', value: 'if' },\n value: {\n kind: 'Variable',\n name: { kind: 'Name', value: 'withTradingModes' },\n },\n },\n ],\n },\n ],\n },\n ],\n },\n },\n ],\n },\n },\n ],\n} as unknown as DocumentNode<\n ResolveInstrumentsWithFiltersQuery,\n ResolveInstrumentsWithFiltersQueryVariables\n>;\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- import type { MainProps } from './types';
3
- declare const Main: ({ instruments, division, assetClasses, columns, isAssetClassFilterEnabled, isInstrumentSearchEnabled, recordsPerPage, dataSource, isLiveRatesDisabled, }: MainProps) => React.JSX.Element;
2
+ import { type MainProps } from './types';
3
+ declare const Main: ({ instruments, division, assetClasses, columns, isAssetClassFilterEnabled, isInstrumentSearchEnabled, recordsPerPage, dataSource, isLiveRatesDisabled, priceType, }: MainProps) => React.JSX.Element;
4
4
  export { Main };
@@ -1,6 +1,7 @@
1
1
  import { DataRecordType } from '@oanda/labs-widget-common';
2
+ declare const RAW_PRICE_DIVISION = "MKTD";
2
3
  declare const DEFAULT_COUNT = 10;
3
4
  declare const DEFAULT_TOTAL_COUNT = 50;
4
5
  declare const DEFAULT_COLUMNS: DataRecordType[];
5
6
  declare const INSTRUMENT_TOOLTIP_ID = "instrument_tooltip_id";
6
- export { DEFAULT_COLUMNS, DEFAULT_COUNT, DEFAULT_TOTAL_COUNT, INSTRUMENT_TOOLTIP_ID, };
7
+ export { DEFAULT_COLUMNS, DEFAULT_COUNT, DEFAULT_TOTAL_COUNT, INSTRUMENT_TOOLTIP_ID, RAW_PRICE_DIVISION, };
@@ -26,4 +26,5 @@ export interface MainProps {
26
26
  recordsPerPage?: number;
27
27
  dataSource: DataSource;
28
28
  isLiveRatesDisabled?: boolean;
29
+ priceType?: PriceType;
29
30
  }
@@ -1,5 +1,7 @@
1
- import type { LiveRatesDataSource } from '@oanda/labs-widget-common';
2
- import { Division } from '../gql/types/graphql';
3
- import { PriceType } from './types';
4
- declare const getLiveRatesDivisionCode: (division: Division, priceType: PriceType, dataSource: LiveRatesDataSource) => Division | string | undefined;
5
- export { getLiveRatesDivisionCode };
1
+ import type { DataRecord } from '@oanda/labs-widget-common';
2
+ interface GroupedNames {
3
+ v20instruments: string[];
4
+ mt5instruments: string[];
5
+ }
6
+ declare const groupNamesBySource: (items: DataRecord[]) => GroupedNames;
7
+ export { groupNamesBySource };
@@ -11,7 +11,7 @@ import { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/
11
11
  * Therefore it is highly recommended to use the babel or swc plugin for production.
12
12
  */
13
13
  declare const documents: {
14
- '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n': DocumentNode<types.ResolveInstrumentsWithFiltersQuery, types.Exact<{
14
+ '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n': DocumentNode<types.ResolveInstrumentsWithFiltersQuery, types.Exact<{
15
15
  division: types.Division;
16
16
  assetClass?: types.InputMaybe<Array<types.InputMaybe<types.AssetClassName>> | types.InputMaybe<types.AssetClassName>>;
17
17
  dataSource: types.DataSource;
@@ -39,6 +39,6 @@ export declare function graphql(source: string): unknown;
39
39
  /**
40
40
  * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
41
41
  */
42
- export declare function graphql(source: '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n'): (typeof documents)['\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n'];
42
+ export declare function graphql(source: '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n'): (typeof documents)['\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n'];
43
43
  export type DocumentType<TDocumentNode extends DocumentNode<any, any>> = TDocumentNode extends DocumentNode<infer TType, any> ? TType : never;
44
44
  export {};
@@ -493,6 +493,7 @@ export type ResolveInstrumentsWithFiltersQuery = {
493
493
  name: string;
494
494
  displayName: string;
495
495
  tradeMode?: TradeMode;
496
+ dataSource: DataSource;
496
497
  }>;
497
498
  } | null;
498
499
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oanda/labs-instruments-table-widget",
3
- "version": "1.0.44",
3
+ "version": "1.0.45",
4
4
  "description": "Labs Instruments Table Widget",
5
5
  "main": "dist/main/index.js",
6
6
  "module": "dist/module/index.js",
@@ -13,7 +13,7 @@
13
13
  "author": "OANDA",
14
14
  "license": "UNLICENSED",
15
15
  "dependencies": {
16
- "@oanda/labs-widget-common": "^1.0.224",
16
+ "@oanda/labs-widget-common": "^1.0.225",
17
17
  "@oanda/mono-i18n": "10.0.1",
18
18
  "graphql": "16.8.1"
19
19
  },
@@ -21,5 +21,5 @@
21
21
  "@graphql-codegen/cli": "5.0.0",
22
22
  "@graphql-codegen/client-preset": "4.1.0"
23
23
  },
24
- "gitHead": "b03e9304ac39928b92878bab83628b07214c3c6f"
24
+ "gitHead": "525a82f19721a0c414b13117ed88021f172bbbd6"
25
25
  }
@@ -10,7 +10,6 @@ import { DataSource } from '../gql/types/graphql';
10
10
  import { translations } from '../translations';
11
11
  import { Main } from './Main';
12
12
  import { type InstrumentsTableConfig, PriceType } from './types';
13
- import { getLiveRatesDivisionCode } from './utils';
14
13
 
15
14
  const InstrumentsTableWidget = ({
16
15
  division,
@@ -37,11 +36,7 @@ const InstrumentsTableWidget = ({
37
36
  const liveRatesDataSource =
38
37
  dataSource === DataSource.All ? undefined : dataSource;
39
38
 
40
- const divisionCode = getLiveRatesDivisionCode(
41
- division,
42
- priceType,
43
- liveRatesDataSource || DataSource.V20
44
- );
39
+ const divisionCode = priceType === PriceType.Division ? division : undefined;
45
40
 
46
41
  const liveRates =
47
42
  !columns ||
@@ -57,6 +52,7 @@ const InstrumentsTableWidget = ({
57
52
  ? {
58
53
  url: liveRatesUrl,
59
54
  options: { divisionCode, dataSource: liveRatesDataSource },
55
+ multipleDataSources: dataSource === DataSource.All,
60
56
  }
61
57
  : undefined;
62
58
 
@@ -82,6 +78,7 @@ const InstrumentsTableWidget = ({
82
78
  isAssetClassFilterEnabled={isAssetClassFilterEnabled}
83
79
  isInstrumentSearchEnabled={isInstrumentSearchEnabled}
84
80
  isLiveRatesDisabled={liveRates === undefined}
81
+ priceType={priceType}
85
82
  recordsPerPage={recordsPerPage}
86
83
  />
87
84
  </WidgetWrapper>
@@ -17,14 +17,21 @@ import { useEventListener } from 'usehooks-ts';
17
17
  import { resolveInstrumentsWithFilters } from '../gql/resolveInstrumentsWithFilters';
18
18
  import type { AssetClassName } from '../gql/types/graphql';
19
19
  import {
20
+ DataSource,
21
+ Division,
20
22
  type ResolveInstrumentsWithFiltersQuery,
21
23
  type ResolveInstrumentsWithFiltersQueryVariables,
22
24
  TradeMode,
23
25
  } from '../gql/types/graphql';
24
26
  import { Filters } from './components';
25
27
  import { assetClassLabels, headerConfigs, tradeModeLabels } from './config';
26
- import { DEFAULT_COLUMNS, INSTRUMENT_TOOLTIP_ID } from './constant';
27
- import type { MainProps } from './types';
28
+ import {
29
+ DEFAULT_COLUMNS,
30
+ INSTRUMENT_TOOLTIP_ID,
31
+ RAW_PRICE_DIVISION,
32
+ } from './constant';
33
+ import { type MainProps, PriceType } from './types';
34
+ import { groupNamesBySource } from './utils';
28
35
 
29
36
  const Main = ({
30
37
  instruments = [],
@@ -36,6 +43,7 @@ const Main = ({
36
43
  recordsPerPage,
37
44
  dataSource,
38
45
  isLiveRatesDisabled,
46
+ priceType = PriceType.Division,
39
47
  }: MainProps) => {
40
48
  const documentRef = useRef<Document>(document);
41
49
  const { size } = useLayoutProvider();
@@ -95,6 +103,7 @@ const Main = ({
95
103
  (record) => ({
96
104
  instrument: record?.name || '',
97
105
  displayName: record?.displayName || '',
106
+ dataSource: record?.dataSource,
98
107
  tradeMode: lang(
99
108
  tradeModeLabels[
100
109
  (record?.tradeMode as keyof typeof tradeModeLabels) || ''
@@ -108,11 +117,28 @@ const Main = ({
108
117
  // eslint-disable-next-line react-hooks/exhaustive-deps
109
118
  }, [loading, data]);
110
119
 
111
- useEffect(() => {
112
- const instrumentsNames = records.map(({ instrument }) => instrument);
113
- if (instrumentsNames[0]) {
114
- setQuery({ instruments: instrumentsNames });
120
+ const setupQueries = (recordsData: DataRecord[]) => {
121
+ const { v20instruments, mt5instruments } = groupNamesBySource(recordsData);
122
+
123
+ if (mt5instruments[0]) {
124
+ setQuery({
125
+ instruments: mt5instruments,
126
+ dataSource: DataSource.Mt5,
127
+ division: priceType === PriceType.Division ? undefined : Division.Oc,
128
+ });
129
+ }
130
+ if (v20instruments[0]) {
131
+ setQuery({
132
+ instruments: v20instruments,
133
+ dataSource: DataSource.V20,
134
+ division:
135
+ priceType === PriceType.Division ? undefined : RAW_PRICE_DIVISION,
136
+ });
115
137
  }
138
+ };
139
+
140
+ useEffect(() => {
141
+ setupQueries(records);
116
142
  // eslint-disable-next-line react-hooks/exhaustive-deps
117
143
  }, [records]);
118
144
 
@@ -123,10 +149,7 @@ const Main = ({
123
149
  closeQuery();
124
150
  }
125
151
  if (documentRef.current.visibilityState === 'visible') {
126
- const instrumentsNames = records.map(({ instrument }) => instrument);
127
- if (instrumentsNames[0]) {
128
- setQuery({ instruments: instrumentsNames });
129
- }
152
+ setupQueries(records);
130
153
  }
131
154
  };
132
155
 
@@ -79,6 +79,13 @@ const normal: HeaderConfigType = {
79
79
  minWidth: '80px',
80
80
  },
81
81
  },
82
+ [DataRecordType.DATA_SOURCE]: {
83
+ displayName: 'Data Source',
84
+ additionalStyles: {
85
+ align: 'right',
86
+ minWidth: '80px',
87
+ },
88
+ },
82
89
  };
83
90
 
84
91
  const longInstruments: HeaderConfigType = {
@@ -1,5 +1,6 @@
1
1
  import { DataRecordType } from '@oanda/labs-widget-common';
2
2
 
3
+ const RAW_PRICE_DIVISION = 'MKTD';
3
4
  const DEFAULT_COUNT = 10;
4
5
 
5
6
  const DEFAULT_TOTAL_COUNT = 50;
@@ -20,4 +21,5 @@ export {
20
21
  DEFAULT_COUNT,
21
22
  DEFAULT_TOTAL_COUNT,
22
23
  INSTRUMENT_TOOLTIP_ID,
24
+ RAW_PRICE_DIVISION,
23
25
  };
@@ -34,4 +34,5 @@ export interface MainProps {
34
34
  recordsPerPage?: number;
35
35
  dataSource: DataSource;
36
36
  isLiveRatesDisabled?: boolean;
37
+ priceType?: PriceType;
37
38
  }
@@ -1,24 +1,34 @@
1
- import type { LiveRatesDataSource } from '@oanda/labs-widget-common';
1
+ import type { DataRecord } from '@oanda/labs-widget-common';
2
2
 
3
- import { DataSource, Division } from '../gql/types/graphql';
4
- import { PriceType } from './types';
3
+ import { DataSource } from '../gql/types/graphql';
5
4
 
6
- const getLiveRatesDivisionCode = (
7
- division: Division,
8
- priceType: PriceType,
9
- dataSource: LiveRatesDataSource
10
- ): Division | string | undefined => {
11
- const divisionMap = {
12
- [PriceType.Raw]: {
13
- [DataSource.Mt5]: Division.Oc,
14
- [DataSource.V20]: 'MKTD',
15
- },
16
- [PriceType.Division]: {
17
- [DataSource.Mt5]: division,
18
- [DataSource.V20]: division,
19
- },
5
+ interface GroupedNames {
6
+ v20instruments: string[];
7
+ mt5instruments: string[];
8
+ }
9
+
10
+ const groupNamesBySource = (items: DataRecord[]) => {
11
+ const initialState: GroupedNames = {
12
+ v20instruments: [],
13
+ mt5instruments: [],
20
14
  };
21
- return divisionMap[priceType]?.[dataSource];
15
+
16
+ return items.reduce((accumulator, currentItem) => {
17
+ if (currentItem.dataSource === DataSource.Mt5) {
18
+ return {
19
+ v20instruments: accumulator.v20instruments,
20
+ mt5instruments: [...accumulator.mt5instruments, currentItem.instrument],
21
+ };
22
+ }
23
+ if (currentItem.dataSource === DataSource.V20) {
24
+ return {
25
+ v20instruments: [...accumulator.v20instruments, currentItem.instrument],
26
+ mt5instruments: accumulator.mt5instruments,
27
+ };
28
+ }
29
+
30
+ return accumulator;
31
+ }, initialState);
22
32
  };
23
33
 
24
- export { getLiveRatesDivisionCode };
34
+ export { groupNamesBySource };
@@ -26,6 +26,7 @@ export const resolveInstrumentsWithFilters = gql`
26
26
  name
27
27
  displayName
28
28
  tradeMode @include(if: $withTradingModes)
29
+ dataSource
29
30
  }
30
31
  totalCount
31
32
  updatedAt @include(if: $withTradingModes)
@@ -13,7 +13,7 @@ import { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/
13
13
  * Therefore it is highly recommended to use the babel or swc plugin for production.
14
14
  */
15
15
  const documents = {
16
- '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n':
16
+ '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n':
17
17
  types.ResolveInstrumentsWithFiltersDocument,
18
18
  };
19
19
 
@@ -35,8 +35,8 @@ export function graphql(source: string): unknown;
35
35
  * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
36
36
  */
37
37
  export function graphql(
38
- source: '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n'
39
- ): (typeof documents)['\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n'];
38
+ source: '\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n'
39
+ ): (typeof documents)['\n query resolveInstrumentsWithFilters(\n $division: Division!\n $assetClass: [AssetClassName]\n $dataSource: DataSource!\n $instruments: [String]\n $searchPattern: String\n $tradeModes: [TradeMode]\n $count: Int\n $offset: Int\n $withTradingModes: Boolean!\n ) {\n resolveInstrumentsWithFilters(\n division: $division\n assetClass: $assetClass\n dataSource: $dataSource\n instruments: $instruments\n searchPattern: $searchPattern\n count: $count\n offset: $offset\n tradeModes: $tradeModes\n ) {\n instruments {\n name\n displayName\n tradeMode @include(if: $withTradingModes)\n dataSource\n }\n totalCount\n updatedAt @include(if: $withTradingModes)\n }\n }\n'];
40
40
 
41
41
  export function graphql(source: string) {
42
42
  return (documents as any)[source] ?? {};
@@ -551,6 +551,7 @@ export type ResolveInstrumentsWithFiltersQuery = {
551
551
  name: string;
552
552
  displayName: string;
553
553
  tradeMode?: TradeMode;
554
+ dataSource: DataSource;
554
555
  }>;
555
556
  } | null;
556
557
  };
@@ -781,6 +782,10 @@ export const ResolveInstrumentsWithFiltersDocument = {
781
782
  },
782
783
  ],
783
784
  },
785
+ {
786
+ kind: 'Field',
787
+ name: { kind: 'Name', value: 'dataSource' },
788
+ },
784
789
  ],
785
790
  },
786
791
  },