diff --git a/public/locales/en-US.json b/public/locales/en-US.json index 1e9e260e0..193aa859d 100644 --- a/public/locales/en-US.json +++ b/public/locales/en-US.json @@ -114,13 +114,13 @@ "tableEmptyInventoryTitle": "No results found", "tableEmptyInventoryMessage": "No results match the filter criteria. Remove filters or clear all filters to show results.", "tableSkeletonAriaLabel": "Loading", - "label_hasInfiniteQuantity_cores": "Unlimited cores", - "label_hasInfiniteQuantity_sockets": "Unlimited sockets", + "label_has_infinite_quantity_cores": "Unlimited cores", + "label_has_infinite_quantity_sockets": "Unlimited sockets", "label_numberOfGuests_one": "<0>{{count}} guest", "label_numberOfGuests_other": "<0>{{count}} guests", - "label_subscriptionType": "{{context}}", - "label_subscriptionType_Annual": "Annual", - "label_subscriptionType_On-demand": "On-Demand", + "label_subscription_type": "{{context}}", + "label_subscription_type_Annual": "Annual", + "label_subscription_type_On-demand": "On-Demand", "cloudProvider": "{{context}}", "cloudProvider_alibaba": "Alibaba", "cloudProvider_aws": "AWS", @@ -153,16 +153,16 @@ "header_sockets_OpenShift-dedicated-metrics": "Sockets", "header_lastSeen": "Last seen", "header_last_seen": "Last seen", - "header_nextEventDate": "Next renewal", - "header_productName": "Product", + "header_next_event_date": "Next renewal", + "header_product_name": "Product", "header_quantity": "Quantity", - "header_serviceLevel": "Service level", + "header_service_level": "Service level", "header_Storage-gibibytes": "Data storage", "header_Storage-gibibyte-months": "Data storage", "header_subscriptions": "Sockets", "header_subscriptions_cores": "Cores", "header_subscriptions_sockets": "Sockets", - "header_subscriptionType": "Subscription type", + "header_subscription_type": "Subscription type", "header_Transfer-gibibytes": "Data transfer", "header_tooltip_Storage-gibibytes": "Measurements in binary gigabyte hours", "header_tooltip_Storage-gibibyte-months": "Measurements in binary gigabyte months", diff --git a/src/components/i18n/__tests__/__snapshots__/i18n.test.js.snap b/src/components/i18n/__tests__/__snapshots__/i18n.test.js.snap index 2c3435828..24615c7fb 100644 --- a/src/components/i18n/__tests__/__snapshots__/i18n.test.js.snap +++ b/src/components/i18n/__tests__/__snapshots__/i18n.test.js.snap @@ -568,11 +568,11 @@ Array [ }, Object { "key": "curiosity-inventory.header", - "match": "translate('curiosity-inventory.header', { context: ['subscriptions', data?.uom?.value] })", + "match": "translate('curiosity-inventory.header', { context: ['subscriptions', uom?.value] })", }, Object { - "key": "curiosity-inventory.label", - "match": "translate('curiosity-inventory.label', { context: ['hasInfiniteQuantity', uom?.value] })", + "key": "", + "match": "translate( \`curiosity-inventory.label_\${SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY}\`, { context: uom?.value } )", }, ], }, @@ -623,11 +623,11 @@ Array [ }, Object { "key": "curiosity-inventory.header", - "match": "translate('curiosity-inventory.header', { context: ['subscriptions', data?.uom?.value] })", + "match": "translate('curiosity-inventory.header', { context: ['subscriptions', uom?.value] })", }, Object { - "key": "curiosity-inventory.label", - "match": "translate('curiosity-inventory.label', { context: ['hasInfiniteQuantity', uom?.value] })", + "key": "", + "match": "translate( \`curiosity-inventory.label_\${SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY}\`, { context: uom?.value } )", }, ], }, @@ -675,8 +675,8 @@ Array [ "match": "translate('curiosity-inventory.measurement', { context: RHSM_API_PATH_METRIC_TYPES.INSTANCE_HOURS, total: helpers.numberDisplay(total?.value)", }, Object { - "key": "curiosity-inventory.label_subscriptionType", - "match": "translate('curiosity-inventory.label_subscriptionType', { context: meta?.subscriptionType || EMPTY_CONTEXT })", + "key": "", + "match": "translate(\`curiosity-inventory.label_\${SUBSCRIPTIONS_INVENTORY_META_TYPES.SUBSCRIPTION_TYPE}\`, { context: subscriptionType || EMPTY_CONTEXT })", }, ], }, @@ -763,10 +763,6 @@ Array [ "file": "./src/config/product.openshiftContainer.js", "key": "curiosity-inventory.label", }, - Object { - "file": "./src/config/product.openshiftContainer.js", - "key": "curiosity-inventory.label", - }, Object { "file": "./src/config/product.openshiftDedicated.js", "key": "curiosity-inventory.label", @@ -779,10 +775,6 @@ Array [ "file": "./src/config/product.rhel.js", "key": "curiosity-inventory.label", }, - Object { - "file": "./src/config/product.rhel.js", - "key": "curiosity-inventory.label", - }, Object { "file": "./src/config/product.rhosak.js", "key": "curiosity-graph.label_axisY", diff --git a/src/components/productView/__tests__/__snapshots__/productViewContext.test.js.snap b/src/components/productView/__tests__/__snapshots__/productViewContext.test.js.snap index 5482b7742..33773533e 100644 --- a/src/components/productView/__tests__/__snapshots__/productViewContext.test.js.snap +++ b/src/components/productView/__tests__/__snapshots__/productViewContext.test.js.snap @@ -84,13 +84,13 @@ Object { "initialOption": "cores", "initialSubscriptionsInventoryFilters": Array [ Object { - "id": "productName", + "id": "product_name", "isSortable": true, "isWrappable": true, }, Object { "cellWidth": 15, - "id": "serviceLevel", + "id": "service_level", "isSortable": true, "isWrappable": true, }, @@ -102,16 +102,16 @@ Object { }, Object { "cell": [Function], - "cellWidth": 15, + "cellWidth": 10, "header": [Function], - "id": "totalCapacity", + "id": "total_capacity", "isSortable": true, "isWrappable": true, }, Object { "cell": [Function], "cellWidth": 15, - "id": "nextEventDate", + "id": "next_event_date", "isSortable": true, "isWrappable": true, }, @@ -207,13 +207,13 @@ Object { "initialOption": "cores", "initialSubscriptionsInventoryFilters": Array [ Object { - "id": "productName", + "id": "product_name", "isSortable": true, "isWrappable": true, }, Object { "cellWidth": 15, - "id": "serviceLevel", + "id": "service_level", "isSortable": true, "isWrappable": true, }, @@ -225,16 +225,16 @@ Object { }, Object { "cell": [Function], - "cellWidth": 15, + "cellWidth": 10, "header": [Function], - "id": "totalCapacity", + "id": "total_capacity", "isSortable": true, "isWrappable": true, }, Object { "cell": [Function], "cellWidth": 15, - "id": "nextEventDate", + "id": "next_event_date", "isSortable": true, "isWrappable": true, }, diff --git a/src/components/productView/__tests__/__snapshots__/productViewOpenShiftContainer.test.js.snap b/src/components/productView/__tests__/__snapshots__/productViewOpenShiftContainer.test.js.snap index 266c1f2ab..8459336dc 100644 --- a/src/components/productView/__tests__/__snapshots__/productViewOpenShiftContainer.test.js.snap +++ b/src/components/productView/__tests__/__snapshots__/productViewOpenShiftContainer.test.js.snap @@ -97,13 +97,13 @@ exports[`ProductViewOpenShiftContainer Component should render a basic component "initialOption": "cores", "initialSubscriptionsInventoryFilters": Array [ Object { - "id": "productName", + "id": "product_name", "isSortable": true, "isWrappable": true, }, Object { "cellWidth": 15, - "id": "serviceLevel", + "id": "service_level", "isSortable": true, "isWrappable": true, }, @@ -115,16 +115,16 @@ exports[`ProductViewOpenShiftContainer Component should render a basic component }, Object { "cell": [Function], - "cellWidth": 15, + "cellWidth": 10, "header": [Function], - "id": "totalCapacity", + "id": "total_capacity", "isSortable": true, "isWrappable": true, }, Object { "cell": [Function], "cellWidth": 15, - "id": "nextEventDate", + "id": "next_event_date", "isSortable": true, "isWrappable": true, }, diff --git a/src/components/router/__tests__/__snapshots__/redirect.test.js.snap b/src/components/router/__tests__/__snapshots__/redirect.test.js.snap index 8631c5184..f0ee4eff4 100644 --- a/src/components/router/__tests__/__snapshots__/redirect.test.js.snap +++ b/src/components/router/__tests__/__snapshots__/redirect.test.js.snap @@ -115,13 +115,13 @@ Object { "initialOption": "cores", "initialSubscriptionsInventoryFilters": Array [ Object { - "id": "productName", + "id": "product_name", "isSortable": true, "isWrappable": true, }, Object { "cellWidth": 15, - "id": "serviceLevel", + "id": "service_level", "isSortable": true, "isWrappable": true, }, @@ -133,16 +133,16 @@ Object { }, Object { "cell": [Function], - "cellWidth": 15, + "cellWidth": 10, "header": [Function], - "id": "totalCapacity", + "id": "total_capacity", "isSortable": true, "isWrappable": true, }, Object { "cell": [Function], "cellWidth": 15, - "id": "nextEventDate", + "id": "next_event_date", "isSortable": true, "isWrappable": true, }, diff --git a/src/config/__tests__/__snapshots__/product.openshiftContainer.test.js.snap b/src/config/__tests__/__snapshots__/product.openshiftContainer.test.js.snap index e3f7682b7..677a7d43a 100644 --- a/src/config/__tests__/__snapshots__/product.openshiftContainer.test.js.snap +++ b/src/config/__tests__/__snapshots__/product.openshiftContainer.test.js.snap @@ -289,7 +289,7 @@ Object { }, Object { "title": { it('should apply hosts inventory configuration', () => { @@ -50,11 +51,11 @@ describe('Product OpenShift Container config', () => { config; const inventoryData = { - productName: 'lorem', - serviceLevel: 'hello world', - nextEventDate: '2022-01-01T00:00:00.000Z', - totalCapacity: 2000, - hasInfiniteQuantity: true + [SUBSCRIPTIONS_INVENTORY_TYPES.PRODUCT_NAME]: 'lorem', + [SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL]: 'hello world', + [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: '2022-01-01T00:00:00.000Z', + [SUBSCRIPTIONS_INVENTORY_TYPES.TOTAL_CAPACITY]: 2000, + [SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY]: true }; const filteredInventoryData = parseRowCellsListData({ @@ -66,8 +67,8 @@ describe('Product OpenShift Container config', () => { const fallbackInventoryData = { ...inventoryData, - serviceLevel: null, - nextEventDate: null + [SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL]: null, + [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: null }; const fallbackFilteredInventoryData = parseRowCellsListData({ diff --git a/src/config/__tests__/product.rhel.test.js b/src/config/__tests__/product.rhel.test.js index 85627a69e..5b00351c3 100644 --- a/src/config/__tests__/product.rhel.test.js +++ b/src/config/__tests__/product.rhel.test.js @@ -4,6 +4,7 @@ import { RHSM_API_QUERY_SORT_DIRECTION_TYPES as SORT_DIRECTION_TYPES, RHSM_API_QUERY_TYPES } from '../../types/rhsmApiTypes'; +import { RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES as SUBSCRIPTIONS_INVENTORY_TYPES } from '../../services/rhsm/rhsmConstants'; describe('Product RHEL config', () => { it('should apply hosts inventory configuration', () => { @@ -50,11 +51,11 @@ describe('Product RHEL config', () => { config; const inventoryData = { - productName: 'lorem', - serviceLevel: 'hello world', - nextEventDate: '2022-01-01T00:00:00.000Z', - totalCapacity: 2000, - hasInfiniteQuantity: true + [SUBSCRIPTIONS_INVENTORY_TYPES.PRODUCT_NAME]: 'lorem', + [SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL]: 'hello world', + [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: '2022-01-01T00:00:00.000Z', + [SUBSCRIPTIONS_INVENTORY_TYPES.TOTAL_CAPACITY]: 2000, + [SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY]: true }; const filteredInventoryData = parseRowCellsListData({ @@ -66,8 +67,8 @@ describe('Product RHEL config', () => { const fallbackInventoryData = { ...inventoryData, - serviceLevel: null, - nextEventDate: null + [SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL]: null, + [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: null }; const fallbackFilteredInventoryData = parseRowCellsListData({ diff --git a/src/config/__tests__/product.rhosak.test.js b/src/config/__tests__/product.rhosak.test.js index c9ec0f6ef..6cd052762 100644 --- a/src/config/__tests__/product.rhosak.test.js +++ b/src/config/__tests__/product.rhosak.test.js @@ -4,6 +4,8 @@ import { parseRowCellsListData } from '../../components/inventoryCard/inventoryC import { RHSM_API_QUERY_INVENTORY_SORT_DIRECTION_TYPES as SORT_DIRECTION_TYPES, RHSM_API_RESPONSE_INSTANCES_DATA_TYPES as INVENTORY_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES as SUBSCRIPTIONS_INVENTORY_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES as SUBSCRIPTIONS_INVENTORY_META_TYPES, RHSM_API_QUERY_SET_TYPES, RHSM_API_PATH_METRIC_TYPES } from '../../services/rhsm/rhsmConstants'; @@ -87,15 +89,15 @@ describe('Product RHOSAK config', () => { config; const inventoryData = { - productName: 'lorem', - serviceLevel: 'hello world', - nextEventDate: '2022-01-01T00:00:00.000Z', - totalCapacity: 2000, - hasInfiniteQuantity: true + [SUBSCRIPTIONS_INVENTORY_TYPES.PRODUCT_NAME]: 'lorem', + [SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL]: 'hello world', + [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: '2022-01-01T00:00:00.000Z', + [SUBSCRIPTIONS_INVENTORY_TYPES.TOTAL_CAPACITY]: 2000, + [SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY]: true }; const inventoryMeta = { - subscriptionType: 'dolor' + [SUBSCRIPTIONS_INVENTORY_META_TYPES.SUBSCRIPTION_TYPE]: 'dolor' }; const filteredInventoryData = parseRowCellsListData({ @@ -108,8 +110,8 @@ describe('Product RHOSAK config', () => { const fallbackInventoryData = { ...inventoryData, - serviceLevel: null, - nextEventDate: null + [SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL]: null, + [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: null }; const fallbackFilteredInventoryData = parseRowCellsListData({ diff --git a/src/config/product.openshiftContainer.js b/src/config/product.openshiftContainer.js index f48139b1d..a480c02af 100644 --- a/src/config/product.openshiftContainer.js +++ b/src/config/product.openshiftContainer.js @@ -12,9 +12,12 @@ import { RHSM_API_QUERY_TYPES, RHSM_API_QUERY_UOM_TYPES, RHSM_API_QUERY_SORT_TYPES, - RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES, RHSM_API_PATH_ID_TYPES } from '../types/rhsmApiTypes'; +import { + RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES as SUBSCRIPTIONS_INVENTORY_TYPES +} from '../services/rhsm/rhsmConstants'; import { dateHelpers, helpers } from '../common'; import { Tooltip } from '../components/tooltip/tooltip'; import { ChartIcon } from '../components/chart/chartIcon'; @@ -49,7 +52,7 @@ const config = { [RHSM_API_QUERY_TYPES.OFFSET]: 0 }, inventorySubscriptionsQuery: { - [RHSM_API_QUERY_TYPES.SORT]: RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES.NEXT_EVENT_DATE, + [RHSM_API_QUERY_TYPES.SORT]: RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES.NEXT_EVENT_DATE, [RHSM_API_QUERY_TYPES.DIRECTION]: SORT_DIRECTION_TYPES.DESCENDING, [RHSM_API_QUERY_TYPES.LIMIT]: 100, [RHSM_API_QUERY_TYPES.OFFSET]: 0 @@ -178,29 +181,36 @@ const config = { initialInventorySettings: {}, initialSubscriptionsInventoryFilters: [ { - id: 'productName', + id: SUBSCRIPTIONS_INVENTORY_TYPES.PRODUCT_NAME, isSortable: true, isWrappable: true }, { - id: 'serviceLevel', + id: SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL, isSortable: true, isWrappable: true, cellWidth: 15 }, { - id: 'quantity', + id: SUBSCRIPTIONS_INVENTORY_TYPES.QUANTITY, isSortable: true, cellWidth: 20, isWrappable: true }, { - id: 'totalCapacity', - header: data => translate('curiosity-inventory.header', { context: ['subscriptions', data?.uom?.value] }), - cell: (data = {}) => { - const { hasInfiniteQuantity, totalCapacity, uom } = data; + id: SUBSCRIPTIONS_INVENTORY_TYPES.TOTAL_CAPACITY, + header: ({ [SUBSCRIPTIONS_INVENTORY_TYPES.UOM]: uom } = {}) => + translate('curiosity-inventory.header', { context: ['subscriptions', uom?.value] }), + cell: ({ + [SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY]: hasInfiniteQuantity, + [SUBSCRIPTIONS_INVENTORY_TYPES.TOTAL_CAPACITY]: totalCapacity, + [SUBSCRIPTIONS_INVENTORY_TYPES.UOM]: uom + } = {}) => { if (hasInfiniteQuantity?.value === true) { - const content = translate('curiosity-inventory.label', { context: ['hasInfiniteQuantity', uom?.value] }); + const content = translate( + `curiosity-inventory.label_${SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY}`, + { context: uom?.value } + ); return ( @@ -210,12 +220,13 @@ const config = { return totalCapacity?.value; }, isSortable: true, - cellWidth: 15, + cellWidth: 10, isWrappable: true }, { - id: 'nextEventDate', - cell: data => (data?.nextEventDate?.value && moment.utc(data?.nextEventDate?.value).format('YYYY-MM-DD')) || '', + id: SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE, + cell: ({ [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: nextEventDate } = {}) => + (nextEventDate?.value && moment.utc(nextEventDate?.value).format('YYYY-MM-DD')) || '', isSortable: true, isWrappable: true, cellWidth: 15 diff --git a/src/config/product.rhel.js b/src/config/product.rhel.js index 456568541..cef0446f2 100644 --- a/src/config/product.rhel.js +++ b/src/config/product.rhel.js @@ -14,11 +14,14 @@ import { RHSM_API_QUERY_GRANULARITY_TYPES as GRANULARITY_TYPES, RHSM_API_QUERY_SORT_DIRECTION_TYPES as SORT_DIRECTION_TYPES, RHSM_API_QUERY_SORT_TYPES, - RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES, RHSM_API_QUERY_TYPES, RHSM_API_QUERY_UOM_TYPES, RHSM_API_PATH_ID_TYPES } from '../types/rhsmApiTypes'; +import { + RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES as SUBSCRIPTIONS_INVENTORY_TYPES +} from '../services/rhsm/rhsmConstants'; import { dateHelpers, helpers } from '../common'; import { Tooltip } from '../components/tooltip/tooltip'; import { ChartIcon } from '../components/chart/chartIcon'; @@ -55,7 +58,7 @@ const config = { [RHSM_API_QUERY_TYPES.OFFSET]: 0 }, inventorySubscriptionsQuery: { - [RHSM_API_QUERY_TYPES.SORT]: RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES.NEXT_EVENT_DATE, + [RHSM_API_QUERY_TYPES.SORT]: RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES.NEXT_EVENT_DATE, [RHSM_API_QUERY_TYPES.DIRECTION]: SORT_DIRECTION_TYPES.DESCENDING, [RHSM_API_QUERY_TYPES.LIMIT]: 100, [RHSM_API_QUERY_TYPES.OFFSET]: 0 @@ -194,29 +197,36 @@ const config = { initialInventorySettings: {}, initialSubscriptionsInventoryFilters: [ { - id: 'productName', + id: SUBSCRIPTIONS_INVENTORY_TYPES.PRODUCT_NAME, isSortable: true, isWrappable: true }, { - id: 'serviceLevel', + id: SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL, isSortable: true, isWrappable: true, cellWidth: 15 }, { - id: 'quantity', + id: SUBSCRIPTIONS_INVENTORY_TYPES.QUANTITY, isSortable: true, cellWidth: 10, isWrappable: true }, { - id: 'totalCapacity', - header: data => translate('curiosity-inventory.header', { context: ['subscriptions', data?.uom?.value] }), - cell: (data = {}) => { - const { hasInfiniteQuantity, totalCapacity, uom } = data; + id: SUBSCRIPTIONS_INVENTORY_TYPES.TOTAL_CAPACITY, + header: ({ [SUBSCRIPTIONS_INVENTORY_TYPES.UOM]: uom } = {}) => + translate('curiosity-inventory.header', { context: ['subscriptions', uom?.value] }), + cell: ({ + [SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY]: hasInfiniteQuantity, + [SUBSCRIPTIONS_INVENTORY_TYPES.TOTAL_CAPACITY]: totalCapacity, + [SUBSCRIPTIONS_INVENTORY_TYPES.UOM]: uom + } = {}) => { if (hasInfiniteQuantity?.value === true) { - const content = translate('curiosity-inventory.label', { context: ['hasInfiniteQuantity', uom?.value] }); + const content = translate( + `curiosity-inventory.label_${SUBSCRIPTIONS_INVENTORY_TYPES.HAS_INFINITE_QUANTITY}`, + { context: uom?.value } + ); return ( @@ -230,8 +240,9 @@ const config = { isWrappable: true }, { - id: 'nextEventDate', - cell: data => (data?.nextEventDate?.value && moment.utc(data?.nextEventDate?.value).format('YYYY-MM-DD')) || '', + id: SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE, + cell: ({ [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: nextEventDate } = {}) => + (nextEventDate?.value && moment.utc(nextEventDate?.value).format('YYYY-MM-DD')) || '', isSortable: true, isWrappable: true, cellWidth: 15 diff --git a/src/config/product.rhosak.js b/src/config/product.rhosak.js index 7fb1e37e1..0a3e26818 100644 --- a/src/config/product.rhosak.js +++ b/src/config/product.rhosak.js @@ -10,10 +10,12 @@ import { import { Button } from '@patternfly/react-core'; import { DateFormat } from '@redhat-cloud-services/frontend-components/DateFormat'; import moment from 'moment'; -import { RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES } from '../types/rhsmApiTypes'; import { RHSM_API_QUERY_INVENTORY_SORT_DIRECTION_TYPES as SORT_DIRECTION_TYPES, RHSM_API_QUERY_INVENTORY_SORT_TYPES, + RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES as SUBSCRIPTIONS_INVENTORY_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES as SUBSCRIPTIONS_INVENTORY_META_TYPES, RHSM_API_RESPONSE_INSTANCES_DATA_TYPES as INVENTORY_TYPES, RHSM_API_QUERY_GRANULARITY_TYPES as GRANULARITY_TYPES, RHSM_API_QUERY_SET_TYPES, @@ -53,7 +55,7 @@ const config = { [RHSM_API_QUERY_SET_TYPES.OFFSET]: 0 }, inventorySubscriptionsQuery: { - [RHSM_API_QUERY_SET_TYPES.SORT]: RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES.NEXT_EVENT_DATE, + [RHSM_API_QUERY_SET_TYPES.SORT]: RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES.NEXT_EVENT_DATE, [RHSM_API_QUERY_SET_TYPES.DIRECTION]: SORT_DIRECTION_TYPES.DESCENDING, [RHSM_API_QUERY_SET_TYPES.LIMIT]: 100, [RHSM_API_QUERY_SET_TYPES.OFFSET]: 0 @@ -204,38 +206,38 @@ const config = { ], initialSubscriptionsInventoryFilters: [ { - id: 'productName', + id: SUBSCRIPTIONS_INVENTORY_TYPES.PRODUCT_NAME, isSortable: true, isWrappable: true }, { - id: 'serviceLevel', + id: SUBSCRIPTIONS_INVENTORY_TYPES.SERVICE_LEVEL, isSortable: true, isWrappable: true, cellWidth: 15 }, { - id: 'quantity', + id: SUBSCRIPTIONS_INVENTORY_TYPES.QUANTITY, isSortable: true, cellWidth: 10, isWrappable: true }, { - id: 'subscriptionType', - cell: (data, session, meta) => - translate('curiosity-inventory.label_subscriptionType', { - context: meta?.subscriptionType || EMPTY_CONTEXT + id: SUBSCRIPTIONS_INVENTORY_META_TYPES.SUBSCRIPTION_TYPE, + cell: (data, session, { [SUBSCRIPTIONS_INVENTORY_META_TYPES.SUBSCRIPTION_TYPE]: subscriptionType } = {}) => + translate(`curiosity-inventory.label_${SUBSCRIPTIONS_INVENTORY_META_TYPES.SUBSCRIPTION_TYPE}`, { + context: subscriptionType || EMPTY_CONTEXT }), isSortable: false, cellWidth: 15, isWrappable: true }, { - id: 'nextEventDate', - cell: data => - (data?.nextEventDate?.value && - helpers.isDate(data?.nextEventDate?.value) && - moment.utc(data?.nextEventDate?.value).format('YYYY-MM-DD')) || + id: SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE, + cell: ({ [SUBSCRIPTIONS_INVENTORY_TYPES.NEXT_EVENT_DATE]: nextEventDate } = {}) => + (nextEventDate?.value && + helpers.isDate(nextEventDate?.value) && + moment.utc(nextEventDate?.value).format('YYYY-MM-DD')) || '', isSortable: true, isWrappable: true, diff --git a/src/config/product.satellite.js b/src/config/product.satellite.js index a29df8b7c..b59641197 100644 --- a/src/config/product.satellite.js +++ b/src/config/product.satellite.js @@ -13,10 +13,10 @@ import { RHSM_API_QUERY_GRANULARITY_TYPES as GRANULARITY_TYPES, RHSM_API_QUERY_SORT_DIRECTION_TYPES as SORT_DIRECTION_TYPES, RHSM_API_QUERY_SORT_TYPES, - RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES, RHSM_API_QUERY_TYPES, RHSM_API_PATH_ID_TYPES } from '../types/rhsmApiTypes'; +import { RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES } from '../services/rhsm/rhsmConstants'; import { dateHelpers, helpers } from '../common'; import { translate } from '../components/i18n/i18n'; @@ -50,7 +50,7 @@ const config = { [RHSM_API_QUERY_TYPES.OFFSET]: 0 }, inventorySubscriptionsQuery: { - [RHSM_API_QUERY_TYPES.SORT]: RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES.NEXT_EVENT_DATE, + [RHSM_API_QUERY_TYPES.SORT]: RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES.NEXT_EVENT_DATE, [RHSM_API_QUERY_TYPES.DIRECTION]: SORT_DIRECTION_TYPES.DESCENDING, [RHSM_API_QUERY_TYPES.LIMIT]: 100, [RHSM_API_QUERY_TYPES.OFFSET]: 0 diff --git a/src/services/rhsm/__tests__/__snapshots__/rhsmConstants.test.js.snap b/src/services/rhsm/__tests__/__snapshots__/rhsmConstants.test.js.snap index d560f3959..0f58878a4 100644 --- a/src/services/rhsm/__tests__/__snapshots__/rhsmConstants.test.js.snap +++ b/src/services/rhsm/__tests__/__snapshots__/rhsmConstants.test.js.snap @@ -165,6 +165,28 @@ Object { "SELF": "Self-Support", "STANDARD": "Standard", }, + "RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES": Object { + "BILLING_ACCOUNT_ID": "billing_account_id", + "BILLING_PROVIDER": "billing_provider", + "DISPLAY_NAME": "display_name", + "HAS_INFINITE_QUANTITY": "has_infinite_quantity", + "INVENTORY_ID": "inventory_id", + "LAST_SEEN": "last_seen", + "MEASUREMENTS": "measurements", + "NEXT_EVENT_DATE": "next_event_date", + "NUMBER_OF_GUESTS": "number_of_guests", + "PRODUCT_NAME": "product_name", + "QUANTITY": "quantity", + "SERVICE_LEVEL": "service_level", + "SUBSCRIPTION_MANAGER_ID": "subscription_manager_id", + "TOTAL_CAPACITY": "total_capacity", + "UOM": "uom", + }, + "RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES": Object { + "COUNT": "count", + "PRODUCT": "product", + "SUBSCRIPTION_TYPE": "subscription_type", + }, "RHSM_API_RESPONSE_SUBSCRIPTION_TYPES": Object { "ANNUAL": "Annual", "ON_DEMAND": "On-demand", @@ -359,6 +381,28 @@ Object { "SELF": "Self-Support", "STANDARD": "Standard", }, + "RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES": Object { + "BILLING_ACCOUNT_ID": "billing_account_id", + "BILLING_PROVIDER": "billing_provider", + "DISPLAY_NAME": "display_name", + "HAS_INFINITE_QUANTITY": "has_infinite_quantity", + "INVENTORY_ID": "inventory_id", + "LAST_SEEN": "last_seen", + "MEASUREMENTS": "measurements", + "NEXT_EVENT_DATE": "next_event_date", + "NUMBER_OF_GUESTS": "number_of_guests", + "PRODUCT_NAME": "product_name", + "QUANTITY": "quantity", + "SERVICE_LEVEL": "service_level", + "SUBSCRIPTION_MANAGER_ID": "subscription_manager_id", + "TOTAL_CAPACITY": "total_capacity", + "UOM": "uom", + }, + "RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES": Object { + "COUNT": "count", + "PRODUCT": "product", + "SUBSCRIPTION_TYPE": "subscription_type", + }, "RHSM_API_RESPONSE_SUBSCRIPTION_TYPES": Object { "ANNUAL": "Annual", "ON_DEMAND": "On-demand", @@ -554,6 +598,28 @@ Object { "SELF": "Self-Support", "STANDARD": "Standard", }, + "RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES": Object { + "BILLING_ACCOUNT_ID": "billing_account_id", + "BILLING_PROVIDER": "billing_provider", + "DISPLAY_NAME": "display_name", + "HAS_INFINITE_QUANTITY": "has_infinite_quantity", + "INVENTORY_ID": "inventory_id", + "LAST_SEEN": "last_seen", + "MEASUREMENTS": "measurements", + "NEXT_EVENT_DATE": "next_event_date", + "NUMBER_OF_GUESTS": "number_of_guests", + "PRODUCT_NAME": "product_name", + "QUANTITY": "quantity", + "SERVICE_LEVEL": "service_level", + "SUBSCRIPTION_MANAGER_ID": "subscription_manager_id", + "TOTAL_CAPACITY": "total_capacity", + "UOM": "uom", + }, + "RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES": Object { + "COUNT": "count", + "PRODUCT": "product", + "SUBSCRIPTION_TYPE": "subscription_type", + }, "RHSM_API_RESPONSE_SUBSCRIPTION_TYPES": Object { "ANNUAL": "Annual", "ON_DEMAND": "On-demand", @@ -753,6 +819,28 @@ Object { "SELF": "Self-Support", "STANDARD": "Standard", }, + "RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES": Object { + "BILLING_ACCOUNT_ID": "billing_account_id", + "BILLING_PROVIDER": "billing_provider", + "DISPLAY_NAME": "display_name", + "HAS_INFINITE_QUANTITY": "has_infinite_quantity", + "INVENTORY_ID": "inventory_id", + "LAST_SEEN": "last_seen", + "MEASUREMENTS": "measurements", + "NEXT_EVENT_DATE": "next_event_date", + "NUMBER_OF_GUESTS": "number_of_guests", + "PRODUCT_NAME": "product_name", + "QUANTITY": "quantity", + "SERVICE_LEVEL": "service_level", + "SUBSCRIPTION_MANAGER_ID": "subscription_manager_id", + "TOTAL_CAPACITY": "total_capacity", + "UOM": "uom", + }, + "RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES": Object { + "COUNT": "count", + "PRODUCT": "product", + "SUBSCRIPTION_TYPE": "subscription_type", + }, "RHSM_API_RESPONSE_SUBSCRIPTION_TYPES": Object { "ANNUAL": "Annual", "ON_DEMAND": "On-demand", diff --git a/src/services/rhsm/rhsmConstants.js b/src/services/rhsm/rhsmConstants.js index a61b83d54..ff738410c 100644 --- a/src/services/rhsm/rhsmConstants.js +++ b/src/services/rhsm/rhsmConstants.js @@ -128,6 +128,35 @@ const RHSM_API_RESPONSE_INSTANCES_META_TYPES = { MEASUREMENTS: 'measurements' }; +/** + * RHSM response Subscriptions DATA types. + * + * @type {{BILLING_ACCOUNT_ID: string, QUANTITY: string, SUBSCRIPTION_MANAGER_ID: string, INVENTORY_ID: string, + * NUMBER_OF_GUESTS: string, HAS_INFINITE_QUANTITY: string, TOTAL_CAPACITY: string, PRODUCT_NAME: string, + * SERVICE_LEVEL: string, DISPLAY_NAME: string, MEASUREMENTS: string, UOM: string, NEXT_EVENT_DATE: string, + * BILLING_PROVIDER: string, LAST_SEEN: string}} + */ +const RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES = { + ...RHSM_API_RESPONSE_INSTANCES_DATA_TYPES, + HAS_INFINITE_QUANTITY: 'has_infinite_quantity', + NEXT_EVENT_DATE: 'next_event_date', + PRODUCT_NAME: 'product_name', + QUANTITY: 'quantity', + SERVICE_LEVEL: 'service_level', + TOTAL_CAPACITY: 'total_capacity', + UOM: 'uom' +}; + +/** + * RHSM response Subscriptions META types. + * + * @type {{PRODUCT: string, SUBSCRIPTION_TYPE: string, COUNT: string}} + */ +const RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES = { + ...RHSM_API_RESPONSE_META_TYPES, + SUBSCRIPTION_TYPE: 'subscription_type' +}; + /** * RHSM response Tally DATA types. * @@ -336,27 +365,31 @@ const RHSM_API_QUERY_SET_TYPES = { /** * RHSM constants. * - * @type {{RHSM_API_QUERY_SET_TALLY_CAPACITY_TYPES: {GRANULARITY: string, USAGE: string, END_DATE: string, SLA: string, - * START_DATE: string, BILLING_PROVIDER: string}, RHSM_API_RESPONSE_DATA: string, RHSM_API_PATH_METRIC_TYPES: {CORES: string, - * STORAGE_GIBIBYTES: string, SOCKETS: string, INSTANCE_HOURS: string, STORAGE_GIBIBYTE_MONTHS: string, TRANSFER_GIBIBYTES: string, - * CORE_SECONDS: string}, RHSM_API_RESPONSE_TALLY_DATA_TYPES: {DATE: string, HAS_DATA: string, VALUE: string}, + * @type {{RHSM_API_QUERY_SET_TALLY_CAPACITY_TYPES: {GRANULARITY: string, USAGE: string, END_DATE: string, SLA: string, START_DATE: string, + * BILLING_PROVIDER: string}, RHSM_API_RESPONSE_DATA: string, RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES: {PRODUCT: string, + * SUBSCRIPTION_TYPE: string, COUNT: string}, RHSM_API_PATH_METRIC_TYPES: {CORES: string, STORAGE_GIBIBYTES: string, SOCKETS: string, + * INSTANCE_HOURS: string, STORAGE_GIBIBYTE_MONTHS: string, TRANSFER_GIBIBYTES: string, CORE_SECONDS: string}, + * RHSM_API_RESPONSE_TALLY_DATA_TYPES: {DATE: string, HAS_DATA: string, VALUE: string}, * RHSM_API_RESPONSE_INSTANCES_META_TYPES: {MEASUREMENTS: string, PRODUCT: string, COUNT: string}, * RHSM_API_RESPONSE_INSTANCES_DATA_TYPES: {MEASUREMENTS: string, BILLING_ACCOUNT_ID: string, SUBSCRIPTION_MANAGER_ID: string, * INVENTORY_ID: string, NUMBER_OF_GUESTS: string, BILLING_PROVIDER: string, DISPLAY_NAME: string, LAST_SEEN: string}, - * RHSM_API_RESPONSE_SLA_TYPES: {PREMIUM: string, SELF: string, NONE: string, STANDARD: string}, - * RHSM_API_RESPONSE_META_TYPES: {PRODUCT: string, COUNT: string}, RHSM_API_RESPONSE_ERRORS_CODE_TYPES: {GENERIC: string, OPTIN: string}, - * RHSM_API_QUERY_GRANULARITY_TYPES: {WEEKLY: string, QUARTERLY: string, DAILY: string, MONTHLY: string}, - * RHSM_API_RESPONSE_UOM_TYPES: {CORES: string, SOCKETS: string}, RHSM_API_QUERY_INVENTORY_SORT_DIRECTION_TYPES: {ASCENDING: string, - * DESCENDING: string}, RHSM_API_RESPONSE_SUBSCRIPTION_TYPES: {ANNUAL: string, ON_DEMAND: string}, - * RHSM_API_QUERY_INVENTORY_SORT_TYPES: {CORES: string, STORAGE_GIBIBYTES: string, SOCKETS: string, INSTANCE_HOURS: string, - * TRANSFER_GIBIBYTES: string, BILLING_PROVIDER: string, CORE_SECONDS: string, LAST_SEEN: string, NAME: string}, - * RHSM_API_PATH_PRODUCT_TYPES: {RHEL_ARM: string, OPENSHIFT_METRICS: string, SATELLITE: string, RHEL_WORKSTATION: string, RHOSAK: string, - * RHEL_COMPUTE_NODE: string, RHEL_X86: string, OPENSHIFT: string, SATELLITE_SERVER: string, OPENSHIFT_DEDICATED_METRICS: string, - * RHEL_DESKTOP: string, RHEL: string, SATELLITE_CAPSULE: string, RHEL_SERVER: string, RHEL_IBM_Z: string, RHEL_IBM_POWER: string}, - * RHSM_API_RESPONSE_BILLING_PROVIDER_TYPES: {AZURE: string, GCP: string, RED_HAT: string, NONE: string, AWS: string, ORACLE: string}, - * RHSM_API_RESPONSE_ERRORS_TYPES: {CODE: string}, RHSM_API_QUERY_BILLING_PROVIDER_TYPES: {AZURE: string, GCP: string, RED_HAT: string, - * NONE: string, AWS: string, ORACLE: string}, RHSM_API_QUERY_USAGE_TYPES: {UNSPECIFIED: string, DISASTER: string, DEVELOPMENT: string, - * PRODUCTION: string}, RHSM_API_QUERY_SLA_TYPES: {PREMIUM: string, SELF: string, NONE: string, STANDARD: string}, + * RHSM_API_RESPONSE_SLA_TYPES: {PREMIUM: string, SELF: string, NONE: string, STANDARD: string}, RHSM_API_RESPONSE_META_TYPES: {PRODUCT: string, + * COUNT: string}, RHSM_API_RESPONSE_ERRORS_CODE_TYPES: {GENERIC: string, OPTIN: string}, RHSM_API_QUERY_GRANULARITY_TYPES: {WEEKLY: string, + * QUARTERLY: string, DAILY: string, MONTHLY: string}, RHSM_API_RESPONSE_UOM_TYPES: {CORES: string, SOCKETS: string}, + * RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES: {BILLING_ACCOUNT_ID: string, QUANTITY: string, SUBSCRIPTION_MANAGER_ID: string, + * INVENTORY_ID: string, NUMBER_OF_GUESTS: string, HAS_INFINITE_QUANTITY: string, TOTAL_CAPACITY: string, PRODUCT_NAME: string, + * SERVICE_LEVEL: string, DISPLAY_NAME: string, MEASUREMENTS: string, UOM: string, NEXT_EVENT_DATE: string, BILLING_PROVIDER: string, + * LAST_SEEN: string}, RHSM_API_QUERY_INVENTORY_SORT_DIRECTION_TYPES: {ASCENDING: string, DESCENDING: string}, + * RHSM_API_RESPONSE_SUBSCRIPTION_TYPES: {ANNUAL: string, ON_DEMAND: string}, RHSM_API_QUERY_INVENTORY_SORT_TYPES: {CORES: string, + * STORAGE_GIBIBYTES: string, SOCKETS: string, INSTANCE_HOURS: string, TRANSFER_GIBIBYTES: string, BILLING_PROVIDER: string, + * CORE_SECONDS: string, LAST_SEEN: string, NAME: string}, RHSM_API_PATH_PRODUCT_TYPES: {RHEL_ARM: string, OPENSHIFT_METRICS: string, + * SATELLITE: string, RHEL_WORKSTATION: string, RHOSAK: string, RHEL_COMPUTE_NODE: string, RHEL_X86: string, OPENSHIFT: string, + * SATELLITE_SERVER: string, OPENSHIFT_DEDICATED_METRICS: string, RHEL_DESKTOP: string, RHEL: string, SATELLITE_CAPSULE: string, + * RHEL_SERVER: string, RHEL_IBM_Z: string, RHEL_IBM_POWER: string}, RHSM_API_RESPONSE_BILLING_PROVIDER_TYPES: {AZURE: string, GCP: string, + * RED_HAT: string, NONE: string, AWS: string, ORACLE: string}, RHSM_API_RESPONSE_ERRORS_TYPES: {CODE: string}, + * RHSM_API_QUERY_BILLING_PROVIDER_TYPES: {AZURE: string, GCP: string, RED_HAT: string, NONE: string, AWS: string, ORACLE: string}, + * RHSM_API_QUERY_USAGE_TYPES: {UNSPECIFIED: string, DISASTER: string, DEVELOPMENT: string, PRODUCTION: string}, + * RHSM_API_QUERY_SLA_TYPES: {PREMIUM: string, SELF: string, NONE: string, STANDARD: string}, * RHSM_API_QUERY_SET_INVENTORY_TYPES: {UOM: string, BILLING_ACCOUNT_ID: string, USAGE: string, DIRECTION: string, SORT: string, * END_DATE: string, OFFSET: string, SLA: string, LIMIT: string, START_DATE: string, BILLING_PROVIDER: string, DISPLAY_NAME: string}, * RHSM_API_RESPONSE_ERRORS: string, RHSM_API_RESPONSE_TALLY_META_TYPES: {TOTAL_MONTHLY: string, DATE: string, PRODUCT: string, @@ -380,6 +413,8 @@ const rhsmConstants = { RHSM_API_RESPONSE_ERRORS_CODE_TYPES, RHSM_API_RESPONSE_INSTANCES_DATA_TYPES, RHSM_API_RESPONSE_INSTANCES_META_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES, RHSM_API_RESPONSE_TALLY_DATA_TYPES, RHSM_API_RESPONSE_TALLY_META_TYPES, RHSM_API_RESPONSE_GRANULARITY_TYPES, @@ -414,6 +449,8 @@ export { RHSM_API_RESPONSE_ERRORS_CODE_TYPES, RHSM_API_RESPONSE_INSTANCES_DATA_TYPES, RHSM_API_RESPONSE_INSTANCES_META_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_DATA_TYPES, + RHSM_API_RESPONSE_SUBSCRIPTIONS_META_TYPES, RHSM_API_RESPONSE_TALLY_DATA_TYPES, RHSM_API_RESPONSE_TALLY_META_TYPES, RHSM_API_RESPONSE_GRANULARITY_TYPES, diff --git a/src/services/rhsm/rhsmSchemas.js b/src/services/rhsm/rhsmSchemas.js index 3cc0bd478..e2fb72e79 100644 --- a/src/services/rhsm/rhsmSchemas.js +++ b/src/services/rhsm/rhsmSchemas.js @@ -201,7 +201,7 @@ const rhsmSchemas = { guests: response => schemaResponse({ response, casing: 'camel', schema: guestsResponseSchema, id: 'RHSM guests' }), instances: response => schemaResponse({ response, schema: instancesResponseSchema, id: 'RHSM instances' }), subscriptions: response => - schemaResponse({ response, casing: 'camel', schema: subscriptionsResponseSchema, id: 'RHSM subscriptions' }), + schemaResponse({ response, schema: subscriptionsResponseSchema, id: 'RHSM subscriptions' }), tally: response => schemaResponse({ response, schema: tallyResponseSchema, id: 'RHSM tally' }) }; diff --git a/src/types/__tests__/__snapshots__/index.test.js.snap b/src/types/__tests__/__snapshots__/index.test.js.snap index d6b783b1f..8efefdf80 100644 --- a/src/types/__tests__/__snapshots__/index.test.js.snap +++ b/src/types/__tests__/__snapshots__/index.test.js.snap @@ -103,16 +103,6 @@ Object { "NAME": "display_name", "SOCKETS": "sockets", }, - "RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES": Object { - "NEXT_EVENT_DATE": "next_event_date", - "NEXT_EVENT_TYPE": "next_event_type", - "PRODUCT_NAME": "product_name", - "QUANTITY": "quantity", - "SERVICE_LEVEL": "service_level", - "SKU": "sku", - "TOTAL_CAPACITY": "total_capacity", - "USAGE": "usage", - }, "RHSM_API_QUERY_TYPES": Object { "BILLING_ACCOUNT_ID": "billing_account_id", "BILLING_PROVIDER": "billing_provider", @@ -319,16 +309,6 @@ Object { "NAME": "display_name", "SOCKETS": "sockets", }, - "RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES": Object { - "NEXT_EVENT_DATE": "next_event_date", - "NEXT_EVENT_TYPE": "next_event_type", - "PRODUCT_NAME": "product_name", - "QUANTITY": "quantity", - "SERVICE_LEVEL": "service_level", - "SKU": "sku", - "TOTAL_CAPACITY": "total_capacity", - "USAGE": "usage", - }, "RHSM_API_QUERY_TYPES": Object { "BILLING_ACCOUNT_ID": "billing_account_id", "BILLING_PROVIDER": "billing_provider", @@ -534,16 +514,6 @@ Object { "NAME": "display_name", "SOCKETS": "sockets", }, - "RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES": Object { - "NEXT_EVENT_DATE": "next_event_date", - "NEXT_EVENT_TYPE": "next_event_type", - "PRODUCT_NAME": "product_name", - "QUANTITY": "quantity", - "SERVICE_LEVEL": "service_level", - "SKU": "sku", - "TOTAL_CAPACITY": "total_capacity", - "USAGE": "usage", - }, "RHSM_API_QUERY_TYPES": Object { "BILLING_ACCOUNT_ID": "billing_account_id", "BILLING_PROVIDER": "billing_provider", @@ -753,16 +723,6 @@ Object { "NAME": "display_name", "SOCKETS": "sockets", }, - "RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES": Object { - "NEXT_EVENT_DATE": "next_event_date", - "NEXT_EVENT_TYPE": "next_event_type", - "PRODUCT_NAME": "product_name", - "QUANTITY": "quantity", - "SERVICE_LEVEL": "service_level", - "SKU": "sku", - "TOTAL_CAPACITY": "total_capacity", - "USAGE": "usage", - }, "RHSM_API_QUERY_TYPES": Object { "BILLING_ACCOUNT_ID": "billing_account_id", "BILLING_PROVIDER": "billing_provider", diff --git a/src/types/rhsmApiTypes.js b/src/types/rhsmApiTypes.js index 4de286692..e5e0e5f73 100644 --- a/src/types/rhsmApiTypes.js +++ b/src/types/rhsmApiTypes.js @@ -251,16 +251,6 @@ const RHSM_API_QUERY_SORT_TYPES = { SOCKETS: 'sockets' }; -/** - * RHSM API query/search parameter SORT type values for SUBSCRIPTIONS. - * - * @type {{QUANTITY: string, USAGE: string, NEXT_EVENT_TYPE: string, NEXT_EVENT_DATE: string, SKU: string, - * SERVICE_LEVEL: string}} - */ -const RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES = { - ...rhsmConstants.RHSM_API_QUERY_INVENTORY_SUBSCRIPTIONS_SORT_TYPES -}; - /** * RHSM API query/search parameter SORT DIRECTION type values. * @@ -368,22 +358,19 @@ const RHSM_API_QUERY_TYPES = { * RHSM API types. * * @type {{RHSM_API_QUERY_SET_INVENTORY_SUBSCRIPTIONS_TYPES: {UOM: string, USAGE: string, DIRECTION: string, SORT: string, OFFSET: string, - * SLA: string, LIMIT: string}, RHSM_API_RESPONSE_DATA: string, RHSM_API_RESPONSE_ERROR_DATA_CODE_TYPES: {GENERIC: string, - * OPTIN: string}, RHSM_API_RESPONSE_INVENTORY_DATA: string, RHSM_API_RESPONSE_CAPACITY_DATA: string, - * RHSM_API_RESPONSE_ERROR_DATA_TYPES: {CODE: string, DETAIL: string}, - * RHSM_API_RESPONSE_CAPACITY_DATA_TYPES: {HYPERVISOR_SOCKETS: string, CORES: string, DATE: string, SOCKETS: string, + * SLA: string, LIMIT: string}, RHSM_API_RESPONSE_DATA: string, RHSM_API_RESPONSE_ERROR_DATA_CODE_TYPES: {GENERIC: string, OPTIN: string}, + * RHSM_API_RESPONSE_INVENTORY_DATA: string, RHSM_API_RESPONSE_CAPACITY_DATA: string, RHSM_API_RESPONSE_ERROR_DATA_TYPES: {CODE: string, + * DETAIL: string}, RHSM_API_RESPONSE_CAPACITY_DATA_TYPES: {HYPERVISOR_SOCKETS: string, CORES: string, DATE: string, SOCKETS: string, * PHYSICAL_SOCKETS: string, HYPERVISOR_CORES: string, HAS_INFINITE: string, PHYSICAL_CORES: string}, - * RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES: {QUANTITY: string, USAGE: string, NEXT_EVENT_TYPE: string, NEXT_EVENT_DATE: string, - * SKU: string, SERVICE_LEVEL: string}, RHSM_API_RESPONSE_META_TYPES: {COUNT: string, TOTAL_INSTANCE_HOURS: string, - * TOTAL_CORE_HOURS: string}, RHSM_API_QUERY_GRANULARITY_TYPES: {WEEKLY: string, QUARTERLY: string, DAILY: string, - * MONTHLY: string}, RHSM_API_QUERY_SORT_DIRECTION_TYPES: {ASCENDING: string, DESCENDING: string}, - * RHSM_API_RESPONSE_PRODUCTS_DATA: string, RHSM_API_QUERY_TYPES: {GRANULARITY: string, TALLY_SYNC: string, DIRECTION: string, - * END_DATE: string, SLA: string, START_DATE: string, LIMIT: string, UOM: string, TALLY_REPORT: string, USAGE: string, - * SORT: string, OFFSET: string, CONDUIT_SYNC: string}, RHSM_API_RESPONSE_LINKS: string, - * RHSM_API_QUERY_SET_INVENTORY_GUESTS_TYPES: {OFFSET: string, LIMIT: string}, RHSM_API_PATH_ID_TYPES: {RHEL_ARM: string, - * OPENSHIFT_METRICS: string, SATELLITE: string, RHEL_WORKSTATION: string, RHOSAK: string, RHEL_COMPUTE_NODE: string, - * RHEL_X86: string, OPENSHIFT: string, SATELLITE_SERVER: string, OPENSHIFT_DEDICATED_METRICS: string, RHEL_DESKTOP: string, - * RHEL: string, SATELLITE_CAPSULE: string, RHEL_SERVER: string, RHEL_IBM_Z: string, RHEL_IBM_POWER: string}, + * RHSM_API_RESPONSE_META_TYPES: {COUNT: string, TOTAL_INSTANCE_HOURS: string, TOTAL_CORE_HOURS: string}, + * RHSM_API_QUERY_GRANULARITY_TYPES: {WEEKLY: string, QUARTERLY: string, DAILY: string, MONTHLY: string}, + * RHSM_API_QUERY_SORT_DIRECTION_TYPES: {ASCENDING: string, DESCENDING: string}, RHSM_API_RESPONSE_PRODUCTS_DATA: string, + * RHSM_API_QUERY_TYPES: {GRANULARITY: string, TALLY_SYNC: string, DIRECTION: string, END_DATE: string, SLA: string, START_DATE: string, + * LIMIT: string, UOM: string, TALLY_REPORT: string, USAGE: string, SORT: string, OFFSET: string, CONDUIT_SYNC: string}, + * RHSM_API_RESPONSE_LINKS: string, RHSM_API_QUERY_SET_INVENTORY_GUESTS_TYPES: {OFFSET: string, LIMIT: string}, + * RHSM_API_PATH_ID_TYPES: {RHEL_ARM: string, OPENSHIFT_METRICS: string, SATELLITE: string, RHEL_WORKSTATION: string, RHOSAK: string, + * RHEL_COMPUTE_NODE: string, RHEL_X86: string, OPENSHIFT: string, SATELLITE_SERVER: string, OPENSHIFT_DEDICATED_METRICS: string, + * RHEL_DESKTOP: string, RHEL: string, SATELLITE_CAPSULE: string, RHEL_SERVER: string, RHEL_IBM_Z: string, RHEL_IBM_POWER: string}, * RHSM_API_QUERY_SET_OPTIN_TYPES: {TALLY_SYNC: string, TALLY_REPORT: string, CONDUIT_SYNC: string}, * RHSM_API_QUERY_USAGE_TYPES: {UNSPECIFIED: string, DISASTER: string, DEVELOPMENT: string, PRODUCTION: string}, * RHSM_API_QUERY_SLA_TYPES: {PREMIUM: string, SELF: string, NONE: string, STANDARD: string}, @@ -392,14 +379,12 @@ const RHSM_API_QUERY_TYPES = { * MEASUREMENT: string, LAST_SEEN: string, NAME: string}, RHSM_API_RESPONSE_PRODUCTS_DATA_TYPES: {HYPERVISOR_SOCKETS: string, * CORES: string, INSTANCE_HOURS: string, SOCKETS: string, CLOUD_CORES: string, HAS_DATA: string, PHYSICAL_SOCKETS: string, * PHYSICAL_CORES: string, CLOUD_INSTANCES: string, DATE: string, CORE_HOURS: string, CLOUD_SOCKETS: string, - * HAS_CLOUDIGRADE_DATA: string, HAS_CLOUDIGRADE_MISMATCH: string, HYPERVISOR_CORES: string}, - * RHSM_API_QUERY_UOM_TYPES: {CORES: string, SOCKETS: string}, RHSM_API_RESPONSE_LINKS_TYPES: string, - * RHSM_API_RESPONSE_INVENTORY_GUESTS_DATA_TYPES: {SUBSCRIPTION_ID: string, ID: string, NAME: string, LAST_SEEN: string}, - * RHSM_API_RESPONSE_ERROR_DATA: string, RHSM_API_RESPONSE_META: string, RHSM_API_RESPONSE_INVENTORY_DATA_TYPES: {CORES: string, - * CORE_HOURS: string, HARDWARE: string, SOCKETS: string, SUBSCRIPTION_ID: string, INVENTORY_ID: string, MEASUREMENT: string, - * ID: string, GUESTS: string, CLOUD_PROVIDER: string, LAST_SEEN: string, NAME: string}, - * RHSM_API_QUERY_SET_REPORT_CAPACITY_TYPES: {GRANULARITY: string, USAGE: string, END_DATE: string, SLA: string, - * START_DATE: string}}} + * HAS_CLOUDIGRADE_DATA: string, HAS_CLOUDIGRADE_MISMATCH: string, HYPERVISOR_CORES: string}, RHSM_API_QUERY_UOM_TYPES: {CORES: string, + * SOCKETS: string}, RHSM_API_RESPONSE_LINKS_TYPES: string, RHSM_API_RESPONSE_INVENTORY_GUESTS_DATA_TYPES: {SUBSCRIPTION_ID: string, + * ID: string, NAME: string, LAST_SEEN: string}, RHSM_API_RESPONSE_ERROR_DATA: string, RHSM_API_RESPONSE_META: string, + * RHSM_API_RESPONSE_INVENTORY_DATA_TYPES: {CORES: string, CORE_HOURS: string, HARDWARE: string, SOCKETS: string, SUBSCRIPTION_ID: string, + * INVENTORY_ID: string, MEASUREMENT: string, ID: string, GUESTS: string, CLOUD_PROVIDER: string, LAST_SEEN: string, NAME: string}, + * RHSM_API_QUERY_SET_REPORT_CAPACITY_TYPES: {GRANULARITY: string, USAGE: string, END_DATE: string, SLA: string, START_DATE: string}}} */ const rhsmApiTypes = { RHSM_API_RESPONSE_ERROR_DATA, @@ -420,7 +405,6 @@ const rhsmApiTypes = { RHSM_API_PATH_ID_TYPES, RHSM_API_QUERY_GRANULARITY_TYPES, RHSM_API_QUERY_SORT_TYPES, - RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES, RHSM_API_QUERY_SORT_DIRECTION_TYPES, RHSM_API_QUERY_SLA_TYPES, RHSM_API_QUERY_UOM_TYPES, @@ -454,7 +438,6 @@ export { RHSM_API_PATH_ID_TYPES, RHSM_API_QUERY_GRANULARITY_TYPES, RHSM_API_QUERY_SORT_TYPES, - RHSM_API_QUERY_SUBSCRIPTIONS_SORT_TYPES, RHSM_API_QUERY_SORT_DIRECTION_TYPES, RHSM_API_QUERY_SLA_TYPES, RHSM_API_QUERY_UOM_TYPES,