lightning-base-components 1.15.2-alpha → 1.15.3-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/metadata/raptor.json +37 -0
- package/package.json +59 -1
- package/scopedImports/@salesforce-i18n-calendarData.js +1 -0
- package/scopedImports/@salesforce-i18n-common.calendarData.js +1 -0
- package/scopedImports/@salesforce-i18n-common.digits.js +1 -0
- package/scopedImports/@salesforce-i18n-dateTime.longDateTimeFormat.js +1 -0
- package/scopedImports/@salesforce-i18n-defaultCalendar.js +1 -0
- package/scopedImports/@salesforce-i18n-defaultNumberingSystem.js +1 -0
- package/scopedImports/@salesforce-i18n-number.exponentialSign.js +1 -0
- package/scopedImports/@salesforce-i18n-number.infinity.js +1 -0
- package/scopedImports/@salesforce-i18n-number.minusSign.js +1 -0
- package/scopedImports/@salesforce-i18n-number.nan.js +1 -0
- package/scopedImports/@salesforce-i18n-number.perMilleSign.js +1 -0
- package/scopedImports/@salesforce-i18n-number.percentSign.js +1 -0
- package/scopedImports/@salesforce-i18n-number.plusSign.js +1 -0
- package/scopedImports/@salesforce-i18n-number.superscriptingExponentSign.js +1 -0
- package/src/lightning/alert/__docs__/alert.md +4 -4
- package/src/lightning/baseCombobox/baseCombobox.html +1 -0
- package/src/lightning/baseCombobox/baseCombobox.js +3 -1
- package/src/lightning/buttonIcon/buttonIcon.js +0 -3
- package/src/lightning/calendar/calendar.html +2 -1
- package/src/lightning/calendar/calendar.js +2 -2
- package/src/lightning/combobox/combobox.html +1 -1
- package/src/lightning/combobox/combobox.js +7 -1
- package/src/lightning/configProvider/defaultLocalizationConfig.js +43 -6
- package/src/lightning/confirm/__docs__/confirm.md +2 -2
- package/src/lightning/datatable/__docs__/datatable.md +0 -45
- package/src/lightning/datatable/__examples__/basic/basic.js +3 -4
- package/src/lightning/datatable/__examples__/basic/generateData.js +13 -0
- package/src/lightning/datatable/__examples__/withInfiniteLoading/generateDataWithDelay.js +18 -0
- package/src/lightning/datatable/__examples__/withInfiniteLoading/withInfiniteLoading.js +3 -3
- package/src/lightning/datatable/__examples__/withInlineEdit/generateData.js +13 -0
- package/src/lightning/datatable/__examples__/withInlineEdit/withInlineEdit.js +3 -4
- package/src/lightning/datatable/__examples__/withRowActions/generateData.js +13 -0
- package/src/lightning/datatable/__examples__/withRowActions/withRowActions.js +3 -4
- package/src/lightning/datatable/__examples__/withRowNumbers/generateData.js +13 -0
- package/src/lightning/datatable/__examples__/withRowNumbers/withRowNumbers.js +3 -4
- package/src/lightning/datatable/datatable.js +5 -4
- package/src/lightning/datatable/keyboard.js +6 -2
- package/src/lightning/datatable/utils.js +11 -0
- package/src/lightning/datatable/virtualization.js +2 -2
- package/src/lightning/datepicker/datepicker.html +4 -4
- package/src/lightning/datepicker/datepicker.js +25 -77
- package/src/lightning/datetimepicker/datetimepicker.html +1 -1
- package/src/lightning/datetimepicker/datetimepicker.js +36 -8
- package/src/lightning/dualListbox/dualListbox.html +1 -1
- package/src/lightning/dualListbox/dualListbox.js +6 -0
- package/src/lightning/fileDownload/fileDownload.js +15 -0
- package/src/lightning/fileDownload/fileDownload.js-meta.xml +5 -0
- package/src/lightning/fileDownload/resourceResolver.js +58 -0
- package/src/lightning/formattedDateTime/formattedDateTime.js +1 -1
- package/src/lightning/formattedLookup/events.js +19 -0
- package/src/lightning/formattedLookup/formattedLookup.js +7 -0
- package/src/lightning/formattedRichText/__docs__/formattedRichText.md +9 -7
- package/src/lightning/formattedRichText/__examples__disabled/basic/basic.html +1 -1
- package/src/lightning/formattedTime/formattedTime.js +2 -1
- package/src/lightning/groupedCombobox/groupedCombobox.html +1 -1
- package/src/lightning/groupedCombobox/groupedCombobox.js +10 -2
- package/src/lightning/helptext/helptext.html +1 -0
- package/src/lightning/helptext/helptext.js +29 -2
- package/src/lightning/iconSvgTemplates/buildTemplates/action/scan_disabled.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/action/scan_enabled.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/ai_accelerator_card.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/connect_wallet.html +9 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/contract_line_outcome.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/contract_line_outcome_data.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_category_wallet_group.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_product.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_product_category_wallet_role.html +9 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_transaction.html +9 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_transaction_envelope.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_transaction_envelope_item.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_wallet.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_wallet_group.html +9 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_wallet_group_item.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/customer.html +10 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/customer_workspace.html +11 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/learner_program.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/nft_settings.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/nft_studio.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/prompt.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/setup_modal.html +11 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/snippet_alt.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/tax_policy.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/tax_rate.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/tax_treatment.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/travel_mode.html +2 -2
- package/src/lightning/iconSvgTemplates/buildTemplates/standard/water.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/templates.js +48 -1
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/captions.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/contract_line_outcome.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/contract_line_outcome_data.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/customer.html +10 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/customer_workspace.html +11 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/detach.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/hazmat_equipment.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/label.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/labels.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/record_alt.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/segments.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/tax_policy.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/tax_rate.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/tax_treatment.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/tollways.html +8 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/transport_bicycle.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/transport_heavy_truck.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/transport_light_truck.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/transport_walking.html +7 -0
- package/src/lightning/iconSvgTemplates/buildTemplates/utility/water.html +7 -0
- package/src/lightning/iconSvgTemplatesAction/buildTemplates/action/scan_disabled.html +7 -0
- package/src/lightning/iconSvgTemplatesAction/buildTemplates/action/scan_enabled.html +7 -0
- package/src/lightning/iconSvgTemplatesAction/buildTemplates/templates.js +3 -1
- package/src/lightning/iconSvgTemplatesActionRtl/buildTemplates/action/scan_disabled.html +7 -0
- package/src/lightning/iconSvgTemplatesActionRtl/buildTemplates/action/scan_enabled.html +7 -0
- package/src/lightning/iconSvgTemplatesActionRtl/buildTemplates/templates.js +3 -1
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/action/scan_disabled.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/action/scan_enabled.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/ai_accelerator_card.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/connect_wallet.html +9 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/contract_line_outcome.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/contract_line_outcome_data.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_category_wallet_group.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_product.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_product_category_wallet_role.html +9 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_transaction.html +9 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_transaction_envelope.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_transaction_envelope_item.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_wallet.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_wallet_group.html +9 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_wallet_group_item.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/customer.html +10 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/customer_workspace.html +11 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/learner_program.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/nft_settings.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/nft_studio.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/prompt.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/setup_modal.html +11 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/snippet_alt.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/tax_policy.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/tax_rate.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/tax_treatment.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/travel_mode.html +2 -2
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/water.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/templates.js +48 -1
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/captions.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/contract_line_outcome.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/contract_line_outcome_data.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/customer.html +10 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/customer_workspace.html +11 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/detach.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/hazmat_equipment.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/label.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/labels.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/record_alt.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/segments.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/tax_policy.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/tax_rate.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/tax_treatment.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/tollways.html +8 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/transport_bicycle.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/transport_heavy_truck.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/transport_light_truck.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/transport_walking.html +7 -0
- package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/water.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/ai_accelerator_card.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/connect_wallet.html +9 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/contract_line_outcome.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/contract_line_outcome_data.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_category_wallet_group.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_product.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_product_category_wallet_role.html +9 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_transaction.html +9 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_transaction_envelope.html +8 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_transaction_envelope_item.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_wallet.html +8 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_wallet_group.html +9 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_wallet_group_item.html +8 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/customer.html +10 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/customer_workspace.html +11 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/learner_program.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/nft_settings.html +8 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/nft_studio.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/prompt.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/setup_modal.html +11 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/snippet_alt.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/tax_policy.html +8 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/tax_rate.html +8 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/tax_treatment.html +8 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/travel_mode.html +2 -2
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/water.html +7 -0
- package/src/lightning/iconSvgTemplatesStandard/buildTemplates/templates.js +26 -1
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/ai_accelerator_card.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/connect_wallet.html +9 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/contract_line_outcome.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/contract_line_outcome_data.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_category_wallet_group.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_product.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_product_category_wallet_role.html +9 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_transaction.html +9 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_transaction_envelope.html +8 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_transaction_envelope_item.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_wallet.html +8 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_wallet_group.html +9 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_wallet_group_item.html +8 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/customer.html +10 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/customer_workspace.html +11 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/learner_program.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/nft_settings.html +8 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/nft_studio.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/prompt.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/setup_modal.html +11 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/snippet_alt.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/tax_policy.html +8 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/tax_rate.html +8 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/tax_treatment.html +8 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/travel_mode.html +2 -2
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/water.html +7 -0
- package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/templates.js +26 -1
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/templates.js +21 -1
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/captions.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/contract_line_outcome.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/contract_line_outcome_data.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/customer.html +10 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/customer_workspace.html +11 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/detach.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/hazmat_equipment.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/label.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/labels.html +8 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/record_alt.html +8 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/segments.html +8 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/tax_policy.html +8 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/tax_rate.html +8 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/tax_treatment.html +8 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/tollways.html +8 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/transport_bicycle.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/transport_heavy_truck.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/transport_light_truck.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/transport_walking.html +7 -0
- package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/water.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/templates.js +21 -1
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/captions.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/contract_line_outcome.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/contract_line_outcome_data.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/customer.html +10 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/customer_workspace.html +11 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/detach.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/hazmat_equipment.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/label.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/labels.html +8 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/record_alt.html +8 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/segments.html +8 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/tax_policy.html +8 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/tax_rate.html +8 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/tax_treatment.html +8 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/tollways.html +8 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/transport_bicycle.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/transport_heavy_truck.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/transport_light_truck.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/transport_walking.html +7 -0
- package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/water.html +7 -0
- package/src/lightning/input/dateTimeUtil.js +2 -2
- package/src/lightning/inputAddress/inputAddress.html +1 -1
- package/src/lightning/inputAddress/inputAddress.js +7 -1
- package/src/lightning/inputLocation/inputLocation.html +1 -1
- package/src/lightning/inputLocation/inputLocation.js +7 -1
- package/src/lightning/inputName/inputName.html +2 -2
- package/src/lightning/inputName/inputName.js +7 -1
- package/src/lightning/interactiveDialogBase/interactiveDialogBase.js +1 -0
- package/src/lightning/internationalizationLibrary/datetime/dateTimeOptions.js +16 -29
- package/src/lightning/internationalizationLibrary/datetime/dateTimeUtils.js +524 -135
- package/src/lightning/internationalizationLibrary/datetime/intlFormat.js +92 -72
- package/src/lightning/internationalizationLibrary/internationalizationLibrary.js +9 -4
- package/src/lightning/internationalizationLibrary/localizationService.js +1 -0
- package/src/lightning/internationalizationLibrary/number/NumberFormat.js +17 -11
- package/src/lightning/internationalizationLibrary/number/numberFormatFallback.js +3 -2
- package/src/lightning/internationalizationLibrary/number/numberOptions.js +22 -26
- package/src/lightning/internationalizationLibrary/number/utils.js +134 -131
- package/src/lightning/internationalizationLibrary/utils.js +14 -0
- package/src/lightning/iso8601Utils/iso8601Utils.js +1 -0
- package/src/lightning/modalBase/modalBase.css +0 -4
- package/src/lightning/modalBase/modalBase.html +1 -1
- package/src/lightning/modalBase/modalBase.js +0 -14
- package/src/lightning/navigation/__docs__/navigation.md +0 -2
- package/src/lightning/overlayContainer/overlayContainer.html +2 -2
- package/src/lightning/overlayContainer/overlayContainer.js +217 -49
- package/src/lightning/overlayManager/overlayManager.js +378 -28
- package/src/lightning/overlayManager/overlayManager.js-meta.xml +5 -0
- package/src/lightning/primitiveCellFactory/primitiveCellFactory.js +1 -11
- package/src/lightning/prompt/__docs__/prompt.md +2 -2
- package/src/lightning/select/select.html +1 -1
- package/src/lightning/select/select.js +7 -1
- package/src/lightning/tabBar/tabBar.html +3 -2
- package/src/lightning/tabBar/tabBar.js +15 -0
- package/src/lightning/textarea/textarea.html +1 -1
- package/src/lightning/textarea/textarea.js +7 -1
- package/src/lightning/timepicker/timepicker.html +1 -1
- package/src/lightning/timepicker/timepicker.js +41 -86
- package/src/lightning/utils/labelUtils.js +4 -1
- package/src/lightning/utilsPrivate/animation.js +0 -4
- package/src/lightning/datatable/__examples__/basic/fetchDataHelper.js +0 -21
- package/src/lightning/datatable/__examples__/withInfiniteLoading/fetchDataHelper.js +0 -21
- package/src/lightning/datatable/__examples__/withInlineEdit/fetchDataHelper.js +0 -21
- package/src/lightning/datatable/__examples__/withRowActions/fetchDataHelper.js +0 -21
- package/src/lightning/datatable/__examples__/withRowNumbers/fetchDataHelper.js +0 -21
|
@@ -6,16 +6,13 @@ import labelMaxRangeMessage from '@salesforce/label/LightningDateTimePicker.maxR
|
|
|
6
6
|
import labelMinAndMaxRangeMessage from '@salesforce/label/LightningDateTimePicker.minAndMaxRangeMessage';
|
|
7
7
|
import labelRequired from '@salesforce/label/LightningControl.required';
|
|
8
8
|
import labelSelectDateFor from '@salesforce/label/LightningDateTimePicker.selectDateFor';
|
|
9
|
-
import
|
|
10
|
-
import mediumDateFormat from '@salesforce/i18n/dateTime.mediumDateFormat';
|
|
11
|
-
import longDateFormat from '@salesforce/i18n/dateTime.longDateFormat';
|
|
9
|
+
import labelHelpTextAlternativeText from '@salesforce/label/LightningInput.helptextAlternativeText';
|
|
12
10
|
import { LightningElement, track, api } from 'lwc';
|
|
13
11
|
import {
|
|
14
|
-
parseDateTime,
|
|
15
12
|
normalizeISODate,
|
|
16
|
-
|
|
13
|
+
parseFormattedDate,
|
|
14
|
+
getDateFormatFromStyle,
|
|
17
15
|
} from 'lightning/internationalizationLibrary';
|
|
18
|
-
import { STANDARD_DATE_FORMAT } from 'lightning/iso8601Utils';
|
|
19
16
|
import {
|
|
20
17
|
startPositioning,
|
|
21
18
|
stopPositioning,
|
|
@@ -50,6 +47,7 @@ const i18n = {
|
|
|
50
47
|
minAndMaxRangeMessage: labelMinAndMaxRangeMessage,
|
|
51
48
|
required: labelRequired,
|
|
52
49
|
selectDateFor: labelSelectDateFor,
|
|
50
|
+
helpTextAlternativeText: labelHelpTextAlternativeText,
|
|
53
51
|
};
|
|
54
52
|
|
|
55
53
|
const ARIA_CONTROLS = 'aria-controls';
|
|
@@ -80,6 +78,7 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
80
78
|
_max;
|
|
81
79
|
_displayMin;
|
|
82
80
|
_displayMax;
|
|
81
|
+
_dateStyle = DATE_STYLE.MEDIUM;
|
|
83
82
|
|
|
84
83
|
@api label;
|
|
85
84
|
@api name;
|
|
@@ -105,7 +104,7 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
105
104
|
this._min = value;
|
|
106
105
|
this._displayMin = value;
|
|
107
106
|
|
|
108
|
-
const normalizedDate = normalizeISODate(value, this.
|
|
107
|
+
const normalizedDate = normalizeISODate(value, this.dateStyle);
|
|
109
108
|
if (normalizedDate.isoValue) {
|
|
110
109
|
this._min = normalizedDate.isoValue;
|
|
111
110
|
this._displayMin = normalizedDate.displayValue;
|
|
@@ -122,7 +121,7 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
122
121
|
this._max = value;
|
|
123
122
|
this._displayMax = value;
|
|
124
123
|
|
|
125
|
-
const normalizedDate = normalizeISODate(value, this.
|
|
124
|
+
const normalizedDate = normalizeISODate(value, this.dateStyle);
|
|
126
125
|
if (normalizedDate.isoValue) {
|
|
127
126
|
this._max = normalizedDate.isoValue;
|
|
128
127
|
this._displayMax = normalizedDate.displayValue;
|
|
@@ -133,7 +132,10 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
133
132
|
get messageWhenBadInput() {
|
|
134
133
|
return (
|
|
135
134
|
this._messageWhenBadInput ||
|
|
136
|
-
formatLabel(
|
|
135
|
+
formatLabel(
|
|
136
|
+
this.i18n.invalidDate,
|
|
137
|
+
getDateFormatFromStyle(this.dateStyle, true)
|
|
138
|
+
)
|
|
137
139
|
);
|
|
138
140
|
}
|
|
139
141
|
set messageWhenBadInput(message) {
|
|
@@ -251,7 +253,7 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
251
253
|
return this._value;
|
|
252
254
|
}
|
|
253
255
|
set value(newValue) {
|
|
254
|
-
const normalizedDate = normalizeISODate(newValue, this.
|
|
256
|
+
const normalizedDate = normalizeISODate(newValue, this.dateStyle);
|
|
255
257
|
|
|
256
258
|
this._value = normalizedDate.isoValue;
|
|
257
259
|
this._displayValue = normalizedDate.displayValue;
|
|
@@ -339,9 +341,8 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
339
341
|
fallbackValue: DATE_STYLE.MEDIUM,
|
|
340
342
|
validValues: [DATE_STYLE.SHORT, DATE_STYLE.MEDIUM, DATE_STYLE.LONG],
|
|
341
343
|
});
|
|
342
|
-
this.dateFormat = this.getDateFormatFromStyle(this._dateStyle);
|
|
343
344
|
|
|
344
|
-
const normalizedDate = normalizeISODate(this._value, this.
|
|
345
|
+
const normalizedDate = normalizeISODate(this._value, this.dateStyle);
|
|
345
346
|
this._displayValue = normalizedDate.displayValue;
|
|
346
347
|
}
|
|
347
348
|
|
|
@@ -396,6 +397,11 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
396
397
|
return this._displayValue;
|
|
397
398
|
}
|
|
398
399
|
|
|
400
|
+
get computedClass() {
|
|
401
|
+
let displayClass = this.errorMessage ? 'slds-show' : 'slds-hide';
|
|
402
|
+
return 'slds-form-element__help ' + displayClass;
|
|
403
|
+
}
|
|
404
|
+
|
|
399
405
|
get errorMessage() {
|
|
400
406
|
return this._errorMessage;
|
|
401
407
|
}
|
|
@@ -460,8 +466,7 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
460
466
|
|
|
461
467
|
// keeping the display value in sync with the element's value
|
|
462
468
|
this._displayValue = event.currentTarget.value;
|
|
463
|
-
this._value =
|
|
464
|
-
|
|
469
|
+
this._value = parseFormattedDate(this._displayValue).value;
|
|
465
470
|
this.dispatchChangeEvent();
|
|
466
471
|
}
|
|
467
472
|
|
|
@@ -484,7 +489,7 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
484
489
|
if (this._value !== null) {
|
|
485
490
|
const normalizedDate = normalizeISODate(
|
|
486
491
|
this._value,
|
|
487
|
-
this.
|
|
492
|
+
this.dateStyle
|
|
488
493
|
);
|
|
489
494
|
this._displayValue = normalizedDate.displayValue;
|
|
490
495
|
}
|
|
@@ -564,7 +569,7 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
564
569
|
|
|
565
570
|
this._displayValue = normalizeISODate(
|
|
566
571
|
this._value,
|
|
567
|
-
this.
|
|
572
|
+
this.dateStyle
|
|
568
573
|
).displayValue;
|
|
569
574
|
|
|
570
575
|
this.hideCalendarAndFocusTrigger();
|
|
@@ -652,34 +657,6 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
652
657
|
return this.template.querySelector('input');
|
|
653
658
|
}
|
|
654
659
|
|
|
655
|
-
get dateFormat() {
|
|
656
|
-
if (!this._dateFormat) {
|
|
657
|
-
this._dateFormat = this.getDateFormatFromStyle();
|
|
658
|
-
}
|
|
659
|
-
return this._dateFormat;
|
|
660
|
-
}
|
|
661
|
-
|
|
662
|
-
set dateFormat(value) {
|
|
663
|
-
this._dateFormat = value;
|
|
664
|
-
}
|
|
665
|
-
|
|
666
|
-
getDateFormatFromStyle(dateStyle) {
|
|
667
|
-
let dateFormat;
|
|
668
|
-
switch (dateStyle) {
|
|
669
|
-
case DATE_STYLE.SHORT:
|
|
670
|
-
dateFormat = shortDateFormat;
|
|
671
|
-
break;
|
|
672
|
-
case DATE_STYLE.LONG:
|
|
673
|
-
dateFormat = longDateFormat;
|
|
674
|
-
break;
|
|
675
|
-
default:
|
|
676
|
-
dateFormat = mediumDateFormat;
|
|
677
|
-
break;
|
|
678
|
-
}
|
|
679
|
-
|
|
680
|
-
return dateFormat;
|
|
681
|
-
}
|
|
682
|
-
|
|
683
660
|
dispatchChangeEvent() {
|
|
684
661
|
this.dispatchEvent(
|
|
685
662
|
new CustomEvent('change', {
|
|
@@ -707,39 +684,6 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
707
684
|
};
|
|
708
685
|
}
|
|
709
686
|
|
|
710
|
-
parse(dateString) {
|
|
711
|
-
// We cannot use parseDateTimeISO8601 here because that method does not have a strict flag. If the value is not an ISO string, that method will parse using the native Date()
|
|
712
|
-
// Alternatively we could call isValidISODateTimeString and then parseDateTimeISO8601.
|
|
713
|
-
return parseDateTime(dateString, STANDARD_DATE_FORMAT, true);
|
|
714
|
-
}
|
|
715
|
-
|
|
716
|
-
get allowedDateFormats() {
|
|
717
|
-
// We should prioritize the long, because a long date matched with the medium format. An issue in aura?
|
|
718
|
-
// Ex: September 8, 2017 when be parsed with the medium format, returns a valid iso date.
|
|
719
|
-
return [longDateFormat, mediumDateFormat, shortDateFormat];
|
|
720
|
-
}
|
|
721
|
-
|
|
722
|
-
/**
|
|
723
|
-
* Parses the input date and sets the dateFormat used to parse the displayValue
|
|
724
|
-
* if it is a valid Date.
|
|
725
|
-
*
|
|
726
|
-
* @param {String} displayValue - The input date.
|
|
727
|
-
* @return {null | string} - A normalized formatted date if displayValue is valid. null otherwise.
|
|
728
|
-
*/
|
|
729
|
-
parseFormattedDate(displayValue) {
|
|
730
|
-
const allowedFormats = this.allowedDateFormats;
|
|
731
|
-
const n = allowedFormats.length;
|
|
732
|
-
let i = 0,
|
|
733
|
-
value = null;
|
|
734
|
-
|
|
735
|
-
do {
|
|
736
|
-
value = normalizeFormattedDate(displayValue, allowedFormats[i]);
|
|
737
|
-
i++;
|
|
738
|
-
} while (value === null && i < n);
|
|
739
|
-
|
|
740
|
-
return value;
|
|
741
|
-
}
|
|
742
|
-
|
|
743
687
|
get hasExternalLabel() {
|
|
744
688
|
return (
|
|
745
689
|
this.variant === VARIANT.LABEL_HIDDEN &&
|
|
@@ -754,4 +698,8 @@ export default class LightningDatePicker extends LightningElement {
|
|
|
754
698
|
this._errorMessage;
|
|
755
699
|
return computeAriaInvalid(isAriaInvalid, this.value);
|
|
756
700
|
}
|
|
701
|
+
|
|
702
|
+
get helptextAlternativeText() {
|
|
703
|
+
return formatLabel(i18n.helpTextAlternativeText, this.label);
|
|
704
|
+
}
|
|
757
705
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<legend class={computedLabelClass}>
|
|
6
6
|
{label}
|
|
7
7
|
</legend>
|
|
8
|
-
<lightning-helptext if:true={fieldLevelHelp} content={fieldLevelHelp}></lightning-helptext>
|
|
8
|
+
<lightning-helptext if:true={fieldLevelHelp} content={fieldLevelHelp} alternative-text={helptextAlternativeText}></lightning-helptext>
|
|
9
9
|
</template>
|
|
10
10
|
<div class="slds-form-element__control">
|
|
11
11
|
<div class="slds-form-element__group">
|
|
@@ -2,6 +2,8 @@ import labelDate from '@salesforce/label/LightningDateTimePicker.dateLabel';
|
|
|
2
2
|
import labelRangeOverflow from '@salesforce/label/LightningDateTimePicker.rangeOverflow';
|
|
3
3
|
import labelRangeUnderflow from '@salesforce/label/LightningDateTimePicker.rangeUnderflow';
|
|
4
4
|
import labelTime from '@salesforce/label/LightningDateTimePicker.timeLabel';
|
|
5
|
+
import labelHelpTextAlternativeText from '@salesforce/label/LightningInput.helptextAlternativeText';
|
|
6
|
+
import sfTimeZone from '@salesforce/i18n/timeZone';
|
|
5
7
|
import { LightningElement, track, api } from 'lwc';
|
|
6
8
|
import { classSet, formatLabel } from 'lightning/utils';
|
|
7
9
|
import {
|
|
@@ -12,9 +14,10 @@ import {
|
|
|
12
14
|
computeAriaInvalid,
|
|
13
15
|
} from 'lightning/utilsPrivate';
|
|
14
16
|
import {
|
|
15
|
-
|
|
17
|
+
getCurrentTimeString,
|
|
16
18
|
normalizeISODateTime,
|
|
17
19
|
normalizeFormattedDateTime,
|
|
20
|
+
isAuraL10NAvailable,
|
|
18
21
|
} from 'lightning/internationalizationLibrary';
|
|
19
22
|
import { TIME_SEPARATOR } from 'lightning/iso8601Utils';
|
|
20
23
|
import {
|
|
@@ -29,6 +32,7 @@ const i18n = {
|
|
|
29
32
|
rangeOverflow: labelRangeOverflow,
|
|
30
33
|
rangeUnderflow: labelRangeUnderflow,
|
|
31
34
|
time: labelTime,
|
|
35
|
+
helpTextAlternativeText: labelHelpTextAlternativeText,
|
|
32
36
|
};
|
|
33
37
|
|
|
34
38
|
export default class LightningDateTimePicker extends LightningElement {
|
|
@@ -178,6 +182,20 @@ export default class LightningDateTimePicker extends LightningElement {
|
|
|
178
182
|
}
|
|
179
183
|
}
|
|
180
184
|
|
|
185
|
+
/**
|
|
186
|
+
* Returns time zone if one is set, otherwise returns
|
|
187
|
+
* the Salesforce time zone when Aura localization is
|
|
188
|
+
* available, and the system's time zone otherwise
|
|
189
|
+
*/
|
|
190
|
+
get normalizedTimezone() {
|
|
191
|
+
if (this.timezone) {
|
|
192
|
+
return this.timezone;
|
|
193
|
+
} else if (isAuraL10NAvailable) {
|
|
194
|
+
return sfTimeZone;
|
|
195
|
+
}
|
|
196
|
+
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
197
|
+
}
|
|
198
|
+
|
|
181
199
|
@api
|
|
182
200
|
get disabled() {
|
|
183
201
|
return this._disabled;
|
|
@@ -454,14 +472,14 @@ export default class LightningDateTimePicker extends LightningElement {
|
|
|
454
472
|
|
|
455
473
|
handleDateChange(event) {
|
|
456
474
|
event.stopPropagation();
|
|
457
|
-
|
|
458
475
|
if (!event.detail) {
|
|
459
476
|
return;
|
|
460
477
|
}
|
|
461
|
-
|
|
462
478
|
this._dateValue = event.detail.value;
|
|
463
479
|
if (this._dateValue) {
|
|
464
|
-
this._timeValue =
|
|
480
|
+
this._timeValue =
|
|
481
|
+
this._timeValue ||
|
|
482
|
+
getCurrentTimeString(this.normalizedTimezone);
|
|
465
483
|
this.setTimepickerValue(this._timeValue);
|
|
466
484
|
}
|
|
467
485
|
|
|
@@ -488,7 +506,7 @@ export default class LightningDateTimePicker extends LightningElement {
|
|
|
488
506
|
const dateTimeString = dateValue + TIME_SEPARATOR + timeValue;
|
|
489
507
|
this._value = normalizeFormattedDateTime(
|
|
490
508
|
dateTimeString,
|
|
491
|
-
this.
|
|
509
|
+
this.normalizedTimezone
|
|
492
510
|
);
|
|
493
511
|
|
|
494
512
|
this.dispatchChangeEvent();
|
|
@@ -520,7 +538,7 @@ export default class LightningDateTimePicker extends LightningElement {
|
|
|
520
538
|
setDateAndTimeValues(value) {
|
|
521
539
|
const normalizedValue = normalizeISODateTime(
|
|
522
540
|
value,
|
|
523
|
-
this.
|
|
541
|
+
this.normalizedTimezone
|
|
524
542
|
).isoValue;
|
|
525
543
|
|
|
526
544
|
const isDateOnly = normalizedValue && value.indexOf(TIME_SEPARATOR) < 0;
|
|
@@ -560,7 +578,10 @@ export default class LightningDateTimePicker extends LightningElement {
|
|
|
560
578
|
return;
|
|
561
579
|
}
|
|
562
580
|
|
|
563
|
-
const normalizedDate = normalizeISODateTime(
|
|
581
|
+
const normalizedDate = normalizeISODateTime(
|
|
582
|
+
this.min,
|
|
583
|
+
this.normalizedTimezone
|
|
584
|
+
);
|
|
564
585
|
this._dateMin = this.separateDateTime(normalizedDate.isoValue)[0];
|
|
565
586
|
this.formattedMin = normalizedDate.displayValue;
|
|
566
587
|
}
|
|
@@ -570,7 +591,10 @@ export default class LightningDateTimePicker extends LightningElement {
|
|
|
570
591
|
return;
|
|
571
592
|
}
|
|
572
593
|
|
|
573
|
-
const normalizedDate = normalizeISODateTime(
|
|
594
|
+
const normalizedDate = normalizeISODateTime(
|
|
595
|
+
this.max,
|
|
596
|
+
this.normalizedTimezone
|
|
597
|
+
);
|
|
574
598
|
this._dateMax = this.separateDateTime(normalizedDate.isoValue)[0];
|
|
575
599
|
this.formattedMax = normalizedDate.displayValue;
|
|
576
600
|
}
|
|
@@ -587,4 +611,8 @@ export default class LightningDateTimePicker extends LightningElement {
|
|
|
587
611
|
get computedTimeAriaInvalid() {
|
|
588
612
|
return computeAriaInvalid(this._customErrorMessage, this._timeValue);
|
|
589
613
|
}
|
|
614
|
+
|
|
615
|
+
get helptextAlternativeText() {
|
|
616
|
+
return formatLabel(i18n.helpTextAlternativeText, this.label);
|
|
617
|
+
}
|
|
590
618
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<abbr class="slds-required" title={i18n.required}>*</abbr>
|
|
7
7
|
</template>{label}
|
|
8
8
|
</div>
|
|
9
|
-
<lightning-helptext if:true={fieldLevelHelp} content={fieldLevelHelp}></lightning-helptext>
|
|
9
|
+
<lightning-helptext if:true={fieldLevelHelp} content={fieldLevelHelp} alternative-text={helptextAlternativeText}></lightning-helptext>
|
|
10
10
|
<div class="slds-form-element__control">
|
|
11
11
|
<div class="slds-dueling-list" onfocusin={handleFocus} onfocusout={handleBlur}>
|
|
12
12
|
<div class="slds-assistive-text" id="assertive-thing" aria-live="assertive">{_messageToDisplay}</div>
|
|
@@ -16,6 +16,7 @@ import labelMoveSelectionToAssistiveText from '@salesforce/label/LightningDualLi
|
|
|
16
16
|
import labelLoadingText from '@salesforce/label/LightningCombobox.loadingText';
|
|
17
17
|
import labelMovedOptionsSingular from '@salesforce/label/LightningDualListbox.movedOptionsSingular';
|
|
18
18
|
import labelMovedOptionsPlural from '@salesforce/label/LightningDualListbox.movedOptionsPlural';
|
|
19
|
+
import labelHelpTextAlternativeText from '@salesforce/label/LightningInput.helptextAlternativeText';
|
|
19
20
|
import { LightningElement, api, track } from 'lwc';
|
|
20
21
|
import { handleKeyDownOnOption } from './keyboard';
|
|
21
22
|
import { classSet, formatLabel } from 'lightning/utils';
|
|
@@ -51,6 +52,7 @@ const i18n = {
|
|
|
51
52
|
loadingText: labelLoadingText,
|
|
52
53
|
movedOptionsSingular: labelMovedOptionsSingular,
|
|
53
54
|
movedOptionsPlural: labelMovedOptionsPlural,
|
|
55
|
+
helpTextAlternativeText: labelHelpTextAlternativeText,
|
|
54
56
|
};
|
|
55
57
|
|
|
56
58
|
/**
|
|
@@ -1058,4 +1060,8 @@ export default class LightningDualListbox extends LightningElement {
|
|
|
1058
1060
|
this._messageToDisplay = '';
|
|
1059
1061
|
}
|
|
1060
1062
|
}
|
|
1063
|
+
|
|
1064
|
+
get helptextAlternativeText() {
|
|
1065
|
+
return formatLabel(i18n.helpTextAlternativeText, this.label);
|
|
1066
|
+
}
|
|
1061
1067
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { resolveFileTypeToURL } from './resourceResolver';
|
|
2
|
+
|
|
3
|
+
export function generateUrl(recordId) {
|
|
4
|
+
const url = resolveFileTypeToURL(recordId);
|
|
5
|
+
return isValidUrl(url) ? url : undefined;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
function isValidUrl(url) {
|
|
9
|
+
return (
|
|
10
|
+
url &&
|
|
11
|
+
(url.indexOf('http://') === 0 ||
|
|
12
|
+
url.indexOf('https://') === 0 ||
|
|
13
|
+
url.indexOf('/') === 0)
|
|
14
|
+
);
|
|
15
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { getPathPrefix } from 'lightning/configProvider'; // Provides the path prefix to Core resources
|
|
2
|
+
|
|
3
|
+
export function resolveFileTypeToURL(recordId) {
|
|
4
|
+
const keyPrefixLength = 3;
|
|
5
|
+
const keyPrefix = recordId.substring(0, keyPrefixLength);
|
|
6
|
+
|
|
7
|
+
/* Returns url according to file key prefix */
|
|
8
|
+
const fileAttributes = {
|
|
9
|
+
// Content Document
|
|
10
|
+
'069':
|
|
11
|
+
'/sfc/servlet.shepherd/document/download/' +
|
|
12
|
+
recordId +
|
|
13
|
+
'?operationContext=S1',
|
|
14
|
+
|
|
15
|
+
// Content Version
|
|
16
|
+
'068':
|
|
17
|
+
'/sfc/servlet.shepherd/version/download/' +
|
|
18
|
+
recordId +
|
|
19
|
+
'?operationContext=S1',
|
|
20
|
+
|
|
21
|
+
// Attachment
|
|
22
|
+
'00P':
|
|
23
|
+
'/servlet/servlet.FileDownload?file=' +
|
|
24
|
+
recordId +
|
|
25
|
+
'&operationContext=S1',
|
|
26
|
+
|
|
27
|
+
// Document
|
|
28
|
+
'015':
|
|
29
|
+
'/servlet/servlet.FileDownload?file=' +
|
|
30
|
+
recordId +
|
|
31
|
+
'&operationContext=S1',
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
return (
|
|
35
|
+
keyPrefix &&
|
|
36
|
+
fileAttributes[keyPrefix] &&
|
|
37
|
+
getUrlWithSitePrefix(fileAttributes[keyPrefix])
|
|
38
|
+
);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/* In order to do any URL redirects, we need the site URL with the site path prefix.
|
|
42
|
+
getUrlWithSitePrefix returns the URL path prefix of the current site.
|
|
43
|
+
For example, if your site URL is MyDomainName.my.salesforce-sites.com/partners,
|
|
44
|
+
/partners is the path prefix. Returns null if the prefix isn’t defined.
|
|
45
|
+
If the current request is not a site request, then this field returns an empty string.
|
|
46
|
+
*/
|
|
47
|
+
function getUrlWithSitePrefix(url) {
|
|
48
|
+
let siteUrlPrefix = getPathPrefix();
|
|
49
|
+
|
|
50
|
+
// remove /s in siteUrlPrefix
|
|
51
|
+
siteUrlPrefix =
|
|
52
|
+
siteUrlPrefix && siteUrlPrefix.endsWith('/s')
|
|
53
|
+
? siteUrlPrefix.slice(0, siteUrlPrefix.length - 2)
|
|
54
|
+
: siteUrlPrefix;
|
|
55
|
+
|
|
56
|
+
// retun url directly if path prefix is already added to site URL
|
|
57
|
+
return url.indexOf(siteUrlPrefix) === 0 ? url : siteUrlPrefix + url;
|
|
58
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { LightningElement, api, track } from 'lwc';
|
|
2
2
|
import { dateTimeFormat } from 'lightning/internationalizationLibrary';
|
|
3
|
-
import { isValidISODateTimeString } from 'lightning/iso8601Utils';
|
|
4
3
|
import { isIE11, normalizeBoolean } from 'lightning/utilsPrivate';
|
|
4
|
+
import { isValidISODateTimeString } from 'lightning/iso8601Utils';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Displays formatted date and time.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @event LightningFormattedLookup#onprivatelookupitempicked
|
|
3
|
+
* @type {object}
|
|
4
|
+
* @property {string} recordId
|
|
5
|
+
*/
|
|
6
|
+
export class PrivateLookupItemPickedEvent extends CustomEvent {
|
|
7
|
+
static NAME = 'privatelookupitempicked';
|
|
8
|
+
|
|
9
|
+
constructor({ recordId }) {
|
|
10
|
+
super(PrivateLookupItemPickedEvent.NAME, {
|
|
11
|
+
composed: true,
|
|
12
|
+
cancelable: true,
|
|
13
|
+
bubbles: true,
|
|
14
|
+
detail: {
|
|
15
|
+
recordId,
|
|
16
|
+
},
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { LightningElement, api, track } from 'lwc';
|
|
2
2
|
import { normalizeBoolean } from 'lightning/utilsPrivate';
|
|
3
3
|
import { getLinkInfo } from 'lightning/routingService';
|
|
4
|
+
import { PrivateLookupItemPickedEvent } from './events';
|
|
4
5
|
|
|
5
6
|
export default class LightningFormattedLookup extends LightningElement {
|
|
6
7
|
/**
|
|
@@ -181,6 +182,12 @@ export default class LightningFormattedLookup extends LightningElement {
|
|
|
181
182
|
* @returns {undefined}
|
|
182
183
|
*/
|
|
183
184
|
handleClick(event) {
|
|
185
|
+
this.dispatchEvent(
|
|
186
|
+
new PrivateLookupItemPickedEvent({
|
|
187
|
+
recordId: this.recordId,
|
|
188
|
+
})
|
|
189
|
+
);
|
|
190
|
+
|
|
184
191
|
this.dispatcher(event);
|
|
185
192
|
}
|
|
186
193
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
A `lightning-formatted-rich-text` component is a read-only representation of
|
|
2
2
|
rich text. Rich text refers to text that's formatted by HTML tags, such as
|
|
3
|
-
`<
|
|
3
|
+
`<strong>` for bold text or `<u>` for underlined text. You can pass in rich text to
|
|
4
4
|
this component using the `lightning-input-rich-text` component or
|
|
5
5
|
programmatically in JavaScript.
|
|
6
6
|
|
|
@@ -65,12 +65,12 @@ component returns `<div>My Title</div>`.
|
|
|
65
65
|
|
|
66
66
|
If you set unsupported tags via JavaScript, those tags are
|
|
67
67
|
removed and the text content is preserved. The supported HTML tags are: `a`,
|
|
68
|
-
`abbr`, `acronym`, `address`, `
|
|
68
|
+
`abbr`, `acronym`, `address`, `br`, `big`, `blockquote`, `caption`,
|
|
69
69
|
`cite`, `code`, `col`, `colgroup`, `del`, `div`, `dl`, `dd`, `dt`, `em`,
|
|
70
|
-
`font`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`, `
|
|
71
|
-
`li`, `ol`, `mark`, `p`, `param`, `pre`, `q`, `s`, `samp`, `small`, `span`,
|
|
72
|
-
`
|
|
73
|
-
`strike`.
|
|
70
|
+
`font`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`, `img`, `ins`, `kbd`,
|
|
71
|
+
`li`, `ol`, `mark`, `p`, `param`, `pre`, `q`, `s`, `samp`, `small`, `span`,
|
|
72
|
+
`strong`, `sub`, `sup`, `table`, `tbody`, `td`, `tfoot`, `th`, `thead`, `tr`,
|
|
73
|
+
`tt`, `u`, `ul`, `var`, `strike`.
|
|
74
74
|
|
|
75
75
|
Supported HTML attributes include: `accept`, `action`, `align`, `alt`,
|
|
76
76
|
`autocomplete`, `background`, `bgcolor`, `border`, `cellpadding`,
|
|
@@ -86,7 +86,9 @@ Supported HTML attributes include: `accept`, `action`, `align`, `alt`,
|
|
|
86
86
|
`tabindex`, `target`, `title`, `type`, `usemap`, `valign`, `value`, `width`,
|
|
87
87
|
`xmlns`.
|
|
88
88
|
|
|
89
|
-
|
|
89
|
+
The HTML tags `b` and `i` aren't supported. This component converts the `b` tags to `strong` and `i` tags to `em` for screen reader accessibility. Other unsupported tags and attributes are removed, and only their text content is displayed.
|
|
90
|
+
|
|
91
|
+
We recommend using the `h1` to `h6` elements for headings and use `mark` to highlight text. For more information, see the [W3C recommendations](https://www.w3.org/TR/html52/textlevel-semantics.html).
|
|
90
92
|
|
|
91
93
|
#### Supported Protocols
|
|
92
94
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<lightning-formatted-rich-text value="Plain boring text"></lightning-formatted-rich-text>
|
|
5
5
|
</p>
|
|
6
6
|
<p>
|
|
7
|
-
<lightning-formatted-rich-text value="This <
|
|
7
|
+
<lightning-formatted-rich-text value="This <em>is</em> some simple rich text. <strong>Hello!</strong>"></lightning-formatted-rich-text>
|
|
8
8
|
</p>
|
|
9
9
|
<p>
|
|
10
10
|
<lightning-formatted-rich-text value="This is a link to <a href="http://www.salesforce.com">Salesforce</a>"></lightning-formatted-rich-text>
|
|
@@ -11,7 +11,8 @@ export default class FormattedTime extends LightningElement {
|
|
|
11
11
|
set value(newValue) {
|
|
12
12
|
const normalizedValue = this.normalizeInputValue(newValue);
|
|
13
13
|
if (normalizedValue !== this._inputValue) {
|
|
14
|
-
|
|
14
|
+
// formattedTime component currently always displays medium time format
|
|
15
|
+
const normalizedTime = normalizeISOTime(normalizedValue, 'medium');
|
|
15
16
|
|
|
16
17
|
this._inputValue = normalizedTime.isoValue;
|
|
17
18
|
this._formattedTimeValue = normalizedTime.displayValue;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
</template>
|
|
6
6
|
{label}
|
|
7
7
|
</label>
|
|
8
|
-
<lightning-helptext if:true={fieldLevelHelp} content={fieldLevelHelp}></lightning-helptext>
|
|
8
|
+
<lightning-helptext if:true={fieldLevelHelp} content={fieldLevelHelp} alternative-text={helptextAlternativeText}></lightning-helptext>
|
|
9
9
|
|
|
10
10
|
<div class="slds-form-element__control">
|
|
11
11
|
<div class={computedComboboxGroupClass}>
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
/* eslint-disable @lwc/lwc/no-api-reassignments */
|
|
2
2
|
|
|
3
3
|
import labelRequired from '@salesforce/label/LightningControl.required';
|
|
4
|
+
import labelPlaceholder from '@salesforce/label/LightningCombobox.placeholder';
|
|
5
|
+
import labelHelpTextAlternativeText from '@salesforce/label/LightningInput.helptextAlternativeText';
|
|
4
6
|
import { LightningElement, api, track } from 'lwc';
|
|
5
|
-
import { classSet } from 'lightning/utils';
|
|
7
|
+
import { classSet, formatLabel } from 'lightning/utils';
|
|
6
8
|
import { assert, synchronizeAttrs } from 'lightning/utilsPrivate';
|
|
7
9
|
import {
|
|
8
10
|
isEmptyString,
|
|
@@ -15,6 +17,8 @@ import {
|
|
|
15
17
|
|
|
16
18
|
const i18n = {
|
|
17
19
|
required: labelRequired,
|
|
20
|
+
helpTextAlternativeText: labelHelpTextAlternativeText,
|
|
21
|
+
placeholder: labelPlaceholder,
|
|
18
22
|
};
|
|
19
23
|
|
|
20
24
|
export default class LightningGroupedCombobox extends LightningElement {
|
|
@@ -27,7 +31,7 @@ export default class LightningGroupedCombobox extends LightningElement {
|
|
|
27
31
|
// TODO: Rename to `showInputActivityIndicator`
|
|
28
32
|
@api showActivityIndicator = false;
|
|
29
33
|
@api showDropdownActivityIndicator = false;
|
|
30
|
-
@api placeholder =
|
|
34
|
+
@api placeholder = i18n.placeholder;
|
|
31
35
|
|
|
32
36
|
// Validity related message
|
|
33
37
|
@api messageWhenValueMissing = i18n.required;
|
|
@@ -418,4 +422,8 @@ export default class LightningGroupedCombobox extends LightningElement {
|
|
|
418
422
|
for: this._filterInputId,
|
|
419
423
|
});
|
|
420
424
|
}
|
|
425
|
+
|
|
426
|
+
get helptextAlternativeText() {
|
|
427
|
+
return formatLabel(i18n.helpTextAlternativeText, this.label);
|
|
428
|
+
}
|
|
421
429
|
}
|