From be6ad76682b9f82127d2181a226296a13c9127ff Mon Sep 17 00:00:00 2001 From: Chris Hellen Date: Tue, 28 May 2024 09:49:34 -0500 Subject: [PATCH] Implemented more aria-labels, updated tests and translations accordingly --- .../Criteria/AggregateCriteriaCard.tsx | 4 +- .../Criteria/CriteriaFeeFineType.tsx | 2 +- .../Token/Data/AccountDateToken.tsx | 24 +- src/components/Token/Data/DataTypeSelect.tsx | 36 +-- .../Token/Data/FeeFineTypeToken.tsx | 24 +- .../HeaderFooter/HeaderFooterTypeSelect.tsx | 27 ++- .../Token/Shared/DatePartPicker.tsx | 222 +++++++++--------- .../Token/Shared/TimezonePicker.tsx | 36 ++- translations/ui-plugin-bursar-export/en.json | 66 +++--- 9 files changed, 247 insertions(+), 194 deletions(-) diff --git a/src/components/Criteria/AggregateCriteriaCard.tsx b/src/components/Criteria/AggregateCriteriaCard.tsx index c4cd329b..225fc867 100644 --- a/src/components/Criteria/AggregateCriteriaCard.tsx +++ b/src/components/Criteria/AggregateCriteriaCard.tsx @@ -7,13 +7,13 @@ import css from '../Card.module.css'; import OperatorSelect from './OperatorSelect'; export default function AggregateCriteriaCard() { + const intl = useIntl(); + const selectedType = useField('aggregateFilter.type', { subscription: { value: true }, format: (value) => value ?? CriteriaAggregateType.PASS, }).input.value; - const intl = useIntl(); - const criteriaOptions = useMemo( () => [ { diff --git a/src/components/Criteria/CriteriaFeeFineType.tsx b/src/components/Criteria/CriteriaFeeFineType.tsx index 8f38a552..06bf48c7 100644 --- a/src/components/Criteria/CriteriaFeeFineType.tsx +++ b/src/components/Criteria/CriteriaFeeFineType.tsx @@ -100,7 +100,7 @@ export default function CriteriaFeeFineType({ prefix }: Readonly<{ prefix: strin {...fieldProps} fullWidth marginBottom0 - aria-label={typeName === undefined ? 'Fee/fine type' : typeName} + aria-label={typeName === undefined ? intl.formatMessage({ id: 'ui-plugin-bursar-export.bursarExports.criteria.select.FeeType' }) : typeName} dataOptions={typeSelectOptionsForDisplay} /> )} diff --git a/src/components/Token/Data/AccountDateToken.tsx b/src/components/Token/Data/AccountDateToken.tsx index 30e3d217..2da31314 100644 --- a/src/components/Token/Data/AccountDateToken.tsx +++ b/src/components/Token/Data/AccountDateToken.tsx @@ -1,6 +1,6 @@ -import { Col, Select, TextField } from '@folio/stripes/components'; +import { Col, Select, TextField, Label } from '@folio/stripes/components'; import React from 'react'; -import { Field } from 'react-final-form'; +import { Field, useField } from 'react-final-form'; import { FormattedMessage, useIntl } from 'react-intl'; import DatePartPicker from '../Shared/DatePartPicker'; import TimezonePicker from '../Shared/TimezonePicker'; @@ -8,37 +8,47 @@ import css from '../TokenStyles.module.css'; export default function AccountDateToken({ prefix }: Readonly<{ prefix: string }>) { const intl = useIntl(); + + const selectedDateType = useField<'CREATED' | 'UPDATED' | 'DUE' | 'RETURNED'>(`${prefix}dateProperty`, { + subscription: { value: true } + }).input.value; + return ( <> + name={`${prefix}dateProperty`} defaultValue="CREATED"> {(fieldProps) => ( {...fieldProps} required - label={} + aria-label={selectedDateType ? + intl.formatMessage({ id: `ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.${selectedDateType}` }) : + intl.formatMessage({ id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType' })} dataOptions={[ { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.created', + id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.CREATED', }), value: 'CREATED', }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.updated', + id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.UPDATED', }), value: 'UPDATED', }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.dueItem', + id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.DUE', }), value: 'DUE', }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.dueLoan', + id: 'ui-plugin-bursar-export.bursarExports.token.accountDate.dateType.RETURNED', }), value: 'RETURNED', }, diff --git a/src/components/Token/Data/DataTypeSelect.tsx b/src/components/Token/Data/DataTypeSelect.tsx index 48bd82e5..3e5030bc 100644 --- a/src/components/Token/Data/DataTypeSelect.tsx +++ b/src/components/Token/Data/DataTypeSelect.tsx @@ -10,37 +10,41 @@ export default function DataTypeSelect({ name }: Readonly<{ name: string }>) { format: (value) => value ?? false, }).input.value; + const selectedDataType = useField(name, { + subscription: { value: true } + }).input.value; + const intl = useIntl(); const alwaysAvailableOptions = useMemo(() => { const topOptions = [ { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.newline', + id: 'ui-plugin-bursar-export.bursarExports.token.Newline', }), value: DataTokenType.NEWLINE, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.newlineMicrosoft', + id: 'ui-plugin-bursar-export.bursarExports.token.NewlineMicrosoft', }), value: DataTokenType.NEWLINE_MICROSOFT, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.tab', + id: 'ui-plugin-bursar-export.bursarExports.token.Tab', }), value: DataTokenType.TAB, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.comma', + id: 'ui-plugin-bursar-export.bursarExports.token.Comma', }), value: DataTokenType.COMMA, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.whitespace', + id: 'ui-plugin-bursar-export.bursarExports.token.Space', }), value: DataTokenType.SPACE, }, @@ -49,19 +53,19 @@ export default function DataTypeSelect({ name }: Readonly<{ name: string }>) { const bottomOptions = [ { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.arbitraryText', + id: 'ui-plugin-bursar-export.bursarExports.token.Constant', }), value: DataTokenType.ARBITRARY_TEXT, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate', + id: 'ui-plugin-bursar-export.bursarExports.token.CurrentDate', }), value: DataTokenType.CURRENT_DATE, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.constantConditional', + id: 'ui-plugin-bursar-export.bursarExports.token.ConstantConditional', }), value: DataTokenType.CONSTANT_CONDITIONAL, }, @@ -87,31 +91,31 @@ export default function DataTypeSelect({ name }: Readonly<{ name: string }>) { () => [ { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.userData', + id: 'ui-plugin-bursar-export.bursarExports.token.UserData', }), value: DataTokenType.USER_DATA, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.accountAmount', + id: 'ui-plugin-bursar-export.bursarExports.token.AccountAmount', }), value: DataTokenType.ACCOUNT_AMOUNT, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.accountDate', + id: 'ui-plugin-bursar-export.bursarExports.token.AccountDate', }), value: DataTokenType.ACCOUNT_DATE, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.feeFineType', + id: 'ui-plugin-bursar-export.bursarExports.token.FeeFineMetaData', }), value: DataTokenType.FEE_FINE_TYPE, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.itemInfo', + id: 'ui-plugin-bursar-export.bursarExports.token.ItemData', }), value: DataTokenType.ITEM_INFO, }, @@ -129,13 +133,13 @@ export default function DataTypeSelect({ name }: Readonly<{ name: string }>) { }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.totalAmount', + id: 'ui-plugin-bursar-export.bursarExports.token.AggregateTotal', }), value: DataTokenType.AGGREGATE_TOTAL, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.numAccounts', + id: 'ui-plugin-bursar-export.bursarExports.token.AggregateCount', }), value: DataTokenType.AGGREGATE_COUNT, }, @@ -148,7 +152,7 @@ export default function DataTypeSelect({ name }: Readonly<{ name: string }>) { name={name} defaultValue={DataTokenType.NEWLINE} aria-label={intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.dataType.typeSelect', + id: `ui-plugin-bursar-export.bursarExports.token.${selectedDataType}`, })} > {(fieldProps) => ( diff --git a/src/components/Token/Data/FeeFineTypeToken.tsx b/src/components/Token/Data/FeeFineTypeToken.tsx index ed6897a3..61125cd8 100644 --- a/src/components/Token/Data/FeeFineTypeToken.tsx +++ b/src/components/Token/Data/FeeFineTypeToken.tsx @@ -1,12 +1,22 @@ -import { Col, Select } from '@folio/stripes/components'; +import { Col, Select, Label } from '@folio/stripes/components'; import React from 'react'; -import { Field } from 'react-final-form'; -import { FormattedMessage, useIntl } from 'react-intl'; +import { Field, useField } from 'react-final-form'; +import { useIntl } from 'react-intl'; export default function FeeFineTypeToken({ prefix }: Readonly<{ prefix: string }>) { const intl = useIntl(); + + const selectedType = useField<'FEE_FINE_TYPE_ID' | 'FEE_FINE_TYPE_NAME'>(`${prefix}feeFineAttribute`, { + subscription: { value: true } + }).input.value; + + console.log(selectedType); + return ( + name={`${prefix}feeFineAttribute`} defaultValue="FEE_FINE_TYPE_NAME" @@ -16,17 +26,19 @@ export default function FeeFineTypeToken({ prefix }: Readonly<{ prefix: string } {...fieldProps} required marginBottom0 - label={} + aria-label={selectedType ? + intl.formatMessage({ id: `ui-plugin-bursar-export.bursarExports.token.feeFineType.${selectedType}` }) : + intl.formatMessage({ id: 'ui-plugin-bursar-export.bursarExports.token.feeFineType.attribute' })} dataOptions={[ { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.feeFineType.name', + id: 'ui-plugin-bursar-export.bursarExports.token.feeFineType.FEE_FINE_TYPE_NAME', }), value: 'FEE_FINE_TYPE_NAME', }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.feeFineType.id', + id: 'ui-plugin-bursar-export.bursarExports.token.feeFineType.FEE_FINE_TYPE_ID', }), value: 'FEE_FINE_TYPE_ID', }, diff --git a/src/components/Token/HeaderFooter/HeaderFooterTypeSelect.tsx b/src/components/Token/HeaderFooter/HeaderFooterTypeSelect.tsx index d04a6978..b305d660 100644 --- a/src/components/Token/HeaderFooter/HeaderFooterTypeSelect.tsx +++ b/src/components/Token/HeaderFooter/HeaderFooterTypeSelect.tsx @@ -1,40 +1,45 @@ import React, { useMemo } from 'react'; import { Select } from '@folio/stripes/components'; -import { Field } from 'react-final-form'; +import { Field, useField } from 'react-final-form'; import { useIntl } from 'react-intl'; import { HeaderFooterTokenType } from '../../../types'; export default function HeaderFooterTypeSelect({ name }: Readonly<{ name: string }>) { const intl = useIntl(); + + const selectedType = useField(name, { + subscription: { value: true }, + }).input.value; + const options = useMemo(() => { const topSection = [ { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.newline', + id: 'ui-plugin-bursar-export.bursarExports.token.Newline', }), value: HeaderFooterTokenType.NEWLINE, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.newlineMicrosoft', + id: 'ui-plugin-bursar-export.bursarExports.token.NewlineMicrosoft', }), value: HeaderFooterTokenType.NEWLINE_MICROSOFT, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.tab', + id: 'ui-plugin-bursar-export.bursarExports.token.Tab', }), value: HeaderFooterTokenType.TAB, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.comma', + id: 'ui-plugin-bursar-export.bursarExports.token.Comma', }), value: HeaderFooterTokenType.COMMA, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.whitespace', + id: 'ui-plugin-bursar-export.bursarExports.token.Space', }), value: HeaderFooterTokenType.SPACE, }, @@ -43,25 +48,25 @@ export default function HeaderFooterTypeSelect({ name }: Readonly<{ name: string const bottomSection = [ { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.arbitraryText', + id: 'ui-plugin-bursar-export.bursarExports.token.Constant', }), value: HeaderFooterTokenType.ARBITRARY_TEXT, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate', + id: 'ui-plugin-bursar-export.bursarExports.token.CurrentDate', }), value: HeaderFooterTokenType.CURRENT_DATE, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.numAccounts', + id: 'ui-plugin-bursar-export.bursarExports.token.AggregateCount', }), value: HeaderFooterTokenType.AGGREGATE_COUNT, }, { label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.totalAmount', + id: 'ui-plugin-bursar-export.bursarExports.token.AggregateTotal', }), value: HeaderFooterTokenType.AGGREGATE_TOTAL, }, @@ -86,7 +91,7 @@ export default function HeaderFooterTypeSelect({ name }: Readonly<{ name: string name={name} defaultValue={HeaderFooterTokenType.NEWLINE} aria-label={intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.headerFooter.typeSelect', + id: `ui-plugin-bursar-export.bursarExports.token.${selectedType}`, })} > {(fieldProps) => {...fieldProps} required marginBottom0 dataOptions={options} />} diff --git a/src/components/Token/Shared/DatePartPicker.tsx b/src/components/Token/Shared/DatePartPicker.tsx index 17257b6e..b65be899 100644 --- a/src/components/Token/Shared/DatePartPicker.tsx +++ b/src/components/Token/Shared/DatePartPicker.tsx @@ -1,114 +1,126 @@ -import { Select } from '@folio/stripes/components'; +import { Select, Label } from '@folio/stripes/components'; import React from 'react'; -import { Field } from 'react-final-form'; -import { FormattedMessage, useIntl } from 'react-intl'; +import { Field, useField } from 'react-final-form'; +import { useIntl } from 'react-intl'; import { DateFormatType } from '../../../types'; export default function DatePartPicker({ prefix }: Readonly<{ prefix: string }>) { const intl = useIntl(); + + const selectedFormat = useField(`${prefix}format`, { + subscription: { value: true }, + }).input.value; + return ( - - {(fieldProps) => ( - - {...fieldProps} - required - marginBottom0 - label={} - dataOptions={[ - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.yearLong', - }), - value: DateFormatType.YEAR_LONG, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.yearShort', - }), - value: DateFormatType.YEAR_SHORT, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.dayOfYear', - }), - value: DateFormatType.DAY_OF_YEAR, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.month', - }), - value: DateFormatType.MONTH, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.date', - }), - value: DateFormatType.DATE, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.hour', - }), - value: DateFormatType.HOUR, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.minute', - }), - value: DateFormatType.MINUTE, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.second', - }), - value: DateFormatType.SECOND, - }, + <> + + + {(fieldProps) => ( + + {...fieldProps} + required + aria-label={selectedFormat.length === 0 ? + intl.formatMessage({ id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format' }) : + intl.formatMessage({ id: `ui-plugin-bursar-export.bursarExports.token.currentDate.format.${selectedFormat}` }) + } + dataOptions={[ + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.YEAR_LONG', + }), + value: DateFormatType.YEAR_LONG, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.YEAR_SHORT', + }), + value: DateFormatType.YEAR_SHORT, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.DAY_OF_YEAR', + }), + value: DateFormatType.DAY_OF_YEAR, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.MONTH', + }), + value: DateFormatType.MONTH, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.DATE', + }), + value: DateFormatType.DATE, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.HOUR', + }), + value: DateFormatType.HOUR, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.MINUTE', + }), + value: DateFormatType.MINUTE, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.SECOND', + }), + value: DateFormatType.SECOND, + }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.quarter', - }), - value: DateFormatType.QUARTER, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.isoWeekNum', - }), - value: DateFormatType.WEEK_OF_YEAR_ISO, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.isoWeekYear', - }), - value: DateFormatType.WEEK_YEAR_ISO, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.YYYYMMDD', - }), - value: DateFormatType.YYYYMMDD, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.YYYY-MM-DD', - }), - value: DateFormatType.YYYY_MM_DD, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.MMDDYYYY', - }), - value: DateFormatType.MMDDYYYY, - }, - { - label: intl.formatMessage({ - id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.DDMMYYYY', - }), - value: DateFormatType.DDMMYYYY, - }, - ]} - /> - )} - + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.QUARTER', + }), + value: DateFormatType.QUARTER, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.WEEK_OF_YEAR_ISO', + }), + value: DateFormatType.WEEK_OF_YEAR_ISO, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.WEEK_YEAR_ISO', + }), + value: DateFormatType.WEEK_YEAR_ISO, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.YYYYMMDD', + }), + value: DateFormatType.YYYYMMDD, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.YYYY_MM_DD', + }), + value: DateFormatType.YYYY_MM_DD, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.MMDDYYYY', + }), + value: DateFormatType.MMDDYYYY, + }, + { + label: intl.formatMessage({ + id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.format.DDMMYYYY', + }), + value: DateFormatType.DDMMYYYY, + }, + ]} + /> + )} + + ); } diff --git a/src/components/Token/Shared/TimezonePicker.tsx b/src/components/Token/Shared/TimezonePicker.tsx index 344f6ce0..4ca263f9 100644 --- a/src/components/Token/Shared/TimezonePicker.tsx +++ b/src/components/Token/Shared/TimezonePicker.tsx @@ -1,6 +1,6 @@ -import { Select, timezones } from '@folio/stripes/components'; +import { Select, timezones, Label } from '@folio/stripes/components'; import React, { useMemo } from 'react'; -import { Field } from 'react-final-form'; +import { Field, useField } from 'react-final-form'; import { FormattedMessage, useIntl } from 'react-intl'; export default function TimezonePicker({ prefix }: Readonly<{ prefix: string }>) { @@ -8,17 +8,27 @@ export default function TimezonePicker({ prefix }: Readonly<{ prefix: string }>) const timeZonesForSelect = useMemo(() => timezones.map(({ value }) => ({ value, label: value })), []); + const selectedTimezone = useField(`${prefix}timezone`, { + subscription: { value: true }, + }).input.value; + const timeZoneLabel = timeZonesForSelect.find((tz) => tz.value === selectedTimezone)?.label; + return ( - - {(fieldProps) => ( - - {...fieldProps} - required - marginBottom0 - label={} - dataOptions={timeZonesForSelect} - /> - )} - + <> + + + {(fieldProps) => ( + + {...fieldProps} + required + marginBottom0 + aria-label={timeZoneLabel ? timeZoneLabel : intl.formatMessage({ id: 'ui-plugin-bursar-export.bursarExports.token.currentDate.timezone' })} + dataOptions={timeZonesForSelect} + /> + )} + + ); } diff --git a/translations/ui-plugin-bursar-export/en.json b/translations/ui-plugin-bursar-export/en.json index e9716d6d..058379e0 100644 --- a/translations/ui-plugin-bursar-export/en.json +++ b/translations/ui-plugin-bursar-export/en.json @@ -70,21 +70,21 @@ "bursarExports.header.accordion": "Header format", "bursarExports.footer.accordion": "Footer format", - "bursarExports.token.newline": "Newline (LF)", - "bursarExports.token.newlineMicrosoft": "Newline (Microsoft, CRLF)", - "bursarExports.token.tab": "Tab", - "bursarExports.token.comma": "Comma", - "bursarExports.token.whitespace": "Whitespace", - "bursarExports.token.arbitraryText": "Text", - "bursarExports.token.currentDate": "Current date", - "bursarExports.token.constantConditional": "Conditional text", - "bursarExports.token.numAccounts": "Number of accounts", - "bursarExports.token.totalAmount": "Total amount", - "bursarExports.token.userData": "User info", - "bursarExports.token.accountAmount": "Account amount", - "bursarExports.token.accountDate": "Account date", - "bursarExports.token.feeFineType": "Fee/fine type", - "bursarExports.token.itemInfo": "Item info", + "bursarExports.token.Newline": "Newline (LF)", + "bursarExports.token.NewlineMicrosoft": "Newline (Microsoft, CRLF)", + "bursarExports.token.Tab": "Tab", + "bursarExports.token.Comma": "Comma", + "bursarExports.token.Space": "Whitespace", + "bursarExports.token.Constant": "Text", + "bursarExports.token.CurrentDate": "Current date", + "bursarExports.token.ConstantConditional": "Conditional text", + "bursarExports.token.AggregateCount": "Number of accounts", + "bursarExports.token.AggregateTotal": "Total amount", + "bursarExports.token.UserData": "User info", + "bursarExports.token.AccountAmount": "Account amount", + "bursarExports.token.AccountDate": "Account date", + "bursarExports.token.FeeFineMetaData": "Fee/fine type", + "bursarExports.token.ItemData": "Item info", "bursarExports.token.fallback": "Fallback value", "bursarExports.token.fallback.description": "If the chosen value is not available/applicable, the fallback value will be used instead.", "bursarExports.token.value": "Value", @@ -96,19 +96,19 @@ "bursarExports.token.whitespace.numSpaces": "Number of spaces", "bursarExports.token.currentDate.format": "Format", - "bursarExports.token.currentDate.format.yearLong": "Year (4-digit)", - "bursarExports.token.currentDate.format.yearShort": "Year (2-digit)", - "bursarExports.token.currentDate.format.month": "Month", - "bursarExports.token.currentDate.format.date": "Day of month", - "bursarExports.token.currentDate.format.hour": "Hour", - "bursarExports.token.currentDate.format.minute": "Minute", - "bursarExports.token.currentDate.format.second": "Second", - "bursarExports.token.currentDate.format.quarter": "Quarter", - "bursarExports.token.currentDate.format.isoWeekNum": "ISO week number", - "bursarExports.token.currentDate.format.isoWeekYear": "ISO week year", - "bursarExports.token.currentDate.format.dayOfYear": "Day of year", + "bursarExports.token.currentDate.format.YEAR_LONG": "Year (4-digit)", + "bursarExports.token.currentDate.format.YEAR_SHORT": "Year (2-digit)", + "bursarExports.token.currentDate.format.MONTH": "Month", + "bursarExports.token.currentDate.format.DATE": "Day of month", + "bursarExports.token.currentDate.format.HOUR": "Hour", + "bursarExports.token.currentDate.format.MINUTE": "Minute", + "bursarExports.token.currentDate.format.SECOND": "Second", + "bursarExports.token.currentDate.format.QUARTER": "Quarter", + "bursarExports.token.currentDate.format.WEEK_OF_YEAR_ISO": "ISO week number", + "bursarExports.token.currentDate.format.WEEK_YEAR_ISO": "ISO week year", + "bursarExports.token.currentDate.format.DAY_OF_YEAR": "Day of year", "bursarExports.token.currentDate.format.YYYYMMDD": "YYYYMMDD", - "bursarExports.token.currentDate.format.YYYY-MM-DD": "YYYY-MM-DD", + "bursarExports.token.currentDate.format.YYYY_MM_DD": "YYYY-MM-DD", "bursarExports.token.currentDate.format.MMDDYYYY": "MMDDYYYY", "bursarExports.token.currentDate.format.DDMMYYYY": "DDMMYYYY", "bursarExports.token.currentDate.timezone": "Timezone", @@ -117,15 +117,15 @@ "bursarExports.token.accountAmount.enableDecimal.description": "If selected, amounts will be exported like \u201c12.50\u201d if left unselected, they will be exported like \u201c1250\u201d.", "bursarExports.token.accountDate.dateType": "Date", - "bursarExports.token.accountDate.dateType.created": "Creation date", - "bursarExports.token.accountDate.dateType.updated": "Last updated date", - "bursarExports.token.accountDate.dateType.dueItem": "Item due date", - "bursarExports.token.accountDate.dateType.dueLoan": "Loan end date", + "bursarExports.token.accountDate.dateType.CREATED": "Creation date", + "bursarExports.token.accountDate.dateType.UPDATED": "Last updated date", + "bursarExports.token.accountDate.dateType.DUE": "Item due date", + "bursarExports.token.accountDate.dateType.RETURNED": "Loan end date", "bursarExports.token.accountDate.fallback.description": "If the chosen date is not available/applicable, the fallback value will be used instead.", "bursarExports.token.feeFineType.attribute": "Attribute", - "bursarExports.token.feeFineType.name": "Type name", - "bursarExports.token.feeFineType.id": "Type ID", + "bursarExports.token.feeFineType.FEE_FINE_TYPE_NAME": "Type name", + "bursarExports.token.feeFineType.FEE_FINE_TYPE_ID": "Type ID", "bursarExports.token.itemInfo.name": "Name", "bursarExports.token.itemInfo.barcode": "Barcode",