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
@@ -1,53 +1,24 @@
1
+ // TODO: when migrating off aura, remove functions
2
+ // and vaiables only used in dateTimeOptions
1
3
  import locale from '@salesforce/i18n/locale';
2
- import { DateTimeOptions } from './dateTimeOptions';
4
+ import { formattingOptions } from 'lightning/i18nCldrOptions';
5
+ import { getSkeleton } from './dateTimeOptions';
6
+ import { isDate } from './dateTimeUtils';
3
7
  import {
4
8
  formatDateUTC,
5
9
  formatDate,
6
10
  toOtherCalendar,
7
11
  syncUTCToWallTime,
8
12
  } from '../localizationService';
13
+ import { isAuraL10NAvailable } from '../utils';
9
14
  import {
10
15
  isValidISODateTimeString,
11
16
  TIME_SEPARATOR,
12
17
  } from 'lightning/iso8601Utils';
13
-
14
- const dateTimeFormatInstancesCache = {};
15
- const POSSIBLE_OPTS = {
16
- weekday: true,
17
- era: true,
18
- year: true,
19
- month: true,
20
- day: true,
21
- hour: true,
22
- minute: true,
23
- second: true,
24
- timeZone: true,
25
- timeZoneName: true,
26
- hour12: true,
27
- };
28
-
29
- function getOptionsUniqueKey(options) {
30
- return Object.keys(options)
31
- .sort()
32
- .reduce((prev, optionName) => {
33
- if (POSSIBLE_OPTS[optionName]) {
34
- return prev + optionName + options[optionName] + '';
35
- }
36
- return prev;
37
- }, '');
38
- }
39
-
40
- function getFromCache(options) {
41
- const optionsUniqueKey = getOptionsUniqueKey(options);
42
- let formatInstance = dateTimeFormatInstancesCache[optionsUniqueKey];
43
-
44
- if (!formatInstance) {
45
- formatInstance = new Intl.DateTimeFormat(locale, options);
46
- dateTimeFormatInstancesCache[optionsUniqueKey] = formatInstance;
47
- }
48
-
49
- return formatInstance;
50
- }
18
+ import {
19
+ getDateTimeFormat,
20
+ getDateTimeISO8601Parser,
21
+ } from 'lightning/i18nService';
51
22
 
52
23
  function convertAndFormatDate(date, format, timeZone) {
53
24
  const translatedDate = toOtherCalendar(date);
@@ -55,29 +26,32 @@ function convertAndFormatDate(date, format, timeZone) {
55
26
  return formatDateUTC(converted, format);
56
27
  }
57
28
 
58
- function isDate(value) {
59
- return (
60
- Object.prototype.toString.call(value) === '[object Date]' &&
61
- !isNaN(value.getTime())
62
- );
63
- }
64
-
29
+ /**
30
+ * Converts a timestamp or ISO-8601 string to a Date object
31
+ * If a Date object is provided it is returned as-is
32
+ *
33
+ * @param {String|Number|Date} value
34
+ * @returns Date
35
+ */
65
36
  function toDate(value) {
66
- let dateObj = value;
67
- if (
68
- !isDate(value) &&
69
- (typeof value === 'string' || typeof value === 'number')
70
- ) {
71
- dateObj = new Date(
72
- isFinite(value) ? parseInt(value, 10) : Date.parse(value)
73
- );
37
+ if (!isDate(value) && isFinite(value)) {
38
+ // handles timestamp as number or string
39
+ return new Date(parseInt(value, 10));
40
+ } else if (value && !isDate(value)) {
41
+ // handles non-timestamp string
42
+ return getDateTimeISO8601Parser().parse(value);
74
43
  }
75
- return dateObj;
44
+ return value; // handles date object
76
45
  }
77
46
 
78
- const isTimeZonesSupported = (function () {
47
+ /**
48
+ * Returns true if the current browser supports time zones
49
+ * for Intl other than UTC by seeing if error is thrown when
50
+ * a non-UTC time zone is passed; should return false for IE11
51
+ * and true for all other supported browsers.
52
+ */
53
+ const isNonUTCSupported = (function () {
79
54
  try {
80
- // IE11 only supports the UTC time zone and throws when given anything else
81
55
  // eslint-disable-next-line new-cap
82
56
  Intl.DateTimeFormat('en-US', { timeZone: 'America/Los_Angeles' });
83
57
  } catch (err) {
@@ -86,13 +60,12 @@ const isTimeZonesSupported = (function () {
86
60
  return true;
87
61
  })();
88
62
 
89
- function dateTimeFormatFallback(dto) {
90
- // localization service will default to mediumDateFormat when no format is provided
91
- const format = dto.hasFormattingOptions() ? dto.getSkeleton() : null;
92
- const { timeZone } = dto.options;
63
+ function dateTimeFormatFallback(options) {
64
+ const format = !useDefaultFormat(options) ? getSkeleton(options) : null;
65
+ const { timeZone } = options;
93
66
  return {
94
67
  format: (value) => {
95
- // if value is an ISO date string (e.g. 2019-10-25), do not convert between timezones and just format the date
68
+ // if value is an ISO date string with no time component, do not convert between timezones
96
69
  if (
97
70
  isValidISODateTimeString(value) &&
98
71
  value.indexOf(TIME_SEPARATOR) < 0
@@ -115,22 +88,69 @@ function dateTimeFormatFallback(dto) {
115
88
  };
116
89
  }
117
90
 
118
- export function dateTimeFormat(opts) {
119
- const options = opts || {};
120
- const dto = new DateTimeOptions(options);
121
-
91
+ /**
92
+ * Returns true if Aura fallback should be used for
93
+ * datetime formatting with provided date time optionss
94
+ *
95
+ * More specifically, Aura should be used on-core and
96
+ * when no formatting options are provided or we're
97
+ * using a non-UTC time zone on a browser that does
98
+ * not support them
99
+ */
100
+ function useAuraFallbackFormatting(options) {
101
+ const { timeZone } = options;
102
+ const isNonUTCTimeZone = timeZone && timeZone !== 'UTC';
122
103
  if (
123
- !('Intl' in window) ||
124
- !dto.hasFormattingOptions() ||
125
- !isTimeZonesSupported
104
+ isAuraL10NAvailable &&
105
+ (useDefaultFormat(options) || (!isNonUTCSupported && isNonUTCTimeZone))
126
106
  ) {
127
- return dateTimeFormatFallback(dto);
107
+ return true;
108
+ }
109
+ return false;
110
+ }
111
+
112
+ /**
113
+ * Returns true if the mediumDateFormat options should be used
114
+ * Medium date format should be used when there are no options
115
+ * or only options are for the time zone and hour system
116
+ */
117
+ function useDefaultFormat(options) {
118
+ const excludedOptions = {
119
+ hour12: true,
120
+ hourCycle: true,
121
+ timeZone: true,
122
+ timeZoneName: true,
123
+ };
124
+ const hasFormattingOption = Object.keys(options).some(
125
+ (opt) => options[opt] !== undefined && !excludedOptions[opt]
126
+ );
127
+ return !hasFormattingOption;
128
+ }
129
+
130
+ /**
131
+ * Creates date time formatter based on feature availability and provided options.
132
+ * When on-core, uses Aura on IE11 or when we need default format, and uses
133
+ * Intl.DateTimeFormat through i18nService otherwise
134
+ *
135
+ * @param {Object} opts - Formatting options from lightning-formatted-date-time
136
+ * @returns {Object} - Object with "format" function
137
+ */
138
+ export function dateTimeFormat(opts) {
139
+ const options = opts || {};
140
+ if (useAuraFallbackFormatting(options)) {
141
+ return dateTimeFormatFallback(options);
142
+ } else if (useDefaultFormat(options)) {
143
+ // use mediumDateFormat options if not using Aura
144
+ // and no options outside of hour system or time zone
145
+ // need to use Object.assign so hour system and
146
+ // time zone options work as expected when passed in
147
+ opts = Object.assign(options, formattingOptions.mediumDateFormat);
128
148
  }
129
149
 
130
150
  return {
131
151
  format: (value) => {
132
- const dtf = getFromCache(options);
133
- return dtf.format(toDate(value));
152
+ const formatter = getDateTimeFormat(locale, opts);
153
+ return formatter.format(toDate(value));
134
154
  },
135
155
  };
136
156
  }
@@ -18,13 +18,16 @@ export {
18
18
  normalizeISODate,
19
19
  normalizeISOTime,
20
20
  normalizeISODateTime,
21
- normalizeFormattedDate,
22
- normalizeFormattedTime,
21
+ parseFormattedDate,
22
+ parseFormattedTime,
23
23
  normalizeFormattedDateTime,
24
- getToday,
24
+ getCurrentDateString,
25
25
  getISODateString,
26
26
  getISOTimeString,
27
- getCurrentTime,
27
+ getCurrentTimeString,
28
+ getDateFormatFromStyle,
29
+ getTimeFormatFromStyle,
30
+ getDateTimeFormatFromStyle,
28
31
  } from './datetime/dateTimeUtils';
29
32
 
30
33
  export {
@@ -44,3 +47,5 @@ export {
44
47
  syncWallTimeToUTC,
45
48
  syncUTCToWallTime,
46
49
  } from './localizationService';
50
+
51
+ export { isAuraL10NAvailable } from './utils';
@@ -1,3 +1,4 @@
1
+ // TODO: remove mosst if not all of file when migrating off aura
1
2
  // This is a library for all calls to the aura localizationService.
2
3
 
3
4
  import { getLocalizationService } from 'lightning/configProvider';
@@ -1,19 +1,25 @@
1
+ import currency from '@salesforce/i18n/currency';
2
+ import locale from '@salesforce/i18n/locale';
3
+ import { getNumberFormat } from 'lightning/i18nService';
1
4
  import { numberFormatFallback } from './numberFormatFallback';
2
- import { normalizeOptions, exceedsSafeLength, getFromCache } from './utils';
5
+ import { exceedsSafeLength } from './utils';
6
+ import { isAuraL10NAvailable } from '../utils';
3
7
 
4
8
  export function numberFormat(options) {
5
- const normalizedOpts = Object.assign({}, normalizeOptions(options));
6
- if (!('Intl' in window)) {
7
- return numberFormatFallback(normalizedOpts);
8
- }
9
-
9
+ const currencyValue = { currency: options.currency || currency };
10
+ const normalizedOpts = Object.assign({}, options, currencyValue);
10
11
  return {
11
12
  format: (value) => {
12
- if (value && exceedsSafeLength(value)) {
13
- return numberFormatFallback(normalizedOpts).format(value);
14
- }
15
- const numberFormatInstance = getFromCache(normalizedOpts);
16
- return numberFormatInstance.format(value);
13
+ // TODO: when migrating off aura just use getNumberFormat directly
14
+ // TD-0117848 will need to be completed before migrating off
15
+ // aura fallback should only be used when aura is available and value has
16
+ // too many significant digits to work correctly with localizer
17
+ const useFallback =
18
+ isAuraL10NAvailable && value && exceedsSafeLength(value);
19
+ const numberFormatter = useFallback
20
+ ? numberFormatFallback(normalizedOpts)
21
+ : getNumberFormat(locale, normalizedOpts);
22
+ return numberFormatter.format(value);
17
23
  },
18
24
  };
19
25
  }
@@ -1,8 +1,9 @@
1
- import { NumberOptions } from './numberOptions';
1
+ // TODO: remove file when migrating off aura
2
+ import { getSkeleton } from './numberOptions';
2
3
  import { getNumberFormat } from '../localizationService';
3
4
 
4
5
  export function numberFormatFallback(options) {
5
- const skeleton = new NumberOptions(options).getSkeleton();
6
+ const skeleton = getSkeleton(options);
6
7
  return {
7
8
  format: (value) => {
8
9
  return getNumberFormat(skeleton).format(value);
@@ -1,44 +1,42 @@
1
+ // TODO: remove file when migrating off aura
1
2
  import numberFormat from '@salesforce/i18n/number.numberFormat';
2
3
  import percentFormat from '@salesforce/i18n/number.percentFormat';
3
4
  import currencyFormat from '@salesforce/i18n/number.currencyFormat';
4
5
  import currency from '@salesforce/i18n/currency';
5
6
  import {
7
+ STYLE,
6
8
  updateFractionPart,
7
9
  updateIntegerPart,
8
10
  updateCurrencySymbol,
9
11
  getCurrency,
10
12
  } from './utils';
11
13
 
12
- function NumberOptions(options) {
13
- this.options = options || {};
14
- }
15
-
16
- NumberOptions.prototype.isCurrency = function () {
17
- return this.options.style === 'currency';
18
- };
19
-
20
- NumberOptions.prototype.isPercent = function () {
21
- return this.options.style === 'percent';
14
+ const isDefaultCurrency = (options) => {
15
+ return !options.currency || currency === options.currency;
22
16
  };
23
17
 
24
- NumberOptions.prototype.isDefaultCurrency = function () {
25
- return !this.options.currency || currency === this.options.currency;
26
- };
27
-
28
- NumberOptions.prototype.getDefaultSkeleton = function () {
29
- return this.isCurrency()
30
- ? currencyFormat
31
- : this.isPercent()
32
- ? percentFormat
33
- : numberFormat;
18
+ const getDefaultSkeleton = (options) => {
19
+ if (options.style === STYLE.CURRENCY) {
20
+ return currencyFormat;
21
+ } else if (options.style === STYLE.PERCENT) {
22
+ return percentFormat;
23
+ }
24
+ return numberFormat;
34
25
  };
35
26
 
36
- NumberOptions.prototype.getSkeleton = function () {
37
- const options = this.options;
38
- const defaultSkeleton = this.getDefaultSkeleton();
27
+ /**
28
+ * Function translating provided number formatting options to a
29
+ * string that can be passed into Aura localization service.
30
+ *
31
+ * @param {Object} options - number formatting options
32
+ * @returns {string} representing provided options as a string -
33
+ * e.g. "$#,##,##0.00#"
34
+ */
35
+ export const getSkeleton = (options) => {
36
+ const defaultSkeleton = getDefaultSkeleton(options);
39
37
  let skeleton = updateFractionPart(defaultSkeleton, options);
40
38
  skeleton = updateIntegerPart(skeleton, options);
41
- if (!this.isDefaultCurrency()) {
39
+ if (!isDefaultCurrency(options)) {
42
40
  skeleton = updateCurrencySymbol(
43
41
  skeleton,
44
42
  getCurrency(options),
@@ -47,5 +45,3 @@ NumberOptions.prototype.getSkeleton = function () {
47
45
  }
48
46
  return skeleton;
49
47
  };
50
-
51
- export { NumberOptions };