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.
Files changed (304) hide show
  1. package/metadata/raptor.json +37 -0
  2. package/package.json +59 -1
  3. package/scopedImports/@salesforce-i18n-calendarData.js +1 -0
  4. package/scopedImports/@salesforce-i18n-common.calendarData.js +1 -0
  5. package/scopedImports/@salesforce-i18n-common.digits.js +1 -0
  6. package/scopedImports/@salesforce-i18n-dateTime.longDateTimeFormat.js +1 -0
  7. package/scopedImports/@salesforce-i18n-defaultCalendar.js +1 -0
  8. package/scopedImports/@salesforce-i18n-defaultNumberingSystem.js +1 -0
  9. package/scopedImports/@salesforce-i18n-number.exponentialSign.js +1 -0
  10. package/scopedImports/@salesforce-i18n-number.infinity.js +1 -0
  11. package/scopedImports/@salesforce-i18n-number.minusSign.js +1 -0
  12. package/scopedImports/@salesforce-i18n-number.nan.js +1 -0
  13. package/scopedImports/@salesforce-i18n-number.perMilleSign.js +1 -0
  14. package/scopedImports/@salesforce-i18n-number.percentSign.js +1 -0
  15. package/scopedImports/@salesforce-i18n-number.plusSign.js +1 -0
  16. package/scopedImports/@salesforce-i18n-number.superscriptingExponentSign.js +1 -0
  17. package/src/lightning/alert/__docs__/alert.md +4 -4
  18. package/src/lightning/baseCombobox/baseCombobox.html +1 -0
  19. package/src/lightning/baseCombobox/baseCombobox.js +3 -1
  20. package/src/lightning/buttonIcon/buttonIcon.js +0 -3
  21. package/src/lightning/calendar/calendar.html +2 -1
  22. package/src/lightning/calendar/calendar.js +2 -2
  23. package/src/lightning/combobox/combobox.html +1 -1
  24. package/src/lightning/combobox/combobox.js +7 -1
  25. package/src/lightning/configProvider/defaultLocalizationConfig.js +43 -6
  26. package/src/lightning/confirm/__docs__/confirm.md +2 -2
  27. package/src/lightning/datatable/__docs__/datatable.md +0 -45
  28. package/src/lightning/datatable/__examples__/basic/basic.js +3 -4
  29. package/src/lightning/datatable/__examples__/basic/generateData.js +13 -0
  30. package/src/lightning/datatable/__examples__/withInfiniteLoading/generateDataWithDelay.js +18 -0
  31. package/src/lightning/datatable/__examples__/withInfiniteLoading/withInfiniteLoading.js +3 -3
  32. package/src/lightning/datatable/__examples__/withInlineEdit/generateData.js +13 -0
  33. package/src/lightning/datatable/__examples__/withInlineEdit/withInlineEdit.js +3 -4
  34. package/src/lightning/datatable/__examples__/withRowActions/generateData.js +13 -0
  35. package/src/lightning/datatable/__examples__/withRowActions/withRowActions.js +3 -4
  36. package/src/lightning/datatable/__examples__/withRowNumbers/generateData.js +13 -0
  37. package/src/lightning/datatable/__examples__/withRowNumbers/withRowNumbers.js +3 -4
  38. package/src/lightning/datatable/datatable.js +5 -4
  39. package/src/lightning/datatable/keyboard.js +6 -2
  40. package/src/lightning/datatable/utils.js +11 -0
  41. package/src/lightning/datatable/virtualization.js +2 -2
  42. package/src/lightning/datepicker/datepicker.html +4 -4
  43. package/src/lightning/datepicker/datepicker.js +25 -77
  44. package/src/lightning/datetimepicker/datetimepicker.html +1 -1
  45. package/src/lightning/datetimepicker/datetimepicker.js +36 -8
  46. package/src/lightning/dualListbox/dualListbox.html +1 -1
  47. package/src/lightning/dualListbox/dualListbox.js +6 -0
  48. package/src/lightning/fileDownload/fileDownload.js +15 -0
  49. package/src/lightning/fileDownload/fileDownload.js-meta.xml +5 -0
  50. package/src/lightning/fileDownload/resourceResolver.js +58 -0
  51. package/src/lightning/formattedDateTime/formattedDateTime.js +1 -1
  52. package/src/lightning/formattedLookup/events.js +19 -0
  53. package/src/lightning/formattedLookup/formattedLookup.js +7 -0
  54. package/src/lightning/formattedRichText/__docs__/formattedRichText.md +9 -7
  55. package/src/lightning/formattedRichText/__examples__disabled/basic/basic.html +1 -1
  56. package/src/lightning/formattedTime/formattedTime.js +2 -1
  57. package/src/lightning/groupedCombobox/groupedCombobox.html +1 -1
  58. package/src/lightning/groupedCombobox/groupedCombobox.js +10 -2
  59. package/src/lightning/helptext/helptext.html +1 -0
  60. package/src/lightning/helptext/helptext.js +29 -2
  61. package/src/lightning/iconSvgTemplates/buildTemplates/action/scan_disabled.html +7 -0
  62. package/src/lightning/iconSvgTemplates/buildTemplates/action/scan_enabled.html +7 -0
  63. package/src/lightning/iconSvgTemplates/buildTemplates/standard/ai_accelerator_card.html +7 -0
  64. package/src/lightning/iconSvgTemplates/buildTemplates/standard/connect_wallet.html +9 -0
  65. package/src/lightning/iconSvgTemplates/buildTemplates/standard/contract_line_outcome.html +7 -0
  66. package/src/lightning/iconSvgTemplates/buildTemplates/standard/contract_line_outcome_data.html +7 -0
  67. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_category_wallet_group.html +7 -0
  68. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_product.html +7 -0
  69. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_product_category_wallet_role.html +9 -0
  70. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_transaction.html +9 -0
  71. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_transaction_envelope.html +8 -0
  72. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_transaction_envelope_item.html +7 -0
  73. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_wallet.html +8 -0
  74. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_wallet_group.html +9 -0
  75. package/src/lightning/iconSvgTemplates/buildTemplates/standard/crypto_wallet_group_item.html +8 -0
  76. package/src/lightning/iconSvgTemplates/buildTemplates/standard/customer.html +10 -0
  77. package/src/lightning/iconSvgTemplates/buildTemplates/standard/customer_workspace.html +11 -0
  78. package/src/lightning/iconSvgTemplates/buildTemplates/standard/learner_program.html +7 -0
  79. package/src/lightning/iconSvgTemplates/buildTemplates/standard/nft_settings.html +8 -0
  80. package/src/lightning/iconSvgTemplates/buildTemplates/standard/nft_studio.html +7 -0
  81. package/src/lightning/iconSvgTemplates/buildTemplates/standard/prompt.html +7 -0
  82. package/src/lightning/iconSvgTemplates/buildTemplates/standard/setup_modal.html +11 -0
  83. package/src/lightning/iconSvgTemplates/buildTemplates/standard/snippet_alt.html +7 -0
  84. package/src/lightning/iconSvgTemplates/buildTemplates/standard/tax_policy.html +8 -0
  85. package/src/lightning/iconSvgTemplates/buildTemplates/standard/tax_rate.html +8 -0
  86. package/src/lightning/iconSvgTemplates/buildTemplates/standard/tax_treatment.html +8 -0
  87. package/src/lightning/iconSvgTemplates/buildTemplates/standard/travel_mode.html +2 -2
  88. package/src/lightning/iconSvgTemplates/buildTemplates/standard/water.html +7 -0
  89. package/src/lightning/iconSvgTemplates/buildTemplates/templates.js +48 -1
  90. package/src/lightning/iconSvgTemplates/buildTemplates/utility/captions.html +7 -0
  91. package/src/lightning/iconSvgTemplates/buildTemplates/utility/contract_line_outcome.html +7 -0
  92. package/src/lightning/iconSvgTemplates/buildTemplates/utility/contract_line_outcome_data.html +7 -0
  93. package/src/lightning/iconSvgTemplates/buildTemplates/utility/customer.html +10 -0
  94. package/src/lightning/iconSvgTemplates/buildTemplates/utility/customer_workspace.html +11 -0
  95. package/src/lightning/iconSvgTemplates/buildTemplates/utility/detach.html +7 -0
  96. package/src/lightning/iconSvgTemplates/buildTemplates/utility/hazmat_equipment.html +7 -0
  97. package/src/lightning/iconSvgTemplates/buildTemplates/utility/label.html +7 -0
  98. package/src/lightning/iconSvgTemplates/buildTemplates/utility/labels.html +8 -0
  99. package/src/lightning/iconSvgTemplates/buildTemplates/utility/record_alt.html +8 -0
  100. package/src/lightning/iconSvgTemplates/buildTemplates/utility/segments.html +8 -0
  101. package/src/lightning/iconSvgTemplates/buildTemplates/utility/tax_policy.html +8 -0
  102. package/src/lightning/iconSvgTemplates/buildTemplates/utility/tax_rate.html +8 -0
  103. package/src/lightning/iconSvgTemplates/buildTemplates/utility/tax_treatment.html +8 -0
  104. package/src/lightning/iconSvgTemplates/buildTemplates/utility/tollways.html +8 -0
  105. package/src/lightning/iconSvgTemplates/buildTemplates/utility/transport_bicycle.html +7 -0
  106. package/src/lightning/iconSvgTemplates/buildTemplates/utility/transport_heavy_truck.html +7 -0
  107. package/src/lightning/iconSvgTemplates/buildTemplates/utility/transport_light_truck.html +7 -0
  108. package/src/lightning/iconSvgTemplates/buildTemplates/utility/transport_walking.html +7 -0
  109. package/src/lightning/iconSvgTemplates/buildTemplates/utility/water.html +7 -0
  110. package/src/lightning/iconSvgTemplatesAction/buildTemplates/action/scan_disabled.html +7 -0
  111. package/src/lightning/iconSvgTemplatesAction/buildTemplates/action/scan_enabled.html +7 -0
  112. package/src/lightning/iconSvgTemplatesAction/buildTemplates/templates.js +3 -1
  113. package/src/lightning/iconSvgTemplatesActionRtl/buildTemplates/action/scan_disabled.html +7 -0
  114. package/src/lightning/iconSvgTemplatesActionRtl/buildTemplates/action/scan_enabled.html +7 -0
  115. package/src/lightning/iconSvgTemplatesActionRtl/buildTemplates/templates.js +3 -1
  116. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/action/scan_disabled.html +7 -0
  117. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/action/scan_enabled.html +7 -0
  118. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/ai_accelerator_card.html +7 -0
  119. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/connect_wallet.html +9 -0
  120. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/contract_line_outcome.html +7 -0
  121. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/contract_line_outcome_data.html +7 -0
  122. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_category_wallet_group.html +7 -0
  123. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_product.html +7 -0
  124. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_product_category_wallet_role.html +9 -0
  125. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_transaction.html +9 -0
  126. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_transaction_envelope.html +8 -0
  127. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_transaction_envelope_item.html +7 -0
  128. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_wallet.html +8 -0
  129. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_wallet_group.html +9 -0
  130. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/crypto_wallet_group_item.html +8 -0
  131. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/customer.html +10 -0
  132. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/customer_workspace.html +11 -0
  133. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/learner_program.html +7 -0
  134. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/nft_settings.html +8 -0
  135. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/nft_studio.html +7 -0
  136. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/prompt.html +7 -0
  137. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/setup_modal.html +11 -0
  138. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/snippet_alt.html +7 -0
  139. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/tax_policy.html +8 -0
  140. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/tax_rate.html +8 -0
  141. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/tax_treatment.html +8 -0
  142. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/travel_mode.html +2 -2
  143. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/water.html +7 -0
  144. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/templates.js +48 -1
  145. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/captions.html +7 -0
  146. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/contract_line_outcome.html +7 -0
  147. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/contract_line_outcome_data.html +7 -0
  148. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/customer.html +10 -0
  149. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/customer_workspace.html +11 -0
  150. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/detach.html +7 -0
  151. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/hazmat_equipment.html +7 -0
  152. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/label.html +7 -0
  153. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/labels.html +8 -0
  154. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/record_alt.html +8 -0
  155. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/segments.html +8 -0
  156. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/tax_policy.html +8 -0
  157. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/tax_rate.html +8 -0
  158. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/tax_treatment.html +8 -0
  159. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/tollways.html +8 -0
  160. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/transport_bicycle.html +7 -0
  161. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/transport_heavy_truck.html +7 -0
  162. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/transport_light_truck.html +7 -0
  163. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/transport_walking.html +7 -0
  164. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/water.html +7 -0
  165. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/ai_accelerator_card.html +7 -0
  166. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/connect_wallet.html +9 -0
  167. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/contract_line_outcome.html +7 -0
  168. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/contract_line_outcome_data.html +7 -0
  169. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_category_wallet_group.html +7 -0
  170. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_product.html +7 -0
  171. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_product_category_wallet_role.html +9 -0
  172. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_transaction.html +9 -0
  173. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_transaction_envelope.html +8 -0
  174. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_transaction_envelope_item.html +7 -0
  175. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_wallet.html +8 -0
  176. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_wallet_group.html +9 -0
  177. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/crypto_wallet_group_item.html +8 -0
  178. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/customer.html +10 -0
  179. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/customer_workspace.html +11 -0
  180. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/learner_program.html +7 -0
  181. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/nft_settings.html +8 -0
  182. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/nft_studio.html +7 -0
  183. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/prompt.html +7 -0
  184. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/setup_modal.html +11 -0
  185. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/snippet_alt.html +7 -0
  186. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/tax_policy.html +8 -0
  187. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/tax_rate.html +8 -0
  188. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/tax_treatment.html +8 -0
  189. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/travel_mode.html +2 -2
  190. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/water.html +7 -0
  191. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/templates.js +26 -1
  192. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/ai_accelerator_card.html +7 -0
  193. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/connect_wallet.html +9 -0
  194. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/contract_line_outcome.html +7 -0
  195. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/contract_line_outcome_data.html +7 -0
  196. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_category_wallet_group.html +7 -0
  197. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_product.html +7 -0
  198. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_product_category_wallet_role.html +9 -0
  199. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_transaction.html +9 -0
  200. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_transaction_envelope.html +8 -0
  201. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_transaction_envelope_item.html +7 -0
  202. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_wallet.html +8 -0
  203. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_wallet_group.html +9 -0
  204. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/crypto_wallet_group_item.html +8 -0
  205. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/customer.html +10 -0
  206. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/customer_workspace.html +11 -0
  207. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/learner_program.html +7 -0
  208. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/nft_settings.html +8 -0
  209. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/nft_studio.html +7 -0
  210. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/prompt.html +7 -0
  211. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/setup_modal.html +11 -0
  212. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/snippet_alt.html +7 -0
  213. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/tax_policy.html +8 -0
  214. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/tax_rate.html +8 -0
  215. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/tax_treatment.html +8 -0
  216. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/travel_mode.html +2 -2
  217. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/water.html +7 -0
  218. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/templates.js +26 -1
  219. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/templates.js +21 -1
  220. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/captions.html +7 -0
  221. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/contract_line_outcome.html +7 -0
  222. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/contract_line_outcome_data.html +7 -0
  223. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/customer.html +10 -0
  224. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/customer_workspace.html +11 -0
  225. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/detach.html +7 -0
  226. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/hazmat_equipment.html +7 -0
  227. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/label.html +7 -0
  228. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/labels.html +8 -0
  229. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/record_alt.html +8 -0
  230. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/segments.html +8 -0
  231. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/tax_policy.html +8 -0
  232. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/tax_rate.html +8 -0
  233. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/tax_treatment.html +8 -0
  234. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/tollways.html +8 -0
  235. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/transport_bicycle.html +7 -0
  236. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/transport_heavy_truck.html +7 -0
  237. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/transport_light_truck.html +7 -0
  238. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/transport_walking.html +7 -0
  239. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/water.html +7 -0
  240. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/templates.js +21 -1
  241. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/captions.html +7 -0
  242. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/contract_line_outcome.html +7 -0
  243. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/contract_line_outcome_data.html +7 -0
  244. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/customer.html +10 -0
  245. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/customer_workspace.html +11 -0
  246. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/detach.html +7 -0
  247. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/hazmat_equipment.html +7 -0
  248. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/label.html +7 -0
  249. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/labels.html +8 -0
  250. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/record_alt.html +8 -0
  251. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/segments.html +8 -0
  252. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/tax_policy.html +8 -0
  253. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/tax_rate.html +8 -0
  254. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/tax_treatment.html +8 -0
  255. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/tollways.html +8 -0
  256. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/transport_bicycle.html +7 -0
  257. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/transport_heavy_truck.html +7 -0
  258. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/transport_light_truck.html +7 -0
  259. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/transport_walking.html +7 -0
  260. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/water.html +7 -0
  261. package/src/lightning/input/dateTimeUtil.js +2 -2
  262. package/src/lightning/inputAddress/inputAddress.html +1 -1
  263. package/src/lightning/inputAddress/inputAddress.js +7 -1
  264. package/src/lightning/inputLocation/inputLocation.html +1 -1
  265. package/src/lightning/inputLocation/inputLocation.js +7 -1
  266. package/src/lightning/inputName/inputName.html +2 -2
  267. package/src/lightning/inputName/inputName.js +7 -1
  268. package/src/lightning/interactiveDialogBase/interactiveDialogBase.js +1 -0
  269. package/src/lightning/internationalizationLibrary/datetime/dateTimeOptions.js +16 -29
  270. package/src/lightning/internationalizationLibrary/datetime/dateTimeUtils.js +524 -135
  271. package/src/lightning/internationalizationLibrary/datetime/intlFormat.js +92 -72
  272. package/src/lightning/internationalizationLibrary/internationalizationLibrary.js +9 -4
  273. package/src/lightning/internationalizationLibrary/localizationService.js +1 -0
  274. package/src/lightning/internationalizationLibrary/number/NumberFormat.js +17 -11
  275. package/src/lightning/internationalizationLibrary/number/numberFormatFallback.js +3 -2
  276. package/src/lightning/internationalizationLibrary/number/numberOptions.js +22 -26
  277. package/src/lightning/internationalizationLibrary/number/utils.js +134 -131
  278. package/src/lightning/internationalizationLibrary/utils.js +14 -0
  279. package/src/lightning/iso8601Utils/iso8601Utils.js +1 -0
  280. package/src/lightning/modalBase/modalBase.css +0 -4
  281. package/src/lightning/modalBase/modalBase.html +1 -1
  282. package/src/lightning/modalBase/modalBase.js +0 -14
  283. package/src/lightning/navigation/__docs__/navigation.md +0 -2
  284. package/src/lightning/overlayContainer/overlayContainer.html +2 -2
  285. package/src/lightning/overlayContainer/overlayContainer.js +217 -49
  286. package/src/lightning/overlayManager/overlayManager.js +378 -28
  287. package/src/lightning/overlayManager/overlayManager.js-meta.xml +5 -0
  288. package/src/lightning/primitiveCellFactory/primitiveCellFactory.js +1 -11
  289. package/src/lightning/prompt/__docs__/prompt.md +2 -2
  290. package/src/lightning/select/select.html +1 -1
  291. package/src/lightning/select/select.js +7 -1
  292. package/src/lightning/tabBar/tabBar.html +3 -2
  293. package/src/lightning/tabBar/tabBar.js +15 -0
  294. package/src/lightning/textarea/textarea.html +1 -1
  295. package/src/lightning/textarea/textarea.js +7 -1
  296. package/src/lightning/timepicker/timepicker.html +1 -1
  297. package/src/lightning/timepicker/timepicker.js +41 -86
  298. package/src/lightning/utils/labelUtils.js +4 -1
  299. package/src/lightning/utilsPrivate/animation.js +0 -4
  300. package/src/lightning/datatable/__examples__/basic/fetchDataHelper.js +0 -21
  301. package/src/lightning/datatable/__examples__/withInfiniteLoading/fetchDataHelper.js +0 -21
  302. package/src/lightning/datatable/__examples__/withInlineEdit/fetchDataHelper.js +0 -21
  303. package/src/lightning/datatable/__examples__/withRowActions/fetchDataHelper.js +0 -21
  304. 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 shortDateFormat from '@salesforce/i18n/dateTime.shortDateFormat';
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
- normalizeFormattedDate,
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.dateFormat);
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.dateFormat);
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(this.i18n.invalidDate, this.dateFormat)
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.dateFormat);
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.dateFormat);
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 = this.parseFormattedDate(this._displayValue);
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.dateFormat
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.dateFormat
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
- getCurrentTime,
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 = this._timeValue || getCurrentTime(this.timezone);
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.timezone
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.timezone
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(this.min, this.timezone);
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(this.max, this.timezone);
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,5 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <LightningComponentBundle xmlns="xmlns=http://soap.sforce.com/2006/04/metadata">
3
+ <minApiVersion>56.0</minApiVersion>
4
+ <isExposed>true</isExposed>
5
+ </LightningComponentBundle>
@@ -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
- `<b>` for bold text or `<u>` for underlined text. You can pass in rich text to
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`, `b`, `br`, `big`, `blockquote`, `caption`,
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`, `i`, `img`, `ins`, `kbd`,
71
- `li`, `ol`, `mark`, `p`, `param`, `pre`, `q`, `s`, `samp`, `small`, `span`, `strong`, `sub`, `sup`,
72
- `table`, `tbody`, `td`, `tfoot`, `th`, `thead`, `tr`, `tt`, `u`, `ul`, `var`,
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
- We recommend using the `em` element instead of `i` to emphasize text with italic font style, and the `strong` element instead of `b` to denote importance with bold font weight. Additionally, use 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).
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 &lt;i&gt;is&lt;/i&gt; some simple rich text. &lt;b&gt;Hello!&lt;/b&gt;"></lightning-formatted-rich-text>
7
+ <lightning-formatted-rich-text value="This &lt;em&gt;is&lt;/em&gt; some simple rich text. &lt;strong&gt;Hello!&lt;/strong&gt;"></lightning-formatted-rich-text>
8
8
  </p>
9
9
  <p>
10
10
  <lightning-formatted-rich-text value="This is a link to &lt;a href=&quot;http://www.salesforce.com&quot;&gt;Salesforce&lt;/a&gt;"></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
- const normalizedTime = normalizeISOTime(normalizedValue);
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 = 'Select an Item';
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
  }
@@ -9,6 +9,7 @@
9
9
  variant="bare">
10
10
  </lightning-primitive-icon>
11
11
  <span class="slds-assistive-text">{alternativeText}</span>
12
+ <span class="slds-assistive-text desc" id={describedByID} aria-hidden="true">{content}</span>
12
13
  </button>
13
14
  </div>
14
15
  </template>