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,17 +1,30 @@
1
1
  import { LightningElement, api, createElement } from 'lwc';
2
2
  import { parent, instanceName } from 'lightning/overlayUtils';
3
+ import { guid } from 'lightning/utilsPrivate';
3
4
  import {
4
- addOverlay,
5
- LwcOverlayType,
5
+ addOverlayToSharedState,
6
+ removeOverlayFromSharedState,
7
+ normalizeOverlayDetails,
6
8
  subscribeOverlay,
9
+ LWC_STARTING_ZINDEX,
10
+ LWC_OVERLAY_TYPES,
11
+ LWC_ZINDEX_INCREMENT,
12
+ LWC_ZINDEX_OFFSET,
13
+ LWC_OVERLAY_ENGINE,
7
14
  } from 'lightning/overlayManager';
8
15
 
9
16
  export default class LightningOverlayContainer extends LightningElement {
10
- // [{ element, parentElement, resolve }, ...]
17
+ // overlayContainer has this.stack, which holds the details, and actual
18
+ // DOM elements of local (this file) LWC overlays only, while
19
+ // overlayManager has this.state.stack, which only tracks details of
20
+ // local LWC overlays + Aura overlays
21
+ // Example of this.stack:
22
+ // [{ element, parentElement, resolve, id }, { ... }, { ... }]
11
23
  stack = [];
24
+ afterFirstRender = false;
12
25
 
13
26
  get root() {
14
- return this.template.querySelector('div');
27
+ return this.template.querySelector('[data-overlay-container]');
15
28
  }
16
29
 
17
30
  /**
@@ -43,6 +56,7 @@ export default class LightningOverlayContainer extends LightningElement {
43
56
  });
44
57
 
45
58
  let promise = null;
59
+ const id = guid();
46
60
  if (overlayParent) {
47
61
  // Ex: extends LightningModal with wrapping LightningModalBase
48
62
  const parentElement = createElement(overlayParent[instanceName], {
@@ -51,41 +65,72 @@ export default class LightningOverlayContainer extends LightningElement {
51
65
  this.root.appendChild(parentElement);
52
66
  parentElement.defaultSlot.appendChild(element);
53
67
  promise = new Promise((resolve) => {
54
- this.stack.push({ resolve, element, parentElement });
68
+ this.stack.push({ resolve, element, parentElement, id });
55
69
  });
56
70
  } else {
57
71
  this.root.appendChild(element);
58
72
  promise = new Promise((resolve) => {
59
- this.stack.push({ resolve, element });
73
+ this.stack.push({ resolve, element, id });
60
74
  });
61
75
  }
62
- // Aura Compatability
63
- addOverlay(LwcOverlayType);
76
+ // Add new overlay details to shared overlay state
77
+ // contained in LightningOverlayManager
78
+ const overlayDetails = normalizeOverlayDetails(
79
+ LWC_OVERLAY_ENGINE,
80
+ overlayInstanceName,
81
+ { id }
82
+ );
83
+ addOverlayToSharedState(overlayDetails);
64
84
  return promise;
65
85
  }
66
86
 
67
87
  /**
68
- * Remove the last added popover.
88
+ * Remove the matching overlay element
89
+ * @param {HTMLElement} element is the element that `extends LightningOverlay`
90
+ * @param {object|array|boolean|string|number} result the result value to resolve via promise
91
+ * @param {object} promise the promise to resolve
92
+ * example of parentElement: LightningModalBase, InteractiveDialogBase
69
93
  */
70
- @api
71
- pop(ele, result, promise) {
72
- // element = `extends LightningOverlay`
73
- // parentElement = Ex: LightningModalBase
74
- const { element, parentElement, resolve } = this.stack.find(
75
- ({ element: e }) => e === ele
76
- );
77
- // Resolve immediately
78
- resolve(result);
79
- // Animate out. Ex: LightningModal slide up animation
80
- if (promise) {
81
- promise.then(() => {
82
- this.removeOverlay(element, parentElement);
83
- });
84
- } else {
85
- this.removeOverlay(element, parentElement);
94
+ @api pop(element, result, promise) {
95
+ const stackLength = this.stack.length;
96
+ let stackElement,
97
+ stackIndexToRemove = -1;
98
+ if (stackLength > 0) {
99
+ // find element to remove, by looping through array in reverse order
100
+ // typically, the last item in the array will be removed
101
+ for (let index = stackLength; index--; index >= 0) {
102
+ stackElement = this.stack[index];
103
+ if (element === stackElement.element) {
104
+ stackIndexToRemove = index;
105
+ break;
106
+ }
107
+ }
108
+
109
+ const { element: elem, parentElement, resolve, id } = stackElement;
110
+ // Resolve immediately
111
+ resolve(result);
112
+ // Wait for animation out to complete.
113
+ // Ex: LightningModal slide up animation
114
+ // We need to wait until the promise.then()[PASS] or we
115
+ // remove the element too early, and animation gets clipped
116
+ if (promise) {
117
+ promise.then(() => {
118
+ this.removeOverlay(
119
+ elem,
120
+ parentElement,
121
+ stackIndexToRemove,
122
+ id
123
+ );
124
+ });
125
+ } else {
126
+ // No animation, so no need to wait
127
+ // before removal
128
+ // IE11 and prefers-reduced-motion
129
+ // take this path
130
+ this.removeOverlay(elem, parentElement, stackIndexToRemove, id);
131
+ }
86
132
  }
87
- // Remove from stack
88
- this.stack = this.stack.filter(({ element: e }) => e !== ele);
133
+ return null;
89
134
  }
90
135
 
91
136
  /**
@@ -93,8 +138,11 @@ export default class LightningOverlayContainer extends LightningElement {
93
138
  *
94
139
  * @param {LightningModal} element Required
95
140
  * @param {LightningElement} parentElement Optional
141
+ * @param {number} indexToRemove index of element to remove from this.state
96
142
  */
97
- removeOverlay(element, parentElement) {
143
+ removeOverlay(element, parentElement, indexToRemove, id) {
144
+ const overlayType = element && element.tagName.toLowerCase();
145
+ // First, remove the parentElement and the element from the DOM
98
146
  if (parentElement && parentElement.remove) {
99
147
  parentElement.remove();
100
148
  } else if (parentElement) {
@@ -104,35 +152,155 @@ export default class LightningOverlayContainer extends LightningElement {
104
152
  } else {
105
153
  element.parentNode.removeChild(element);
106
154
  }
155
+ // Second, alter local LWC only overlay state (this),
156
+ // typically removing last item
157
+ if (indexToRemove > -1) {
158
+ this.stack.splice(indexToRemove, 1);
159
+ }
160
+ // Last, update overlayManager's shared overlay state
161
+ // specifically, this.state.stack
162
+ const overlayDetails = normalizeOverlayDetails(
163
+ LWC_OVERLAY_ENGINE,
164
+ overlayType,
165
+ { id }
166
+ );
167
+ removeOverlayFromSharedState(overlayDetails);
107
168
  }
108
169
 
109
170
  connectedCallback() {
110
- // Notified anytime a overlay is added/removed
111
- // zIndex assumes aura modals stack every other
112
- subscribeOverlay((stack) => {
113
- // LWC Overlays are always on odd zIndexes, aura even
114
- let zIndex = 9001;
115
- let modalCount = 0;
171
+ // Notified anytime an overlay is added/removed
172
+ // LWC overlays start on z-index 9000; always even z-index (9000, 9002)
173
+ // Aura overlays start on z-index 9001; always on odd z-ndex (9001, 9003)
174
+ subscribeOverlay(this.afterFirstRender, (state) => {
175
+ const {
176
+ mixedOverlayPresent,
177
+ auraHighestZindex,
178
+ lwcAllOverlayCount,
179
+ stack,
180
+ } = state;
181
+
182
+ // exit condition exists
183
+ // no need to proceed with any updates
184
+ if (lwcAllOverlayCount === 0) {
185
+ return;
186
+ }
187
+
188
+ // initialize z-index value to set,
189
+ // value changes if Aura overlays present
190
+ let lwcZIndexToSet = LWC_STARTING_ZINDEX;
191
+ // lwc count used to correctly access
192
+ // overlay containers elements
193
+ let lwcOverlayCount = 0;
116
194
 
117
- stack.forEach((overlayType) => {
118
- if (overlayType === LwcOverlayType) {
119
- const overlay = this.root.childNodes[modalCount];
120
- if (overlay) {
121
- overlay.style.zIndex = zIndex;
122
- // ToDo: Refactor for LightningPanel
123
- overlay.style.position = 'absolute';
195
+ // loop over stack, set correct z-index and position values
196
+ // depending on state of LWC-only or Aura+LWC overlay
197
+ stack.forEach((overlayObject, stackIndex) => {
198
+ const { overlayEngine, overlayType, overlayDetails } =
199
+ overlayObject;
200
+ let overlayElem;
201
+ // set position: fixed or absolute based on type
202
+ const positionToSet =
203
+ (LWC_OVERLAY_TYPES[overlayType] &&
204
+ LWC_OVERLAY_TYPES[overlayType].pos) ||
205
+ 'fixed';
206
+ // Strategy: depending on order of appearance, overlayEngine, mixedOverlayPresent
207
+ // set interleaving z-index
208
+ // LWC stack starts at 9000 z-index, z-index increments by 2 (always even)
209
+ // Aura stack starts at 9001 z-index, z-index increments by 2 (always odd)
210
+
211
+ // LWC-only overlays present, default stack behavior
212
+ // overlays assigned: 9000, 9000, 9000, 9000
213
+ if (!mixedOverlayPresent) {
214
+ overlayElem = this.root.childNodes[lwcOverlayCount];
215
+ if (overlayElem) {
216
+ overlayElem.style.zIndex = lwcZIndexToSet;
217
+ overlayElem.style.position = positionToSet;
218
+ // need to update shared state with z-index
219
+ // in case Aura modal or overlay later occurs
220
+ const updateDetailsObject = {
221
+ zIndex: lwcZIndexToSet,
222
+ };
223
+ const updatedOverlayObject = normalizeOverlayDetails(
224
+ overlayEngine,
225
+ overlayType,
226
+ Object.assign(
227
+ {},
228
+ overlayDetails,
229
+ updateDetailsObject
230
+ )
231
+ );
232
+ // set the z-index to the shared state overlay
233
+ if (updatedOverlayObject !== null) {
234
+ state.stack[stackIndex] = updatedOverlayObject;
235
+ }
236
+ lwcOverlayCount += 1;
124
237
  }
125
- modalCount += 1;
238
+ // Aura+LWC overlays present, alt stack behavior
239
+ // LWC overlays assigned: 9000, 9002, 9004
240
+ // Aura overlay stack assigns: 9001, 9003, 9005
241
+ // The code that governs the Aura overlay behavior
242
+ // is in the Aura repo. See panelManager2 and stackManager
126
243
  } else {
127
- zIndex += 2;
244
+ if (overlayEngine === LWC_OVERLAY_ENGINE) {
245
+ overlayElem = this.root.childNodes[lwcOverlayCount];
246
+ const existingZindexValueIsSet = !!(
247
+ overlayDetails && overlayDetails.zIndex
248
+ );
249
+ const existingZindexValue =
250
+ overlayDetails && overlayDetails.zIndex;
251
+ // if LWC overlay z-index value not already set
252
+ if (
253
+ !existingZindexValueIsSet ||
254
+ Number.isNaN(existingZindexValue)
255
+ ) {
256
+ // need to consider whether LWC overlay is
257
+ // first in stack, and if not first, to offset by aura z-index
258
+ lwcZIndexToSet =
259
+ stackIndex !== 0
260
+ ? auraHighestZindex + LWC_ZINDEX_OFFSET
261
+ : lwcZIndexToSet;
262
+ const updateDetailsObject = {
263
+ zIndex: lwcZIndexToSet,
264
+ };
265
+ const updatedOverlayObj = normalizeOverlayDetails(
266
+ overlayEngine,
267
+ overlayType,
268
+ Object.assign(
269
+ {},
270
+ overlayDetails,
271
+ updateDetailsObject
272
+ )
273
+ );
274
+ // set the z-index to the shared state overlay
275
+ if (updatedOverlayObj !== null) {
276
+ state.stack[stackIndex] = updatedOverlayObj;
277
+ }
278
+ } else {
279
+ lwcZIndexToSet =
280
+ existingZindexValue >= LWC_STARTING_ZINDEX
281
+ ? existingZindexValue
282
+ : LWC_STARTING_ZINDEX;
283
+ }
284
+
285
+ if (overlayElem) {
286
+ overlayElem.style.zIndex = lwcZIndexToSet;
287
+ overlayElem.style.position = positionToSet;
288
+ // increment for LWC local DOM ref
289
+ lwcOverlayCount += 1;
290
+ }
291
+ } else {
292
+ // Aura overlays use odd z-index values,
293
+ // LWC overlays use even z-index values,
294
+ // adding 2 prevents collisions
295
+ // between the Aura and LWC overlay stack
296
+ lwcZIndexToSet += LWC_ZINDEX_INCREMENT;
297
+ }
128
298
  }
129
299
  });
130
300
  });
301
+ // connectedCallback must be complete once
302
+ // before allowing subscribeOverlay to be called
303
+ // for the first time
304
+ this.afterFirstRender = true;
131
305
  }
132
-
133
- // After this is fixed jest tests do not need clearOverlays()
134
- // https://github.com/salesforce/lwc/issues/1102
135
- // disconnectedCallback() {
136
- // clearOverlays();
137
- // }
138
306
  }